读书人

actionscript flex 中三维空间坐标和

发布时间: 2012-09-02 21:00:34 作者: rapoo

actionscript flex 中三维坐标和屏幕(二维)坐标的转换

  1. flash.display.DisplayObject?类包含 z 属性和新的旋转和缩放属性,这些属性用于操作 3D 空间中的显示对象。DisplayObject.local3DToGlobal?() 方法提供了一种将?3D 几何图形投影到 2D 平面?的简单方式?。??Java代码??actionscript  flex 中三维空间坐标和屏幕(二维)坐标的转换
    1. //?屏幕坐标系和3D坐标系:??
    2. ??
    3. //?将_sprite的(200,?0,?0)的那个点三维点转换成一个二维点??
    4. var?p:Point?=?_sprite.local3DToGlobal(new?Vector3D(200,?0,?0));??
    5. ??
    6. //?二维坐标?转换成?三维坐标??
    7. var?p:Vector3D?=?_sprite.globalToLocal3D(new?Point(mouseX,?mouseY));??
    8. ??
    9. //?pointAt?方法接收一个?Vector3D?对象作为指向的目标,这边设成了鼠标光标??
    10. _sprite.transform.matrix3D.pointAt(new?Vector3D(mouseX,?mouseY,?0));??
    ?
  2. flash.geom.Vector3D?类可用作管理 3D 点?的数据结构?。该类还支持矢量数学运算。
  3. flash.geom.Matrix3D?类支持复杂的 3D 几何转换?,例如旋转、缩放和平移。
  4. flash.geom.PerspectiveProjection?类控制着将?3D 几何图形映射到 2D 视图?的相关参数?。

在 ActionScript 中,有两种不同的模拟 3D 图像的方式:


  1. 在?3D 空间?中排列平面对象并进行动画处理?。这种方式需要使用显示对象的 x、y 和 z 属性来对显示对象进行动画处理,或者使用 DisplayObject 类设置旋转和缩放属性。使用DisplayObject.transform.matrix3D?对象可以实现更为复杂的运动?。DisplayObject.transform.perspectiveProjection?对象可自定义显示对象在 3D 透视?中的绘制方式?。如果需要对主要包含平面的 3D 对象进行动画处理,可以使用这种方式。这种方式的例子包括 3D 图库或者 3D 空间中排列的 2D 动画对象。
  2. 从?3D 几何图形生成 2D 三角形?,然后用纹理呈现这些三角形。要使用这种方式,必须首先定义和管理有关 3D 对象的数据,然后将这些数据转换成?要呈现的?2D 三角形?。可以将位图纹理映射到这些三角形,然后使用 Graphics.drawTriangles?()方法将三角形绘制为图形对象。这种方式的例子包括从文件中加载 3D 模型数据?并将模型呈现到屏幕上,或以三角形网格形式生成和绘制 3D 图形。

?

?

?

原帖地址:http://www.4ucode.com/Study/Topic/840272

读书人网 >flex

热点推荐