import com.sun.j3d.utils.universe.SimpleUniverse; import java.awt.event.KeyEvent; import java.awt.event.KeyListener; import javax.media.j3d.Appearance; import javax.media.j3d.BranchGroup; import javax.media.j3d.Locale; import javax.media.j3d.Shape3D; import javax.vecmath.Point3d; public class tuval7 { static float xloc = 0; static float yloc = 0; static float zloc = 0; public tuval7() { SimpleUniverse u = new SimpleUniverse(); BranchGroup group = new BranchGroup(); Appearance app = new Appearance(); Locale loc = new Locale(u); Point3d cube1_pt[] = new Point3d[8]; Point3d cube2_pt[] = new Point3d[8]; Point3d cube3_pt[] = new Point3d[8]; //Point3d cube4_pt[] = new Point3d[8]; //Point3d cube5_pt[] = new Point3d[8]; //Point3d cube6_pt[] = new Point3d[8]; cube1_pt[0] = new Point3d(xloc-2, yloc+0, zloc-10); cube1_pt[1] = new Point3d(xloc-2, yloc+0, zloc-11); cube1_pt[2] = new Point3d(xloc-2, yloc+1, zloc-11); cube1_pt[3] = new Point3d(xloc-2, yloc+1, zloc-10); cube1_pt[4] = new Point3d(xloc-1, yloc+1, zloc-10); cube1_pt[5] = new Point3d(xloc-1, yloc+0, zloc-10); cube1_pt[6] = new Point3d(xloc-1, yloc+0, zloc-11); cube1_pt[7] = new Point3d(xloc-1, yloc+1, zloc-11); cube2_pt[0] = new Point3d(xloc-3, yloc+0, zloc-12); cube2_pt[1] = new Point3d(xloc-3, yloc+0, zloc-14); cube2_pt[2] = new Point3d(xloc-3, yloc+2, zloc-14); cube2_pt[3] = new Point3d(xloc-3, yloc+2, zloc-12); cube2_pt[4] = new Point3d(xloc-1, yloc+2, zloc-12); cube2_pt[5] = new Point3d(xloc-1, yloc+0, zloc-12); cube2_pt[6] = new Point3d(xloc-1, yloc+0, zloc-14); cube2_pt[7] = new Point3d(xloc-1, yloc+2, zloc-14); cube3_pt[0] = new Point3d(xloc-2, yloc+0, zloc-15); cube3_pt[1] = new Point3d(xloc-2, yloc+0, zloc-17); cube3_pt[2] = new Point3d(xloc-2, yloc+3, zloc-17); cube3_pt[3] = new Point3d(xloc-2, yloc+3, zloc-15); cube3_pt[4] = new Point3d(xloc-1, yloc+3, zloc-15); cube3_pt[5] = new Point3d(xloc-1, yloc+0, zloc-15); cube3_pt[6] = new Point3d(xloc-1, yloc+0, zloc-17); cube3_pt[7] = new Point3d(xloc-1, yloc+3, zloc-17); Shape3D cube1 = new Shape3D(cube_creation.ccr(cube1_pt), app); Shape3D cube2 = new Shape3D(cube_creation.ccr(cube2_pt), app); Shape3D cube3 = new Shape3D(cube_creation.ccr(cube3_pt), app); //group.ALLOW_DETACH ?; group.addChild(cube1); group.addChild(cube2); group.addChild(cube3); loc.addBranchGraph(group); u.getViewingPlatform().setNominalViewingTransform(); u.getCanvas().addKeyListener(new KeyListener() { @Override public void keyTyped(KeyEvent e) { } @Override public void keyReleased(KeyEvent e) { } @Override public void keyPressed(KeyEvent e) { if(e.getKeyCode() == KeyEvent.VK_A) { System.out.println("a"); tuval7.xloc++; System.out.println(tuval7.xloc); new tuval7(); } if(e.getKeyCode() == KeyEvent.VK_C) { System.out.println("cleanup"); u.removeAllLocales(); } } }); } }