de.grogra.lignum.stlVoxelspace
public class VoxelSpaceNode extends NullWithShaderNode implements VoxelSpaceIF, Instantiator<Instantiation>, Mathsym
Node.AccessorBridge, Node.FieldAttributeAccessor, Node.NType| Modifier and Type | Field and Description |
|---|---|
static Node.NType |
$TYPE |
int |
hitfol |
int |
hitself |
int |
hitw |
int |
nohit |
int |
sgmnt |
boolean |
visible |
static Node.NType.Field |
visible$FIELD |
VoxelBox[][][] |
voxboxes |
double |
Xbox |
int |
Xn |
double |
Ybox |
int |
Yn |
double |
Zbox |
int |
Zn |
INFINITE_MASK, interior, interior$FIELD, shader, shader$FIELD, treatedAsInfinite$FIELD, USED_BITStransform, transform$FIELD, TRANSFORMING_MASK, transforming$FIELDADDITIONAL_FIELDS, bits, DELETED, EXTENT_BIT, EXTENT_MASK, extentIndex$FIELD, extentTail$FIELD, HAS_OBSERVERS, IS_INTERPRETIVE, isInterpretive$FIELD, LAST_EXTENT_INDEX, layer$FIELD, MARK, mark$FIELD, MIME_TYPE, MIN_UNUSED_SPECIAL_OF_SOURCE, MIN_UNUSED_SPECIAL_OF_TARGET, name$FIELDHIT_THE_FOLIAGE, HIT_THE_WOOD, NO_HIT, PI_DIV_2, R_EPSILON, R_HUGEDEFAULT_VALUE, EMPTY_MAP| Constructor and Description |
|---|
VoxelSpaceNode()
Default constructor. corner1=(0,0,0), corner2=(1,1,1) 5,5,5 number of
VoxBoxes in x,y, and z direction
|
VoxelSpaceNode(Point3d c1,
Point3d c2,
double xsize,
double ysize,
double zsize,
int xn,
int yn,
int zn,
Firmament f,
double kb) |
VoxelSpaceNode(Point3d c1,
Point3d c2,
int xn,
int yn,
int zn,
Firmament f) |
| Modifier and Type | Method and Description |
|---|---|
void |
calculateMeanQabsQin() |
double |
calculateTurbidLight() |
double |
calculateTurbidLight(boolean self_shading) |
void |
DumpCfTree(VoxelSpaceIF s,
Tree tree,
int num_parts,
boolean wood) |
void |
evaluateVerticalNeedleAreaDensity(double Hmax,
double Hmin,
int n,
java.util.Vector<PairMinMax> NAD) |
void |
fillVoxelBoxes(double needleA,
double leafA) |
void |
fillVoxelBoxes(double inivalue,
int beginZ,
int endZ) |
void |
FillVoxelBoxesWithNeedles(double Sf,
double Wf,
double Rf,
double L,
int beginZ,
int endZ) |
double |
getArea() |
VOBookKeeper |
getBookKeeper() |
double |
getBorderStandExtinction(Point3d p0,
PositionVector dir) |
java.util.Vector<java.lang.Integer> |
getBoxIndexes(Point3d p) |
double |
getBoxVolume() |
double |
getFoliageArea() |
double |
getFoliageMass() |
ForestDescriptor |
getForestDescriptor() |
Instantiator |
getInstantiator() |
double |
getK_b() |
double |
getLeafArea() |
Point3d |
getLowerLeftCorner() |
double |
getMeanFoliageAreaDensity() |
PairMinMax |
getMinMaxNeedleMass() |
double |
getNeedleArea() |
protected Node.NType |
getNTypeImpl()
This method returns the
Node.NType which describes the managed
fields of the class of this node. |
int |
getNumberOfBoxes() |
int |
getNumberOfFilledBoxes() |
int |
getNumberOfTreeSegments() |
double |
getQabs() |
double |
getQin() |
java.util.Vector<VoxelMovement> |
getRoute(java.util.Vector<VoxelMovement> vec,
int startx,
int starty,
int startz,
PositionVector dir) |
java.util.Vector<VoxelMovement> |
getRoute(java.util.Vector<VoxelMovement> vec,
Point3d p0,
PositionVector dir,
ParametricCurve K,
boolean pairwise) |
Point3d |
getUpperRightCorner() |
VoxelBox |
getVoxelBox(Point3d p) |
double |
getXbox() |
int |
getXindex(double local_xcoord) |
double |
getXSideLength() |
double |
getYbox() |
int |
getYindex(double local_ycoord) |
double |
getYSideLength() |
double |
getZbox() |
int |
getZindex(double local_zcoord) |
double |
getZSideLength() |
void |
incHitfol() |
void |
incHitself() |
void |
incHitw() |
void |
incNohit() |
void |
instantiate(Instantiation state) |
boolean |
isVisible() |
void |
move(Point3d corner) |
static double |
NearbyShading(Point3d out,
PositionVector direction,
double Htop,
double Hbot,
double LAIc,
double LAIb) |
static double |
NearbyShading(Point3d out,
PositionVector direction,
double Htop,
double Hbot,
double LAIc,
double LAIb,
double k_conifer,
double k_deciduous) |
protected Node |
newInstance()
This method returns a new instance of the class of this
node.
|
void |
reset() |
void |
resetQinQabs() |
void |
resize(double lX,
double lY,
double lZ) |
void |
resize(double lX,
double lY,
double lZ,
int nX,
int nY,
int nZ) |
void |
resize(int x,
int y,
int z) |
void |
resize(Point3d lower_left,
Point3d upper_right) |
void |
setVisible(boolean value) |
void |
updateBoxValues() |
draw, pickgetInterior, getShader, getSurfaceArea, getSymbolColor, getVolume, isTreatedAsInfinite, setBackShader, setColor, setColor, setFrontShader, setInterior, setMaterial, setShader, setShaders, setTreatedAsInfinitegetLocalTransformation, getTransform, getTranslation, isTransforming, postTransform, preTransform, setRotation, setScale, setTransform, setTransform, setTransform, setTransform, setTransform, setTransform, setTransform, setTransform, setTransforming, setTranslationaddEdgeBitsTo, addReference, appendBranchNode, appendBranchNode, appendReferencesTo, clone, clone, cloneGraph, dump, dumpTree, dup, dupUnmanagedFields, edgeChanged, fieldModified, findAdjacent, findRefinementType, get, getAccessor, getAccessor, getAttributes, getAxisParent, getBoolean, getBranch, getBranchLength, getBranchNode, getBranchTail, getByte, getChar, getCommonAncestor, getCurrentGraphState, getDirectChildCount, getDouble, getEdgeAttributeAccessor, getEdgeAttributes, getEdgeBitsTo, getEdgeTo, getExtentIndex, getFirst, getFirstEdge, getFloat, getGraph, getId, getIndex, getInt, getLayer, getLong, getManageableType, getName, getNeighbor, getNext, getNType, getObject, getOrCreateEdgeTo, getOrNull, getPersistenceManager, getPredecessor, getProvider, getShort, getSource, getStamp, getSuccessor, getSymbol, getTarget, getTransaction, getUserField, getUserFieldCount, getXClass, getXData, hasName, initProvider, initXClass, insertBranchNode, insertBranchNode, instantiateGraph, isAncestorOf, isDirection, isEncoarseOf, isManagingInstance, isMarked, isRoot, isSource, isTarget, manageableReadResolve, manageableWriteReplace, paramString, removeAll, removeEdgeBitsTo, removeFromChain, removeFromChain, removeReference, setBranch, setBranch, setExtentIndex, setGraphForDeserialization, setLayer, setMark, setName, setSuccessor, setSuccessor, specialEdgeAdded, specialEdgeRefModified, specialEdgeRemoved, toString, writeReplaceaddEdgeBits, getBitMark, getEdgeBits, getObjectMark, getSpecialEdgeDescriptor, parseEdgeKeys, remove, removeEdgeBits, setBitMark, setEdgeBits, setObjectMark, testEdgeBitsequals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetBitMark, getObjectMark, setBitMark, setObjectMarkpublic static final Node.NType $TYPE
public int hitfol
public int hitself
public int hitw
public int nohit
public int sgmnt
public boolean visible
public static final Node.NType.Field visible$FIELD
public VoxelBox[][][] voxboxes
public double Xbox
public int Xn
public double Ybox
public int Yn
public double Zbox
public int Zn
public VoxelSpaceNode()
public VoxelSpaceNode(Point3d c1, Point3d c2, double xsize, double ysize, double zsize, int xn, int yn, int zn, Firmament f, double kb)
public void calculateMeanQabsQin()
calculateMeanQabsQin in interface VoxelSpaceIFpublic double calculateTurbidLight()
calculateTurbidLight in interface VoxelSpaceIFpublic double calculateTurbidLight(boolean self_shading)
calculateTurbidLight in interface VoxelSpaceIFpublic void DumpCfTree(VoxelSpaceIF s, Tree tree, int num_parts, boolean wood)
public void evaluateVerticalNeedleAreaDensity(double Hmax,
double Hmin,
int n,
java.util.Vector<PairMinMax> NAD)
evaluateVerticalNeedleAreaDensity in interface VoxelSpaceIFpublic void fillVoxelBoxes(double needleA,
double leafA)
fillVoxelBoxes in interface VoxelSpaceIFpublic void fillVoxelBoxes(double inivalue,
int beginZ,
int endZ)
fillVoxelBoxes in interface VoxelSpaceIFpublic void FillVoxelBoxesWithNeedles(double Sf,
double Wf,
double Rf,
double L,
int beginZ,
int endZ)
FillVoxelBoxesWithNeedles in interface VoxelSpaceIFpublic double getArea()
getArea in interface VoxelSpaceIFpublic VOBookKeeper getBookKeeper()
getBookKeeper in interface VoxelSpaceIFpublic double getBorderStandExtinction(Point3d p0, PositionVector dir)
getBorderStandExtinction in interface VoxelSpaceIFpublic java.util.Vector<java.lang.Integer> getBoxIndexes(Point3d p)
getBoxIndexes in interface VoxelSpaceIFpublic double getBoxVolume()
getBoxVolume in interface VoxelSpaceIFpublic double getFoliageArea()
getFoliageArea in interface VoxelSpaceIFpublic double getFoliageMass()
getFoliageMass in interface VoxelSpaceIFpublic ForestDescriptor getForestDescriptor()
getForestDescriptor in interface VoxelSpaceIFpublic Instantiator getInstantiator()
getInstantiator in class Nodepublic double getK_b()
getK_b in interface VoxelSpaceIFpublic double getLeafArea()
getLeafArea in interface VoxelSpaceIFpublic Point3d getLowerLeftCorner()
getLowerLeftCorner in interface VoxelSpaceIFpublic double getMeanFoliageAreaDensity()
getMeanFoliageAreaDensity in interface VoxelSpaceIFpublic PairMinMax getMinMaxNeedleMass()
getMinMaxNeedleMass in interface VoxelSpaceIFpublic double getNeedleArea()
getNeedleArea in interface VoxelSpaceIFprotected Node.NType getNTypeImpl()
NodeNode.NType which describes the managed
fields of the class of this node. This method has to be implemented
in every concrete subclass.getNTypeImpl in class NullWithShaderNodepublic int getNumberOfBoxes()
getNumberOfBoxes in interface VoxelSpaceIFpublic int getNumberOfFilledBoxes()
getNumberOfFilledBoxes in interface VoxelSpaceIFpublic int getNumberOfTreeSegments()
getNumberOfTreeSegments in interface VoxelSpaceIFpublic double getQabs()
getQabs in interface VoxelSpaceIFpublic double getQin()
getQin in interface VoxelSpaceIFpublic java.util.Vector<VoxelMovement> getRoute(java.util.Vector<VoxelMovement> vec, int startx, int starty, int startz, PositionVector dir)
getRoute in interface VoxelSpaceIFpublic java.util.Vector<VoxelMovement> getRoute(java.util.Vector<VoxelMovement> vec, Point3d p0, PositionVector dir, ParametricCurve K, boolean pairwise)
getRoute in interface VoxelSpaceIFpublic Point3d getUpperRightCorner()
getUpperRightCorner in interface VoxelSpaceIFpublic VoxelBox getVoxelBox(Point3d p)
getVoxelBox in interface VoxelSpaceIFpublic double getXbox()
getXbox in interface VoxelSpaceIFpublic int getXindex(double local_xcoord)
getXindex in interface VoxelSpaceIFpublic double getXSideLength()
getXSideLength in interface VoxelSpaceIFpublic double getYbox()
getYbox in interface VoxelSpaceIFpublic int getYindex(double local_ycoord)
getYindex in interface VoxelSpaceIFpublic double getYSideLength()
getYSideLength in interface VoxelSpaceIFpublic double getZbox()
getZbox in interface VoxelSpaceIFpublic int getZindex(double local_zcoord)
getZindex in interface VoxelSpaceIFpublic double getZSideLength()
getZSideLength in interface VoxelSpaceIFpublic void incHitfol()
incHitfol in interface VoxelSpaceIFpublic void incHitself()
incHitself in interface VoxelSpaceIFpublic void incHitw()
incHitw in interface VoxelSpaceIFpublic void incNohit()
incNohit in interface VoxelSpaceIFpublic void instantiate(Instantiation state)
instantiate in interface Instantiator<Instantiation>public boolean isVisible()
public void move(Point3d corner)
move in interface VoxelSpaceIFpublic static double NearbyShading(Point3d out, PositionVector direction, double Htop, double Hbot, double LAIc, double LAIb)
public static double NearbyShading(Point3d out, PositionVector direction, double Htop, double Hbot, double LAIc, double LAIb, double k_conifer, double k_deciduous)
protected Node newInstance()
NodenewInstance in class NullWithShaderNodepublic void reset()
reset in interface VoxelSpaceIFpublic void resetQinQabs()
resetQinQabs in interface VoxelSpaceIFpublic void resize(double lX,
double lY,
double lZ)
resize in interface VoxelSpaceIFpublic void resize(double lX,
double lY,
double lZ,
int nX,
int nY,
int nZ)
resize in interface VoxelSpaceIFpublic void resize(int x,
int y,
int z)
resize in interface VoxelSpaceIFpublic void resize(Point3d lower_left, Point3d upper_right)
resize in interface VoxelSpaceIFpublic void setVisible(boolean value)
public void updateBoxValues()
updateBoxValues in interface VoxelSpaceIF