Odd-even rule and non-zero winding number rule, Computer Graphics

Assignment Help:

What is the difference between odd-even rule and non-zero winding number rule to identify interior regions of an object? Develop an algorithm for a recursive method for filling a 4-connected area? What is the problem associated with this algorithm.

Difference between odd-even rule and non zero winding number:  Odd- even rule: In this algorithm we draw a line from any position p to a distant point outside the coordinate extents of the object and counting the number of edge crossing along the line. If the number of polygon edges crossed by this line is odd, then p is an interior point, otherwise p is an exterior point. To obtain an accurate edge count, we must be sure that the line path we choose does not intersect any polygon vertices. 

Non zero winding number rule: In this algorithm count the number of times the polygon edges wind around a particular point in the counter clockwise direction. This count s called the winding number and the interior points of a two dimensional object are defined to be those that have a non zero value for the winding number. We apply the non zero winding number rule to polygons by initializing the winding number to 0 and again imagining a kine drawn from any position p to a distant point beyond the coordinates extents of the object. The line we choose must not pass through any vertices. As we move along the line from position p to the distant point. We count the number of edges that crosses the line in each direction we add 1 to the winding number every time we intersect a polygon edge that crosses the line from right to lift, and we subtract 1 every line we intersect an edge that crosses from left to right. The final value of the winding number, after all edge crossing have been counted, determines the relative position of p. If the ending number is non zero p is taken to be an exterior point. Recursive boundary fill algorithms may not fill regions correctly if some interior pixels are already displayed in the fill color. This occurs because the algorithm checks next pixels both for boundary color and for fill color. Encountering a pixel with the fill color can cause a recursive branch to terminate leaving other interior pixels unfilled. To avoid this we can first change the color of and interior pixels unfilled. To avoid this we can first change the color of any interior pixels that are initially set to the fill color before applying the boundary fill procedure.  Also since this procedure requires considerable stacking of neighboring points more efficient methods are generally employed. These methods fill horizontal pixel spans across scan lines instead of proceeding to 4 commented or 8 commented neighboring points. Then we need only stack a beginning position for each horizontal pixel span instead of stacking all unprocessed neighboring positions around the current position. Starting from the initial interior point with this method we first fill in the contiguous span of pixels on this starting scan line.

(a) The filled initial pixel span showing the position of the initial point and the stacked positions for pixel spans on adjacent scan lines. (b) Filled pixel scan on the first scan line above the initial scan line and the current contents of the stack. (d) Completed pixel spans for the upper right portion of the defined region and the remaining stacked positions to be processed.  Then we locate and stack starting positions for spans on the adjacent scan lines, where spans are defined as the contiguous horizontal string of positions bounded by pixels displayed in the area border color. At each subsequent step we unstuck the next start position and repeat process. 


Related Discussions:- Odd-even rule and non-zero winding number rule

Applications for computer animation, Applications For Computer Animation ...

Applications For Computer Animation These days, animation influences approximately every aspect of life right from entertainment to education and to security and lots of more a

What are the different types of parallel projections, What are the differen...

What are the different types of parallel projections?  The parallel projections are basically divided into two types, depending on the relation among the direction of projectio

Fixed point scaling, what is fixed point scaling? how composit transformati...

what is fixed point scaling? how composit transformation techniques works on it

Img- mac-msp file formats, IMG/MAC/MSP File Formats IMG files were orig...

IMG/MAC/MSP File Formats IMG files were originally implemented to work along with GEM paint program and can handle monochrome and grey level pictures only. MAC files are uti

Scan line algorithm - output primitives, Scan Line Algorithm A scan lin...

Scan Line Algorithm A scan line algorithm determines the overlap intervals of the polygon with each scan line to obtain interior points of the polygon for assigning those point

Z-buffer, describe z-buffer algorithm removing hidden surface

describe z-buffer algorithm removing hidden surface

Computational algorithm for simulating physical system, computational algor...

computational algorithm for simulating the behavior of different physical and mathematical systems Monte Carlo methods are an extensively utilized class of computational algor

Line clipping algorithm - cohen sutherland algorithm, Line Clipping Algorit...

Line Clipping Algorithm - Cohen Sutherland Algorithm Line is a series of endless number of points; here no two points contain space in among them. Hence, the above said inequa

Write a code to continuously rotate square about pivot point, Write a code ...

Write a code to continuously rotate a square about a pivot point.    #include   static GLfloat rotat=0.0;   void init(void); void display(void); void reshape(int w

What is translation, What is translation?  Translation is the process o...

What is translation?  Translation is the process of changing the position of an object in a straight-line path from one coordinate location to another. Each point (x, y) in the

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