下面两个参考块列出了Appearance类的默认的构造函数和其它方法.
Appearance构造函数
默认的Appearance构造函数构造了一个Appearance对象,其对所有组件对象的引用均初始化为空值.所有的组件都是空引用,其属性默认的值也是可以预见的:点和线是绘制成分别的尺寸和宽度是1,并且是平滑的.初始的颜色是白色.不透明.深度缓冲可用,并且既能读又能写.
Appearance()
一个Appearance 组件常常通过调用如下的方法来引用一个到多个属性组件.这些属性类在
Appearance 方法 (未包含光影和纹理)
每一个方法都把相应的NodeComponent 对象设置成为表面属性包的一部分.
void setPointAttributes(PointAttributes pointAttributes)
void setLineAttributes(LineAttributes lineAttributes)
void setPolygonAttributes(PolygonAttributes polygonAttributes)
void setColoringAttributes(ColoringAttributes coloringAttributes)
void setTransparencyAttributes(TransparencyAttributes transparencyAttributes)
void setRenderingAttributes(RenderingAttributes renderingAttributes)
几个不同的对象引用,因此共享相同的NodeComponent对象是合法,甚至是必要的.例如如图2-21所示,两个Shape3D对象引用了同一个Appearance组件,同时,不同的两个Appearance 对象共享着同一个LineAttributes组件.

共享同样的NodeComponent可以提高性能.例如,如果几个Appearance组件共享同样的需要锯齿化的LineAttributes组件, Java 3D渲染引擎将决定将锯齿化组在一块进行(group the antialiased wire frame shapes together).这将最小程度打开锯齿化开关,从而提高程序性能.注意到一个结点可以有一个或多个双亲.尽管如此,一旦NodeComponents被引用,它们就不再是结点对象类型.因为其不再具有任何真正意义上的双亲.因为, NodeComponent对象可能任何数目的其它对象被共享(引用).
【作者: wuxingblog】【访问统计:】【2005年10月23日 星期日 00:00】【注册】【打印】
你可以使用这个链接引用该篇文章 http://publishblog.blogchina.com/blog/tb.b?diaryID=3298867
来自puahi fuuqiz的ma lsiiga的引用:
aru gqaefe
|
- 评论人:匿名网友
2007-10-26 09:10:54
|
|||
请问为什么我在看JAVA3D网页时总提示小程序载入失败? |
||||
|
- 评论人:hp
2005-11-12 18:56:09
|
|||
谢谢
|
||||
|
- 评论人:wuxingblog
2005-11-12 16:03:05
|
|||
Java程序打包成EXE有以下几种办法(我也是从网上搜索来的):
|
||||
|
- 评论人:hp
2005-11-12 11:12:16
|
|||
我想问一下,把用java3D编的游戏打包变成.exe可执行文件,该怎么办, 上次下载了一个JET,但好象就是不识别3d。 |
||||
|
- 评论人:sage
2005-11-11 21:28:46
|
|||
谢谢,已经解决了,正是你说的这种情况。我原来为了性能的原因用的就是
|
||||
|
- 评论人:wuxingblog
2005-11-09 18:11:33
|
|||
TO SAGE:
|
||||
|
- 评论人:wuxingblog
2005-11-08 09:53:39
|
|||
TO XX:
|
||||
|
- 评论人:sage
2005-11-07 22:49:23
|
|||
我用java3d做了一个场景,场景中的不同位置分布着很多物体,这些物体都是用的BranchGroup。现在我想要在这个场景内实现一个简单的点取操作,就是当鼠标点到屏幕上的某个物体时,就返回这个物体的BranchGroup实例。我试过使用PickingObject类或是PickingCanvas类但是返回的物体总是有时准确有时不准,往往返回的对象是所点取的对象周围甚至是相反方向上的物体。自己查了一下,发现设置PickRay的原点和方向都是对的,只是到了pickClosest()返回的SceneGraphPath就不对了。这个问题已经困惑我很长一段时间了,不知能不能给些帮助,不胜感谢! |
||||
|
- 评论人:xx
2005-11-06 11:24:37
|
|||
非常感谢
|
||||
|
- 评论人:wuxingblog
2005-11-05 16:42:08
|
|||
TransformGroup本身就提供了读取其拥有的Transform3D对象的方法.就是void getTransform3D(Transform3D t);你这里可以这么写,
|
||||
|
- 评论人:xx
2005-11-03 20:59:46
|
|||
请问一下,在 Behavior 子类中构造函数函数的参数是主类中的一个TransformGroup实例trans,eg. myBehavior(TransformGroup trans,long millisecond)如果要在函数中用到 trans 坐标,怎么通过 trans 知道相应的 Transform3D 的实例 transform 呢?谢谢 |
||||