关键词:Java3d,正方体
在运行程序的时候,请确保你已经安装了Java的3D工具包,否则是无法编译通过的。如果要下载Java3D的api可以点下面的连接:
http://www.kutoku.info/images/java/100910/java3d-1_5_1-windows-i586.exe,在Windows下直接安装即可。
官方网站:
http://www.oracle.com/technetwork/java/javase/tech/index-jsp-138252.html
程序运行后,展示一个3D的正方体。
下面是运行效果图:
程序如下:
package com.zakisoft.hw;
import java.applet.Applet;
import java.awt.BorderLayout;
import java.awt.GraphicsConfiguration;
import javax.media.j3d.Alpha;
import javax.media.j3d.BoundingSphere;
import javax.media.j3d.BranchGroup;
import javax.media.j3d.Canvas3D;
import javax.media.j3d.RotationInterpolator;
import javax.media.j3d.Transform3D;
import javax.media.j3d.TransformGroup;
import javax.vecmath.Point3d;
import com.sun.j3d.utils.applet.MainFrame;
import com.sun.j3d.utils.geometry.ColorCube;
import com.sun.j3d.utils.universe.SimpleUniverse;
public class HelloUniverse extends Applet {
private static final long serialVersionUID = 41293118815177506L;
private SimpleUniverse u = null;
public BranchGroup createSceneGraph() {
BranchGroup objRoot = new BranchGroup();
TransformGroup objTrans = new TransformGroup();
objTrans.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
objRoot.addChild(objTrans);
// 创建一个3D对象,正方体
objTrans.addChild(new ColorCube(0.4));
Transform3D yAxis = new Transform3D();
Alpha rotationAlpha = new Alpha(-1, 6000);
RotationInterpolator rotator = new RotationInterpolator(rotationAlpha,
objTrans, yAxis, 0.0f, (float) Math.PI * 2.0f);
BoundingSphere bounds = new BoundingSphere(new Point3d(0.0, 0.0, 0.0),
100.0);
rotator.setSchedulingBounds(bounds);
objRoot.addChild(rotator);
objRoot.compile();
return objRoot;
}
public HelloUniverse() {
}
public void init() {
setLayout(new BorderLayout());
GraphicsConfiguration config = SimpleUniverse
.getPreferredConfiguration();
Canvas3D c = new Canvas3D(config);
add("Center", c);
BranchGroup scene = createSceneGraph();
u = new SimpleUniverse(c);
u.getViewingPlatform().setNominalViewingTransform();
u.addBranchGraph(scene);
}
public void destroy() {
u.cleanup();
}
public static void main(String[] args) {
new MainFrame(new HelloUniverse(), 512, 512);
}
}
文章地址:
http://javapub.iteye.com/blog/760437
分享到:
相关推荐
SpringMVC ---- HelloWorld ---- 代码 SpringMVC ---- HelloWorld ---- 代码 SpringMVC ---- HelloWorld ---- 代码 SpringMVC ---- HelloWorld ---- 代码 SpringMVC ---- HelloWorld ---- 代码 SpringMVC ---- Hello...
java郑java01-helloworld.rar
"webgl-3d-helloworld"项目是一个基础教程或示例,教你如何使用JavaScript和WebGL创建一个简单的3D“Hello, World!”程序。 在描述中提到的"javascript 实现的 3d helloworld",意味着这个项目将通过JavaScript代码...
这个名为 "100-ways-to-print-HelloWorld-in-java-master_helloworld_" 的项目显然是一个有趣的挑战,旨在探索使用Java语言打印 "Hello, World!" 的一百种不同方法。下面我们将深入探讨这个主题,详细介绍各种可能的...
18.java_helloworld案例编写.zip18.java_helloworld案例编写.zip18.java_helloworld案例编写.zip18.java_helloworld案例编写.zip18.java_helloworld案例编写.zip18.java_helloworld案例编写.zip18.java_helloworld...
只要java程序配置完之后即可运行此源码
这个项目 "spring-mvc-helloworld" 是一个基础的 Spring MVC 示例,用于帮助初学者理解其工作原理。 1. **MVC 架构模式**: MVC 是一种设计模式,用于分离应用程序的数据、业务逻辑和用户界面。Model 负责处理数据...
《SpringBoot HelloWorld初探》 在当今的Java开发领域,SpringBoot框架因其简化Spring应用的初始搭建以及开发过程而备受青睐。"springboot-helloworld.rar"这个压缩包,显然是一个入门级的示例,旨在帮助开发者快速...
Spring Boot学习笔记-------(二)spring boot入门,配套例子代码,博客地址:https://blog.csdn.net/huaya1127/article/details/104130300
本示例“JNI-HelloWorld”就是关于如何使用JNI将Java与C语言结合,实现一个简单的“Hello, World!”程序。 首先,我们需要理解JNI的基本概念。JNI定义了一套接口和数据类型,使得Java代码能够声明本地方法(即非...
spring和rabbitmq整合的helloworld
java 入门hello world 文件编写,适用于所有初学java初学者
【标题】"SpringMVC Maven Webapp HelloWorld 源码解析" 在Web开发领域,SpringMVC是一个广泛应用的Java框架,用于构建可扩展且模块化的Web应用程序。它作为Spring框架的一部分,提供了处理HTTP请求、视图渲染以及...
### Java零基础 - HelloWorld程序详解 #### 一、引言 HelloWorld程序是学习任何编程语言时最常见的第一个程序。对于初学者来说,它不仅能够帮助理解编程语言的基本语法,还能激发学习兴趣。本文将详细介绍Java语言...
标题 "100-ways-to-print-HelloWorld-in-java-master.rar" 暗示这是一个关于使用Java编程语言打印“Hello, World!”的项目,其中可能包含了多种不同的实现方法。这个压缩包很可能是一个开源项目,旨在展示Java编程中...
java学习-java中的helloworld
java 微信公众号 开发入门1-helloWorld 程序可以跑起来,欢迎大家一起学习研究。 我也是刚刚做出来的 分享出来。,
每个接触程序的人,必定首先接触到的是这个代码--------Hello world。
在"jni-helloWorld"这个项目中,我们看到的是一个JNI的入门示例,主要目的是帮助开发者理解如何使用JNI来调用本地(非Java)代码。 首先,"HelloWorld"是编程中的经典例子,通常用于展示一种新语言或技术的基本用法...
《Hibernate HelloWorld:初识持久化框架的奥秘》 Hibernate,作为Java领域中的一款主流对象关系映射(ORM)框架,极大地简化了数据库操作。它允许开发者使用面向对象的方式来处理数据库,而无需直接编写SQL语句,...