sim.portrayal3d.simple
Class Axes

java.lang.Object
  extended by sim.portrayal3d.SimplePortrayal3D
      extended by sim.portrayal3d.simple.Axes
All Implemented Interfaces:
java.io.Serializable, Portrayal, Portrayal3D

public class Axes
extends SimplePortrayal3D

Draws coordinate system axes 1 unit long each, centered at the origin, and labelled "O", "X", "Y", and "Z".

See Also:
Serialized Form

Field Summary
 
Fields inherited from class sim.portrayal3d.SimplePortrayal3D
DEFAULT_APPEARANCE, parentPortrayal
 
Constructor Summary
Axes(float ArrowDia, boolean letters)
           
 
Method Summary
static void createAxes(javax.media.j3d.Group group, float ArrowDia, boolean letters)
           
 javax.media.j3d.TransformGroup getModel(java.lang.Object obj, javax.media.j3d.TransformGroup prev)
          Provides a TransformGroup which defines the node(s) to place in the scenegraph.
 
Methods inherited from class sim.portrayal3d.SimplePortrayal3D
appearanceForColor, appearanceForImage, clearPickableFlags, getInspector, getName, getStatus, polygonAttributes, setParentPortrayal, setPickableFlags, setPickableFlags, setSelected
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Axes

public Axes(float ArrowDia,
            boolean letters)
Method Detail

createAxes

public static void createAxes(javax.media.j3d.Group group,
                              float ArrowDia,
                              boolean letters)

getModel

public javax.media.j3d.TransformGroup getModel(java.lang.Object obj,
                                               javax.media.j3d.TransformGroup prev)
Description copied from interface: Portrayal3D
Provides a TransformGroup which defines the node(s) to place in the scenegraph. This is the Portrayal3D equivalent of Portrayal2D's draw(object, graphics, drawinfo) method.

You should hang your model off of the TransformGroup provided. You should not transform that TransformGroup in any way -- it is used elsewhere. Instead if you wish to transform your model (rotate it etc.) you should add your own additional TransformGroup as necessary.

The provided TransformGroup can be null; in this case you need to create and return the outer TransformGroup for the object. If the provided TransformGroup is non-null, you should modify it and return the same.

SimplePortrayals should assume the following contract: at the point that getModel(...) is called, the parentPortrayal will have already been set if it exists, else it will be null.

Specified by:
getModel in interface Portrayal3D
Overrides:
getModel in class SimplePortrayal3D