Presentation on theme: "Principles of Computer-Aided Design and Manufacturing Second Edition 2004 ISBN 0-13-064631-8 Author: Prof. Farid. Amirouche University of Illinois-Chicago."— Presentation transcript:
Principles of Computer-Aided Design and Manufacturing Second Edition 2004 ISBN 0-13-064631-8 Author: Prof. Farid. Amirouche University of Illinois-Chicago Chapter 3 Transformation and Manipulation of Objects
3.8 Projection onto a 2D Plane R 1 = X*=x, y*=y where
3.9 Overall Scaling R= =. An example for overall scaling of an 2D object
3.10 Rotation about an Arbitrary Point Example Rotation of an Object about an Arbitrary Point in 2D Let C describe an object or configuration of some geometry, where C is an array of data-point coordinates.
Solution: [R] = Rotation about arbitrary point. +--
Example Uniform Scaling in 2D Find the transformation matrix that would produce rotation of the geometry about point A, s shown in Figure 3.11(a), followed by a uniform scaling of the geometry down to half its original size.
Solution: Step 1: Place the points into a matrix. Step 2: Translate point A to the origin, that is, -2- along the x- axis and -10 along the y Axis, as shown in Figure 3.11(b). Step 3: Rotate the object 30 degrees about the z-axis, as shown is Figure 3.12(c). Step 4: Translate point A to its original position as shown in Figure 3.12(d). Step 5: Scale the object to half its original size, as shown is Figure 3.13(e).
R y = Rotation about y-axis R z = Rotation about z-axis
Example 3.5: Rotation in 3D Space The box shown in Figure 3.26(A) will demonstrate rotation about an axis in 3D space. The box shown in the figure is at the initial starting point for all three rotations. The labeled points of the box listed in matrix format (see Sec. 3.3) are used with the transformation rotation matrices, equations (3.37), (3.39), and (3.40), to obtain the new coordinates after rotation (rotations are in a counterclockwise direction in this example)
Rotation about the y Axis: Rotation about y-axis for 30 degrees [C*]= =
Rotation about the z Axis: [C*] = = Rotation about z-axis for 30 degrees
3.15 3D Reflection and mirror imaging An example for symmetry
Reflection about the x-y plane is given: Reflection about the y-z plane is given: Reflection about the x-z plane is given:
Example : Building of a Block Symmetry is the similarity between two objects with respect to a point or a line or a plane. Dimensions of the object with measured from the symmetric plane will be equal for both the object. One object look similar to the mirror image of the other assuming that the central plane acts as a mirror. This concept of symmetry and mirroring are widely used in design and modeling field to reduce model creation time. Use reflection to simplify the creation of the block shown in
Coordinate description using a quarter portion of the block.
Solution: Step 1: Establish the transformation matrix to reflect the quarter block about the x-y plane [C*] = CR 1 = C =
Half block obtained by reflection about the xy plane
Step 2: Reflect the half portion of the block about the y-z plane Reflection of half portion of the block about yz plane.
Example : Translation of a Block in 3D Using the same box of Figure in Example 3.5, translate the box 2 units in the x direction, 1 unit in the y direction, and 1 unit in the z direction.
Using previous equation, we substitute the numerical values into the translation matrix and apply equation to find the new coordinates of the points after translation. We know x=2, y=1, and z=1. The new coordinates of the box are Solution:
3.17 3D ROTATION ABOUT AN ARBITRARY AXIS Transformation matrix could be achieved through a procedure as described below: 1. The object is translated such that the origin of coordinates passes through the line 2. Rotation is accomplished 3. The object is translated back to its origin
Rotation about an arbitrary axis can be classified into 3 types 1) Axis of rotation parallel to any one of the coordinate axes. Rotation about a parallel axisTranslation of axis to coordinate axis
2. Axis passing through origin and not parallel with any coordinate axis. Rotation about an axis passing through origin
3. Arbitrary line not passing through the origin and not parallel to any of the coordinate axis. Rotation about an axis not passing through origin
If we concatenate the three foregoing transformation matrices, we obtain: where
Example : Rotation of a Box in 3D Space Using the box of Figure in Example 3.5, find the new coordinates of the box if it is rotated 30 degrees about the x-axis, 60 degrees about the y-axis, and 90 degrees about the z-axis. (Rotations are in the counterclockwise direction.) The rotations of the coordinate reference frames are illustrated in Figure 3.21. x’’’, y’’’, and z’’’ indicate the new coordinate system where the box resides [C*].
Solution: where And substituting =30 , =60 , and =90
Example : Rotation and Translation of a Cube in 3D Space Initial position of the cube Given the unit cube shown as follows, find the transformation matrix required for the display of the cube
Step1: Place the points in matrix form. Rotation about x-axis
Step 2: Rotate the cube +90 degrees about the x-axis Rotation about y-axis 1
Step 3: Rotate the cube +90 degrees about the y-axis The final answer is By combining the transformation matrices, we have
Example : Pyramid Rotation and Translation Give the concatenated transformation matrix that would generate the new position of the object shown in Figure 3.41. (Face A given by points ABCD lies in the x-z plane with its center along the x-axis.) Initial position of the pyramid
Solution: Step1: Determine the matrix to rotate the pyramid along the x-axis by 90 degrees Rotation about the x-axis for 90 degrees
Step 2: Determine the matrix to translate the object –h units along the x-axis Translation along the x-axis for –h units
Step 3: Rotate the object 90 degrees about the z-axis Rotation about the z-axis for 90 degrees
3.18 3D VISUALIZATION 3.19 TRIMETRIC PROJECTION (For z=0)
If we were to project the object onto x=0 or x=r plane, the projection matrix takes the following form: (For x=r) (For x=0) In a similar fashion, the projection onto the y=0 or y=s plane is (For y=0)(For y=s)
Consider the following transformation : defines the equation of a plane
In the case where q = 0 and p = 0, the equation becomes rx +1 = 0 and the distance from the origin is D = 1/ r. Therefore for a projection onto a plane defined by as x = a, the projection matrix is
The equation of the plane x=a can also be written as In order to normalize the representation of C matrix and have the last element equal to 1 we need to substitute the above ( 0 y z -x/r+1) by moving the geometry such that all coordinates have x=r and y and z are kept unchanged. Therefore,
Example : Projection on a Plane Determine the projection of box in (a) x=6, (b) y=6, and (c) z=6. Solution:
(a) The projection of the box on x=6 plane (see Figure 3.46) has the following transformation matrix:
(b) The projection of the box on the y=6 plane has the following transformation matrix: Therefore, the coordinates for the projection are
(c) The projection of the box on the z=6 plane has the following transformation matrix : Projection on the plane z=6 Therefore, the coordinates for the projection are
3.20 ISOMETRIC PROJECTION Combined rotations followed by projection from infinity form the bases for generating all axonometric projections. We perform the following: 1. Rotate about the y-axis 2. Rotate about the x-axis 3. Project about the z=0 plane 4. Apply the final transformation conditions of foreshortening all axes equally 5. Get the final transformation matrix to yield the isometric view
Consider a point P given by (x y z 1). Let us find the isometric projection of this point while using the previous definitions. Operating on P by and , we get where [x* y* z*] represents the coordinates of the rotated point P about the y and x axes. The concatenated transformation matrix is given by
Suppose point P denotes different unit vectors along the x, y, and z-axes. Hence alone x, we have [1 0 0 1], where If we consider the unit vector along the y-axis, it transforms into where
Using trigonometric relationships and the method of substitution, we can solve for and which yield =35.26 , =45 . We can then conclude that given geometry in 3D represented by [C}, its isometric projection is obtained by premultiplying it by R with and being 35.26 and 45 respectively. The resulting [C*] represents the projection for which we are looking.