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).
 
Method Summary
 float getCP()
           
 TreeData getData()
           
 float getDBHInc()
           
 java.util.Collection getGhostCrown()
           
 float getGroundFertility()
           
 int getProduceAge()
           
 float getProduct()
           
 TreeSpec getSpec()
           
 void growth()
          The main calculation methode of forest simulator.
 boolean isLive()
           
 boolean isLoggedEnable()
          user specified when this tree is enable for logged
 boolean isPointBroken(Point3f p)
           
 void kill()
           
 void setGroundFertility(float f)
           
 void setLive(boolean b)
           
 void setNormalFigure(float dbh)
           
 void setSpec(TreeSpec s)
           
 void updateCrownForm(boolean isTorus, DimensionArea area)
           
 
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
 

Field Detail

crownGhost

java.util.ArrayList crownGhost
Constructor Detail

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

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)