de.grogra.imp3d.objects
Class Patch
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.Patch
- All Implemented Interfaces:
- Transformation, Pickable, Polygonizable, Polygonization, Renderable, Manageable, PersistenceCapable, Shareable, UserFields, XObject, Map, java.io.Serializable
- Direct Known Subclasses:
- Arrange
public class Patch
- extends ShadedNull
- implements Pickable, Polygonizable, Polygonization, Renderable
- 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 |
Method Summary |
void |
draw(java.lang.Object object,
boolean asNode,
RenderState rs)
|
VertexGrid |
getGrid()
|
protected Node.NType |
getNTypeImpl()
This method returns the Node.NType which describes the managed
fields of the class of this node. |
ContextDependent |
getPolygonizableSource(GraphState gs)
Defines the data source on which the polygonization
depends. |
Polygonization |
getPolygonization()
Defines the algorithm which is used to decompose the data
into a polygon mesh representation. |
int |
getVisibleSides()
|
protected Node |
newInstance()
This method returns a new instance of the class of this
node. |
void |
pick(java.lang.Object object,
boolean asNode,
Point3d origin,
Vector3d direction,
Matrix4d transformation,
PickList list)
Computes intersections of a given ray with this shape. |
static void |
pick(VertexGrid grid,
Point3d origin,
Vector3d direction,
PickList list)
|
void |
polygonize(ContextDependent source,
GraphState gs,
PolygonArray out,
int flags,
float flatness)
Performs the polygonization of the source into polygons. |
void |
setGrid(VertexGrid value)
|
void |
setVisibleSides(int value)
|
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
grid
protected VertexGrid grid
grid$FIELD
public static final Node.NType.Field grid$FIELD
visibleSides
protected int visibleSides
visibleSides$FIELD
public static final Node.NType.Field visibleSides$FIELD
Patch
public Patch()
Patch
public Patch(VertexGrid grid)
draw
public void draw(java.lang.Object object,
boolean asNode,
RenderState rs)
- Specified by:
draw
in interface Renderable
getGrid
public VertexGrid getGrid()
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
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 object,
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:
object
- 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
pick
public static void pick(VertexGrid grid,
Point3d origin,
Vector3d direction,
PickList list)
polygonize
public void polygonize(ContextDependent source,
GraphState gs,
PolygonArray out,
int flags,
float flatness)
- Description copied from interface:
Polygonization
- Performs the polygonization of the source into polygons.
The field
out.userObject
is not modified.
- Specified by:
polygonize
in interface Polygonization
- Parameters:
source
- the data source as reported by a previous invocation of
Polygonizable.getPolygonizableSource(GraphState)
with the same gs
gs
- the current graph stateout
- the polygons are written to out
flags
- combination of bit masksflatness
- a parameter for the degree of flatness, a typical value is 1
setGrid
public void setGrid(VertexGrid value)
setVisibleSides
public void setVisibleSides(int value)