Parameters defining the homogeneous canopy. More...
#include <CanopyGenerator.h>
Public Member Functions | |
| HomogeneousCanopyParameters () | |
| Default constructor. | |
| HomogeneousCanopyParameters (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. | |
Public Member Functions inherited from BaseCanopyParameters | |
| 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 | |
| helios::vec2 | leaf_size |
| Length of leaf in x- and y- directions (prior to rotation) | |
| helios::int2 | leaf_subdivisions |
| Number of sub-division segments per leaf. | |
| std::string | leaf_texture_file |
| Path to texture map file for leaves. If left empty, no texture will be used. | |
| helios::RGBcolor | leaf_color |
| Leaf color if no texture map file is provided. | |
| std::string | leaf_angle_distribution |
| Leaf angle distribution - one of "spherical", "uniform", "erectophile", "planophile", "plagiophile", "extremophile". | |
| float | leaf_area_index |
| One-sided leaf area index of the canopy. | |
| float | canopy_height |
| Height of the canopy. | |
| helios::vec2 | canopy_extent |
| Horizontal extent of the canopy in the x- and y-directions. | |
| std::vector< float > | leaf_angle_PDF |
| std::string | buffer |
| String specifying whether leaves should be placed so that leaf edges do not fall outside the specified canopy dimensions ("z", "xyz", or "none") | |
Data Fields inherited from BaseCanopyParameters | |
| 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 the homogeneous canopy.
Definition at line 57 of file CanopyGenerator.h.
| HomogeneousCanopyParameters::HomogeneousCanopyParameters | ( | ) |
Default constructor.
Definition at line 51 of file CanopyGenerator.cpp.
| HomogeneousCanopyParameters::HomogeneousCanopyParameters | ( | const pugi::xml_node | canopy_node | ) |
| [in] | canopy_node | XML node containing the canopy parameters |
Definition at line 70 of file CanopyGenerator.cpp.
|
overridevirtual |
Makes the given Canopy generator build a canopy of our type with our parameters.
Implements BaseCanopyParameters.
Definition at line 130 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 126 of file CanopyGenerator.cpp.
| void HomogeneousCanopyParameters::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 74 of file CanopyGenerator.cpp.
| std::string HomogeneousCanopyParameters::buffer |
String specifying whether leaves should be placed so that leaf edges do not fall outside the specified canopy dimensions ("z", "xyz", or "none")
Definition at line 107 of file CanopyGenerator.h.
| helios::vec2 HomogeneousCanopyParameters::canopy_extent |
Horizontal extent of the canopy in the x- and y-directions.
Definition at line 101 of file CanopyGenerator.h.
| float HomogeneousCanopyParameters::canopy_height |
Height of the canopy.
Definition at line 98 of file CanopyGenerator.h.
| std::string HomogeneousCanopyParameters::leaf_angle_distribution |
Leaf angle distribution - one of "spherical", "uniform", "erectophile", "planophile", "plagiophile", "extremophile".
Definition at line 92 of file CanopyGenerator.h.
| std::vector<float> HomogeneousCanopyParameters::leaf_angle_PDF |
Definition at line 104 of file CanopyGenerator.h.
| float HomogeneousCanopyParameters::leaf_area_index |
One-sided leaf area index of the canopy.
Definition at line 95 of file CanopyGenerator.h.
| helios::RGBcolor HomogeneousCanopyParameters::leaf_color |
Leaf color if no texture map file is provided.
Definition at line 89 of file CanopyGenerator.h.
| helios::vec2 HomogeneousCanopyParameters::leaf_size |
Length of leaf in x- and y- directions (prior to rotation)
Definition at line 80 of file CanopyGenerator.h.
| helios::int2 HomogeneousCanopyParameters::leaf_subdivisions |
Number of sub-division segments per leaf.
Definition at line 83 of file CanopyGenerator.h.
| std::string HomogeneousCanopyParameters::leaf_texture_file |
Path to texture map file for leaves. If left empty, no texture will be used.
Definition at line 86 of file CanopyGenerator.h.