Hi, Everyone,

I modified the HelloJava3Da, I add two ColorCube into the same BG, translate
them into different spot. It seems only the last added ColorCube is shown. I
don't know what is wrong with it? Could anybody please help me? Thanks a
lot!
-----------------------------------------------------------------
  import java.applet.Applet;
  import java.awt.BorderLayout;
  import java.awt.Frame;
  import java.awt.event.*;
  import com.sun.j3d.utils.applet.MainFrame;
  import com.sun.j3d.utils.universe.*;
  import com.sun.j3d.utils.geometry.ColorCube;
  import javax.media.j3d.*;
  import javax.vecmath.*;


public class HelloJava3Da extends Applet {
public HelloJava3Da() {
setLayout(new BorderLayout());
//GraphicsConfiguration config = SimpleUniverse.getPreferredConfiguration();
Canvas3D canvas3D = new
Canvas3D(SimpleUniverse.getPreferredConfiguration());
add("Center", canvas3D);
BranchGroup scene = createSceneGraph();
scene.compile();

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

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

   simpleU.addBranchGraph(scene);
  } // end of HelloJava3Da (constructor)

  public BranchGroup createSceneGraph() {
  // Create the root of the branch graph
  BranchGroup objRoot = new BranchGroup();

  // Create two simple shape leaf nodes, add   to the scene graph.
  // ColorCube is a Convenience Utility class
  ColorCube cb1 = new ColorCube(0.4);
  ColorCube cb2 = new ColorCube(0.2);
  Transform3D translate1 = new Transform3D();
  translate1.set(new Vector3f(0.0f, 3.0f, 0.0f));
  TransformGroup t1 = new TransformGroup(translate1);
  objRoot.addChild(t1);
  t1.addChild(cb1);

  Transform3D translate2 = new Transform3D();
  translate2.set(new Vector3f(0.0f, -0.1f, 0.0f));
  TransformGroup t2 = new TransformGroup(translate2);
  objRoot.addChild(t2);
  t2.addChild(cb2);

  return objRoot;
  } // end of createSceneGraph method of HelloJava3Da

  public static void main(String[] args) {
  Frame frame = new MainFrame(new HelloJava3Da(), 256, 256);
  } // end of main (method of HelloJava3Da)
  } // end of class HelloJava3Da




grace
________________________________________________________________________
Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com

HelloJava3Da.java

Reply via email to