Lecture 9 --- 6.837 Fall '01 - Research | MIT...

31
6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics Pipeline 3. Modeling transformations 4. Illumination 5. Viewing Transformation 6. Clipping and Projection 7. Rasterization and Display 8. Rigid-Body Transformations 9. Vector and Matrix Algebra 10. Cross Product in Matrix Form 11. Translations 12. Rotations 13. Decomposing Rotations 14. The Geometry of a Rotation 14a. The Geometry of a Rotation 14b. The Rodrigues Formula 15. The Symmetric Matrix 16. The Skew Symmetric Matrix 17. Weighting Factors 18. Some Sanity Checks 19. Some Sanity Checks 20. Some Sanity Checks 21. Quaternions 22. Quaternion Facts 23. Rotation by Quaternion 24. Quaternion Composition 25. Quaternion Interpolation 26. Euclidean Transformations 27. More Modeling Transforms 28. Next Time Lecture 9 Outline 6.837 Fall '01 Lecture 9 --- 6.837 Fall '01 http://graphics/classes/6.837/F01/Lecture09/index.html [10/10/2001 7:27:08 PM]

Transcript of Lecture 9 --- 6.837 Fall '01 - Research | MIT...

Page 1: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

6.837 LECTURE 91. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics Pipeline

3. Modeling transformations 4. Illumination

5. Viewing Transformation 6. Clipping and Projection

7. Rasterization and Display 8. Rigid-Body Transformations

9. Vector and Matrix Algebra 10. Cross Product in Matrix Form

11. Translations 12. Rotations

13. Decomposing Rotations 14. The Geometry of a Rotation

14a. The Geometry of a Rotation 14b. The Rodrigues Formula

15. The Symmetric Matrix 16. The Skew Symmetric Matrix

17. Weighting Factors 18. Some Sanity Checks

19. Some Sanity Checks 20. Some Sanity Checks

21. Quaternions 22. Quaternion Facts

23. Rotation by Quaternion 24. Quaternion Composition

25. Quaternion Interpolation 26. Euclidean Transformations

27. More Modeling Transforms 28. Next Time

  Lecture 9   Outline   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/index.html [10/10/2001 7:27:08 PM]

Page 2: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

3D Transformations - Part 2 Mechanics

The 3-D graphicspipeline

Rigid-body transforms●

  Lecture 9   Slide 1   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide01.html [10/10/2001 7:27:26 PM]

Page 3: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

The 3-D Graphics Pipeline

A sneak look at where we're headed!●

Seldom are any two versions drawn the same way●

Seldom are any two versions implemented the same way●

Primitives are processed in a set series of steps●

Each stage forwards its result on to the next stage●

Hardware implementations will commonly have multiple primitivesvarious stages

Lecture 9   Slide 2   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide02.html [10/10/2001 7:27:29 PM]

Page 4: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

Modeling transformationsWe start with 3-D models defined in their own model space●

Modeling transformations orient models within a common coordinate frame called world space●

All objects, light sources, and the viewer live in world space●

Trivial rejection attempts toeliminate objects that cannotpossibly be seen (an optimization)

Lecture 9   Slide 3   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide03.html [10/10/2001 7:28:02 PM]

Page 5: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

Illumination

Next we illuminate potentially visible objects●

Object colors are determined by their material properties,and the light sources in the scene

Illumination algorithm depends on the shading model and the surfacemodel

More about this in later on●

Lecture 9   Slide 4   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide04.html [10/10/2001 7:28:04 PM]

Page 6: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

Viewing Transformation

Another change of coordinate systems●

Maps points from world space into eye space●

Viewing position is transformed to the origin●

Viewing direction is oriented along some axis●

A viewing volume isdefined

Lecture 9   Slide 5   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide05.html [10/10/2001 7:28:06 PM]

Page 7: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

Clipping and Projection

Next we perform clipping of the scene's objects againist a threedimensional viewing volume called a viewing frustum

This step totally eliminates any objects(and pieces of objects) that are notvisible in the image

A clever trick is used to straighten outthe viewing frustum in to a cube

Next the objects are projected intotwo-dimensions

Transformation from eye space to screen space●

Lecture 9   Slide 6   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide06.html [10/10/2001 7:28:07 PM]

Page 8: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

Rasterization and Display

One last transformation from our screen-space coordinates into aviewport coordinates

The rasterization step scan converts the object into pixels●

Involve interpolating parameters as we go●

Purely 2D operation●

Almost every step in the rendering pipeline involves a change ofcoordinate systems. Transformations are central to understandingthree-dimensional computer graphics.

Lecture 9   Slide 7   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide07.html [10/10/2001 7:28:09 PM]

Page 9: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

Rigid-Body TransformationsRigid-body, or Euclidean transformations●

Preserve the shape of the objects that they act on●

Includes rotations and trnaslations (just as in two dimensions)●

Recall our representation for the coordinates of 3-D points. We represent these coordinatesin column vectors. A typical point with coordinates (x, y, z) is represented as:

This is not the only possible representation. You may encounter textbooks that considerpoints as row vectors. What is most important is that you use a consistent representation.

Lecture 9   Slide 8   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide08.html [10/10/2001 7:28:11 PM]

Page 10: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

Vector and Matrix AlgebraYou've probably been exposed to vector algebra in previous courses. These include vectoraddition, the vector dot product, and the vector cross product. Let's take a minute to discussan equivalent set of matrix operators.

We begin with the dot product. This operation acts on two vectors and returns a scalar.Geometrically, this operation can be described as a projection of one vector onto another.The dot product has the following matrix formulation.

Lecture 9   Slide 9   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide09.html [10/10/2001 7:28:12 PM]

Page 11: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

Cross Product in Matrix FormThe vector cross product also acts on two vectors and returns a third vector. Geometrically,this new vector is constructed such that its projection onto either of the two input vectors iszero.

In order for one vector to project onto another with a length of zero, it must either have alength of zero, or be perpendicular to the second vector. Yet the vector generated by thecross-product operator is perpendicular to two vectors. Since the two input vectors define aplane in space, the vector that results from the cross product operation is perpendicular, ornormal to this plane.

For any plane there are two possible choices of a normal vector, one on each side of a plane.The cross product is defined to be the one of these two vectors where the motion from the tipof the first input vector to the tip of the second input vector is in a counter-clockwisedirection when observed from the side of the normal. This is just a restatement of theright-hand rule that you are familiar with.

Lecture 9   Slide 10   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide10.html [10/10/2001 7:28:13 PM]

Page 12: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

TranslationsObjects are usually defined relative to their own coordinate system. We can translate pointsin space to new positions by adding offsets to their coordinates, as shown in the followingvector equation.

The following figure shows the effect of translating a teapot.

Lecture 9   Slide 11   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide11.html [10/10/2001 7:28:14 PM]

Page 13: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

RotationsRotations in three-dimensions are considerably more complicated than two-dimensionalrotations. In general, rotations are specified by a rotation axis and an angle. Intwo-dimensions there is only one choice of a rotation axis that leaves points in the plane.

There are several different ways to present rotations. I will use a different approach than thatused in most books. Typically, all possible rotations are treated as the compostion of threecanonical rotations, one about the x-axis, one abount the y-axis and one about the z-axis. Inorder to use this model you need to do the following. Memorize the three canonicalrotations, which aside from the signs of the sines, isn't too hard. Next you have to go througha series of rotations which move the desired rotation axis onto one of your canonicalrotations, and then you have to rotate it back without introducing any extraneous twists. Thisis a difficult and error-prone process. But worst of all it is ambiguous. There existseveral different combinations canonical rotations that result in the same overall result.

Lecture 9   Slide 12   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide12.html [10/10/2001 7:28:17 PM]

Page 14: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

Decomposing RotationsThere is another way that is both easier to understand and provides you with more insightsinto what rotation is really about. Instead of specifying a rotation by a series of canonicalangles, we will specify an arbitrary axis of rotation and an angle. We will also first considerrotating vectors, and come back to points shortly.

The vector a specifies the axis of rotation. This axis vector must be normalized. The rotationangle is given by θ.

You might ask "How am I going to remember this equation?". However, once youunderstand the geometry of rotation, the equation will seem obvious.

The basic idea is that any rotation can be decomposed into weighted contributions fromthree different vectors.

Lecture 9   Slide 13   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide13.html [10/10/2001 7:28:20 PM]

Page 15: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

The Geometry of a RotationWe can actually define a natural basis for rotation in terms of three defining vectors. Thesevectors are the rotation axis, a vector perpendicular to both the rotation axis and the vectorbeing rotated, and the vector itself. These vectors correspond to the each respective term inthe expression.

Let's look at this in greater detail

Lecture 9   Slide 14   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide14.html [10/10/2001 7:28:22 PM]

Page 16: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

The Geometry of a Rotation

Lecture 9   Slide 14a   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide14a.html [10/10/2001 7:28:24 PM]

Page 17: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

The Rodrigues Formula

Lecture 9   Slide 14b   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide14b.html [10/10/2001 7:28:25 PM]

Page 18: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

The Symmetric MatrixFirst we'll see why the symmetric matrix of a vector generates a vector in the the direction ofthe axis.

The symmetric matrix is composed of the outer product of a row vector and an columnvector of the same value.

Lecture 9   Slide 15   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide15.html [10/10/2001 7:28:29 PM]

Page 19: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

The Skew Symmetric MatrixNext, consider how the skew symmetric matrix of a vector generates a vector that isperpendicular to both the axis and it's input vector.

From the idenity matrix in the third term it is easy to see how it will generate a vector in thesame direction as the input vector.

Lecture 9   Slide 16   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide16.html [10/10/2001 7:28:31 PM]

Page 20: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

Weighting FactorsEven the weighting factors can be easilyexplained in terms of the component threevectors.

When θ = 0 then the sum should reduce tothe identity matrix

The resulting vector after the rotation willalways be in the same direction as the axis.Thus, its weight is always positive(1 - cos(θ))

Lecture 9   Slide 17   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide17.html [10/10/2001 7:29:23 PM]

Page 21: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

Some Sanity ChecksWe can now test our new found knowledge. First, consider a rotation by 0.

You can also derive the rotation matrices given in the book. For instance, a rotation aboutthe x-axis:

Lecture 9   Slide 18   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide18.html [10/10/2001 7:29:24 PM]

Page 22: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

More Sanity ChecksA rotation about the y-axis.

This approach to rotations is completely general and unambiguous.

Lecture 9   Slide 19   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide19.html [10/10/2001 7:29:26 PM]

Page 23: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

More Sanity ChecksRotations about the z-axis.

If you grasp this simple concept and understand the geometry, then don't be surprised if, in afew years, everyone is coming to you to compute their rotation matrices. They will also droptheir jaws in amazement when you just write down the matrix.

Lecture 9   Slide 20   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide20.html [10/10/2001 7:29:28 PM]

Page 24: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

QuaternionsMatrices are not the only (or best) way of representing rotations. For one thing, they are redundant (9 numbers instead of 3)and, for another, they are difficult to interpolate.An alternative representation was developed by Hamilton in the early 19th century (and forgotten until relatively recently).The quaternion is a 4-tuple of reals with the operations of addition and multiplication defined. Just as complex numbersallow us to multiply and divide two-dimensional vectors, quaternions enable us to multiply and divide four dimensionalvectors.

A quaternion can also be interpreted as having a scalar part and a vector part. This will give us a more convenient notation.

Quaternion addition is just the usual vector addition, the quaternion product is defined as:

Lecture 9   Slide 21   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide21.html [10/10/2001 7:29:55 PM]

Page 25: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

Quaternion Facts

It turns out that we will be able to represent rotations with a unit quaternion. Before lookingat why this is so, there are a few important properties to keep in mind:

The unit quaternions form a three-dimensional sphere in the 4-dimensional space ofquaternions.

Any quaternion can be interpreted as a rotation simply by normalizing it (dividing it byits length).

Both q and -q represent the same rotation (corresponding to angles of θ and 2π - θ)●

Lecture 9   Slide 22   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide22.html [10/10/2001 7:29:57 PM]

Page 26: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

Rotation by Quaternion

Recognize this? It is the Rodrigues formula!

Lecture 9   Slide 23   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide23.html [10/10/2001 7:29:59 PM]

Page 27: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

Quaternion CompositionSince a quaternion basically stores the axis vector and angle of rotation, it is not surprisingthat we can write the components of a rotation matrix given the quaternion components.

Crucially, the composition of two rotations given by quaternions is simply their quaternionproduct.

Note that the product of two unit quaternions is another unit quaternion.●

Note that quaternion multiplication, like matrix multiplication, is not commutative.●

Lecture 9   Slide 24   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide24.html [10/10/2001 7:30:00 PM]

Page 28: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

Quaternion InterpolationOne of the main motivations for using quaternions in Graphics is the ease with which we can define interpolation betweentwo orientations. Think, for example, about moving a camera smoothly between two views.

Lecture 9   Slide 25   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide25.html [10/10/2001 7:30:36 PM]

Page 29: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

Euclidean TransformationsFor points we can combine the actions of rotation about an arbitrary axis followed by atranslation into a single 6-parameter transformation.

This set of transformations forms an algebraic group, and they are a subset of the Affinetransformations we discussed last time.

Lecture 9   Slide 26   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide26.html [10/10/2001 7:30:46 PM]

Page 30: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

More Modeling TransformsIt is possible to expand our repertoire of modeling transformations in a way parallel to ourdevelopment of 2-D transformations (We can add Similitudes, Affines, and Projectivegroups of operators). However, most of these are either not that useful in everyday practice,or they are commonly reduced to one or two special cases, which generalize via a series ofmore typical operations.

Among, those transforms remaining scales and shears are the most common:

We can generate any 3-D affine transformation using a combination of a rotation, a scale, ashear, and a translation.

Lecture 9   Slide 27   6.837 Fall '01

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide27.html [10/10/2001 7:30:47 PM]

Page 31: Lecture 9 --- 6.837 Fall '01 - Research | MIT CSAILgroups.csail.mit.edu/.../F01/Lecture09/lecture09.pdf · 6.837 LECTURE 9 1. 3D Transformations - Part 2 Mechanics 2. The 3-D Graphics

Next Time

Lecture 9   Slide 28   6.837 Fall '01  

Lecture 9 --- 6.837 Fall '01

http://graphics/classes/6.837/F01/Lecture09/Slide28.html [10/10/2001 7:30:48 PM]