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

Drawing program with object- oriented design, For this assignment, you will...

For this assignment, you will add to the drawing program new features that are similar to features that you already have. Apply object-oriented design concepts such as inheritance

What is transformation, What is Transformation?  Transformation is the ...

What is Transformation?  Transformation is the method of introducing changes in the shape size and orientation of the object using scaling rotation reflection shearing & transl

Cases for digital differential analyzer algorithm, Cases for Digital Differ...

Cases for Digital Differential Analyzer Algorithm 1)  If in case 1, we plot the line another way round that is, moving in y direction via 1 unit every time and after that hunt

Methods of animation - computer animation, Methods of Animation - Computer ...

Methods of Animation - Computer Animation First method: in this, artist makes a succession of cartoon frames that are then combined in a film. Second method: in this,

List of 3-d animation software, List of 3-D Animation Software Here is ...

List of 3-D Animation Software Here is a short list of several 3-D animation software are - Softimage ( Microsoft) -  Alias/Wavefront ( SGI) -  3D studia MAX (Autodesk

Jpeg graphics, JPEG Graphics: Another graphic file format usually utilized...

JPEG Graphics: Another graphic file format usually utilized on the Web to minimize graphics file sizes is the Joint Photographic Experts Group that is JPEG compression scheme. Not

Carry out a perspective projection, Consider the line segment AB in 3-Dimen...

Consider the line segment AB in 3-Dimentional parallel to the z-axis along with end points A (- 5,4,2) and also B (5,-6,18). Carry out a perspective projection upon the X=0 plane;

Random scan display device - types of refresh monitors, Random Scan Display...

Random Scan Display Device The original cathode ray tube, developed in the late fifties and early sixties, produced charts and pictures, line through line on the tube surface

Categories of line segments - 2d clipping algorithms, Categories of Line Se...

Categories of Line Segments It categorizes line segments into three categories (i) trivially rejected (ii) trivially selected (iii) may be partially visible or totally invisibl

Registers, explain the registers used in video controller

explain the registers used in video controller

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