3-D Transformations

3-D Transformations


(x, y, z)

  • 3D vectors are expressed as coordinate triples that define a relative location.

  • Defining a coordinate system requires four 3D vectors:

    1 to locate the origin
    1 X unit vector
    1 Y unit vector
    1 Z unit vector

  • A new coordinate system can therfore be expressed via a 4 x 3 transforamtion matrix
  • Homogeneous transforms or 4 x 4 matrices are sometimes used

  • Multiple transforms can be expressed by multiplying matrices for the component tranforms together, so that any number of nested transforms can ultimately be collapsed into a single transformation matrix
  • Hardware can do matrix multiplications very quickly

  • Since matrix multiplication is not commutative, the order in which transformations are applied can be significant

Basic transformation set

  • Translate

  • Scale

  • Rotate

  • Rotation axis can be arbitrarily defined in space (i.e. not one of the three coordinate axes)

  • Transformations often are used within modeling operations
    • Rotation - rotational sweep
    • Translation - extrusion
    • Translation in object space - extrude along a path
    • Scaling - reflection
  • Modeling transformations can affect normals

Non-linear transformations - deformations

  • Coordinate locations are transformed according to math functions

  • Both geometry and cameras are positioned with local coordinate systems within the global coordinate system of the scene
  • Transforming either will affect the location of objects as they appear on the image plane.

Scene Graphs

  • Directed Acyclic Graphs (DAG)
  • Heirarchical structure used to describe entire scenes within several common "scene graph" APIs
    (e.g. JAVA3D, VRML, Performer, Inventor)
posted @ 2012-11-24 10:01  Wilson Kwok  阅读(283)  评论(0)    收藏  举报