edu.sdsc.mbt.viewers.GLViewerImpl
Class FrenetTrihedron

java.lang.Object
  extended byedu.sdsc.mbt.viewers.GLViewerImpl.FrenetTrihedron

public class FrenetTrihedron
extends java.lang.Object

FrenetTrihedron encapsulates a LOCAL reference frame on a curve defined by the LOCAL tangent, normal and binormal vectors. Unlike a real Frenet trihedron though, this IS NOT a rectangular trihedron in general inspite the name of the class and the name of the three (unit) vectors that may suggest so. Meant to play the role of a Frenet trihedron but with the additional flexibility of NO IMPOSED orthogonality. Certainly, the Frenet equations DO NOT hold either, in general.

Since:
JDK1.2.2
Version:
$Revision: 1.1 $
Author:
Apostol Gramada

Constructor Summary
FrenetTrihedron()
           
FrenetTrihedron(FrenetTrihedron trihedron)
           
FrenetTrihedron(Vector3f origin, Vector3f tangent, Vector3f normal)
           
FrenetTrihedron(Vector3f origin, Vector3f tangent, Vector3f binormal, int flag)
           
FrenetTrihedron(Vector3f origin, Vector3f tangent, Vector3f normal, Vector3f binormal)
           
 
Method Summary
 float distance(FrenetTrihedron t)
           
 Vector3f getBinormal()
           
 Vector3f getNormal()
           
 Vector3f getOrigin()
           
static Vector3f getPreviousNormal()
           
 Vector3f getTangent()
           
 void interpolate(float t, FrenetTrihedron trihedron1, FrenetTrihedron trihedron2)
           
 void interpolateByBinormal(float t, FrenetTrihedron trihedron1, FrenetTrihedron trihedron2)
           
 void setBinormal(Vector3f v)
           
 void setNormal(Vector3f v)
           
 void setOrigin(Vector3f v)
           
 void setOriginOnly(Vector3f v)
           
static void setPreviousNormal(Vector3f normal)
           
 void setTangent(Vector3f v)
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

FrenetTrihedron

public FrenetTrihedron()

FrenetTrihedron

public FrenetTrihedron(Vector3f origin,
                       Vector3f tangent,
                       Vector3f normal)

FrenetTrihedron

public FrenetTrihedron(Vector3f origin,
                       Vector3f tangent,
                       Vector3f binormal,
                       int flag)

FrenetTrihedron

public FrenetTrihedron(Vector3f origin,
                       Vector3f tangent,
                       Vector3f normal,
                       Vector3f binormal)

FrenetTrihedron

public FrenetTrihedron(FrenetTrihedron trihedron)
Method Detail

setOrigin

public void setOrigin(Vector3f v)

setOriginOnly

public void setOriginOnly(Vector3f v)

setTangent

public void setTangent(Vector3f v)

setNormal

public void setNormal(Vector3f v)

toString

public java.lang.String toString()

distance

public float distance(FrenetTrihedron t)

setBinormal

public void setBinormal(Vector3f v)

interpolate

public void interpolate(float t,
                        FrenetTrihedron trihedron1,
                        FrenetTrihedron trihedron2)

interpolateByBinormal

public void interpolateByBinormal(float t,
                                  FrenetTrihedron trihedron1,
                                  FrenetTrihedron trihedron2)

getOrigin

public Vector3f getOrigin()

getTangent

public Vector3f getTangent()

getNormal

public Vector3f getNormal()

getBinormal

public Vector3f getBinormal()

getPreviousNormal

public static Vector3f getPreviousNormal()

setPreviousNormal

public static void setPreviousNormal(Vector3f normal)