?? turningcubes3.java
字號(hào):
import com.sun.j3d.utils.universe.SimpleUniverse;
import com.sun.j3d.utils.geometry.*;
import javax.media.j3d.*;
import javax.vecmath.Vector3f;
//import java.applet.Applet;
public class TurningCubes3
{
public TurningCubes3()
{SimpleUniverse su=new SimpleUniverse();
BranchGroup bg=new BranchGroup();
TransformGroup tgAll=new TransformGroup(); // insert a tg between bg and child cubes
bg.addChild(tgAll);
tgAll.addChild(TGroup(0.2f, -0.3f, -0.3f, 0.0f)); // child-cubes attached to tg instead of bg
tgAll.addChild(TGroup(0.2f, -0.3f, 0.3f, 0.0f));
tgAll.addChild(TGroup(0.2f, 0.3f, -0.3f, 0.0f));
tgAll.addChild(TGroup(0.2f, 0.3f, 0.3f, 0.0f));
tgAll.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
Alpha a=new Alpha(-1,5000);
Transform3D tfAll = new Transform3D(); // Add rotation for the whole group
tfAll.rotX(Math.PI/4);
RotationInterpolator ri = new RotationInterpolator(a,tgAll,tfAll,0f,(float)(2*Math.PI));
BoundingSphere bs = new BoundingSphere();
ri.setSchedulingBounds(bs);
tgAll.addChild(ri);
su.getViewingPlatform().setNominalViewingTransform();
su.addBranchGraph(bg);
}
public static void main(String[] args)
{new TurningCubes3();
}
public TransformGroup TGroup(float size, float x, float y, float z)
{TransformGroup tg=new TransformGroup();
ColorCube cc=new ColorCube(size);
tg.addChild(cc);
Transform3D tf=new Transform3D();
Vector3f vect=new Vector3f(x, y, z);
tf.setTranslation(vect);
tg.setTransform(tf);
return tg;
}
}
?? 快捷鍵說(shuō)明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號(hào)
Ctrl + =
減小字號(hào)
Ctrl + -