In class we described the homogeneous-space representation of a point in 2D. In your own words describe this coordinate space and how 2D points are represented in it. Also give one reason why this representation is usful in computer graphics.
Points (x,y) in 2D are represented by set of points in homogeneous 2D space given by the line (xw, yw, w). Transforms that cannot be represented as linear transforms in 2D (such as translation and perspective projection) can be represented as linear transforms in homogeneous 2D coordinates. This means that sequences of transforms involving translation (and perspective) project can be efficiently implemented as a single 3x3 matrix-vector multiplication.
Provide a matrix that represents the following transform in 2D:
- 2D rotation by 30 degrees (counter-clockwise) about the point (2,3).
In addition to providing final matrix values, please describe:
- Why the matrix is the size it is. Is it 2x2? 3x3? etc.
- How you computed the elements of the matrix?
The solution involves:
- Translating the point to the origin: T(-2, -3)
- Rotating by 30 degrees: R(30)
- Translating the point back to (2,3): T(2,3)
So the full transform is: T(2,3)R(30)T(-2,-3). This transform can be represented by a 3x3 matrix that operates on the homogeneous 2D representation of 2D points.