de.grogra.imp3d.objects
Class MeshNode
java.lang.Object
de.grogra.graph.impl.Edge
de.grogra.graph.impl.Node
de.grogra.imp3d.objects.Null
de.grogra.imp3d.objects.ShadedNull
de.grogra.imp3d.objects.MeshNode
- All Implemented Interfaces:
- Transformation, Pickable, Polygonizable, Renderable, Manageable, PersistenceCapable, Shareable, UserFields, XObject, Map, java.io.Serializable
public class MeshNode
- extends ShadedNull
- implements Pickable, Polygonizable, Renderable
A MeshNode
is used to represent a polygonal mesh defined
by an instance of Polygons
within the
graph.
- Author:
- Ole Kniemeyer
- See Also:
- Serialized Form
Nested classes/interfaces inherited from interface de.grogra.util.Map |
Map.Chain |
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, MIME_TYPE, MIN_UNUSED_SPECIAL_OF_SOURCE, MIN_UNUSED_SPECIAL_OF_TARGET, name$FIELD |
Methods inherited from class de.grogra.imp3d.objects.ShadedNull |
getInterior, getShader, getSymbolColor, isTreatedAsInfinite, setBackShader, setColor, setColor, setFrontShader, setInterior, setMaterial, setShader, setShaders, setTreatedAsInfinite |
Methods inherited from class de.grogra.imp3d.objects.Null |
getLocalTransformation, getTransform, getTranslation, isTransforming, postTransform, 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, dupUnmanagedFields, edgeChanged, fieldModified, findAdjacent, 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, getInstantiator, 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, 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, writeReplace |
Methods inherited from class de.grogra.graph.impl.Edge |
addEdgeBits, getBitMark, getEdgeBits, 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 |
$TYPE
public static final Node.NType $TYPE
polygons
protected Polygons polygons
- This defines the geometry of this node, namely a polygonal mesh.
polygons$FIELD
public static final Node.NType.Field polygons$FIELD
visibleSides
protected int visibleSides
visibleSides$FIELD
public static final Node.NType.Field visibleSides$FIELD
MeshNode
public MeshNode()
MeshNode
public MeshNode(Polygons polygons)
draw
public void draw(java.lang.Object object,
boolean asNode,
RenderState rs)
- Specified by:
draw
in interface Renderable
getNTypeImpl
protected Node.NType getNTypeImpl()
- Description copied from class:
Node
- This method returns the
Node.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 class ShadedNull
- Returns:
- type describing the managed fields of the class of this node
getPolygonizableSource
public ContextDependent getPolygonizableSource(GraphState gs)
- Description copied from interface:
Polygonizable
- Defines the data source on which the polygonization
depends.
- Specified by:
getPolygonizableSource
in interface Polygonizable
- Parameters:
gs
- the current graph state
- Returns:
- the data source
getPolygonization
public Polygonization getPolygonization()
- Description copied from interface:
Polygonizable
- Defines the algorithm which is used to decompose the data
into a polygon mesh representation.
- Specified by:
getPolygonization
in interface Polygonizable
- Returns:
- polygonization algorithm
getPolygons
public Polygons getPolygons()
getVisibleSides
public int getVisibleSides()
newInstance
protected 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 class ShadedNull
- Returns:
- new instance of class of this node
pick
public void pick(java.lang.Object node,
boolean asNode,
Point3d origin,
Vector3d direction,
Matrix4d transformation,
PickList list)
- Description copied from interface:
Pickable
- Computes intersections of a given ray with this shape.
- Specified by:
pick
in interface Pickable
- Parameters:
node
- the object of which this shape is an attributeasNode
- true
iff object is a nodeorigin
- the origin of the ray, in local coordinatesdirection
- the direction of the ray, in local coordinatestransformation
- the transformation from local coordinates to world coordinateslist
- the list to which intersections have to be added
setPolygons
public void setPolygons(Polygons value)
setVisibleSides
public void setVisibleSides(int value)