Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.5555/646678.702173guideproceedingsArticle/Chapter ViewAbstractPublication PagesConference Proceedingsacm-pubtype
Article

Practical Point-in-Polygon Tests Using CSG Representations of Polygons

Published: 15 January 1999 Publication History
  • Get Citation Alerts
  • Abstract

    We investigate the use of a constructive solid geometry (CSG) representation in testing if a query point falls inside a polygon; in particular, we use a CSG tree whose leaves correspond to halfplanes defined by edges and whose internal nodes are intersections or unions of the regions defined by their subtrees. By preprocessing polygons into this representation, we obtain a linear-space data structure for point-in-polygon tests that has a tight inner loop that can prune unnecessary edge tests during evaluation. We experiment with opportunities to optimize the pruning by permuting children of nodes. The resulting test is less memory-intensive than grid methods and faster than existing one-shot methods. It also extends to ray-shooting in 3-space.

    References

    [1]
    Franklin Antonio. Faster line segment intersection. In David Kirk, editor, Graphics Gems III, chapter 1.4, pages 199-202. Academic Press, Boston, MA, USA, 1992.
    [2]
    Didier Badouel. An efficient ray-polygon intersection. In Andrew S. Glassner, editor, Graphics Gems, pages 390-393. Academic Press, Boston, MA, 1990.
    [3]
    B. Bollig and I. Wegener. Improving the variable ordering of OBDDs is NP-complete. IEEE Transactions on Computers, 45(9):993-1002, 1996.
    [4]
    Randal E. Bryant. Graph-based algorithms for Boolean function manipulation. IEEE Transactions on Computers, C-35(6):677-691, August 1986.
    [5]
    Randal E. Bryant. Symbolic Boolean manipulation with ordered binary-decision diagrams. ACM Computing Surveys, 24(3):293-318, September 1992.
    [6]
    David Dobkin, Leonidas Guibas, John Hershberger, and Jack Snoeyink. An efficient algorithm for finding the CSG representation of a simple polygon. In John Dill, editor, Computer Graphics (SIGGRAPH '88 Proceedings), volume 22, pages 31-40, August 1988.
    [7]
    Chris Green. Simple, fast triangle intersection. Ray Tracing News, 6(1), 1993. ftp://ftp.princeton.edu/pub/Graphics/RTNews.
    [8]
    R. Hacker. Certification of algorithm 112: position of point relative to polygon. Communications of the ACM, 5:606, 1962.
    [9]
    Eric Haines. Point in polygon strategies. In Paul S. Heckbert, editor, Graphics Gems IV, chapter 1.4, pages 24-46. Academic Press, Boston, MA, USA, 1994.
    [10]
    Franco P. Preparata and Micheal Ian Shamos. Computational Geometry: An Introduction. Springer-Verlag, Berlin, Germany, 1985.
    [11]
    M. Shimrat. Algorithm 112: position of point relative to polygon. Communications of the ACM, 5:434, 1962.
    [12]
    John M. Snyder and Alan H. Barr. Ray tracing complex models containing surface tessellations. Computer Graphics (SIGGRAPH '87 Proceedings), 21(4):119-128, July 1987.
    [13]
    John Spackman. Simple, fast triangle intersection, part II. Ray Tracing News, 6(2), 1993. ftp://ftp.princeton.edu/pub/Graphics/RTNews.
    [14]
    Jorge Stolfi. Oriented Projective Geometry: A Framework for Geometric Computations. Academic Press, 1991.

    Cited By

    View all
    • (2007)Guard placement for efficient point-in-polygon proofsProceedings of the twenty-third annual symposium on Computational geometry10.1145/1247069.1247075(27-36)Online publication date: 6-Jun-2007

    Index Terms

    1. Practical Point-in-Polygon Tests Using CSG Representations of Polygons
        Index terms have been assigned to the content through auto-classification.

        Recommendations

        Comments

        Information & Contributors

        Information

        Published In

        cover image Guide Proceedings
        ALENEX '99: Selected papers from the International Workshop on Algorithm Engineering and Experimentation
        January 1999
        348 pages

        Publisher

        Springer-Verlag

        Berlin, Heidelberg

        Publication History

        Published: 15 January 1999

        Qualifiers

        • Article

        Contributors

        Other Metrics

        Bibliometrics & Citations

        Bibliometrics

        Article Metrics

        • Downloads (Last 12 months)0
        • Downloads (Last 6 weeks)0
        Reflects downloads up to 10 Aug 2024

        Other Metrics

        Citations

        Cited By

        View all
        • (2007)Guard placement for efficient point-in-polygon proofsProceedings of the twenty-third annual symposium on Computational geometry10.1145/1247069.1247075(27-36)Online publication date: 6-Jun-2007

        View Options

        View options

        Get Access

        Login options

        Media

        Figures

        Other

        Tables

        Share

        Share

        Share this Publication link

        Share on social media