Graphics
(Baker)
The hardware used in a graphics system falls into several categories including graphics terminals, graphics boards, graphics printers, and interface devices. In addition to hardware, a graphics system needs software. It is the software that provides the capability of using different fonts, adjusting the size of the fonts, selecting colors, moving the image from one location on the screen to another, incorporating graphics into the text, and supporting the use of interface devices. Graphical packages often provide routine for displaying internal components or cross sectional view of solid objects. Also some geometric transformation are more involved in 3-dimentional graphics space then in two dimensions. For example we can rotate an object about an axis with any spatial orientation in three-dimensional space . 2-dimension rotation on the other hand are always around an axis that is perpendicular to the XY plane. Viewing transformations in three-dimensional are much more complicated because we have many more parameters to select when specifying how a three-dimensional scene if to be mapped to a display device. The scene description must be processed through viewing coordinate transformations and projections routines that transformation three-dimensional viewing coordinate onto two dimensional device coordinates. Visible part of a scene, for a selected view, must be identified and surface rendering must be applied if a realistic rending of the scene is required. Methods for geometric transformations and object modeling in three dimensions are extended from two-dimensional methods by including considerations for the z coordinate. We know translate an object by specifying a three-dimensional translation vector, which how much the object is to be moved in each of the three coordinate directions. Similarly, we scale an object with three coordinate scaling factors. The extension for three-dimensional rotation sis less straightforward. When we discussed two-dimensional rotations in the xy plane, we needed to consider only rotations about axes that were perpendicular to the xy plane. In three-dimensional spaces, we can now select any spatial orientation for the rotation axis. Most graphics packages handle three-dimensional rotations as a composite of three rotations, one for each of the three Cartesian axes. Alternatively, a user can easily set up a general rotation matrix, given the orientation of the axis and the required rotation angle. As in the two-dimensional case, we express geometric transformations in matrix form. Any sequence of transformations is then represented as a single matrix formed by concatenating the matrices for the individual transformations in the sequence. In this part of the chapter , we first explore the general ideas involved in three dimensional clipping by considering how clipping could be performed using the view volume clipping planes directly. Then we discuss more efficient methods using normalized view volumes and homogeneous coordinates. An algorithm for three dimensional clipping identifies and saves all surface segments with in the view volume to display on the output device . All parts of objects that outside the view volume are discarded . Clipping in three dimensions can be accomplished using extensions of two dimensional clipping methods . Instead of clipping against the straight line window boundaries , we now clip objects against the boundary planes of the view volume. To clip a line segment against the view volume, we would need to test the relative position of the line using the view volume's boundary plane equations. By substituting the line endpoint coordinates into the plane equation of ea& boundary in turn, we could determine whether the endpoint is inside or outside that boundary. An endpoint (x, y, z) of a line segment is outside a boundary plane if Ax + By + Cz + D > 0, where A, B, C, and D are the plane parameters for that boundary. Similarly, the point is inside the bboundary if Ax + By + Cz D < 0. Lines with both endpoints outside a boundary plane are discarded, and those with both endpoints inside all boundary planes are saved. The intersection of a line with a boundary is found using the line equations along with the plane equation. Intersection coordinates (x1, y1, z1) are values that are on the line and that satisfy the plane equation Ax1 + By1 + Cz1 + D = 0. To clip a polygon surface, we can clip the individual polygon edges. First we could test the coordinate extents against each boundary of the view volume to determine whether the object is completely inside or completely outside that boundary. If the coordinate extents of the object are inside all boundaries, we save it. If the coordinate extents are outside all boundaries, we discard it. All objects within the view volume map to the interior of the specified projection window. The last step is to .Transform the window contents to a two dimensional viewpoint, which specifies :he location of the display on the output device. Clipping in two dimensions is generally performed against an upright rectangle ; that is, the clip window is aligned with the x and y axes. This greatly simplifies the clipping calculations, because each window boundary is defined by one coordinate value. For example, the intersections of all lines crossing the left boundary of the window have an x coordinate equal to the left boundary. View volume clipping boundaries are planes whose orientations depend on the type of projection, the projection window, and the position of the projection reference point.
Resumos Relacionados
- The Masters Of Destiny
- From Visual Homing To Object Recognition
- The Earth's Rotation
- Boundaries
- Effect Of Sampling Intensity In Vegetation Analysis A Forest Patch, Mt.makiling, Laguna, Philippines
|
|