JavaView© v3.95.000

jvx.geom
Class PgFrame

java.lang.Object
  extended byjv.object.PsObject
      extended byjvx.geom.PgFrame
All Implemented Interfaces:
java.lang.Cloneable, PsUpdateIf, java.io.Serializable

public class PgFrame
extends PsObject

Moving frame along curves (pending: and surfaces) in R^3.

See Also:
Serialized Form

Field Summary
 
Fields inherited from class jv.object.PsObject
HAS_CONFIG_PANEL, HAS_INFO_PANEL, HAS_LABEL_PANEL, HAS_MATERIAL_PANEL, HAS_TEXTURE_PANEL, HAS_VECTOR_PANEL, INSPECTOR_INFO, INSPECTOR_INFO_EXT, IS_DELETED, IS_FIXED, IS_FOCUSSED, IS_PICKED, IS_SELECTED, IS_USED, NUM_TAGS
 
Constructor Summary
PgFrame(int aDim)
           
 
Method Summary
 boolean blend(double s, PgFrame a, double t, PgFrame b)
           
 void copy(PgFrame aFrame)
           
 void copyVectors(PgFrame aFrame)
           
 PdVector getBase()
           
 PdVector getE1()
           
 PdVector getE2()
           
 PdVector getE3()
           
 void init()
          If instance has missing name then assign default name 'Object_NUMBER' where number is the total number of already created instances.
 void leftMultMatrix(PdMatrix aMatrix)
           
 void leftMultMatrix(PdMatrix aMatrix, PgFrame aFrame)
           
 void parallelTranslate(PgFrame oldFrame, PgFrame vertexFrame, PdVector newVertex, PdVector newEdge)
          Parallel translate a frame along a polygonal curve in R^3.
 void parallelTranslateConstantLength(PgFrame oldFrame, PgFrame vertexFrame, PdVector newVertex, PdVector newEdge)
          Parallel translate a frame along a polygonal curve in R^3.
static PgFrame[] realloc(PgFrame[] data, int arraySize, int aDim)
           
 void setBase(PdVector base)
           
 void setE1(PdVector e1)
           
 void setE2(PdVector e2)
           
 void setE3(PdVector e3)
           
 
Methods inherited from class jv.object.PsObject
addInspector, addUpdateListener, assureInspector, clearTag, clone, clone, clone, copy, getFather, getInfoPanel, getInspector, getName, getNumObjects, getSymbol, hasInspector, hasTag, hasUpdateListener, instanceOf, instanceOf, newInspector, newInspector, removeInspector, removeInspector, removeUpdateListener, setName, setParent, setSymbol, setTag, toString, update, updatePanels
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

PgFrame

public PgFrame(int aDim)
Method Detail

realloc

public static PgFrame[] realloc(PgFrame[] data,
                                int arraySize,
                                int aDim)

init

public void init()
Description copied from class: PsObject
If instance has missing name then assign default name 'Object_NUMBER' where number is the total number of already created instances.

Overrides:
init in class PsObject

copy

public void copy(PgFrame aFrame)

copyVectors

public void copyVectors(PgFrame aFrame)

leftMultMatrix

public void leftMultMatrix(PdMatrix aMatrix)

leftMultMatrix

public void leftMultMatrix(PdMatrix aMatrix,
                           PgFrame aFrame)

blend

public boolean blend(double s,
                     PgFrame a,
                     double t,
                     PgFrame b)

parallelTranslate

public void parallelTranslate(PgFrame oldFrame,
                              PgFrame vertexFrame,
                              PdVector newVertex,
                              PdVector newEdge)
Parallel translate a frame along a polygonal curve in R^3. The vertexFrame is the resulting frame at the given vertex. This frame object is used to store a frame at the current vertex whose e1 direction is parallel to the newEdge, i.e. this frame can be used as the oldFrame for another call of this method to compute the frame at the next vertex.
This version produces a vertex frame such that the connection between the endpoints of two vertex frames has constant distance to the polygon edge. This is what you want to construct a tube (with constant radius) around the polygon.

Parameters:
oldFrame - frame at previous vertex with e1 parallel to previous edge.
vertexFrame - frame at current vertex, this is the actual result.
newVertex - current vertex where to compute the frame.
newEdge - edge outgoing from current vertex.

parallelTranslateConstantLength

public void parallelTranslateConstantLength(PgFrame oldFrame,
                                            PgFrame vertexFrame,
                                            PdVector newVertex,
                                            PdVector newEdge)
Parallel translate a frame along a polygonal curve in R^3. The vertexFrame is the resulting frame at the given vertex. This frame object is used to store a frame at the current vertex whose e1 direction is parallel to the newEdge, i.e. this frame can be used as the oldFrame for another call of this method to compute the frame at the next vertex.
This version produces a frame with constant vector lengths. This is what you want e.g. if you need an ONB of the normal space at each vertex of a polygon.

Parameters:
oldFrame - frame at previous vertex with e1 parallel to previous edge.
vertexFrame - frame at current vertex, this is the actual result.
newVertex - current vertex where to compute the frame.
newEdge - edge outgoing from current vertex.

getBase

public PdVector getBase()

setBase

public void setBase(PdVector base)

getE1

public PdVector getE1()

setE1

public void setE1(PdVector e1)

getE2

public PdVector getE2()

setE2

public void setE2(PdVector e2)

getE3

public PdVector getE3()

setE3

public void setE3(PdVector e3)

JavaView© v3.95.000

The software JavaView© is copyright protected. All Rights Reserved.