Parameters defining Sorghum plant canopy. More...
#include <CanopyGenerator.h>
Public Member Functions | |
SorghumCanopyParameters () | |
Default constructor. | |
SorghumCanopyParameters (const pugi::xml_node canopy_node) | |
void | readParametersFromXML (const pugi::xml_node canopy_node) |
Sets canopy parameters from the given XML node. | |
void | buildPlant (CanopyGenerator &canopy_generator, helios::vec3 origin) override |
Makes the given Canopy generator build a single plant of our canopy type with our parameters at the given position. | |
void | buildCanopy (CanopyGenerator &canopy_generator) override |
Makes the given Canopy generator build a canopy of our type with our parameters. | |
![]() | |
BaseCanopyParameters () | |
Default constructor. | |
BaseCanopyParameters (const pugi::xml_node canopy_node) | |
void | readParametersFromXML (const pugi::xml_node canopy_node) |
Sets canopy parameters from the given XML node. | |
Data Fields | |
int | sorghum_stage |
Sorghum categorized into 5 stages; 1 - Three leaf stage, 2 - Five leaf stage, 3 - Panicle initiation and flag leaf emergency, 4 - Booting, and flowering, 5 - Maturity; Input of a value other than 1-5 will output stage 5. | |
float | s1_stem_length |
Length of the sorghum stem for stage 1. | |
float | s1_stem_radius |
Radius of the sorghum stem for stage 1. | |
float | s1_stem_subdivisions |
Number of stem radial subdivisions for stage 1. | |
helios::vec2 | s1_leaf_size1 |
Length of leaf1 in x- (length) and y- (width) directions (prior to rotation) for stage 1. | |
helios::vec2 | s1_leaf_size2 |
Length of leaf2 in x- (length) and y- (width) directions (prior to rotation) for stage 1. | |
helios::vec2 | s1_leaf_size3 |
Length of leaf3 in x- (length) and y- (width) directions (prior to rotation) for stage 1. | |
float | s1_leaf1_angle |
Leaf1 vertical angle of rotation for stage 1. | |
float | s1_leaf2_angle |
Leaf2 vertical angle of rotation for stage 1. | |
float | s1_leaf3_angle |
Leaf3 vertical angle of rotation for stage 1. | |
helios::int2 | s1_leaf_subdivisions |
Number of sub-division segments of leaf in the x- (length) and y- (width) direction for stage 1. | |
std::string | s1_leaf_texture_file |
Texture map for sorghum leaf1 for stage 1. | |
float | s2_stem_length |
Length of the sorghum stem for stage 2. | |
float | s2_stem_radius |
Radius of the sorghum stem for stage 2. | |
float | s2_stem_subdivisions |
Number of stem radial subdivisions for stage 2. | |
helios::vec2 | s2_leaf_size1 |
Length of leaf1 in x- (length) and y- (width) directions (prior to rotation) for stage 2. | |
helios::vec2 | s2_leaf_size2 |
Length of leaf2 in x- (length) and y- (width) directions (prior to rotation) for stage 2. | |
helios::vec2 | s2_leaf_size3 |
Length of leaf3 in x- (length) and y- (width) directions (prior to rotation) for stage 2. | |
helios::vec2 | s2_leaf_size4 |
Length of leaf4 in x- (length) and y- (width) directions (prior to rotation) for stage 2. | |
helios::vec2 | s2_leaf_size5 |
Length of leaf5 in x- (length) and y- (width) directions (prior to rotation) for stage 2. | |
float | s2_leaf1_angle |
Leaf1 vertical angle of rotation for stage 2. | |
float | s2_leaf2_angle |
Leaf2 vertical angle of rotation for stage 2. | |
float | s2_leaf3_angle |
Leaf3 vertical angle of rotation for stage 2. | |
float | s2_leaf4_angle |
Leaf4 vertical angle of rotation for stage 2. | |
float | s2_leaf5_angle |
Leaf5 vertical angle of rotation for stage 2. | |
helios::int2 | s2_leaf_subdivisions |
Number of sub-division segments of leaf in the x- (length) and y- (width) direction for stage 2. | |
std::string | s2_leaf_texture_file |
Texture map for sorghum leaf for stage 2. | |
float | s3_stem_length |
Length of the sorghum stem for stage 3. | |
float | s3_stem_radius |
Radius of the sorghum stem for stage 3. | |
float | s3_stem_subdivisions |
Number of stem radial subdivisions for stage 3. | |
helios::vec2 | s3_leaf_size |
Length of leaf in x- (length) and y- (width) directions (prior to rotation) for stage 3. | |
helios::int2 | s3_leaf_subdivisions |
Number of sub-division segments of leaf in the x- (length) and y- (width) direction for stage 3. | |
int | s3_number_of_leaves |
Number of leaves along the stem for stage 3. | |
float | s3_mean_leaf_angle |
Mean vertical angle of rotation of leaf for stage 3 in degrees; Standard deviation for the leaves is 5 degrees. | |
std::string | s3_leaf_texture_file |
Texture map for sorghum leaf for stage 3. | |
float | s4_stem_length |
Length of the sorghum stem for stage 4. | |
float | s4_stem_radius |
Radius of the sorghum stem for stage 4. | |
float | s4_stem_subdivisions |
Number of stem radial subdivisions for stage 4. | |
helios::vec2 | s4_panicle_size |
Size of panicle in x- and y- directions for stage 4. | |
int | s4_panicle_subdivisions |
Number of panicle subdivisions for each grain sphere within a panicle, stage 4. | |
std::string | s4_seed_texture_file |
Texture map of the panicle for stage 4. | |
helios::vec2 | s4_leaf_size |
Length of leaf in x- (length) and y- (width) directions (prior to rotation) for stage 4. | |
helios::int2 | s4_leaf_subdivisions |
Number of sub-division segments of leaf in the x- (length) and y- (width) direction for stage 4. | |
int | s4_number_of_leaves |
Number of leaves for the sorghum plant, stage 4. | |
float | s4_mean_leaf_angle |
Mean vertical angle of rotation of leaf for stage 4 in degrees; Standard deviation for the angle is 5 degrees. | |
std::string | s4_leaf_texture_file |
Texture map for sorghum leaf, stage 4. | |
float | s5_stem_length |
Length of the sorghum stem for stage 5. | |
float | s5_stem_radius |
Radius of the sorghum stem for stage 5. | |
float | s5_stem_bend |
Bend of the stem from mid-section for stage 5. The distance from the mid-section of the stem to the imaginary perpendicular along the origin. i.e stem bend = 0 outputs a straight stem. | |
int | s5_stem_subdivisions |
Number of stem radial subdivisions for stage 5. | |
helios::vec2 | s5_panicle_size |
Size of panicle in x- and y- directions for stage 5. | |
int | s5_panicle_subdivisions |
Number of panicle subdivisions for each grain sphere within a panicle, stage 5. | |
std::string | s5_seed_texture_file |
Texture map of the panicle for stage 5. | |
helios::vec2 | s5_leaf_size |
Length of leaf in x- (length) and y- (width) directions (prior to rotation) for stage 5. | |
helios::int2 | s5_leaf_subdivisions |
Number of sub-division segments of leaf in the x- (length) and y- (width) direction for stage 5. | |
int | s5_number_of_leaves |
Number of leaves for the sorghum plant, stage 5. | |
float | s5_mean_leaf_angle |
Mean vertical angle of rotation of leaf for stage 5 in degrees; Standard deviation for the angle is 10 degrees. | |
std::string | s5_leaf_texture_file |
Texture map for sorghum leaf, stage 5. | |
float | plant_spacing |
Spacing between adjacent plants along the row direction. | |
float | row_spacing |
Spacing between plant rows. | |
helios::int2 | plant_count |
Number of crowns/plants in the x- and y-directions. | |
![]() | |
helios::vec3 | canopy_origin |
Cartesian (x,y,z) coordinate of the bottom center point of the canopy (i.e., specifying z=0 places the bottom surface of the canopy at z=0). | |
float | canopy_rotation |
Azimuthal rotation of the canopy about the canopy origin. Note that if canopy_rotation is not equal to zero, the plant_spacing and plant_count parameters are defined in the x- and y-directions before rotation. | |
Parameters defining Sorghum plant canopy.
Definition at line 751 of file CanopyGenerator.h.
SorghumCanopyParameters::SorghumCanopyParameters | ( | ) |
Default constructor.
Definition at line 1298 of file CanopyGenerator.cpp.
SorghumCanopyParameters::SorghumCanopyParameters | ( | const pugi::xml_node | canopy_node | ) |
[in] | canopy_node | XML node containing the canopy parameters |
Definition at line 1429 of file CanopyGenerator.cpp.
|
overridevirtual |
Makes the given Canopy generator build a canopy of our type with our parameters.
Implements BaseCanopyParameters.
Definition at line 1751 of file CanopyGenerator.cpp.
|
overridevirtual |
Makes the given Canopy generator build a single plant of our canopy type with our parameters at the given position.
Implements BaseCanopyParameters.
Definition at line 1747 of file CanopyGenerator.cpp.
void SorghumCanopyParameters::readParametersFromXML | ( | const pugi::xml_node | canopy_node | ) |
Sets canopy parameters from the given XML node.
[in] | canopy_node | XML node containing the canopy parameters |
Definition at line 1433 of file CanopyGenerator.cpp.
helios::int2 SorghumCanopyParameters::plant_count |
Number of crowns/plants in the x- and y-directions.
Definition at line 965 of file CanopyGenerator.h.
float SorghumCanopyParameters::plant_spacing |
Spacing between adjacent plants along the row direction.
Definition at line 959 of file CanopyGenerator.h.
float SorghumCanopyParameters::row_spacing |
Spacing between plant rows.
Definition at line 962 of file CanopyGenerator.h.
float SorghumCanopyParameters::s1_leaf1_angle |
Leaf1 vertical angle of rotation for stage 1.
Definition at line 797 of file CanopyGenerator.h.
float SorghumCanopyParameters::s1_leaf2_angle |
Leaf2 vertical angle of rotation for stage 1.
Definition at line 800 of file CanopyGenerator.h.
float SorghumCanopyParameters::s1_leaf3_angle |
Leaf3 vertical angle of rotation for stage 1.
Definition at line 803 of file CanopyGenerator.h.
helios::vec2 SorghumCanopyParameters::s1_leaf_size1 |
Length of leaf1 in x- (length) and y- (width) directions (prior to rotation) for stage 1.
Definition at line 788 of file CanopyGenerator.h.
helios::vec2 SorghumCanopyParameters::s1_leaf_size2 |
Length of leaf2 in x- (length) and y- (width) directions (prior to rotation) for stage 1.
Definition at line 791 of file CanopyGenerator.h.
helios::vec2 SorghumCanopyParameters::s1_leaf_size3 |
Length of leaf3 in x- (length) and y- (width) directions (prior to rotation) for stage 1.
Definition at line 794 of file CanopyGenerator.h.
helios::int2 SorghumCanopyParameters::s1_leaf_subdivisions |
Number of sub-division segments of leaf in the x- (length) and y- (width) direction for stage 1.
Definition at line 806 of file CanopyGenerator.h.
std::string SorghumCanopyParameters::s1_leaf_texture_file |
Texture map for sorghum leaf1 for stage 1.
Definition at line 809 of file CanopyGenerator.h.
float SorghumCanopyParameters::s1_stem_length |
Length of the sorghum stem for stage 1.
Definition at line 779 of file CanopyGenerator.h.
float SorghumCanopyParameters::s1_stem_radius |
Radius of the sorghum stem for stage 1.
Definition at line 782 of file CanopyGenerator.h.
float SorghumCanopyParameters::s1_stem_subdivisions |
Number of stem radial subdivisions for stage 1.
Definition at line 785 of file CanopyGenerator.h.
float SorghumCanopyParameters::s2_leaf1_angle |
Leaf1 vertical angle of rotation for stage 2.
Definition at line 838 of file CanopyGenerator.h.
float SorghumCanopyParameters::s2_leaf2_angle |
Leaf2 vertical angle of rotation for stage 2.
Definition at line 841 of file CanopyGenerator.h.
float SorghumCanopyParameters::s2_leaf3_angle |
Leaf3 vertical angle of rotation for stage 2.
Definition at line 844 of file CanopyGenerator.h.
float SorghumCanopyParameters::s2_leaf4_angle |
Leaf4 vertical angle of rotation for stage 2.
Definition at line 847 of file CanopyGenerator.h.
float SorghumCanopyParameters::s2_leaf5_angle |
Leaf5 vertical angle of rotation for stage 2.
Definition at line 850 of file CanopyGenerator.h.
helios::vec2 SorghumCanopyParameters::s2_leaf_size1 |
Length of leaf1 in x- (length) and y- (width) directions (prior to rotation) for stage 2.
Definition at line 823 of file CanopyGenerator.h.
helios::vec2 SorghumCanopyParameters::s2_leaf_size2 |
Length of leaf2 in x- (length) and y- (width) directions (prior to rotation) for stage 2.
Definition at line 826 of file CanopyGenerator.h.
helios::vec2 SorghumCanopyParameters::s2_leaf_size3 |
Length of leaf3 in x- (length) and y- (width) directions (prior to rotation) for stage 2.
Definition at line 829 of file CanopyGenerator.h.
helios::vec2 SorghumCanopyParameters::s2_leaf_size4 |
Length of leaf4 in x- (length) and y- (width) directions (prior to rotation) for stage 2.
Definition at line 832 of file CanopyGenerator.h.
helios::vec2 SorghumCanopyParameters::s2_leaf_size5 |
Length of leaf5 in x- (length) and y- (width) directions (prior to rotation) for stage 2.
Definition at line 835 of file CanopyGenerator.h.
helios::int2 SorghumCanopyParameters::s2_leaf_subdivisions |
Number of sub-division segments of leaf in the x- (length) and y- (width) direction for stage 2.
Definition at line 853 of file CanopyGenerator.h.
std::string SorghumCanopyParameters::s2_leaf_texture_file |
Texture map for sorghum leaf for stage 2.
Definition at line 856 of file CanopyGenerator.h.
float SorghumCanopyParameters::s2_stem_length |
Length of the sorghum stem for stage 2.
Definition at line 814 of file CanopyGenerator.h.
float SorghumCanopyParameters::s2_stem_radius |
Radius of the sorghum stem for stage 2.
Definition at line 817 of file CanopyGenerator.h.
float SorghumCanopyParameters::s2_stem_subdivisions |
Number of stem radial subdivisions for stage 2.
Definition at line 820 of file CanopyGenerator.h.
helios::vec2 SorghumCanopyParameters::s3_leaf_size |
Length of leaf in x- (length) and y- (width) directions (prior to rotation) for stage 3.
Definition at line 870 of file CanopyGenerator.h.
helios::int2 SorghumCanopyParameters::s3_leaf_subdivisions |
Number of sub-division segments of leaf in the x- (length) and y- (width) direction for stage 3.
Definition at line 873 of file CanopyGenerator.h.
std::string SorghumCanopyParameters::s3_leaf_texture_file |
Texture map for sorghum leaf for stage 3.
Definition at line 882 of file CanopyGenerator.h.
float SorghumCanopyParameters::s3_mean_leaf_angle |
Mean vertical angle of rotation of leaf for stage 3 in degrees; Standard deviation for the leaves is 5 degrees.
Definition at line 879 of file CanopyGenerator.h.
int SorghumCanopyParameters::s3_number_of_leaves |
Number of leaves along the stem for stage 3.
Definition at line 876 of file CanopyGenerator.h.
float SorghumCanopyParameters::s3_stem_length |
Length of the sorghum stem for stage 3.
Definition at line 861 of file CanopyGenerator.h.
float SorghumCanopyParameters::s3_stem_radius |
Radius of the sorghum stem for stage 3.
Definition at line 864 of file CanopyGenerator.h.
float SorghumCanopyParameters::s3_stem_subdivisions |
Number of stem radial subdivisions for stage 3.
Definition at line 867 of file CanopyGenerator.h.
helios::vec2 SorghumCanopyParameters::s4_leaf_size |
Length of leaf in x- (length) and y- (width) directions (prior to rotation) for stage 4.
Definition at line 905 of file CanopyGenerator.h.
helios::int2 SorghumCanopyParameters::s4_leaf_subdivisions |
Number of sub-division segments of leaf in the x- (length) and y- (width) direction for stage 4.
Definition at line 908 of file CanopyGenerator.h.
std::string SorghumCanopyParameters::s4_leaf_texture_file |
Texture map for sorghum leaf, stage 4.
Definition at line 917 of file CanopyGenerator.h.
float SorghumCanopyParameters::s4_mean_leaf_angle |
Mean vertical angle of rotation of leaf for stage 4 in degrees; Standard deviation for the angle is 5 degrees.
Definition at line 914 of file CanopyGenerator.h.
int SorghumCanopyParameters::s4_number_of_leaves |
Number of leaves for the sorghum plant, stage 4.
Definition at line 911 of file CanopyGenerator.h.
helios::vec2 SorghumCanopyParameters::s4_panicle_size |
Size of panicle in x- and y- directions for stage 4.
Definition at line 896 of file CanopyGenerator.h.
int SorghumCanopyParameters::s4_panicle_subdivisions |
Number of panicle subdivisions for each grain sphere within a panicle, stage 4.
Definition at line 899 of file CanopyGenerator.h.
std::string SorghumCanopyParameters::s4_seed_texture_file |
Texture map of the panicle for stage 4.
Definition at line 902 of file CanopyGenerator.h.
float SorghumCanopyParameters::s4_stem_length |
Length of the sorghum stem for stage 4.
Definition at line 887 of file CanopyGenerator.h.
float SorghumCanopyParameters::s4_stem_radius |
Radius of the sorghum stem for stage 4.
Definition at line 890 of file CanopyGenerator.h.
float SorghumCanopyParameters::s4_stem_subdivisions |
Number of stem radial subdivisions for stage 4.
Definition at line 893 of file CanopyGenerator.h.
helios::vec2 SorghumCanopyParameters::s5_leaf_size |
Length of leaf in x- (length) and y- (width) directions (prior to rotation) for stage 5.
Definition at line 943 of file CanopyGenerator.h.
helios::int2 SorghumCanopyParameters::s5_leaf_subdivisions |
Number of sub-division segments of leaf in the x- (length) and y- (width) direction for stage 5.
Definition at line 946 of file CanopyGenerator.h.
std::string SorghumCanopyParameters::s5_leaf_texture_file |
Texture map for sorghum leaf, stage 5.
Definition at line 955 of file CanopyGenerator.h.
float SorghumCanopyParameters::s5_mean_leaf_angle |
Mean vertical angle of rotation of leaf for stage 5 in degrees; Standard deviation for the angle is 10 degrees.
Definition at line 952 of file CanopyGenerator.h.
int SorghumCanopyParameters::s5_number_of_leaves |
Number of leaves for the sorghum plant, stage 5.
Definition at line 949 of file CanopyGenerator.h.
helios::vec2 SorghumCanopyParameters::s5_panicle_size |
Size of panicle in x- and y- directions for stage 5.
Definition at line 934 of file CanopyGenerator.h.
int SorghumCanopyParameters::s5_panicle_subdivisions |
Number of panicle subdivisions for each grain sphere within a panicle, stage 5.
Definition at line 937 of file CanopyGenerator.h.
std::string SorghumCanopyParameters::s5_seed_texture_file |
Texture map of the panicle for stage 5.
Definition at line 940 of file CanopyGenerator.h.
float SorghumCanopyParameters::s5_stem_bend |
Bend of the stem from mid-section for stage 5. The distance from the mid-section of the stem to the imaginary perpendicular along the origin. i.e stem bend = 0 outputs a straight stem.
Definition at line 928 of file CanopyGenerator.h.
float SorghumCanopyParameters::s5_stem_length |
Length of the sorghum stem for stage 5.
Definition at line 922 of file CanopyGenerator.h.
float SorghumCanopyParameters::s5_stem_radius |
Radius of the sorghum stem for stage 5.
Definition at line 925 of file CanopyGenerator.h.
int SorghumCanopyParameters::s5_stem_subdivisions |
Number of stem radial subdivisions for stage 5.
Definition at line 931 of file CanopyGenerator.h.
int SorghumCanopyParameters::sorghum_stage |
Sorghum categorized into 5 stages; 1 - Three leaf stage, 2 - Five leaf stage, 3 - Panicle initiation and flag leaf emergency, 4 - Booting, and flowering, 5 - Maturity; Input of a value other than 1-5 will output stage 5.
Definition at line 774 of file CanopyGenerator.h.