Subscribe
Issue No.01 - January/February (2008 vol.14)
pp: 73-83
ABSTRACT
<p><b>Abstract</b>—This paper presents the layer-based representation of polyhedrons and its use for point-in-polyhedron tests. In the representation, the facets and edges of a polyhedron are sequentially arranged, and so the binary search algorithm is efficiently used to speed up inclusion tests. In comparison with conventional representation for polyhedrons, the layer-based representation we propose greatly reduces the storage requirement because it represents much information implicitly, though it still has a storage complexity <i>O(n)</i>. It is simple to implement, and robust for inclusion tests because many singularities are erased in constructing the layer-based representation. Incorporating an octree structure for organizing polyhedrons, our approach can run at a speed comparable with BSP-based inclusion tests, and at the same time greatly reduce storage and preprocessing time in treating large polyhedrons. We have developed an efficient solution for point-in-polyhedron tests with the time complexity varying between <i>O(n)</i> and <i>O(log n)</i>, depending on the polyhedron shape and the constructed representation, and less than <i>O(log^3 n)</i> in most cases. The time complexity of preprocess is between <i>O(n)</i> and <i>O(n^2)</i>, varying with polyhedrons, where <i>n</i> is the edge number of a polyhedron.</p>
INDEX TERMS
computational geometry, polyhedron, point containment, solid representation
CITATION
Wencheng Wang, Jing Li, Hanqiu Sun, Enhua Wu, "Layer-Based Representation of Polyhedrons for Point Containment Tests", IEEE Transactions on Visualization & Computer Graphics, vol.14, no. 1, pp. 73-83, January/February 2008, doi:10.1109/TVCG.2007.70407
REFERENCES
 [1] J. Lane, B. Magedson, and M. Rarick, “An Efficient Point in Polyhedron Algorithm,” Computer Vision, Graphics, and Image Processing, vol. 26, pp. 118-125, 1984. [2] J. Linhart, “A Quick Point-in-Polyhedron Test,” Computers and Graphics, vol. 14, no. 3, pp. 445-448, 1990. [3] P.C.P. Carvalho and P.R. Cavalcanti, “Point in Polyhedron Testing Using Spherical Polygons,” Graphics Gems V, A.W. Paeth, ed. pp.42-49, Morgan Kaufmann, 1995. [4] F.R. Feito and J.C. Torres, “Inclusion Test for General Polyhedra,” Computers and Graphics, vol. 21, no. 1, pp. 23-30, 1997. [5] A.S. Glassner, “Space Subdivision for Fast Ray Tracing,” IEEE Computer Graphics and Applications, vol. 4, pp. 15-22, 1984. [6] D. Gordan and C. Shulong, “Front-to-Back Display or BSP Trees,” IEEE Computer Graphics and Applications, vol. 11, no. 5, pp. 79-86, Sept. 1991. [7] M. Abrash, Michael Abrash's Graphics Programming Black Book, special ed. The Coriolis Group Inc., 1997. [8] W. Wang, J. Li, and E. Wu, “2D Point-in-Polygon Test by Classifying Edges into Layers,” Computers and Graphics, vol. 29, no. 3, pp. 427-439, 2005. [9] P.L. Williams, “Visibility Ordering Meshed Polyhedra,” ACM Trans. Graphics, vol. 11, no. 2, pp. 103-126, 1992. [10] J.D. Foley, A.V. Dam, S.K. Feiner, and J.F. Hughes, Computer Graphics—Principles and Practice in C, second ed. Addison-Wesley, pp. 96-99, 1999. [11] A.J. Rueda, F.R. Feito, and L.M. Ortega, “Layer-Based Decomposition of Solids and Its Applications,” The Visual Computer, vol. 21, no. 6, pp. 406-417, 2005. [12] M. Berg, M. Kreveld, M. Overmars, and O. Schwarzkopf, “Chapter 2: Line Segment Intersection,” Computational Geometry, Algorithms and Applications, second ed. Springer, 2000. [13] Y.E. Kalay, “Determining the Spatial Containment of a Point in General Polyhedra,” Computer Graphics and Image Processing, vol. 19, no. 4, pp. 303-334, 1982. [14] W. Horn and D.L. Taylor, “A Theorem to Determine the Spatial Containment of a Point in a Planar Polyhedron,” Computer Vision, Graphics, and Image Processing, vol. 45, no. 1, pp. 106-116, 1989. [15] C.J. Ogayar, R.J. Segura, and F.R. Feito, “Point in Solid Strategies,” Computers and Graphics, vol. 29, no. 4, pp. 616-624, 2005. [16] J. O'Rourque, Computational Geometry in C. p. 2, Cambridge Univ., 1993. [17] F. Yamaguchi, S. Tsuda, and T. Nagasaki, “Applications of 4 $\times$ 4 Determinant Method and the Polygon Engine,” The Visual Computer, vol. 4, no. 4, pp. 176-187, 1988. [18] M. Dietzfelbinger, A. Karlin, K. Mehlhorn, F.M. Heide, H. Rohnert, and R.E. Tarjan, “Dynamic Perfect Hashing: Upper and Lower Bounds,” SIAM J. Computing, vol. 23, pp. 738-761, 1994. [19] A. Glassner, An Introduction to Ray Tracing. pp.217-220, Academic Press, 1989. [20] P. Brunet and I. Navazo, “Solid Representation and Operation Using Extended Octrees,” ACM Trans. Graphics, vol. 9, no. 2, pp.170-197, 1990. [21] A. Watt, 3D Computer Graphics, third ed. pp. 51-54, Addison-Wesley, 2000. [22] B. Payne and A. Toga, “Distance Field Manipulation of Surface Models,” IEEE Computer Graphics and Applications, vol. 12, no. 1, pp. 65-71, Jan. 1992. [23] S.F. Frisken, R.N. Perry, A.P. Rockwood, and T.R. Jones, “Adaptively Sampled Distance Fields: A General Representation of Shape for Computer Graphics,” Proc. ACM SIGGRAPH '00, pp.249-254, 2000. [24] C. Sigg, R. Peikert, and M. Gross, “Signed Distance Transform Using Graphics Hardware,” Proc. 14th IEEE Visualization Conf. (VIS '03), pp. 83-90, 2003. [25] J.A. Bærentzen and H. Aanæs, “Signed Distance Computation Using the Angle Weighted Pseudo-Normal,” IEEE Trans. Visualization and Computer Graphics, vol. 11, no. 3, pp. 243-253, May/June 2005. [26] A.J. Ruedo, F.R. Feito, and M.L. Rivero, “A Triangle-Based Representation for Polygons and Its Applications,” Computers and Graphics, vol. 26, no. 5, pp. 805-814, 2002.