Homogeneous coordinates, Computer Graphics

Assignment Help:

What are the uses of homogeneous coordinates? Convert translation rotation and scaling in homogeneous coordinates.

In mathematics homogeneous coordinates introduced by August Ferdinand Moby's in his 1827 work Deer barycentrische Calicle are a system of coordinates used in projective geometry much as Cartesian coordinates are used in Euclidean geometry. They have the advantage that coordinates of points including points at infinity can be represented using finite coordinates. Formulas involving homogeneous coordinates are often simpler and more symmetric than their Cartesian counterparts. Homogeneous coordinates have a range of applications including computer graphics and 3D computer vision where they allow affine transformations and in general projective transformations to be easily represented by a matrix. If the homogeneous coordinates of a point are multiplied by a non zero scalar then the resulting coordinates represent the same point. An additional condition must be added on the coordinates to ensure that only one set of coordinates corresponds to a given point, so the number of coordinates required is in general one more than the dimension of the projective space being considered. For example, two homogeneous coordinates are required to specify a point on the projective line and three homogeneous coordinates are required to specify a point on the projectile plane. 

Basic Transformation Translation: A translation is applied to an object by repositioning it along a straight line path from one coordinate location t another. We translate a two dimensional point by adding translation distances f and t to the original coordinate position to move the point to a new position. The translation distance pair is called a translation vector of shift vector. We can express the translation equations as a single matrix equation by using column vectors to represent coordinate positions and the translation vector. This allows us to write the two dimensional translation equations in the matrix form: Since the column vector representation for a point is standard mathematical notation, and since many graphics packages, for example GKS and PHIGS, also use the column vector representation we will follow this convention. Translation is a rigid body transformation that moves objects without deformation. That is every point on the object is translated by the same amount. A straight line segment is translated by applying the transformation equation to each of the line endpoints and redrawing the line between the new endpoint positions. Polygons are translated by adding the translation vector to the coordinates and the current attribute settings. Fig. 1 illustrates the application of specified translation vector to move an object from one position to another. A two dimensional rotation is applied to an object by repositioning it along a circular path in the xy  plane. To generate a rotation, we specify a rotation angle 0 and the position of the rotation point about which the object is to be rotated. Positive values for the rotation angle define counterclockwise rotations about the pivot point, as in Fig. 2 and negative values rotate objects in the clockwise direction. This transformation can also be described as a rotation about a rotation axis that is perpendicular to the xy plane and passes thorough the pivot point. We first determine the transformation equations for rotation of a point position P when the pivot point is at the coordinate origin. The angular and coordinate relationships of the original and transformed point positions are shown in fig. 3. In this figure, r is the constant distance of the point from the origin 4 is the original angular position of the point from the horizontal and t3 is the rotation angle. Using standard trigonometric identities we can express the transformed coordinate in terms of angle theta 0 as the original coordinates of the point in polar coordinates are. Substituting expressions 5 into 4 we obtain the rotation equations for rotating a point at position (x, y) through an angle theta about the origin: With the column vector representations eq. (1) for coordinate positions, we can write the rotation equations in the matrix form: When coordinate positions are represented as row vectors instead of column vectors the matrix product in rotation eq. 7, is transposed so that the transformed row coordinate vector is calculated as and the transpose R of matrix R is obtained by interchanging rows and columns. For a rotation matrix the transpose is obtained by simply changing the sign of the sine terms. 

Scaling A scaling transformation alters the size of an object. This operation can be carried out for polygons by multiplying the coordinate values of each vertex by scaling factors sx, and S ­x to produce the transformed coordinates (x ',y' ): Scaling factor s scales objects in the x direction while s scales in the y direction.  Any positive numeric values can be assigned to the scaling factors s and s. Valued less than 1 reduce the size of objects; values greater than 1 produce an enlargement. Specifying a value of 1 for both S and S leaves the size of objects unchanged. When S and S are assigned the same value a uniform scaling is produced that maintains relative object proportions. Unequal values for S and S result in a differential scaling that are often used in design applications, where pictures are constructed from a few basic shapes that can be adjusted by scaling and positioning transformations. Objects transformed with eq. 9 are both scaled and repositioned. Scaling factors with values less than 1 move objects closer to the coordinate origin, while values greater than 1 move coordinate positions farther from the origin. 


Related Discussions:- Homogeneous coordinates

Write a c-code for a user to draw a polygon object, Write a C-code for an i...

Write a C-code for an interactive program which allows a user to draw a polygon object in a window and then gives various choices of geometric transformations on the polygon.  Once

How we create virtual reality images for use on a computers, How we create ...

How we create virtual reality images for use on a computer system When a virtual tour of, for instance, a house is shown on a website the images need to be first created and th

Cases of clip a line segment-pq, Cases of clip a line segment-pq Case...

Cases of clip a line segment-pq Case 1: As we determine a new value of t E that is value of parameter t for any potentially entering (PE) point we select t max as:  t max

Introduction of curves and surfaces, Introduction of Curves and Surfaces ...

Introduction of Curves and Surfaces This section has covered the methods of generating polygons, closed and curves surfaces. Under those methods we have discussed different ty

Use of interactive multimedia in education, Use of Interactive Multimedia i...

Use of Interactive Multimedia in Education Virtual reality, where 3-D experimental training can simulate real situations. Computer simulations of things too expensive,

Crt - cathode ray tube, CRT - Cathode Ray Tube Electron gun is used...

CRT - Cathode Ray Tube Electron gun is used to send an electron beam aimed at a particular point on the screen. Deflection system is used to make the beam strike the screen

Image processing, Image Processing New digital technology has made this...

Image Processing New digital technology has made this possible for the manipulation of multi- dimensional signals along with systems which range from easy digital circuits to

Types of refresh monitors - raster scan and random scan, Types of Refresh M...

Types of Refresh Monitors - Raster Scan and Random Scan There are two types of refresh monitors, i.e. the Raster Scan and Random Scan that will be illustrated separately.

Computer Animation, Computer Animation The term Animation is derived fr...

Computer Animation The term Animation is derived from 'animate' that literally means 'to give life to', 'Animating' a thing implies to impart movement to something that can't m

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd