Parameters defining the white spruce. More...
#include <CanopyGenerator.h>
Public Member Functions | |
WhiteSpruceCanopyParameters () | |
Default constructor. | |
WhiteSpruceCanopyParameters (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 | |
float | needle_width |
Width of needles. | |
float | needle_length |
Length of needles. | |
helios::int2 | needle_subdivisions |
Number of sub-division segments per needle. | |
helios::RGBcolor | needle_color |
Color of needles. | |
std::string | wood_texture_file |
Path to texture map file for trunks/branches. | |
int | wood_subdivisions |
Number of radial subdivisions for trunk/cordon/shoot tubes. | |
float | trunk_height |
Distance between the ground and top of trunks. | |
float | trunk_radius |
Radius of the trunk at the base. | |
float | base_height |
Height at which branches start. | |
float | crown_radius |
Radius of the crown at the base. | |
float | shoot_radius |
Radius of shoot branches. | |
float | level_spacing |
Vertical spacing between branching levels. | |
int | branches_per_level |
Number of primary branches on the bottom level. | |
float | shoot_angle |
Maximum shoot angle. | |
std::string | canopy_configuration |
Specifies whether to use a uniformly spaced canopy (canopy_configuration="uniform") or a randomly arranged canopy with non-overlapping crowns (canopy_configuration="random"). | |
helios::vec2 | plant_spacing |
Spacing between adjacent crowns in the x- and y-directions. Note that if canopy_configuration='random' this is the average spacing. | |
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 the white spruce.
Definition at line 480 of file CanopyGenerator.h.
WhiteSpruceCanopyParameters::WhiteSpruceCanopyParameters | ( | ) |
Default constructor.
Definition at line 834 of file CanopyGenerator.cpp.
WhiteSpruceCanopyParameters::WhiteSpruceCanopyParameters | ( | const pugi::xml_node | canopy_node | ) |
[in] | canopy_node | XML node containing the canopy parameters |
Definition at line 871 of file CanopyGenerator.cpp.
|
overridevirtual |
Makes the given Canopy generator build a canopy of our type with our parameters.
Implements BaseCanopyParameters.
Definition at line 963 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 959 of file CanopyGenerator.cpp.
void WhiteSpruceCanopyParameters::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 875 of file CanopyGenerator.cpp.
float WhiteSpruceCanopyParameters::base_height |
Height at which branches start.
Definition at line 527 of file CanopyGenerator.h.
int WhiteSpruceCanopyParameters::branches_per_level |
Number of primary branches on the bottom level.
Definition at line 539 of file CanopyGenerator.h.
std::string WhiteSpruceCanopyParameters::canopy_configuration |
Specifies whether to use a uniformly spaced canopy (canopy_configuration="uniform") or a randomly arranged canopy with non-overlapping crowns (canopy_configuration="random").
Definition at line 545 of file CanopyGenerator.h.
float WhiteSpruceCanopyParameters::crown_radius |
Radius of the crown at the base.
Definition at line 530 of file CanopyGenerator.h.
float WhiteSpruceCanopyParameters::level_spacing |
Vertical spacing between branching levels.
Definition at line 536 of file CanopyGenerator.h.
helios::RGBcolor WhiteSpruceCanopyParameters::needle_color |
Color of needles.
Definition at line 512 of file CanopyGenerator.h.
float WhiteSpruceCanopyParameters::needle_length |
Length of needles.
Definition at line 506 of file CanopyGenerator.h.
helios::int2 WhiteSpruceCanopyParameters::needle_subdivisions |
Number of sub-division segments per needle.
Definition at line 509 of file CanopyGenerator.h.
float WhiteSpruceCanopyParameters::needle_width |
Width of needles.
Definition at line 503 of file CanopyGenerator.h.
helios::int2 WhiteSpruceCanopyParameters::plant_count |
Number of crowns/plants in the x- and y-directions.
Definition at line 551 of file CanopyGenerator.h.
helios::vec2 WhiteSpruceCanopyParameters::plant_spacing |
Spacing between adjacent crowns in the x- and y-directions. Note that if canopy_configuration='random' this is the average spacing.
Definition at line 548 of file CanopyGenerator.h.
float WhiteSpruceCanopyParameters::shoot_angle |
Maximum shoot angle.
Definition at line 542 of file CanopyGenerator.h.
float WhiteSpruceCanopyParameters::shoot_radius |
Radius of shoot branches.
Definition at line 533 of file CanopyGenerator.h.
float WhiteSpruceCanopyParameters::trunk_height |
Distance between the ground and top of trunks.
Definition at line 521 of file CanopyGenerator.h.
float WhiteSpruceCanopyParameters::trunk_radius |
Radius of the trunk at the base.
Definition at line 524 of file CanopyGenerator.h.
int WhiteSpruceCanopyParameters::wood_subdivisions |
Number of radial subdivisions for trunk/cordon/shoot tubes.
Definition at line 518 of file CanopyGenerator.h.
std::string WhiteSpruceCanopyParameters::wood_texture_file |
Path to texture map file for trunks/branches.
Definition at line 515 of file CanopyGenerator.h.