📄 example6_13.java.bak
字号:
/* 构建三维图形场景 */
import com.sun.j3d.utils.geometry.*; //提供3D常用的API
import com.sun.j3d.utils.universe.*;
import javax.media.j3d.*; //提供3D基本的API
import javax.vecmath.*; //提供与矢量运算相关的API
class J3d
{
J3d()
{
//创建一个用来容纳你的场景的虚拟空间
SimpleUniverse universe = new SimpleUniverse();
//创建一个用来放置一组物体的分支组
BranchGroup group = createSceneGraph();
//设置观察点(Viewer),使之面对物体
universe.getViewingPlatform().setNominalViewingTransform();
//将物体组添加至虚拟空间
universe.addBranchGraph(group);
}
//构建场景
public BranchGroup createSceneGraph()
{
RotationInterpolator rotator;
BoundingSphere bounds ;
//建立构建场景图的对象
BranchGroup objRoot = new BranchGroup();
//建立保存场景图中几何变换的实例对象
TransformGroup objTrans = new TransformGroup();
objTrans.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
objRoot.addChild(objTrans);
//系统默认几何形体
objTrans.addChild(new ColorCube(0.4));
//建立几何变换对象,作平移或旋转运动
Transform3D yAxis = new Transform3D();
Alpha rotationAlpha = new Alpha(-1, 4000);
rotator =new RotationInterpolator(rotationAlpha,objTrans,
yAxis, 0.0f, (float) Math.PI*2.0f);
bounds =new BoundingSphere(new Point3d(0.0,0.0,0.0), 100.0);
rotator.setSchedulingBounds(bounds);
//向场景中添加物体
objRoot.addChild(rotator);
objRoot.compile();
return objRoot;
}
}
public class Example6_13
{
public static void main( String[] args )
{ J3d j3d=new J3d(); }
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -