State warnock algorithm, Data Structure & Algorithms

Assignment Help:

Warnock's Algorithm

An interesting approach to the hidden-surface problem was presented by Warnock. His method does not try to decide exactly what is happening in the scene but rather just tries to get the display right. As the resolution of the display increases, the amount of work which the algorithm must do to get the scene right also increases, (this is also true for scan-line algorithms). The algorithm divides the screen up into sample areas. In some sample areas it will be easy to decide what to do. If there are no faces within the area, then it is left blank. If the nearest polygon completely covers it, then it can be filled in with the colour of that polygon. If neither of these conditions holds, then the algorithm subdivides the sample area into smaller sample areas and considers each of them in turn. This process is repeated as needed. It stops when the sample area satisfies one of the two simple cases or when the sample area is only a single pixel (which can be given the colour of the foremost polygon). The process can also be allowed to continue to half or quarter pixel-sized sample areas, whose colour may be average over a pixel to provide antialiasing.  

The test for whether a polygon surrounds or is disjoint from the sample area is much like a clipping test to see if the polygon sides cross the sample-area boundaries. Actually the minimax test can be employed to identify many of the disjoint polygons. A simple test for whether a polygon is in front of another is a comparison of the z coordinates of the polygon planes at the corners of the sample area. At each subdivision, information learned in the previous test can be used to simplify the problem. Polygons which are disjoint from the tested sample area will also be disjoint from all of the sub-areas and do not need further testing. Likewise, a polygon which surrounds the sample area will also surround the sub-areas.

 


Related Discussions:- State warnock algorithm

Direct file organisation, It offers an effective way to organize data while...

It offers an effective way to organize data while there is a requirement to access individual records directly. To access a record directly (or random access) a relationship is

Determine the effect of ruby in implementation of string, Determine the eff...

Determine the effect of Ruby in implementation of string Ruby has a String class whose instances are mutable sequences of Unicode characters. Symbol class instances are charact

Efficiency of linear search, Efficiency of Linear Search How much numbe...

Efficiency of Linear Search How much number of comparisons is there in this search in searching for a particular element? The number of comparisons based upon where the reco

Deletion of a node from a binary search tree, The algorithm to delete any n...

The algorithm to delete any node having key from a binary search tree is not simple where as several cases has to be considered. If the node to be deleted contains no sons,

State about the bit string, State about the Bit String Carrier set of...

State about the Bit String Carrier set of the Bit String ADT is the set of all finite sequences of bits, including empty strings of bits, which we denote λ. This set is {λ, 0

Create accessors for this data structure, Create a Money data structure tha...

Create a Money data structure that is made up of amount and currency. (a) Write a constructor for this data structure (b) Create accessors for this data structure (c) Writ

Define about the inheritance hierarchy, Define about the inheritance hierar...

Define about the inheritance hierarchy Languages Eiffel and D provide constructs in language for invariants and pre- and post conditions which are compiled into the code and ar

Explain the array and linked list implementation of stack, Question 1. ...

Question 1. How can you find out the end of a String? Write an algorithm to find out the substring of a string. 2. Explain the insertion and deletion operation of linked lis

Program segment for quick sort, Illustrates the program segment for Quick s...

Illustrates the program segment for Quick sort. It uses recursion. Program 1: Quick Sort Quicksort(A,m,n) int A[ ],m,n { int i, j, k; if m { i=m; j=n+1; k

Queue, what''s queue ?

what''s queue ?

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