博客网 >

2.6.2 共享NodeComponent对象

几个不同的对象引用,因此共享相同的NodeComponent对象是合法,甚至是必要的.例如如图2-21所示,两个Shape3D对象引用了同一个Appearance组件,同时,不同的两个Appearance 对象共享着同一个LineAttributes组件.

共享同样的NodeComponent可以提高性能.例如,如果几个Appearance组件共享同样的需要锯齿化的LineAttributes组件, Java 3D渲染引擎将决定将锯齿化组在一块进行(group the antialiased wire frame shapes together).这将最小程度打开锯齿化开关,从而提高程序性能.注意到一个结点可以有一个或多个双亲.尽管如此,一旦NodeComponents被引用,它们就不再是结点对象类型.因为其不再具有任何真正意义上的双亲.因为, NodeComponent对象可能任何数目的其它对象被共享(引用).

2.6.3 Attribute

本节讨论了上面曾提及的能被Appearance对象所引用的Attribute NodeComponent子类的六种属性.而纹理属性则将在第7章涉及.

PointAttributes

PointAttributes对象管理着点基本图形如何渲染.默认的情况下,如果一个顶点被渲染成为一个点,其就是用一个象素来填充的.你可以用setPointSize()方法来使这个点更大.尽管如此,默认情况下的这个大点看起来象个方形,除非你调用了setPointAntialiasingEnable()方法来锯齿化点.这个操作通过改变象素点的颜色来使点看起来更圆”(至少是没有那么方了)

PointAttributes 构造函数

PointAttributes()

来构造一个组件对象来描绘一个没有经过锯齿化的1个象素大小的点.

PointAttributes(float pointSize, boolean state)

通过指定点象素尺寸大小和是否允许锯齿化来构造一个组件对象.

PointAttributes方法

void setPointSize(float pointSize)

设置点的尺寸.

void setPointAntialiasingEnable(boolean state)

设置点是否允许锯齿化.只有当点尺寸 >= 1象素时才有效果.

LineAttributes

LineAttributes对象可以将线基本图形的渲染过程在三个方面和进行设置.默认地,线被绘制成为实线,一个象素宽,并且没有锯齿化.(是平滑效果)你可以通过调用如下三个方法来改变这些属性.它们是setLinePattern(), setLineWidth(), setLineAntialiasingEnable().

<< SQLiteManager 加入... / 由SQLiteManager中文... >>

专题推荐

不平凡的水果世界

不平凡的水果世界

平凡的水果世界,平凡中的不平凡。 今朝看水果是水果 ,看水果还是水果 ,看水果已不是水果。这境界,谁人可比?在不平凡的水果世界里,仁者见仁,智者见智。

中国春节的那些习俗

中国春节的那些习俗

正月是农历新年的开始,人们往往将它看作是新的一年年运好坏的兆示期。所以,过年的时候“禁忌”特别多。当然,各个地方的风俗习惯不一样,过年的禁忌也是不一样的。

评论
0/200
表情 验证码:

wuxingblog

  • 文章总数0
  • 画报总数0
  • 画报点击数0
  • 文章点击数0
个人排行
        博文分类
        日期归档