Page 103 - Computer Graphics Handout
P. 103
This pair of matrices allows us to move back and forth between representations in the two frames. Note that T takes the point (1,
2, 3) in the original frame, whose representation is
the origin in the new system. However, the vector (1, 2, 3), which is represented as
a transformation that is consistent with the results from our example of change in coordinate systems and that also demonstrates
the importance of distinguishing between points and vectors.
3.3.6 Working with Representations
Application programs almost always work with representations rather than abstract points. Thus, when we specify a point—for
example, by putting its coordinates in an array—we are doing so with respect to some frame. In our earlier examples, we avoided
dealing with changes in frames by specifying data in clip coordinates, a normalized system that OpenGL uses for its rendering.
However, applications programs prefer to work in frames that have a relationship to the problem on which they are working and
thus want to place the origin, orient the axes, and scale the units so they make sense in the problem space. Because OpenGL
eventually needs its data in clip coordinates, at least one change of representation is required. As we shall see, in fact there are
additional frames that we will find useful both for modeling and rendering. Hence, we will carry out a sequence of changes in
representation. Changes of representation are thus specified by a matrix of the form
a = Cb,
where a and b are the two representations of a point or vector in homogeneous coordinates. As we have seen in Section 3.3.4, this
matrix must be a homogeneous form so C is the transpose of a matrix M and is given by
103

