A new hierarchical triangle-based point-in-polygon data structure

The point-in-polygon or containment test is fundamental in computational geometry and is applied intensively in geographical information systems. When this test is repeated several times with the same polygon a data structure is necessary in order to reduce the linear time needed to obtain an inclusion result. In the literature different approaches, like grids or quadtrees, have been proposed for reducing the complexity of these algorithms. We propose a new data structure based on hierarchical subdivisions by means of tri-cones, which reduces the time necessary for this inclusion test. This data structure, named tri-tree, decomposes the whole space by means of tri-cones and classifies the edges of the polygon. For the inclusion test only the edges classified in one tri-cone are considered. The tri-tree has a set of properties which makes it specially suited to this aim, with a similar complexity to other data structures, but well suited to polygons which represent regions. We include a theoretical and practical study in which the new data structure is compared with classical ones, showing a significant improvement.

[1]  Eric Haines,et al.  Point in Polygon Strategies , 1994, Graphics Gems.

[2]  Hanan Samet,et al.  Foundations of multidimensional and metric data structures , 2006, Morgan Kaufmann series in data management systems.

[3]  Michela Bertolotto,et al.  Progressive Transmission of Vector Map Data over the World Wide Web , 2001, GeoInformatica.

[4]  Christer Ericson,et al.  Real-Time Collision Detection , 2004 .

[5]  Michael Ian Shamos,et al.  Computational geometry: an introduction , 1985 .

[6]  Kai Hormann,et al.  The point in polygon problem for arbitrary polygons , 2001, Comput. Geom..

[7]  Francisco R. Feito-Higueruela,et al.  Orientation, simplicity, and inclusion test for planar polygons , 1995, Comput. Graph..

[8]  Ivana Kolingerová,et al.  A cell-based point-in-polygon algorithm suitable for large sets of points , 2001 .

[9]  Tian-Yuan Shih,et al.  On the complexity of point-in-polygon algorithms , 1997 .

[10]  G. Taylor,et al.  POINT IN POLYGON TEST , 1994 .

[11]  M. Goodchild,et al.  Geographic Information Systems and Science (second edition) , 2001 .

[12]  Francisco R. Feito-Higueruela,et al.  The multi-L-REP decomposition and its application to a point-in-polygon inclusion test , 2006, Comput. Graph..

[13]  Min Chen,et al.  Efficient and Consistent Algorithms for Determining the Containment of Points in Polygons and Polyhedra , 1987, Eurographics.

[14]  Borut Zalik,et al.  Polygon trapezoidation by sets of open trapezoids , 2003, Comput. Graph..

[15]  Wencheng Wang,et al.  2D point-in-polygon test by classifying edges into layers , 2005, Comput. Graph..

[16]  Paul S. Heckbert,et al.  Graphics gems IV , 1994 .

[17]  Wencheng Wang,et al.  Point-in-polygon tests by convex decomposition , 2007, Comput. Graph..