H E 111 i IIII111 [ E i! 11 IE lit III I! t!
[ii] Patent Number: 5,129,051  Date of Patent: Jul. 7, 1992
 DECOMPOSITION OF ARBITRARY POLYGONS INTO TRAPEZOIDS
 Inventor: Bradley W. Cain, Ft. Collins, Colo.
 Assignee: Hewlett-Packard Company, Palo Alto, Calif.
 Appl. No.: 494,292
 Filed: Mar. 16, 1990
 Int. CI.' G06F 15/62
 U.S. CI 395/133; 395/134;
 Field of Search 364/518. 521, 522;
340/723; 395/133, 134, 141
 References Cited
U.S. PATENT DOCUMENTS
4.725.831 2/1988 Coleman 340/723 X
4.791,582 12/1988 Ueda et a] 364/521 X
5,020.002 5/1991 Malachowsky 364/518
Fuchs et al., "Pixel-Planes 5: A Heterogeneous Multiprocessor Graphics System Using Processor-Enhanced Memories," Computer Graphics, vol. 23, No. 3, Jul. 1989, pp. 79-88.
D. T. Lee, "Shading of Regions on Vector Display Devises," Computer Graphics, vol. 15, No. 3, Aug. 1981, pp. 37-44.
Rhoden et al., "Hardware Acceleration for Window
A technique for decomposing any simple or complex arbitrary polygon into a trapezoid having at least one edge parallel to the scan direction for more efficient scan conversion by rasterization circuitry. An input polygon is split into "slabs", which are adjacent regions bounded by lines parallel to the scan direction. Initially the polygon is split at the y coordinate of every vertex to define the slabs. Then, for each slab, it is determined which edges are present in the slab and whether there are any unacceptable edge intersections. If an unacceptable edge intersection is found in a slab, that slab is broken into two or more slabs at the y coordinates of the intersection points of the edges. Each of the slabs is then processed independently. Once no unacceptable intersections are found in any slab, trapezoids are rendered from adjacent pairs of edges and sent to the rasterization circuitry. Since edge intersections may be accounted for in accordance with the invention, any input polygon, no matter how complex, may be correctly rendered in an efficient manner.
12 Claims, 3 Drawing Sheets