- All Implemented Interfaces:
Transformation
,VertexSequence.Vertex
,Manageable
,PersistenceCapable
,Shareable
,UserFields
,XObject
,TurtleModifier
,Map
,Serializable
The turtle command
The diameter of the cylinder is
This corresponds to the turtle command
F(x)
represents a cylinder along the local z-direction.
In addition, this command translates the local coordinate system
along the axis of the cylinder such that the origin of the
children's coordinate system coincides with the center of the cylinder's top.
The diameter of the cylinder is
diameter
, if this value
is non-negative, otherwise it
is taken from the field
localDiameter
of the current TurtleState
.
The shader of the cylinder
is defined by the color
, if this value
is non-negative, otherwise it
is taken from the the current TurtleState
.
The length of the axis is
defined by length
.
This corresponds to the turtle command
F(x)
of the GROGRA software.- Author:
- Ole Kniemeyer
- See Also:
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic class
static class
static class
Nested classes/interfaces inherited from class de.grogra.graph.impl.Node
Node.AccessorBridge, Node.FieldAttributeAccessor, Node.NType
-
Field Summary
Modifier and TypeFieldDescriptionstatic final Node.NType
int
static final Node.NType.Field
float
static final Node.NType.Field
float
static final Node.NType.Field
Fields inherited from class de.grogra.turtle.Shoot
localRegisters$FIELD
Fields inherited from class de.grogra.imp3d.objects.AxisBase
SCALE_V_MASK, scaleV$FIELD, USED_BITS
Fields inherited from class de.grogra.imp3d.objects.ShadedNull
INFINITE_MASK, interior, interior$FIELD, renderAsWireframe, renderAsWireframe$FIELD, shader, shader$FIELD, treatedAsInfinite$FIELD
Fields inherited from class de.grogra.imp3d.objects.Null
transform, transform$FIELD, TRANSFORMING_MASK, transforming$FIELD
Fields inherited from class de.grogra.graph.impl.Node
ADDITIONAL_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, MAX_RESOLUTION, MIME_TYPE, MIN_RESOLUTION, MIN_UNUSED_SPECIAL_OF_SOURCE, MIN_UNUSED_SPECIAL_OF_TARGET, name$FIELD, RESOLUTION_BIT, RESOLUTION_MASK, resolution$FIELD
Fields inherited from interface de.grogra.util.Map
DEFAULT_VALUE, EMPTY_MAP
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected float
getFloat
(FloatAttribute a, GraphState gs) protected int
getInt
(IntAttribute a, GraphState gs) float
getLength
(Object node, GraphState gs) protected Node.NType
This method returns theNode.NType
which describes the managed fields of the class of this node.double
Calculates the area of an object.double
Calculates the volume.protected Node
This method returns a new instance of the class of this node.Methods inherited from class de.grogra.turtle.Shoot
execute, getBoolean, getLocalRegisters, getObject, getSymbolColor, getVertexTransformation, setLocalRegisters
Methods inherited from class de.grogra.turtle.TurtleStep
getDouble, postTransform
Methods inherited from class de.grogra.imp3d.objects.ShadedNull
getInterior, getShader, isRenderAsWireframe, isTreatedAsInfinite, setBackShader, setColor, setColor, setFrontShader, setInterior, setMaterial, setRenderAsWireframe, setShader, setShaders, setTreatedAsInfinite
Methods inherited from class de.grogra.imp3d.objects.Null
getLocalTransformation, getTransform, getTranslation, isTransforming, preTransform, setRotation, setScale, setTransform, setTransform, setTransform, setTransform, setTransform, setTransform, setTransform, setTransform, setTransforming, setTranslation
Methods inherited from class de.grogra.graph.impl.Node
addEdgeBitsTo, addReference, appendBranchNode, appendBranchNode, appendReferencesTo, clone, clone, cloneGraph, dump, dumpTree, dup, dupFrom, dupnew, dupUnmanagedFields, edgeChanged, fieldModified, findAdjacent, findRefinementType, get, getAccessor, getAccessor, getAttributes, getAxisParent, getBranch, getBranchLength, getBranchNode, getBranchTail, getByte, getChar, getCommonAncestor, getCurrentGraphState, getDirectChildCount, getEdgeAttributeAccessor, getEdgeAttributes, getEdgeBitsTo, getEdgeTo, getExtentIndex, getFirst, getFirstEdge, getGraph, getId, getIgnored, getIndex, getInstantiator, getLayer, getLong, getManageableType, getName, getNeighbor, getNext, getNType, getOrCreateEdgeTo, getOrNull, getPersistenceManager, getPredecessor, getProvider, getResolution, 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, setIgnored, setLayer, setMark, setName, setResolution, setSuccessor, setSuccessor, specialEdgeAdded, specialEdgeRefModified, specialEdgeRemoved, toString, writeReplace
Methods inherited from class de.grogra.graph.impl.Edge
addEdgeBits, getBitMark, getEdgeBits, getEdgeKeys, getObjectMark, getSpecialEdgeDescriptor, parseEdgeKeys, remove, removeEdgeBits, setBitMark, setEdgeBits, setObjectMark, testEdgeBits
Methods inherited from class java.lang.Object
equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface de.grogra.persistence.PersistenceCapable
getBitMark, getObjectMark, setBitMark, setObjectMark
-
Field Details
-
length
public float length -
diameter
public float diameter -
color
public int color -
$TYPE
-
length$FIELD
-
diameter$FIELD
-
color$FIELD
-
-
Constructor Details
-
F
public F() -
F
public F(float argument) -
F
public F(float length, float diameter, int color) -
F
public F(float length, float diameter)
-
-
Method Details
-
getNTypeImpl
Description copied from class:Node
This method returns theNode.NType
which describes the managed fields of the class of this node. This method has to be implemented in every concrete subclass.- Overrides:
getNTypeImpl
in classShadedNull
- Returns:
- type describing the managed fields of the class of this node
-
newInstance
Description copied from class:Node
This method returns a new instance of the class of this node. This method has to be implemented in every concrete subclass.- Overrides:
newInstance
in classShadedNull
- Returns:
- new instance of class of this node
-
getFloat
-
getInt
-
getLength
- Specified by:
getLength
in classTurtleStep
-
getSurfaceArea
public double getSurfaceArea()Calculates the area of an object. Intersection with other object are not considered.The total area will be calculated. A=2*Pi*r*h- Overrides:
getSurfaceArea
in classShadedNull
- Returns:
- volume
-
getVolume
public double getVolume()Calculates the volume. Intersection with other object are not considered.The total volume will be calculated. V=Pi*r^2*h- Overrides:
getVolume
in classShadedNull
- Returns:
- volume
-