Java3D快速上手

    昨天开始接触Java3D,一开始就被配置环境给难到了,怎么样才能在eclipse中画一个3D的图形,然后在网上查资料,直到今天中午,做出了第一个Java3D Demo,于是想大家分享一下实现的步骤,至于具体的配置环境有一篇详细的Java3D教程,我给一个连接http://wenku.baidu.com/link?url=pie_cHOXf6-g3zdUD_QZFpHZT2fpFPpVaqF4l07RQpCmmvUj2G_9z2ctV_WaPxChXCyFZPf17WzO5BNTuYT-tuwC8B5-GzemAFnnPqTs2ty
接下来创建一个Hello.java,具体代码(参考别人的),这里只讲方法,不讲技术,具体的自己再摸索。
import com.sun.j3d.utils.geometry.*; 

import com.sun.j3d.utils.universe.*;
import javax.media.j3d.*;
import javax.vecmath.*;

public class Hello {
public Hello() {
// 创建一个虚拟空间
SimpleUniverse universe = new SimpleUniverse();
// 创建一个用来包含对象的数据结构
BranchGroup group = new BranchGroup();

// 创建一个球并把它加入到group中
Sphere sphere = new Sphere(0.5f);
// 小球的半径为0.5米
group.addChild(sphere);
Color3f light1Color = new Color3f(1.8f, 0.1f, 0.1f);
// 设置光线的颜色
BoundingSphere bounds = new BoundingSphere(new Point3d(0.0, 0.0, 0.0),
100.0);
// 设置光线的作用范围
Vector3f light1Direction = new Vector3f(4.0f, -7.0f, -12.0f);
// 设置光线的方向
DirectionalLight light1 = new DirectionalLight(light1Color,
light1Direction);
// 指定颜色和方向,产生单向光源
light1.setInfluencingBounds(bounds);
// 把光线的作用范围加入光源中
group.addChild(light1);
// 将光源加入group组
// 安放观察点
universe.getViewingPlatform().setNominalViewingTransform();
// 把group加入到虚拟空间中
universe.addBranchGraph(group);

}

public static void main(String[] args) {
new Hello();
}
}
ok,这样运行一下程序应该就可以得到一个3D的小球。

猜你喜欢

转载自qianjiangbing.iteye.com/blog/2028236