java 三维场景图_一个Java3D简单三维场景图,测试你的Java3D开发运行环境。
保存文件,命名为UglyCube.java
这是个彩色六面体,可以用鼠标左键旋转,右键拖动,摁下滚轮前后移动缩放。
直接在命令行下转到文件目录,像普通java程序那样编译解释执行。用以测试Java3D开发运行环境是否配置正确。相关程序如下:
一些其他的Java3D资源资料可以在下面的文章中找到。
import java.applet.Applet;
import java.awt.BorderLayout;
import com.sun.j3d.utils.applet.MainFrame;
import com.sun.j3d.utils.geometry.*;
import com.sun.j3d.utils.universe.*;
import javax.media.j3d.*;
import javax.vecmath.*;
import com.sun.j3d.utils.behaviors.mouse.MouseRotate;
import com.sun.j3d.utils.behaviors.mouse.MouseZoom;
import com.sun.j3d.utils.behaviors.mouse.MouseTranslate;
public class UglyCube extends Applet
{
private SimpleUniverse universe ;
public UglyCube()
{}
public void init()
{
//canvas to draw on, ask SimpleUniverse what config to use
Canvas3D canvas = new Canvas3D(SimpleUniverse.getPreferredConfiguration());
setLayout(new BorderLayout());
add("Center", canvas);
//create top of our scene graph
BranchGroup scene = new BranchGroup();
//create universe, and attach our geometry to it.
SimpleUniverse u = new SimpleUniverse(canvas);
u.getViewingPlatform().setNominalViewingTransform();
// Create the bounding leaf node
BoundingSphere bounds = new BoundingSphere(new Point3d(0.0,0.0,0.0), 100.0);
// Create the transform node
TransformGroup transformGroup = new TransformGroup();
transformGroup.setCapability(TransformGroup.ALLOW_TRANSFORM_READ);
transformGroup.setCapability(TransformGroup.ALLOW_TRANSFORM_WRITE);
// Create the drag behavior node
MouseRotate behavior = new MouseRotate();
behavior.setTransformGroup(transformGroup);
transformGroup.addChild(behavior);
behavior.setSchedulingBounds(bounds);
// Create the zoom behavior node
MouseZoom behavior2 = new MouseZoom();
behavior2.setTransformGroup(transformGroup);
transformGroup.addChild(behavior2);
behavior2.setSchedulingBounds(bounds);
// Create the zoom behavior node
MouseTranslate behavior3 = new MouseTranslate();
behavior3.setTransformGroup(transformGroup);
transformGroup.addChild(behavior3);
behavior3.setSchedulingBounds(bounds);
transformGroup.addChild(new ColorCube(0.4));
scene.addChild(transformGroup);
u.addBranchGraph(scene);
}
// The following allows UglyCube to be run as an application
// as well as an applet
public static void main(String[] args)
{
new MainFrame(new UglyCube(), 256, 256);
java 三维场景图_一个Java3D简单三维场景图,测试你的Java3D开发运行环境。相关推荐
- web自动化如何在不同浏览器运行_如何给树莓派搭建WEB开发运行环境之JAVA篇
在上一篇,我们已经脱掉了她华丽的外衣,你不用再添加任何华而不实的装饰,一切都交给CLI来搞定.树莓派WEB开发运行环境之JAVA篇,只需5个步骤: 安装JAVA开发包 安装和运行maven 创建JAV ...
- 如何给树莓派搭建WEB开发运行环境之JAVA篇
在上一篇,我们已经脱掉了她华丽的外衣,你不用再添加任何华而不实的装饰,一切都交给CLI来搞定.树莓派WEB开发运行环境之JAVA篇,只需5个步骤: 安装JAVA开发包 安装和运行maven 创建JAV ...
- java 语言 写字板_一个简单的java语言写字板.docx
一个简单的java语言写字板.docx 一个简单的JAVA语言写字板一.需求分析1.需求分析:现在网络上各种文档编辑器数不胜数.功能也是应有尽有,有能改变字体的,有可以改变字体颜色的,但是,这些软件有 ...
- python设计一个三维向量类_一个简单的三维向量类
最近在看<3D数学基础:图形与游戏开发>.该书第六章实现了一个简单三维向量类.我看了一下代码,发现有些地方是错的,于是做了一些小修改.该三维向量类实现了一些常用的向量运算,如点乘.叉乘等. ...
- java 性能 火焰图_性能调优工具-火焰图
性能调优工具-火焰图 发布时间:2019-07-17 19:29, 浏览次数:402 前言 工具的进化一直是人类生产力进步的标志,合理使用工具能大大提高我们的工作效率,遇到问题时,合理使用工具更能加快 ...
- Java入门知识,写一个最简单java程序
本文目录 一.Java语言的简介 二.写一个最简单Java程序 1.Notepad配置 2.最简单的Java程序 3.代码分析 4.编译与编译常见错误 5.执行java程序 一.Java语言的简介 0 ...
- java实现通话_Java做一个最简单的通话程序
Java做一个最简单的通话程序 作者:未知 文章来源:www.jspcn.net 发布日期:2005年01月19日 Java中的网络编程是一个很重要的部分,也是其编程优越性的地方之一.在Java ...
- python密码破解工具_一个最简单的博客园文章密码暴力破解器-python3实现
一个最简单的博客园文章密码暴力破解器-python3实现 我之前想写路由器的密码暴力破解器,我手上只有极路由,发现极路由有安全限制,只能允许连续10密码错误,所以我改拿博客园练手. 博客园的博客有个功 ...
- python画漏斗图_只需简单几步,教你用python完成漏斗图的绘制
商业分析中经常会用到漏斗图.尤其是在网站流量监控.电商商品转化等一些数据运营方面.漏斗图之所以是漏斗就就是倒三角的形状,是因为用户或者流量,集中从某个功能点进入,很大可能会按照产品本身设定的流程来完成 ...
最新文章
- EM算法理解的九层境界
- grep -v、-e、-E
- python的全称_python名称空间介绍
- 输入控件tagsinput
- Linux学习之zImage内核镜像解压过程详解
- 春天:注入列表,地图,可选对象和getBeansOfType()陷阱
- java gc与finalize_finalize方法与Java GC
- angular 常用指令的使用
- 在属性级情感分析中结合BERT和语法信息
- ApacheCN 翻译/校对/笔记整理活动进度公告 2019.9.20
- svn访问路径提示Unable to connect to a repository at url
- php mcrypt blowfish,php加密算法blowfish
- 维京传奇第四季/全集Vikings迅雷下载
- 谈谈用户体验与风控的平衡性
- php js sdk 签名算法,签名算法 · PAYJS API 开发文档
- 如何画架构图之C4方法
- 543、RabbitMQ详细入门教程系列 -【Confirm与Mandatory】 2022.09.05
- 中职组网络安全C模块全漏洞脚本讲解包含4个漏洞的脚本
- 一起学 WebGL:感受三维世界之视图矩阵
- matlab与origin关联,Matlab与Origin软件在“电路及磁路”教学中的应用