// ...imports import javax.media.j3d.*; import com.sun.j3d.utils.universe.*; import javax.vecmath.Point3d; import com.sun.j3d.utils.behaviors.vp.*; import com.sun.j3d.utils.applet.MainFrame; import com.sun.j3d.utils.geometry.ColorCube; import java.applet.Applet; import javax.media.j3d.Alpha; import javax.media.j3d.PositionInterpolator; public class Gedrehter_Wuerfel_2 extends Applet{ public BranchGroup createSceneGraph(){ // erzeuge einen bunten Würfel ColorCube cube = new ColorCube(0.4); // Wert der Drehung für X festlegen Transform3D rX = new Transform3D(); rX.rotX(Math.PI/4.0); // erzeuge Transformationsgruppe für die Drehung X TransformGroup tgX = new TransformGroup(rX); // Wert der Drehung für Y festlegen Transform3D rY = new Transform3D(); rY.rotY(Math.PI/4.0); // erzeuge Transformationsgruppe für die Drehung Y TransformGroup tgY = new TransformGroup(rY); // erzeuge die Wurzel der Würfelzene BranchGroup root = new BranchGroup(); // hänge die Drehung X an die Wurzel root.addChild(tgX); // hänge die Drehung Y an die Drehung X tgX.addChild(tgY); // Würfel der Transformation zuordnen tgY.addChild(cube); //fertig return root; } public void init(){ // erzeuge das Universum SimpleUniverse universe = Utils.createUniverse(this); // hänge die 3D-Szene ein universe.addBranchGraph(createSceneGraph()); } public Gedrehter_Wuerfel_2(){} public static void main(String[]args){ new MainFrame (new Gedrehter_Wuerfel_2(), 256, 256); } }