FileDocCategorySizeDatePackage
AxisClassDemoApp.javaAPI DocExample4892Fri Sep 22 16:59:06 BST 2000None

AxisClassDemoApp

public class AxisClassDemoApp extends Applet

Fields Summary
Constructors Summary
public AxisClassDemoApp()

        setLayout(new BorderLayout());
        GraphicsConfiguration config =
           SimpleUniverse.getPreferredConfiguration();

        Canvas3D canvas3D = new Canvas3D(config);
        add("Center", canvas3D);

        BranchGroup scene = createSceneGraph();

        // SimpleUniverse is a Convenience Utility class
        SimpleUniverse simpleU = new SimpleUniverse(canvas3D);

	// This will move the ViewPlatform back a bit so the
	// objects in the scene can be viewed.
        simpleU.getViewingPlatform().setNominalViewingTransform();

        simpleU.addBranchGraph(scene);
    
Methods Summary
public BranchGroupcreateSceneGraph()


       BranchGroup objRoot = new BranchGroup();
       objRoot.addChild(new Axis());

      // Create the transform group node and initialize it to the
      // identity.  Enable the TRANSFORM_WRITE capability so that
      // our behavior code can modify it at runtime.  Add it to the
      // root of the subgraph.
      TransformGroup objSpin = new TransformGroup();
      objSpin.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);

      // Create a new Behavior object that will perform the desired
      // operation on the specified transform object and add it into
      // the scene graph.
      Transform3D yAxis = new Transform3D();
      Alpha rotationAlpha = new Alpha(-1, 4000);

      RotationInterpolator rotator =
          new RotationInterpolator(rotationAlpha, objSpin);
      BoundingSphere bounds =
          new BoundingSphere(new Point3d(0.0,0.0,0.0), 100.0);
      rotator.setSchedulingBounds(bounds);

      Transform3D trans = new Transform3D();
      trans.set(new Vector3f(0.5f, 0.0f, 0.0f));
      TransformGroup objTrans = new TransformGroup(trans);
      objRoot.addChild(objSpin);
      objSpin.addChild(objTrans); 
      objSpin.addChild(rotator);
      objTrans.addChild(new ColorCube(0.1));

	// Let Java 3D perform optimizations on this scene graph.
        objRoot.compile();

	return objRoot;
    
public static voidmain(java.lang.String[] args)

        Frame frame = new MainFrame(new AxisClassDemoApp(), 256, 256);