中国象棋3D-------------------------------------------------------------------------- 作者:_____________-------------------------------------------------------------------------- 日期:_____________中国象棋3D(一)配置Java3D环境本次实验我们组打算使用的编程语言是 Java,但是Eclipse自带的函数库里不含Java3D所需的配置信息,所以需要我们自己配置 3D环境,下面是我们组的添加方法。首先下载配置文件,包括 ,,-ogl-,j3dcore-ogl-,j3dcore-,j3dcore- Eclipse安装目录下的JDK/JRE/bin和DK/JRE/lib里当运行Java程序的时候按下面步骤添加 ->buildpath->(二)代码编写在编写代码部分,我们组遇到了许多问题,因为是从未接触过的知识,所以在编程过程中经常报错,为了在规定时间内完成任务,我们组就现学现用,在网上下载相关的代码,结合 Java_API手册一遍又一遍的反复读,手册上没有的就上网,遇到英文就用翻件翻了来看,最后再一步又一步的解决程程中的一个个 error首先介一点必的 Java3D相关知Java3D的景构:Java3D上是Java言在三形域的展,与 Java一,Java3D有粹的面向象构。 Java3D的数据构采用的是 SceneGraphsStructure(景),就是一些具有方向性的不称形成的状构( 1)。我在一个Java3D用程序看到的逼真三景从程序的角度看来,就是由Java3D定的一系列的象,些象不是乱无序,象之也不是毫无关系。如果想三像正常示,必在两点上遵循 Java3D景的定。察1,Java3D景的构由各种各的象成:在中出的些象都了 Java3D中有重要的意的,从上我将它分三:?根点(Root):VirtualUniverseObject?点(Node):LocalObject、BranchGroupNodes、BehaviorNode、Shape3DNode⋯?叶子点(Leaf):Appearance、Geomery..图1:在用中的Java3D景景中和的交点称点( Node),些点都是 Java3D的例(InstanceofClass),点之的表示各个例之的关系。?VirtualUniverse是根点,每一个景的 VirtualUniverse是唯一的。?在VirtualUniverse下面是Locale节点,每个程序可以有一个或多个Locale,但同时只能有一个 Locale处于显示状态,就好象一个三维世界非常大,有很多个景点,但我们同时只能在一个景点进行观察。 Java3D允许从一个Locale跳到另一个Locale,不过绝大多数程序只有一个 Locale。?每一个Locale可以拥有多个BranchGroup节点。所有三维形体的其位置信息(TransformGroupNodes)都建立在BranchGroup节点之上。?TransformGroupNode用来设定Shape3D在VirtualUniverse中的位置。?Spape3DNode是三维图形节点,这个节点的实体放映在最后的显示画面中,就是三维世界中的每个形体。包括正方体、球体以及任何形状和外观的三维形体。?位于场景图最下层的是两个叶子节点:三维体的外观( Appearance)和几何信息(Geometry),这两个节点定义了一个三维体的显示效果。?ViewPlatform位于图1的另一个分枝上,与前面所有描述三维体的性质的概念不同,ViewPlatform和View都是用来定义观察者的信息。上面所列的概念很多,但是对于建立一个简单的 Java3D程序,我们至少需要了解三个概念:虚拟宇宙( VirtualUniverse)、场景(Locale)、坐标系统。下面是一些相关代码的具体实现: ChessFram(){setpanel = newSetPanel();canvasfactroy = newCanvasFactroy(SimpleUniverse. getPreferredConfiguration ());(660,600);
中国象棋3D 来自淘豆网m.daumloan.com转载请标明出处.