de.grogra.imp3d.objects
Class VertexSequence

java.lang.Object
  extended by de.grogra.persistence.ShareableBase
      extended by de.grogra.graph.impl.ContextDependentBase
          extended by de.grogra.imp3d.objects.Sequence
              extended by de.grogra.imp3d.objects.VertexSequence
All Implemented Interfaces:
ContextDependent, BSplineCurve, KnotVector, VertexList, VertexSet, Manageable, Shareable

public class VertexSequence
extends Sequence
implements BSplineCurve


Nested Class Summary
static class VertexSequence.Type
           
static interface VertexSequence.Vertex
           
 
Field Summary
static VertexSequence.Type $TYPE
           
static SCOType.Field hermite$FIELD
           
static SCOType.Field periodic$FIELD
           
static SCOType.Field tangentLength$FIELD
           
 
Fields inherited from class de.grogra.imp3d.objects.Sequence
DOWNWARD, DOWNWARD_AXIS, name$FIELD, PATH_TYPE, path$FIELD, UPWARD_AXIS, UPWARD_BRANCH
 
Constructor Summary
VertexSequence()
           
VertexSequence(java.lang.String name)
           
 
Method Summary
protected  java.lang.Object calculateCache(Matrix4d inv, java.util.ArrayList list, GraphState gs, java.lang.Object info)
           
 boolean dependsOnContext()
          Determines whether this object actually depends on context.
 int getDegree(GraphState gs)
           
 int getDimension(GraphState gs)
           
 float getKnot(int dim, int index, GraphState gs)
           
 ManageableType getManageableType()
           
 int getSize(GraphState gs)
           
 float getTangentLength()
           
 int getVertex(float[] out, int index, GraphState gs)
           
 boolean isHermite()
           
 boolean isPeriodic()
           
 boolean isRational(GraphState gs)
           
 void setHermite(boolean value)
           
 void setPeriodic(boolean value)
           
 void setTangentLength(float value)
           
protected  void visitNode(java.lang.Object node, java.lang.Object shape, java.util.ArrayList list, GraphState gs)
           
 void writeStamp(Cache.Entry cache, GraphState gs)
          Writes a stamp of the context into cache.
 
Methods inherited from class de.grogra.imp3d.objects.Sequence
calculateCache, getCache, getName, getPath, setName, setPath
 
Methods inherited from class de.grogra.persistence.ShareableBase
addReference, appendReferencesTo, fieldModified, getProvider, getStamp, initProvider, manageableReadResolve, manageableWriteReplace, removeReference
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

$TYPE

public static final VertexSequence.Type $TYPE

hermite$FIELD

public static final SCOType.Field hermite$FIELD

periodic$FIELD

public static final SCOType.Field periodic$FIELD

tangentLength$FIELD

public static final SCOType.Field tangentLength$FIELD
Constructor Detail

VertexSequence

public VertexSequence()

VertexSequence

public VertexSequence(java.lang.String name)
Method Detail

calculateCache

protected java.lang.Object calculateCache(Matrix4d inv,
                                          java.util.ArrayList list,
                                          GraphState gs,
                                          java.lang.Object info)
Specified by:
calculateCache in class Sequence

dependsOnContext

public boolean dependsOnContext()
Description copied from interface: ContextDependent
Determines whether this object actually depends on context.

Specified by:
dependsOnContext in interface ContextDependent
Returns:
true iff this object depends on context

getDegree

public int getDegree(GraphState gs)
Specified by:
getDegree in interface BSplineCurve

getDimension

public int getDimension(GraphState gs)
Specified by:
getDimension in interface VertexSet

getKnot

public float getKnot(int dim,
                     int index,
                     GraphState gs)
Specified by:
getKnot in interface KnotVector

getManageableType

public ManageableType getManageableType()
Specified by:
getManageableType in interface Manageable

getSize

public int getSize(GraphState gs)
Specified by:
getSize in interface VertexList

getTangentLength

public float getTangentLength()

getVertex

public int getVertex(float[] out,
                     int index,
                     GraphState gs)
Specified by:
getVertex in interface VertexSet

isHermite

public boolean isHermite()

isPeriodic

public boolean isPeriodic()

isRational

public boolean isRational(GraphState gs)
Specified by:
isRational in interface VertexSet

setHermite

public void setHermite(boolean value)

setPeriodic

public void setPeriodic(boolean value)

setTangentLength

public void setTangentLength(float value)

visitNode

protected void visitNode(java.lang.Object node,
                         java.lang.Object shape,
                         java.util.ArrayList list,
                         GraphState gs)
Specified by:
visitNode in class Sequence

writeStamp

public void writeStamp(Cache.Entry cache,
                       GraphState gs)
Description copied from interface: ContextDependent
Writes a stamp of the context into cache. Based on this stamp, a cache detects whether the context of this object has changed or not.

Specified by:
writeStamp in interface ContextDependent
Overrides:
writeStamp in class ContextDependentBase
Parameters:
cache - a cache entry to write the stamp
gs - the current graph state