Page 35 Table of Contents Index Page 37
Chapters
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
A, B, C, D, E



CHAPTER 5. AFFINE TRANSFORMATIONS


5.1.1 Transformation Conditions

=> transformation-error [Error Condition]
The class that is the superclass of the following three conditions. This class is a subclass of
error.

=> transformation-underspecified [Error Condition]
The error that is signalled when make-3-point-transformation is given three collinear image
points.

=> reflection-underspecified [Error Condition]
The error that is signalled when make-reflection-transformation is given two coincident
points.

=> singular-transformation [Error Condition]
The error that is signalled when invert-transformation is called on a singular transformation,
that is, a transformation that has no inverse.

5.2 Transformation Constructors

The following transformation constructors do not capture any of their inputs. The constructors
all create objects that are subclasses of transformation.

=> make-translation-transformation translation-x translation-y [Function]
A translation is a transformation that preserves length, angle, and orientation of all geometric
entities.

make-translation-transformation returns a transformation that translates all points by translation-
x
in the x direction and translation-y in the y direction. translation-x and translation-y must be
real numbers.

=> make-rotation-transformation angle &optional origin [Function]
=> make-rotation-transformation* angle &optional origin-x origin-y [Function]
A rotation is a transformation that preserves length and angles of all geometric entities. Rota-
tions also preserve one point (the origin) and the distance of all entities from that point.

make-rotation-transformation returns a transformation that rotates all points by angle (which
is a real number indicating an angle in radians) around the point origin. If origin is supplied it
must be a point; if not supplied it defaults to (0;0). origin-x and origin-y must be real numbers.

=> make-scaling-transformation scale-x scale-y &optional origin [Function]
=> make-scaling-transformation* scale-x scale-y &optional origin-x origin-y [Function]


Page 35 Table of Contents Index Page 37
Chapters
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30
A, B, C, D, E