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

Subdivision algorithm - visible surface detection, Subdivision Algorithm - ...

Subdivision Algorithm - Visible Surface Detection 1) Initialize the area to be the whole screen. 2) Create a PVPL regarding an area, sorted on z min as the smallest z coor

Interactive 3d computer graphics, Describe interactive model of computer gr...

Describe interactive model of computer graphics and application areas of interactive computer graphics.

What is a model sheet?, Question 1 Briefly explain the twelve principles o...

Question 1 Briefly explain the twelve principles of animation Question 2 Explain the methods to set-up pre and post-infinity curves Question 3 What is a model sheet? Exp

Viewing transformation, Viewing Transformation In previous section, we...

Viewing Transformation In previous section, we have discussed about the geometric transformations as Translation, Shearing, Reflection, Scaling and Rotation. Rotation, Reflect

Finding where the ball hits a segment, You will write a two-dimensional pre...

You will write a two-dimensional precursor of the three-dimensional bouncing ball simulation that is one of your choices for a ?nal project. This involves adding functions to your

Modal create, morgen wants to sign up for an account on doggobook, the worl...

morgen wants to sign up for an account on doggobook, the world''s thrid - best social network for dog enthusiasts. she enters her email address and a password into the sign-up form

Computer aided design and computer aided manufacturing, The development of ...

The development of CAD had little consequence on CNC initially because of the various abilities and file formats used through drawing and machining programs. Conversely, as Compute

What do you understand by complementary colors, Problem : a. (i) Giv...

Problem : a. (i) Give another name for adjacent color. (ii) Describe briefly what do you understand by an adjacent color? b. (i) Describe briefly what do you unders

Differentiate among interpolation and approximation spline, Differentiate a...

Differentiate among interpolation spline and approximation spline?  When the spline curve passes by all the control points then it is known as interpolate. When the curve is

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