Java 3D API官方教程:1.6.1 Java3D中部封的类用法记录
2018-03-05 14:32
696 查看
BranchGroup 类
这种类型的对象是用于构建建场景图的, BranchGroup的实例是子图的根结点,
BranchGroup对象也是唯一能成为Locale对象的孩子对象的对象。BranchGroup对象可以有多个孩子, BranchGroup对象的孩子对象可以是Group和Leaf对象。
Canvas3D类
Canvas3D 类继承自Abstract Windowing Toolkit (AWT)类的Canvas类.在场景图的视图分支图中,至少要引用一个Canvas3D对象(注:有可能存在多个Canvas3D对象,为了使演示简单,在使用SimpleUniverse类时,在程序中仅有Canvas3D类的一个实例)。关于Canvas类更多的信息,请参考AWT。附录B中提供了一系列参考。
Transform3D 类
Transform3D 对象用于进行3D几何形变比于平移和旋转。这些对象一般仅仅用于创建一个TransformGroup对象。首先, Transform3D对象可能基于一些Transform3D对象的组合而创建,然后就用这个Transform3D来构建一个
TransformGroup对象。
一个Transform3D对象能表示平移,旋转,缩放乃至这些变换的组合。当指定一
4000
个旋转变换时,角度用弧度来表示。一个全旋转(圆)的弧度是2 PI。设置角度的一个方法是利用常量Math.PI,另外一种算途径是直接设置,这里说一下常用角度的弧度:45度是0.785,
90度是1.57, 而180 度是3.14(约为PI)。
TransformGroup 类
作为Group类的子类,TransformGroup类的实例用于创建场景图并且都其子结点的集合。TransformGroup对象存储了几何形变比如平移和旋转。一般利用不在场景图中的Transform3D对象来构造某一形变。TransformGroup对象保存了场景图中的形变信息。
Transform3D对象中所包含的形变信息在TransformGroup对象创建时或者是调用了setTransform()方法变复制到TransformGroup中。
Vector3f 类
Vector3f 是包javax.vecmath中的数学类,用于用浮点数来设定一个矢量。Vector对象常常用于设置图形开变。Vector3f对象也不直接在场景图中用到。常用于指定形变,表现,法向量以及一些其它的应用。
ColorCube
ColorCube 是包com.sun.j3d.utils.geometry中的工具类。定义了一个立方体图形及其各面的不同的颜色,并使位置处于初始位置的中间。默认的
ColorCube对象是一个长宽高均为2米的立方体。如果一个处于原始位置未经旋转的立方体(如HelloJava3Da示例中的),在名义上的视图位置中,红色面是可见的,其它面的颜色分别是:蓝色, 洋红,黄色,绿色和青色。
这种类型的对象是用于构建建场景图的, BranchGroup的实例是子图的根结点,
BranchGroup对象也是唯一能成为Locale对象的孩子对象的对象。BranchGroup对象可以有多个孩子, BranchGroup对象的孩子对象可以是Group和Leaf对象。
BranchGroup 默认构造函数 BranchGroup() BranchGroup的实例,作为场景图分支的根结点,BranchGroup 对象也是能唯一插入到Locale对象中的对象。 |
Canvas3D 类继承自Abstract Windowing Toolkit (AWT)类的Canvas类.在场景图的视图分支图中,至少要引用一个Canvas3D对象(注:有可能存在多个Canvas3D对象,为了使演示简单,在使用SimpleUniverse类时,在程序中仅有Canvas3D类的一个实例)。关于Canvas类更多的信息,请参考AWT。附录B中提供了一系列参考。
Canvas3D 类的构造函数 Canvas3D(GraphicsConfiguration graphicsconfiguration) 构造并初始化一个新的Canvas3D对象,Java 3D可以在给定的GraphicsConfiguration对象条件下渲染这个对象。这是AWT Canvas类的扩展的类。关于GraphicsConfiguration 对象的更多信息请参考Java 2D规范。这也是JDK 1.2 AWT的一部分。 |
Transform3D 对象用于进行3D几何形变比于平移和旋转。这些对象一般仅仅用于创建一个TransformGroup对象。首先, Transform3D对象可能基于一些Transform3D对象的组合而创建,然后就用这个Transform3D来构建一个
TransformGroup对象。
Transform3D默认的构造函数 一个通常的变换对象就表示为一个4x4双精度浮点矩阵。 这种数学表示是以行为主的。一个Transform3D对象不是在场景图中用到的,而是用于指定TransformGroup对象的图形变换的。 Transform3D() 构造一个Transform3D 对象,默认使用单位矩阵 (不顾虑在变换)。 |
4000
个旋转变换时,角度用弧度来表示。一个全旋转(圆)的弧度是2 PI。设置角度的一个方法是利用常量Math.PI,另外一种算途径是直接设置,这里说一下常用角度的弧度:45度是0.785,
90度是1.57, 而180 度是3.14(约为PI)。
Transform3D 类的方法 (列出部分) Transform3D对象用于表示几何形变,比如旋转,平移和缩放。 Transform3D是没在任何场景图中直接使用到的少数几个类之一。Transform3D对象所定义的变换是用于创建场景图中的TransformGroup 对象的。 void rotX(double angle) 设置图形X轴方向沿逆时针对象按指定的角度旋转。角度值用弧度指定。 void rotY(double angle) 设置图形Y轴方向沿逆时针对象按指定的角度旋转。角度值用弧度指定。 void rotZ(double angle) 设置图形Z轴方向沿逆时针对象按指定的角度旋转。角度值用弧度指定。 void set(Vector3f translate) 利用传入的Vector3f型的参数设置图形的平移值,如果这个传入的形变是单位矩阵,则在其它时候设置真正的形变值。 |
作为Group类的子类,TransformGroup类的实例用于创建场景图并且都其子结点的集合。TransformGroup对象存储了几何形变比如平移和旋转。一般利用不在场景图中的Transform3D对象来构造某一形变。TransformGroup对象保存了场景图中的形变信息。
ransformGroup 构造函数 TransformGroup() 利用单位矩阵来构造并且初始化一个TransformGroup对象。(不发生形变) TransformGroup(Transform3D t1) 通过传入Transform3D对象参数来构造并且初始化一个TransformGroup 对象。 参数: t1 - transform3D对象 |
Transform3D对象中所包含的形变信息在TransformGroup对象创建时或者是调用了setTransform()方法变复制到TransformGroup中。
TransformGroup setTransform() 方法 void setTransform(Transform3D t1) 利用传入的形变参数设置TransformGroup对象的形变值。 参数: t1 - 要复制的transform3D对象。 |
Vector3f 是包javax.vecmath中的数学类,用于用浮点数来设定一个矢量。Vector对象常常用于设置图形开变。Vector3f对象也不直接在场景图中用到。常用于指定形变,表现,法向量以及一些其它的应用。
Vector3f 构造函数 一个三个元素的矢量。其三个元素用单精度浮点数表示X,Y,Z坐标。 Vector3f() 用(0,0,0)构造并初始化一个Vector3f。 Vector3f(float x, float y, float z) 指定x,y,z轴坐标来构造并初始经一个Vector3f。 |
ColorCube 是包com.sun.j3d.utils.geometry中的工具类。定义了一个立方体图形及其各面的不同的颜色,并使位置处于初始位置的中间。默认的
ColorCube对象是一个长宽高均为2米的立方体。如果一个处于原始位置未经旋转的立方体(如HelloJava3Da示例中的),在名义上的视图位置中,红色面是可见的,其它面的颜色分别是:蓝色, 洋红,黄色,绿色和青色。
ColorCube 构造函数 包: com.sun.j3d.utils.geometry 一个ColorCube 是一个简单的各面均有不同颜色的可视的立方体。 ColorCube 扩展了Shape3D 类;因此,它是叶子结点。 ColorCube可以很容易地放置于虚拟世界中。 ColorCube() 以默认的大小构造一个有色立方体。默认地,每一个角到相应坐标的中心都是1米,因而,此立方体处于视图正中心,长宽高都是2米。 ColorCube(double scale) 构造一个有色立方体,并作指定参数的缩放。默认每一条边都是2米,而此构造函数则构造一个顶点在(scale, scale, scale) 和(-scale, -scale, -scale)的ColorCube。 |
相关文章推荐
- Java 3D API官方教程[翻译二]
- java 3D API官方教程:1.4 编写Java3D程序的一般步骤
- Java 3D API官方教程
- Java 3D API官方教程[翻译一]
- Java 3D API官方教程[翻译四]
- Java 3D API官方教程[翻译三]
- Java 3D API官方教程
- Java 3D API官方教程[翻译一]
- Java 3D API官方教程[翻译五]
- Unity 3D 官方教程—— 2D Physics系列 学习记录
- Unity 3D官方教程——Adventure Game学习记录
- Unity 3D官方教程——Tanks!学习记录
- Intellij – 无法使用较新的Java 8类 – 错误:“API的用法记录为@since 1.6+
- Unity 3D 官方教程——Space Shooter学习记录
- Unity 3D官方教程——2D Roguelike学习记录
- Unity 3D 官方教程—— Roll A Ball 学习记录
- jax-rs(Java API for RESTful Web Services) 实践教程 之一 —— 初探jax-rs
- Google Maps API用法教程
- Google Maps API用法教程
- Google Maps API用法教程