1.3.49
 
Loading...
Searching...
No Matches
WhiteSpruceCanopyParameters Struct Reference

Parameters defining the white spruce. More...

#include <CanopyGenerator.h>

Inheritance diagram for WhiteSpruceCanopyParameters:
BaseCanopyParameters

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.
 
- 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

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.
 
- 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.
 

Detailed Description

Parameters defining the white spruce.

Definition at line 480 of file CanopyGenerator.h.

Constructor & Destructor Documentation

◆ WhiteSpruceCanopyParameters() [1/2]

WhiteSpruceCanopyParameters::WhiteSpruceCanopyParameters ( )

Default constructor.

Definition at line 834 of file CanopyGenerator.cpp.

◆ WhiteSpruceCanopyParameters() [2/2]

WhiteSpruceCanopyParameters::WhiteSpruceCanopyParameters ( const pugi::xml_node  canopy_node)
Parameters
[in]canopy_nodeXML node containing the canopy parameters

Definition at line 871 of file CanopyGenerator.cpp.

Member Function Documentation

◆ buildCanopy()

void WhiteSpruceCanopyParameters::buildCanopy ( CanopyGenerator canopy_generator)
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.

◆ buildPlant()

void WhiteSpruceCanopyParameters::buildPlant ( CanopyGenerator canopy_generator,
helios::vec3  origin 
)
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.

◆ readParametersFromXML()

void WhiteSpruceCanopyParameters::readParametersFromXML ( const pugi::xml_node  canopy_node)

Sets canopy parameters from the given XML node.

Parameters
[in]canopy_nodeXML node containing the canopy parameters

Definition at line 875 of file CanopyGenerator.cpp.

Field Documentation

◆ base_height

float WhiteSpruceCanopyParameters::base_height

Height at which branches start.

Definition at line 527 of file CanopyGenerator.h.

◆ branches_per_level

int WhiteSpruceCanopyParameters::branches_per_level

Number of primary branches on the bottom level.

Definition at line 539 of file CanopyGenerator.h.

◆ canopy_configuration

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.

◆ crown_radius

float WhiteSpruceCanopyParameters::crown_radius

Radius of the crown at the base.

Definition at line 530 of file CanopyGenerator.h.

◆ level_spacing

float WhiteSpruceCanopyParameters::level_spacing

Vertical spacing between branching levels.

Definition at line 536 of file CanopyGenerator.h.

◆ needle_color

helios::RGBcolor WhiteSpruceCanopyParameters::needle_color

Color of needles.

Definition at line 512 of file CanopyGenerator.h.

◆ needle_length

float WhiteSpruceCanopyParameters::needle_length

Length of needles.

Definition at line 506 of file CanopyGenerator.h.

◆ needle_subdivisions

helios::int2 WhiteSpruceCanopyParameters::needle_subdivisions

Number of sub-division segments per needle.

Definition at line 509 of file CanopyGenerator.h.

◆ needle_width

float WhiteSpruceCanopyParameters::needle_width

Width of needles.

Definition at line 503 of file CanopyGenerator.h.

◆ plant_count

helios::int2 WhiteSpruceCanopyParameters::plant_count

Number of crowns/plants in the x- and y-directions.

Definition at line 551 of file CanopyGenerator.h.

◆ plant_spacing

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.

◆ shoot_angle

float WhiteSpruceCanopyParameters::shoot_angle

Maximum shoot angle.

Definition at line 542 of file CanopyGenerator.h.

◆ shoot_radius

float WhiteSpruceCanopyParameters::shoot_radius

Radius of shoot branches.

Definition at line 533 of file CanopyGenerator.h.

◆ trunk_height

float WhiteSpruceCanopyParameters::trunk_height

Distance between the ground and top of trunks.

Definition at line 521 of file CanopyGenerator.h.

◆ trunk_radius

float WhiteSpruceCanopyParameters::trunk_radius

Radius of the trunk at the base.

Definition at line 524 of file CanopyGenerator.h.

◆ wood_subdivisions

int WhiteSpruceCanopyParameters::wood_subdivisions

Number of radial subdivisions for trunk/cordon/shoot tubes.

Definition at line 518 of file CanopyGenerator.h.

◆ wood_texture_file

std::string WhiteSpruceCanopyParameters::wood_texture_file

Path to texture map file for trunks/branches.

Definition at line 515 of file CanopyGenerator.h.


The documentation for this struct was generated from the following files: