A fixed grid curve representation for efficient processing

Document Type

Conference Proceeding

Publication Date



© 1978 Association for Computing Machinery. All rights reserved. A compact form of representation for curves and regional boundaries is described. A curve is approximated by a polygonal line where each side Joins a grid point to one of its eight nearest neighbors (as is done in the commonly used chain-encoded representation). Vertex number (2k + I)2 m is defined relative to vertex number k2 m+l. The resulting representation requires about 5 bits of storage per vertex, irrespective of the total length of the curve. Sections of a curve may be collectively examined. Typically, that part of the curve between vertices number k2 TM and (k + i)2 TM, for some k and m, is considered. Given the locations of the endpoints of a section and the number of sides in the section, it is easy to compute a bounding rectangle which must completely contain the section. Often, this is all the information we need to know about a section. For example, two sections cannot intersect if their bounding rectangles do not overlap. When necessary, a section can be easily divided into two smaller sections, each of which can be examined in turn. This process may be continued down to single sided sections if necessary. Under favorable circumstances, for an n sided approximation to a closed curve, the time required to determine if a point is inside the curve is independent of n. The intersection of n sided approximations to two curves can usually be found in 0(In n) time.

Publication Title

Proceedings of the 5th Annual Conference on Computer Graphics and Interactive Techniques, SIGGRAPH 1978