de.grogra.math
Class BSplineSurfaceImpl

java.lang.Object
  extended by de.grogra.persistence.ShareableBase
      extended by de.grogra.graph.impl.ContextDependentBase
          extended by de.grogra.math.VertexSetBase
              extended by de.grogra.math.VertexGridImpl
                  extended by de.grogra.math.BSplineSurfaceImpl
All Implemented Interfaces:
ContextDependent, BSplineSurface, KnotVector, VertexGrid, VertexSet, Manageable, Shareable

public class BSplineSurfaceImpl
extends VertexGridImpl
implements BSplineSurface


Nested Class Summary
static class BSplineSurfaceImpl.Type
           
 
Field Summary
static BSplineSurfaceImpl.Type $TYPE
           
static SCOType.Field rational$FIELD
           
static SCOType.Field uDegree$FIELD
           
static SCOType.Field uPeriodic$FIELD
           
static SCOType.Field vDegree$FIELD
           
static SCOType.Field vPeriodic$FIELD
           
 
Fields inherited from class de.grogra.math.VertexGridImpl
uCount, uCount$FIELD
 
Fields inherited from class de.grogra.math.VertexSetBase
data, data$FIELD, dimension, dimension$FIELD
 
Constructor Summary
BSplineSurfaceImpl()
           
BSplineSurfaceImpl(float[] data, int dimension, int uCount, int uDegree, boolean uPeriodic, int vDegree, boolean vPeriodic)
           
 
Method Summary
static BSplineSurfaceImpl create(float[] controlPoints, int uCount, int dimension, int uDegree, boolean uClamp, boolean uPeriodic, int vDegree, boolean vClamp, boolean vPeriodic)
           
 float getKnot(int dim, int index, GraphState gs)
           
 ManageableType getManageableType()
           
 int getUDegree()
           
 int getUDegree(GraphState gs)
           
 int getUSize(GraphState gs)
           
protected  int getVCount()
           
 int getVDegree()
           
 int getVDegree(GraphState gs)
           
 int getVertexIndex(int u, int v, GraphState gs)
           
 int getVSize(GraphState gs)
           
 boolean isRational()
           
 boolean isRational(GraphState gs)
           
 boolean isUPeriodic()
           
 boolean isVPeriodic()
           
 void setRational(boolean value)
           
 void setUDegree(int value)
           
 void setUPeriodic(boolean value)
           
 void setVDegree(int value)
           
 void setVPeriodic(boolean value)
           
 
Methods inherited from class de.grogra.math.VertexGridImpl
getUCount, setUCount
 
Methods inherited from class de.grogra.math.VertexSetBase
dependsOnContext, getData, getDimension, getDimension, getVertex, getVertexIndex, setData, setDimension
 
Methods inherited from class de.grogra.graph.impl.ContextDependentBase
writeStamp
 
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
 
Methods inherited from interface de.grogra.math.VertexSet
getDimension, getVertex
 
Methods inherited from interface de.grogra.graph.ContextDependent
dependsOnContext, writeStamp
 

Field Detail

$TYPE

public static final BSplineSurfaceImpl.Type $TYPE

rational$FIELD

public static final SCOType.Field rational$FIELD

uDegree$FIELD

public static final SCOType.Field uDegree$FIELD

uPeriodic$FIELD

public static final SCOType.Field uPeriodic$FIELD

vDegree$FIELD

public static final SCOType.Field vDegree$FIELD

vPeriodic$FIELD

public static final SCOType.Field vPeriodic$FIELD
Constructor Detail

BSplineSurfaceImpl

public BSplineSurfaceImpl()

BSplineSurfaceImpl

public BSplineSurfaceImpl(float[] data,
                          int dimension,
                          int uCount,
                          int uDegree,
                          boolean uPeriodic,
                          int vDegree,
                          boolean vPeriodic)
Method Detail

create

public static BSplineSurfaceImpl create(float[] controlPoints,
                                        int uCount,
                                        int dimension,
                                        int uDegree,
                                        boolean uClamp,
                                        boolean uPeriodic,
                                        int vDegree,
                                        boolean vClamp,
                                        boolean vPeriodic)

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
Overrides:
getManageableType in class VertexGridImpl

getUDegree

public int getUDegree()

getUDegree

public int getUDegree(GraphState gs)
Specified by:
getUDegree in interface BSplineSurface

getUSize

public int getUSize(GraphState gs)
Specified by:
getUSize in interface VertexGrid
Overrides:
getUSize in class VertexGridImpl

getVCount

protected int getVCount()

getVDegree

public int getVDegree()

getVDegree

public int getVDegree(GraphState gs)
Specified by:
getVDegree in interface BSplineSurface

getVertexIndex

public int getVertexIndex(int u,
                          int v,
                          GraphState gs)
Specified by:
getVertexIndex in interface VertexGrid
Overrides:
getVertexIndex in class VertexGridImpl

getVSize

public int getVSize(GraphState gs)
Specified by:
getVSize in interface VertexGrid
Overrides:
getVSize in class VertexGridImpl

isRational

public boolean isRational()

isRational

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

isUPeriodic

public boolean isUPeriodic()

isVPeriodic

public boolean isVPeriodic()

setRational

public void setRational(boolean value)

setUDegree

public void setUDegree(int value)

setUPeriodic

public void setUPeriodic(boolean value)

setVDegree

public void setVDegree(int value)

setVPeriodic

public void setVPeriodic(boolean value)