📄 pos.java
字号:
package com.java3d.test;
import com.sun.j3d.utils.geometry.ColorCube;
import java.applet.Applet;
import java.awt.BorderLayout;
import com.sun.j3d.utils.applet.MainFrame;
import com.sun.j3d.utils.universe.*;
import javax.media.j3d.*;
import javax.vecmath.*;
public class Pos extends Applet {
/**
*
*/
private static final long serialVersionUID = 1L;
public Pos() {
setLayout(new BorderLayout());
Canvas3D c = new Canvas3D(SimpleUniverse
.getPreferredConfiguration());
add("Center", c);
Viewer viewer = new Viewer(c);
Vector3d viewpoint = new Vector3d(0.0, 0.0, 10.0);
//初始观察点位置
Transform3D t = new Transform3D();
t.set(viewpoint);
ViewingPlatform v = new ViewingPlatform();
v.getViewPlatformTransform().setTransform(t);
BranchGroup scene = createSceneGraph();
SimpleUniverse u = new SimpleUniverse(v, viewer);
u.getViewingPlatform();
u.addBranchGraph(scene);
/*
Canvas3D canvas = new Canvas3D(SimpleUniverse
.getPreferredConfiguration());
setLayout(new BorderLayout());
add("Center", canvas);
BranchGroup scene = createSceneGraph();
SimpleUniverse u = new SimpleUniverse(canvas);
u.getViewingPlatform().setNominalViewingTransform();
u.addBranchGraph(scene);
*/
}
private BranchGroup createSceneGraph() {
BranchGroup objRoot = new BranchGroup();
BoundingSphere bound = new BoundingSphere(new Point3d(0.0, 0.0, 0.0),
50);
Transform3D tr = new Transform3D();
TransformGroup group = new TransformGroup(tr);
group.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
group.addChild(new ColorCube());
Alpha xtranAlpha = new Alpha(-1, Alpha.INCREASING_ENABLE
| Alpha.DECREASING_ENABLE, 0, 0, 5000, 20000, 0, 5000, 20000, 0);
PositionInterpolator tran = new PositionInterpolator(xtranAlpha, group,
tr, -4.f, 4.f);
tran.setSchedulingBounds(bound);
group.addChild(tran);
Color3f bgColor = new Color3f(1.0f, 1.0f, 1.0f);
Background bg = new Background(bgColor);
bg.setApplicationBounds(bound);
objRoot.addChild(bg);
objRoot.addChild(group);
return objRoot;
}
public static void main(String[] args) {
new MainFrame(new Pos(), 400, 400);
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -