sexi.comp
Class Tree
java.lang.Object
|
+--sexi.comp.TreeBasic
|
+--sexi.comp.Tree
- All Implemented Interfaces:
- java.lang.Cloneable, LinkTree, java.io.Serializable
- public class Tree
- extends TreeBasic
- implements java.io.Serializable
- See Also:
- Serialized Form
Field Summary |
(package private) java.util.ArrayList |
crownGhost
|
Fields inherited from class sexi.comp.TreeBasic |
age, altitude, basicChar, crown, N_EAST, N_INNER, N_NORTH, N_NORTH_EAST, N_NORTH_WEST, N_SOUTH, N_SOUTH_EAST, N_SOUTH_WEST, N_WEST, neighbourMap, trunk |
Constructor Summary |
Tree(TreeSpec s)
|
Tree(TreeSpec s,
float dbh)
|
Tree(TreeSpec s,
Tree t)
Create new tree with the specified TreeSpec and the same field value as the
tree in the parameters, except neighbours collection (empty). |
Methods inherited from class sexi.comp.TreeBasic |
addNeighbour, addNeighbour, clearNeighbour, clone, contains, contains, contains, containsCrown, getAge, getAltitude, getBaseLocation, getBasicCharacteristics, getCF, getCFIndex, getCPIndex, getCrown, getCrownBottomPosition, getCrownCenterPosition, getCrownFigure, getCrownHeight, getCrownLocation, getCrownTopPosition, getDBH, getForestBasicStand, getHeight, getID, getIntersectPoint, getIntersectPoint, getLight, getLocation, getNeighbourConstant, getNeighbours, getNeighbours, getNeighboursAll, getNeighboursMap, getNeighboursReferences, getOuterCrownLocation, getOuterLocation, getTopArea, getTrunk, getTrunkHeight, getWidth, getXPosition, getYPosition, getZPosition, isSapling, isTopIntersect, removeNeighbour, setAge, setAltitude, setBaseLocation, setBasicCharacteristics, setCF, setCrown, setCrownHeight, setCrownLocation, setCrownVerExt, setCrownVerRadius, setCrownWidth, setDBH, setForestBasicStand, setHeight, setID, setLight, setLocation, toString |
Methods inherited from class java.lang.Object |
, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
crownGhost
java.util.ArrayList crownGhost
Tree
public Tree(TreeSpec s)
Tree
public Tree(TreeSpec s,
float dbh)
Tree
public Tree(TreeSpec s,
Tree t)
- Create new tree with the specified TreeSpec and the same field value as the
tree in the parameters, except neighbours collection (empty).
New tree will have the same ghost crown object.
setSpec
public void setSpec(TreeSpec s)
getSpec
public TreeSpec getSpec()
setNormalFigure
public void setNormalFigure(float dbh)
growth
public void growth()
- The main calculation methode of forest simulator.
called after calculating the light and identified
the neighbour (the CrownSet) in GrowthCalculator class.
CALCULATION ALGORITHM
1. light_stress = getFromCurve(CP, min_opt_max_light_curve)
CP = light rasio accepted -> calculated by LightCalculator
<> float GrowthFormula.getLightStress( float cp,
float min,
float opt,
float max);
2. CF = crown_surface_ratio /((height_actual/height_normal)^2)
3. fertility_rasio = fertlity_map()
4. DBH_inc = GrowthFormula.getDBHInc(DBH_actual);
5. DBH_inc_actual = DBH_inc * light_stress * CF * fertility_rasio;
6. DBH_new = DBH_actual + DBH_inc_actual;
7. height_new = height_actual + k*exp(-k*(DBH_actual-0.05)/(Hmax-Ho))*DBH_inc_actual*Nhelio
Nhelio = (1+(heliotropism*(opt_light-act_light))/opt_light)^2
8. Crown_shape = TreeCharateristic.getCrownSet(DBH_new);
isPointBroken
public boolean isPointBroken(Point3f p)
- Overrides:
isPointBroken
in class TreeBasic
isLive
public boolean isLive()
setLive
public void setLive(boolean b)
kill
public void kill()
setGroundFertility
public void setGroundFertility(float f)
getGroundFertility
public float getGroundFertility()
isLoggedEnable
public boolean isLoggedEnable()
- user specified when this tree is enable for logged
getDBHInc
public float getDBHInc()
getData
public TreeData getData()
getProduct
public float getProduct()
getCP
public float getCP()
getProduceAge
public int getProduceAge()
getGhostCrown
public java.util.Collection getGhostCrown()
updateCrownForm
public void updateCrownForm(boolean isTorus,
DimensionArea area)