| __del__(self) | pyhelios.PlantArchitecture.PlantArchitecture | |
| __enter__(self) | pyhelios.PlantArchitecture.PlantArchitecture | |
| __exit__(self, exc_type, exc_val, exc_tb) | pyhelios.PlantArchitecture.PlantArchitecture | |
| __init__(self, Context context) | pyhelios.PlantArchitecture.PlantArchitecture | |
| __new__(cls, context=None) | pyhelios.PlantArchitecture.PlantArchitecture | |
| _check_context_alive(self) | pyhelios.PlantArchitecture.PlantArchitecture | protected |
| _childShootIDsOrEmpty(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | protected |
| _current_plant_model | pyhelios.PlantArchitecture.PlantArchitecture | protected |
| _isPrunedOrGone(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | protected |
| _liveChildShootIDs(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | protected |
| _plantarch_ptr | pyhelios.PlantArchitecture.PlantArchitecture | protected |
| _plantFloatVector(self, str wrapper_fn_name, int plant_id, str description) | pyhelios.PlantArchitecture.PlantArchitecture | protected |
| _progress_callback_ref | pyhelios.PlantArchitecture.PlantArchitecture | protected |
| _pruneShallowest(self, int plant_id, target_shoot_ids) | pyhelios.PlantArchitecture.PlantArchitecture | protected |
| _removeShootOrgans(self, str wrapper_fn_name, int plant_id, int shoot_id, str organ_description) | pyhelios.PlantArchitecture.PlantArchitecture | protected |
| _shootScalarQuery(self, str wrapper_fn_name, int plant_id, int shoot_id, str description) | pyhelios.PlantArchitecture.PlantArchitecture | protected |
| _validate_attraction_points(points) | pyhelios.PlantArchitecture.PlantArchitecture | protectedstatic |
| _validateBudState(state) | pyhelios.PlantArchitecture.PlantArchitecture | protectedstatic |
| _validateNodeIndex(node_index, str name="Node index") | pyhelios.PlantArchitecture.PlantArchitecture | protectedstatic |
| _validateNodesAndRadii(node_positions, node_radii, str positions_name, str radii_name) | pyhelios.PlantArchitecture.PlantArchitecture | protectedstatic |
| _validatePetioleIndex(cls, petiole_index, str name="Petiole index") | pyhelios.PlantArchitecture.PlantArchitecture | protected |
| _validatePlantIdentifier(plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | protectedstatic |
| _validatePlantIdList(cls, plant_ids) | pyhelios.PlantArchitecture.PlantArchitecture | protected |
| _validateScaleFactor(scale_factor, str name="Scale factor") | pyhelios.PlantArchitecture.PlantArchitecture | protectedstatic |
| _validateShootIdentifiers(int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | protectedstatic |
| addBaseStemShoot(self, int plant_id, int current_node_number, AxisRotation base_rotation, float internode_radius, float internode_length_max, float internode_length_scale_factor_fraction, float leaf_scale_factor_fraction, float radius_taper, str shoot_type_label) | pyhelios.PlantArchitecture.PlantArchitecture | |
| addChildShoot(self, int plant_id, int parent_shoot_id, int parent_node_index, int current_node_number, AxisRotation shoot_base_rotation, float internode_radius, float internode_length_max, float internode_length_scale_factor_fraction, float leaf_scale_factor_fraction, float radius_taper, str shoot_type_label, int petiole_index=0) | pyhelios.PlantArchitecture.PlantArchitecture | |
| addPlantInstance(self, vec3 base_position, float current_age) | pyhelios.PlantArchitecture.PlantArchitecture | |
| addShootFromNodePositions(self, int plant_id, int parent_shoot_id, int parent_node_index, List[vec3] node_positions, List[float] node_radii, str shoot_type_label, Optional[str] growth_shoot_type_label=None, int petiole_index=0) | pyhelios.PlantArchitecture.PlantArchitecture | |
| advanceTime(self, float dt, Optional[int] plant_id=None, Optional[List[int]] plant_ids=None, Optional[int] years=None) | pyhelios.PlantArchitecture.PlantArchitecture | |
| appendAttractionPoints(self, List[vec3] points, Optional[int] plant_id=None) | pyhelios.PlantArchitecture.PlantArchitecture | |
| appendShoot(self, int plant_id, int parent_shoot_id, int current_node_number, AxisRotation base_rotation, float internode_radius, float internode_length_max, float internode_length_scale_factor_fraction, float leaf_scale_factor_fraction, float radius_taper, str shoot_type_label) | pyhelios.PlantArchitecture.PlantArchitecture | |
| bendPetioleUnderLeafWeight(self, int plant_id, int shoot_id, int node_index, int petiole_index) | pyhelios.PlantArchitecture.PlantArchitecture | |
| breakPlantDormancy(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| buildPlantCanopyFromLibrary(self, vec3 canopy_center, vec2 plant_spacing, int2 plant_count, float age, float germination_rate=1.0, Optional[dict] build_parameters=None) | pyhelios.PlantArchitecture.PlantArchitecture | |
| buildPlantInstanceFromLibrary(self, vec3 base_position, float age, Optional[dict] build_parameters=None) | pyhelios.PlantArchitecture.PlantArchitecture | |
| clearGrowthFrames(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| context | pyhelios.PlantArchitecture.PlantArchitecture | |
| defineShootType(self, str shoot_type_label, Union[dict, ShootParameters] parameters) | pyhelios.PlantArchitecture.PlantArchitecture | |
| deletePlantInstance(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| disableAttractionPoints(self, Optional[int] plant_id=None) | pyhelios.PlantArchitecture.PlantArchitecture | |
| disableCollisionDetection(self) | pyhelios.PlantArchitecture.PlantArchitecture | |
| disableLeafAngleDistributionTracking(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| disableMessages(self) | pyhelios.PlantArchitecture.PlantArchitecture | |
| disablePlantPhenology(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| enableAttractionPoints(self, List[vec3] points, Optional[int] plant_id=None, Optional[float] view_half_angle_deg=None, float look_ahead_distance=0.1, float attraction_weight=0.6) | pyhelios.PlantArchitecture.PlantArchitecture | |
| enableGroundClipping(self, float ground_height=0.0) | pyhelios.PlantArchitecture.PlantArchitecture | |
| enableLeafAngleDistributionTracking(self, plant_ids, float beta_mu_inclination, float beta_nu_inclination, float eccentricity, float ellipse_rotation_degrees, float lambda_degrees) | pyhelios.PlantArchitecture.PlantArchitecture | |
| enableLeafAzimuthAngleDistributionTracking(self, int plant_id, float eccentricity, float ellipse_rotation_degrees, float lambda_degrees) | pyhelios.PlantArchitecture.PlantArchitecture | |
| enableLeafElevationAngleDistributionTracking(self, int plant_id, float beta_mu_inclination, float beta_nu_inclination, float lambda_degrees) | pyhelios.PlantArchitecture.PlantArchitecture | |
| enableMessages(self) | pyhelios.PlantArchitecture.PlantArchitecture | |
| enableSoftCollisionAvoidance(self, Optional[List[int]] target_object_UUIDs=None, Optional[List[int]] target_object_IDs=None, bool enable_petiole_collision=False, bool enable_fruit_collision=False) | pyhelios.PlantArchitecture.PlantArchitecture | |
| enableSolidObstacleAvoidance(self, List[int] obstacle_UUIDs, float avoidance_distance=0.5, bool enable_fruit_adjustment=False, bool enable_obstacle_pruning=False) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getAllDescendantShootIDs(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getAllFlowerUUIDs(self) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getAllFruitUUIDs(self) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getAllInternodeUUIDs(self) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getAllLeafUUIDs(self) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getAllObjectIDs(self) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getAllPeduncleUUIDs(self) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getAllPetioleUUIDs(self) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getAllPlantIDs(self) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getAllPlantObjectIDs(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getAllPlantUUIDs(self, int plant_id, bool include_hidden=False) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getAllShootIDs(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getAllUUIDs(self) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getAvailablePlantModels(self) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getChildShootIDs(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getCurrentShootParameters(self, str shoot_type_label, bool return_typed=False) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getDefaultCarbohydrateParameters(self, bool return_typed=False) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getDefaultNitrogenParameters(self, bool return_typed=False) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getGrowthFrameCount(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getParentShootID(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getPathToRoot(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getPetioleLength(self, int plant_id, int shoot_id, int node_index, Optional[int] petiole_index=None) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getPlantAge(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getPlantCollisionRelevantObjectIDs(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getPlantFlowerObjectIDs(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getPlantFruitObjectIDs(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getPlantHeight(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getPlantInternodeLengths(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getPlantLeafArea(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getPlantLeafAreas(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getPlantLeafBases(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getPlantLeafCount(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getPlantLeafInclinations(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getPlantLeafObjectIDs(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getPlantMaxAge(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getPlantPeduncleObjectIDs(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getPlantPetioleObjectIDs(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getShoot(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getShootChildIDs(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getShootDepth(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getShootHierarchyMap(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getShootIDsByRank(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getShootInternodeRadii(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getShootInternodeVertices(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getShootRank(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getShootVegetativeBudCount(self, int plant_id, int shoot_id, Optional[BudState] state=None) | pyhelios.PlantArchitecture.PlantArchitecture | |
| getTerminalShootIDs(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| harvestPlant(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| is_available(self) | pyhelios.PlantArchitecture.PlantArchitecture | |
| isLeafAngleDistributionTrackingEnabled(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| isPlantDormant(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| isShootGeometryPrescribed(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| isShootPruned(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| listShootTypeLabels(self, Optional[str] plant_model=None, Optional[int] plant_id=None) | pyhelios.PlantArchitecture.PlantArchitecture | |
| loadPlantModelFromLibrary(self, str plant_label) | pyhelios.PlantArchitecture.PlantArchitecture | |
| makePlantDormant(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| optionalOutputObjectData(self, Union[str, List[str]] object_data_labels) | pyhelios.PlantArchitecture.PlantArchitecture | |
| pruneBranch(self, int plant_id, int shoot_id, int node_index) | pyhelios.PlantArchitecture.PlantArchitecture | |
| pruneShootsByRank(self, int plant_id, int min_rank) | pyhelios.PlantArchitecture.PlantArchitecture | |
| pruneShootSubtree(self, int plant_id, int shoot_id, bool include_self=True) | pyhelios.PlantArchitecture.PlantArchitecture | |
| pruneTerminalShoots(self, int plant_id, int stride=2) | pyhelios.PlantArchitecture.PlantArchitecture | |
| readPlantStructureXML(self, Union[str, Path] filename, bool quiet=False) | pyhelios.PlantArchitecture.PlantArchitecture | |
| recordPetioleRestShape(self, int plant_id, int shoot_id, int node_index, int petiole_index) | pyhelios.PlantArchitecture.PlantArchitecture | |
| registerGrowthFrame(self, int plant_id, float min_segment_length=0.001) | pyhelios.PlantArchitecture.PlantArchitecture | |
| removePlantLeaves(self, int plant_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| removeShootFloralBuds(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| removeShootLeaves(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| removeShootVegetativeBuds(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| scaleLeafSizeMax(self, int plant_id, int shoot_id, int node_index, float scale_factor) | pyhelios.PlantArchitecture.PlantArchitecture | |
| scalePetioleMaxLength(self, int plant_id, int shoot_id, int node_index, float scale_factor) | pyhelios.PlantArchitecture.PlantArchitecture | |
| setAttractionParameters(self, float view_half_angle_deg, float look_ahead_distance, float attraction_weight, float obstacle_reduction_factor=0.75, Optional[int] plant_id=None) | pyhelios.PlantArchitecture.PlantArchitecture | |
| setCancelFlag(self, cancel_flag) | pyhelios.PlantArchitecture.PlantArchitecture | |
| setCollisionRelevantOrgans(self, bool include_internodes=False, bool include_leaves=True, bool include_petioles=False, bool include_flowers=False, bool include_fruit=False) | pyhelios.PlantArchitecture.PlantArchitecture | |
| setLeafNormal(self, int plant_id, int shoot_id, int node_index, int petiole_index, int leaf_index, vec3 target_normal) | pyhelios.PlantArchitecture.PlantArchitecture | |
| setPetioleAndLeafScaleFraction(self, int plant_id, int shoot_id, int node_index, int petiole_index, float petiole_scale_factor_fraction, float leaf_scale_factor_fraction) | pyhelios.PlantArchitecture.PlantArchitecture | |
| setPetioleLeafCount(self, int plant_id, int shoot_id, int node_index, int petiole_index, int leaf_count) | pyhelios.PlantArchitecture.PlantArchitecture | |
| setPetioleLeafGeometry(self, int plant_id, int shoot_id, int node_index, int petiole_index, List[vec3] leaf_bases, List[AxisRotation] leaf_rotations, List[float] leaf_sizes) | pyhelios.PlantArchitecture.PlantArchitecture | |
| setPetioleNodePositions(self, int plant_id, int shoot_id, int node_index, int petiole_index, List[vec3] node_positions, List[float] node_radii) | pyhelios.PlantArchitecture.PlantArchitecture | |
| setPetioleScaleFraction(self, int plant_id, int shoot_id, int node_index, int petiole_index, float petiole_scale_factor_fraction) | pyhelios.PlantArchitecture.PlantArchitecture | |
| setPlantCarbohydrateParameters(self, int plant_id, Union[dict, CarbohydrateParameters] parameters) | pyhelios.PlantArchitecture.PlantArchitecture | |
| setPlantMaxAge(self, int plant_id, float max_age) | pyhelios.PlantArchitecture.PlantArchitecture | |
| setPlantNitrogenParameters(self, int plant_id, Union[dict, NitrogenParameters] parameters) | pyhelios.PlantArchitecture.PlantArchitecture | |
| setPlantPhenologicalThresholds(self, int plant_id, float time_to_dormancy_break, float time_to_flower_initiation, float time_to_flower_opening, float time_to_fruit_set, float time_to_fruit_maturity, float time_to_dormancy, float max_leaf_lifespan=1e6, bool is_evergreen=False) | pyhelios.PlantArchitecture.PlantArchitecture | |
| setProgressCallback(self, callback) | pyhelios.PlantArchitecture.PlantArchitecture | |
| setShootInternodeLengthMax(self, int plant_id, int shoot_id, float internode_length_max) | pyhelios.PlantArchitecture.PlantArchitecture | |
| setSoftCollisionAvoidanceParameters(self, float view_half_angle_deg=80.0, float look_ahead_distance=0.1, int sample_count=256, float inertia_weight=0.4) | pyhelios.PlantArchitecture.PlantArchitecture | |
| setStaticObstacles(self, List[int] target_UUIDs) | pyhelios.PlantArchitecture.PlantArchitecture | |
| terminateApicalBud(self, int plant_id, int shoot_id) | pyhelios.PlantArchitecture.PlantArchitecture | |
| updateAttractionPoints(self, List[vec3] points, Optional[int] plant_id=None) | pyhelios.PlantArchitecture.PlantArchitecture | |
| writePlantGrowthUSD(self, int plant_id, Union[str, Path] filename, float seconds_per_frame=1.0) | pyhelios.PlantArchitecture.PlantArchitecture | |
| writePlantMeshVertices(self, int plant_id, Union[str, Path] filename) | pyhelios.PlantArchitecture.PlantArchitecture | |
| writePlantStructureUSD(self, int plant_id, Union[str, Path] filename, float elastic_modulus=5e9, float wood_density=800.0, float damping_ratio=0.1, float static_friction=0.5, float dynamic_friction=0.3, float restitution=0.1, float organ_spring_stiffness=10.0, float organ_spring_damping=1.0, float leaf_mass_per_area=0.05, float fruit_mass=0.01, float flower_mass=0.002, int solver_position_iterations=32, float min_segment_length=0.001) | pyhelios.PlantArchitecture.PlantArchitecture | |
| writePlantStructureXML(self, int plant_id, Union[str, Path] filename) | pyhelios.PlantArchitecture.PlantArchitecture | |
| writeQSMCylinderFile(self, int plant_id, Union[str, Path] filename) | pyhelios.PlantArchitecture.PlantArchitecture | |