Public Member Functions | |
| LeafPrototype (std::minstd_rand0 *generator) | |
| Constructor - sets random number generator. | |
| LeafPrototype ()=default | |
| Constructor - does not set random number generator. | |
| void | duplicate (const LeafPrototype &a) |
| LeafPrototype & | operator= (const LeafPrototype &a) |
| Assignment operator. | |
| void | sampleIdentifier () |
Data Fields | |
| uint(* | prototype_function )(helios::Context *, LeafPrototype *prototype_parameters, int compound_leaf_index) = nullptr |
| Custom prototype function for creating leaf prototypes. | |
| std::string | OBJ_model_file |
| OBJ model file to load for the leaf. | |
| std::map< int, std::string > | leaf_texture_file |
| Image texture file for the leaf. | |
| RandomParameter_float | leaf_aspect_ratio |
| RandomParameter_float | midrib_fold_fraction |
| Fraction of folding along the leaf midrib. =0 means leaf is flat, =1 means leaf is completely folded in half along midrib. | |
| RandomParameter_float | longitudinal_curvature |
| Leaf curvature factor along the longitudinal/length (x-direction). (+curves upward, -curved downward) | |
| RandomParameter_float | lateral_curvature |
| Leaf curvature factor along the lateral/width (y-direction). (+curves upward, -curved downward) | |
| RandomParameter_float | petiole_roll |
| Creates a rolling at the leaf where the petiole attaches to the leaf blade. | |
| RandomParameter_float | wave_period |
| Period factor of leaf waves (sets how many waves there are along the leaf length) | |
| RandomParameter_float | wave_amplitude |
| Amplitude of leaf waves (sets the height of leaf waves) | |
| RandomParameter_float | leaf_buckle_length |
| Fraction of the leaf length where the leaf buckles under its weight. | |
| RandomParameter_float | leaf_buckle_angle |
| Angle of the leaf buckle (degrees) | |
| helios::vec3 | leaf_offset |
| Amount to shift the leaf. | |
| uint | subdivisions = 1 |
| Leaf subdivision count in each direction. | |
| uint | unique_prototypes = 1 |
| Number of unique prototypes to generate. | |
| bool | build_petiolule = false |
| Add a petiolule to the base of the leaflet. | |
| uint | unique_prototype_identifier = 0 |
Definition at line 427 of file PlantArchitecture.h.
|
explicit |
Constructor - sets random number generator.
Definition at line 171 of file PlantArchitecture.cpp.
|
inline |
Definition at line 491 of file PlantArchitecture.h.
|
inline |
Assignment operator.
Definition at line 513 of file PlantArchitecture.h.
|
inline |
Definition at line 558 of file PlantArchitecture.h.
| bool LeafPrototype::build_petiolule = false |
Add a petiolule to the base of the leaflet.
Definition at line 487 of file PlantArchitecture.h.
| RandomParameter_float LeafPrototype::lateral_curvature |
Leaf curvature factor along the lateral/width (y-direction). (+curves upward, -curved downward)
Definition at line 460 of file PlantArchitecture.h.
| RandomParameter_float LeafPrototype::leaf_aspect_ratio |
Definition at line 451 of file PlantArchitecture.h.
| RandomParameter_float LeafPrototype::leaf_buckle_angle |
Angle of the leaf buckle (degrees)
Definition at line 475 of file PlantArchitecture.h.
| RandomParameter_float LeafPrototype::leaf_buckle_length |
Fraction of the leaf length where the leaf buckles under its weight.
Definition at line 473 of file PlantArchitecture.h.
| helios::vec3 LeafPrototype::leaf_offset |
Amount to shift the leaf.
Definition at line 478 of file PlantArchitecture.h.
| std::map<int, std::string> LeafPrototype::leaf_texture_file |
Image texture file for the leaf.
Definition at line 448 of file PlantArchitecture.h.
| RandomParameter_float LeafPrototype::longitudinal_curvature |
Leaf curvature factor along the longitudinal/length (x-direction). (+curves upward, -curved downward)
Definition at line 458 of file PlantArchitecture.h.
| RandomParameter_float LeafPrototype::midrib_fold_fraction |
Fraction of folding along the leaf midrib. =0 means leaf is flat, =1 means leaf is completely folded in half along midrib.
Definition at line 454 of file PlantArchitecture.h.
| std::string LeafPrototype::OBJ_model_file |
OBJ model file to load for the leaf.
Definition at line 442 of file PlantArchitecture.h.
| RandomParameter_float LeafPrototype::petiole_roll |
Creates a rolling at the leaf where the petiole attaches to the leaf blade.
Definition at line 463 of file PlantArchitecture.h.
| uint(* LeafPrototype::prototype_function) (helios::Context *, LeafPrototype *prototype_parameters, int compound_leaf_index) = nullptr |
Custom prototype function for creating leaf prototypes.
Definition at line 436 of file PlantArchitecture.h.
| uint LeafPrototype::subdivisions = 1 |
Leaf subdivision count in each direction.
Definition at line 481 of file PlantArchitecture.h.
| uint LeafPrototype::unique_prototype_identifier = 0 |
Definition at line 489 of file PlantArchitecture.h.
| uint LeafPrototype::unique_prototypes = 1 |
Number of unique prototypes to generate.
Definition at line 484 of file PlantArchitecture.h.
| RandomParameter_float LeafPrototype::wave_amplitude |
Amplitude of leaf waves (sets the height of leaf waves)
Definition at line 469 of file PlantArchitecture.h.
| RandomParameter_float LeafPrototype::wave_period |
Period factor of leaf waves (sets how many waves there are along the leaf length)
Definition at line 467 of file PlantArchitecture.h.