gnu.gleem
Class ManipPart

java.lang.Object
  |
  +--gnu.gleem.ManipPart
Direct Known Subclasses:
ManipPartGroup, ManipPartLineSeg, ManipPartTriBased

public abstract class ManipPart
extends java.lang.Object

A ManipPart is a visible or invisible sub-part of a manipulator. ManipParts are organized into trees.


Constructor Summary
ManipPart()
           
 
Method Summary
abstract  void clearHighlight()
          Unhighlight this part
 ManipPartGroup getParent()
          Get the parent ManipPartGroup, or null if none (NOTE that this differs from the C++ API)
abstract  boolean getPickable()
           
abstract  boolean getVisible()
           
abstract  void highlight()
          Highlight this part
abstract  void intersectRay(Vec3f rayStart, Vec3f rayDirection, java.util.List results, Manip caller)
          Intersect a ray with this part, returning all intersected points as HitPoints in the result list.
abstract  void render(gl4java.GLFunc gl)
          Render this ManipPart now using the given OpenGL routines and assuming an OpenGL context is current.
 void setParent(ManipPartGroup parent)
          Set the parent ManipPartGroup of this ManipPart (NOTE that this differs from the C++ API)
abstract  void setPickable(boolean pickable)
          Is this part pickable, or just decorative? Not pickable implies that intersectRay() will return immediately.
abstract  void setTransform(Mat4f xform)
          Sets the transform of this part.
abstract  void setVisible(boolean visible)
          Is this part visible?
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ManipPart

public ManipPart()
Method Detail

getParent

public ManipPartGroup getParent()
Get the parent ManipPartGroup, or null if none (NOTE that this differs from the C++ API)


setParent

public void setParent(ManipPartGroup parent)
Set the parent ManipPartGroup of this ManipPart (NOTE that this differs from the C++ API)


intersectRay

public abstract void intersectRay(Vec3f rayStart,
                                  Vec3f rayDirection,
                                  java.util.List results,
                                  Manip caller)
Intersect a ray with this part, returning all intersected points as HitPoints in the result list. The same rules as Manip.intersectRay() apply.


setTransform

public abstract void setTransform(Mat4f xform)
Sets the transform of this part.


highlight

public abstract void highlight()
Highlight this part


clearHighlight

public abstract void clearHighlight()
Unhighlight this part


setPickable

public abstract void setPickable(boolean pickable)
Is this part pickable, or just decorative? Not pickable implies that intersectRay() will return immediately.


getPickable

public abstract boolean getPickable()

setVisible

public abstract void setVisible(boolean visible)
Is this part visible?


getVisible

public abstract boolean getVisible()

render

public abstract void render(gl4java.GLFunc gl)
Render this ManipPart now using the given OpenGL routines and assuming an OpenGL context is current.