#include <SailLight.h>
Inheritance diagram for clSailLight:
Public Member Functions | |
clSailLight (clSimManager *p_oSimManager) | |
Constructor. | |
~clSailLight () | |
Destructor. | |
void | DoShellSetup (xercesc::DOMDocument *p_oDoc) |
Reads some extra parameters from the parameter file and does setup. | |
float | CalcLightValue (clTree *p_oTree, clTreePopulation *p_oPop) |
Calculates a fraction shade value. | |
Protected Types | |
yes | |
The crown extends the full length of the trunk. | |
no | |
The crown has a bottom according to normal allometry equations. | |
enum | crowndpthequalsheight { yes, no } |
The fraction of shading neighbor height which is assumed to be crown. More... | |
Protected Member Functions | |
void | AddTreeToSailFishEye (const float &fTargetX, const float &fTargetY, const float &fTargetHeight, clTree *p_oNeighbor, clPlot *p_oPlot, clTreePopulation *p_oPop, clAllometry *p_oAllom) |
Adds one shading neighbor to the fisheye photo array for a sail light calculation. | |
Protected Attributes | |
float | m_fMaxShadingRadius |
Maximum radius at which trees can shade, in meters. | |
float * | mp_fAltTans |
Tangent of each altitude angle. | |
enum clSailLight::crowndpthequalsheight | m_iCrownDepthEqualsHeight |
The fraction of shading neighbor height which is assumed to be crown Crown depth from parameter file. |
This calculates the percent shade for a tree using the sail light method. The namestring for this behavior is "saillightshell".
Copyright 2003 Charles D. Canham.
enum clSailLight::crowndpthequalsheight [protected] |
clSailLight::clSailLight | ( | clSimManager * | p_oSimManager | ) |
Constructor.
p_oSimManager | Sim Manager object. |
void clSailLight::AddTreeToSailFishEye | ( | const float & | fTargetX, | |
const float & | fTargetY, | |||
const float & | fTargetHeight, | |||
clTree * | p_oNeighbor, | |||
clPlot * | p_oPlot, | |||
clTreePopulation * | p_oPop, | |||
clAllometry * | p_oAllom | |||
) | [protected] |
Adds one shading neighbor to the fisheye photo array for a sail light calculation.
fTargetX | X coordinate of target tree | |
fTargetY | Y coordinate of target tree | |
fTargetHeight | Height of target tree, in meters | |
p_oNeighbor | The neighbor to be added | |
p_oPlot | Pointer to the plot object | |
p_oPop | Pointer to the tree population object | |
p_oAllom | Pointer to an allometry object |
float clSailLight::CalcLightValue | ( | clTree * | p_oTree, | |
clTreePopulation * | p_oPop | |||
) | [virtual] |
Calculates a fraction shade value.
p_oTree | Tree for which to calculate the fraction shade. | |
p_oPop | Tree population object. |
Implements clLightBase.
void clSailLight::DoShellSetup | ( | xercesc::DOMDocument * | p_oDoc | ) | [virtual] |
Reads some extra parameters from the parameter file and does setup.
Number of azimuth angles and number of altitude angles are required to be present in the "sailLight" tag. The sky brightness array is populated for sail light.
p_oDoc | DOM tree of parsed input file. |
Reimplemented from clLightBase.
float* clSailLight::mp_fAltTans [protected] |
Tangent of each altitude angle.
Array size is 90 (degrees)