TY - JOUR

T1 - Efficient hidden surface removal for objects with small union size

AU - Katz, Matthew J.

AU - Overmars, Mark H.

AU - Sharir, Micha

N1 - Funding Information:
Let S be a set of n non-intersecting objects in space for which we want to determine the portions visible from some viewing point. We assume that the objects are ordered by depth from the viewing point (e.g., they are all horizontal and are viewed from infinity from above). In this paper we give an algorithm that computes the visible portions in time O((U(n) + k)log’n), where U(n’) is a super-additive bound on the maximal complexity of the union of (the projections on a viewing plane of) any n’ objects from the family under consideration, and k is the complexity of the resulting visibility map. The algorithm uses O(U(n)logn) working storage. The algorithm is useful when the objects are ‘fat’ in the sense that the union of the projection of any subset of them has small (i.e., subquadratic) complexity. We present three Correspondence to: Matthew J. Katz, School of Mathematical Aviv 69978, Israel. * Work by Mark Overmars has been partially supported by the ESPRIT Basic Research Action No. 3075 (project ALCOM) and by the Dutch Organisation for Scientific Research (N.W.O.). Work on this paper by Matthew Katz and Micha Sharir has been supported by a Grant from the G.I.F., the German-Israeli Foundation for Scientific Research and Development. Work by Micha Sharir has also been supported by Office of Naval Research Grant NOOO14-90-J-1284, by National Science Foundation Grant CCR-89-01484, and by grants from the U.S.-Israeli Binational Science Foundation, and the Fund for Basic Research administered by the Israeli Academy of Sciences.

PY - 1992/1/1

Y1 - 1992/1/1

N2 - Let S be a set of n non-intersecting objects in space for which we want to determine the portions visible from some viewing point. We assume that the objects are ordered by depth from the viewing point (e.g., they are all horizontal and are viewed from infinity from above). In this paper we give an algorithm that computes the visible portions in time O((U(n)+k)log2n), where U(n') is a super-additive bound on the maximal complexity of the union of (the projections on a viewing plane of) any n' objects from the family under consideration, and k is the complexity of the resulting visibility map. The algorithm uses O(U(n)log n) working storage. The algorithm is useful when the objects are 'fat' in the sense that the union of the projection of any subset of them has small (i.e., subquadratic) complexity. We present three applications of this general technique: (i) For disks (or balls in space) we have U(n)=O(n), thus the visibility map can be computed in time O((n+k)log2n). (ii) For 'fat' triangles (where each internal angle is at least some fixed θ degrees) we have U(n)=O(n log log n) and the algorithm runs in time O((n log log n+k)log2n. (iii)The method also applies to computing the visibility map for a polyhedral terrain viewed from a fixed point, and yields an O((nα(n)+k)log n) algorithm.

AB - Let S be a set of n non-intersecting objects in space for which we want to determine the portions visible from some viewing point. We assume that the objects are ordered by depth from the viewing point (e.g., they are all horizontal and are viewed from infinity from above). In this paper we give an algorithm that computes the visible portions in time O((U(n)+k)log2n), where U(n') is a super-additive bound on the maximal complexity of the union of (the projections on a viewing plane of) any n' objects from the family under consideration, and k is the complexity of the resulting visibility map. The algorithm uses O(U(n)log n) working storage. The algorithm is useful when the objects are 'fat' in the sense that the union of the projection of any subset of them has small (i.e., subquadratic) complexity. We present three applications of this general technique: (i) For disks (or balls in space) we have U(n)=O(n), thus the visibility map can be computed in time O((n+k)log2n). (ii) For 'fat' triangles (where each internal angle is at least some fixed θ degrees) we have U(n)=O(n log log n) and the algorithm runs in time O((n log log n+k)log2n. (iii)The method also applies to computing the visibility map for a polyhedral terrain viewed from a fixed point, and yields an O((nα(n)+k)log n) algorithm.

UR - http://www.scopus.com/inward/record.url?scp=38249010208&partnerID=8YFLogxK

U2 - 10.1016/0925-7721(92)90024-M

DO - 10.1016/0925-7721(92)90024-M

M3 - Article

AN - SCOPUS:38249010208

VL - 2

SP - 223

EP - 234

JO - Computational Geometry: Theory and Applications

JF - Computational Geometry: Theory and Applications

SN - 0925-7721

IS - 4

ER -