The authors first study the degree of standard procedures for determining the number of line transversals to four lines or four segments in 3D [cf. H. Brönnimann, H. Everett, S. Lazard, F. Sottile and S. Whitesides , Discrete Comput. Geom. 34, No. 3, 381–390 (2005; Zbl 1083.52003)]. They also consider the predicate for determining whether a minimal segment transversal to four line segments is intersected by a triangle. These predicators are ubiquitous in 3D visibility problems The predicate for ordinary planes through two fixed points, each plane containing a third rational point or a line transversal to four segments or lines is also studied [cf. H. Brönnimann, O. Devillers, V. Dujmović, H. Everett, M. Glisse, X. Goaoc, S. Lazard, H.-S. Na , and S. Whitesides SIAM J. Comput. 37, No. 2, 522–551 (2007; Zbl 1138.65019)].
The 3D visibility skeleton is a data structure used to encode global visibility information about a set of objects. Previous theoretical results have shown that for k convex polytopes with n edges in total, the worst case size complexity of this data structure is Θ(n 2 k 2) [Brönnimann et al. 07]; whereas for k uniformly distributed unit spheres, the expected size is Θ(k) [Devillers et al. 03]. In this paper, we study the size of the visibility skeleton experimentally. Our results indicate that the size of the 3D visibility skeleton, in our setting, is C k√(n k) , where C varies with the scene density but remains small. This is the first experimentally determined asymptotic estimate of the size of the 3D visibility skeleton for reasonably large n and expressed in terms of both n and k. We suggest theoretical explanations for the experimental results we obtained. Our experiments also indicate that the running time of our implementation is O(n 3/2 klogk), while its worst-case running time complexity is O(n 2 k 2 logk).
In this paper we study various geometric predicates for determining the existence of and categorizing the configurations of lines in 3D that are transversal to lines or segments. We compute the degrees of standard procedures of evaluating these predicates. The degrees of some of these procedures are surprisingly high (up to 168), which may explain why computing line transversals with finite-precision floating-point arithmetic is prone to error. Our results suggest the need to explore alternatives to the standard methods of computing these quantities.
Given a family of k disjoint connected polygonal sites of total complexity n, we consider the farthest-site Voronoi diagram of these sites, where the distance to a site is the distance to a closest point on it. We show that the complexity of this diagram is O(n), and give an O(n log3 n) time algorithm to compute it.
We study the expected size of the 2D visibility complex of randomly distributed objects in the plane. We prove that the asymptotic expected number of free bitangents (which correspond to 0-faces of the visibility complex) among unit discs (or polygons of bounded aspect ratio and similar size) is linear and exhibit bounds in terms of the density of the objects. We also make an experimental assessment of the size of the visibility complex for disjoint random unit discs. We provide experimental estimates of the onset of the linear behavior and of the asymptotic slope and y-intercept of the number of free bitangents in terms of the density of discs. Finally, we analyze the quality of our estimates in terms of the density of discs.
Motivated by visibility problems in three dimensions, we investigate the complexity and construction of the set of tangent lines in a scene of three-dimensional polyhedra. We prove that the set of lines tangent to four possibly intersecting convex polyhedra in $\mathbb{R}^3$ with a total of $n$ edges consists of $\Theta(n^2)$ connected components in the worst case. In the generic case, each connected component is a single line, but our result still holds for arbitrarily degenerate scenes. More generally, we show that a set of $k$ possibly intersecting convex polyhedra with a total of $n$ edges admits, in the worst case, $\Theta(n^2k^2)$ connected components of maximal free line segments tangent to at least four polytopes. Furthermore, these bounds also hold for possibly occluded lines rather than maximal free line segments. Finally, we present an $O(n^2 k^2 \log n)$ time and $O(nk^2)$ space algorithm that, given a scene of $k$ possibly intersecting convex polyhedra, computes all the minimal free line segments that are tangent to any four of the polytopes and are isolated transversals to the set of edges they intersect; in particular, we compute at least one line segment per connected component of tangent lines.
Computing shadow boundaries is a difficult problem in the case of non-pointlight sources. A point is in the umbra if it does not see any part of anylight source; it is in full light if it sees entirely all the light sources;otherwise, it is in the penumbra. While the common boundary of the penumbraand the full light is well understood, less is known about the boundary of theumbra. In this paper we prove various bounds on the complexity of the umbra andthe penumbra cast by a segment or polygonal light source on a plane in the presence ofpolygon or polytope obstacles. In particular, we show that a single segment light source may cast on a plane, in thepresence of two triangles, four connected components of umbra and that two fatconvex obstacles of total complexity n can engender Ω(n) connectedcomponents of umbra. In a scene consisting of a segment light source and kdisjoint polytopes of total complexity n, we prove an Ω(nk 2 +k 4 )lower bound on the maximum number of connected components of the umbra and a O(nk 3 ) upper bound on its complexity. We also prove that, in the presence of kdisjoint polytopes of total complexity n, some of which being light sources,the umbra cast on a plane may have Ω(n 2 k 3 +nk 5 ) connected components and has complexity O(n 3 k 3 ).These are the first bounds on the size of the umbra in terms of both k and n. These results prove that the umbra, which is bounded by arcs of conics,is intrinsically much more intricate than the full light/penumbra boundary whichis bounded by linesegments and whose worst-case complexity is in Ω(nα(k) +km +k 2 ) and O(nα(k) + kmα(k) +k 2 ), where m is the complexity of the polygonallight source.
In this note we describe the contents of a video illustrating analgorithm for computing the 3D visibility skeleton ofa set of disjoint convex polytopes. The video can be foundat http://www.cs.mcgill.ca/~lzhang15/video/ with file name socg07visidemo.mov.
Given two sets A and B of m non-crossing line segments in the plane, we show how to compute in O(m log m) time a data structure that uses O(m) storage and supports the following query in O( log m) time: Given a parabola γ : y = ax 2 + bx + c, does γ separate A and B? This structure can be used to build a data structure that stores a simple polygon and allows ray-shooting queries along parabolic trajectories with vertical main axis. For a polygon of complexity n, we can answer such "stone-throwing" queries in O( log 2 n) time, using O(n log n) storage and O(n log 2 n) preprocessing time. This matches the best known bound for circular ray shooting in simple polygons.
We give a drawing of K n in 3D in which vertices are placed at integer grid points and edges are drawn crossing-free with at most one bend per edge in a volume bounded by O(n 2.5).
In this paper we study various predicates concerning line transversals to lines and segments in 3D. We compute the degrees of standard methods of evaluating these predicates. The degrees of some of these methods are surprisingly high, which may explain why computing line transversals with finite precision is prone to error. Our results suggest the need to explore alternatives to the standard methods of computing these quantities. is occluded by a triangle. Finally, we study the predi- cate for ordering planes through two fixed points, each containing a third rational point or a line transversal to four segments or lines. This predicate arises in the rotational plane sweep algorithm of Goaoc (9) that com- putes the maximal free segments tangent to four among k convex polyhedra in 3D. This algorithm performs n rotational sweeps of a plane, one about each edge in the scene, which we call the reference edge. All transversals to the reference edge and three other edges are com- puted in one sweep. The events of the sweep correspond to planes that contain a vertex not on the reference line (i.e., the line containing the reference edge) or that con- tain a line transversal to the reference line and three other segments. This algorithm is the asymptotically fastest known for this problem. Our study shows that standard procedures for solv- ing these predicates have high degree. In particular, we show that determining whether a minimal segment transversal to four line segments is occluded by a tri- angle can be evaluated by a degree 90 predicate Also, the predicate for comparing, in a rotational sweep, two planes, each defined by a line transversal, can be evalu- ated by a degree 168 procedure. These very high degrees may help explain why fixed-precision implementations for solving 3D visibility problems are prone to errors when given real-world data.
Given two sets A and B of m non-intersecting line segments in the plane, we show how to compute in O(m logm) time a data structure that uses O(m) space and allows to answer the following query in O(logm) time: Given a parabola γ: y = ax2 + bx + c, does γ separate A and B? This structure can be used to build a data structure that stores a simple polygon and allows ray-shooting queries along parabolic trajectories with vertical main axis. For a polygon with complexity n, we can answer such “stone throwing” queries in O(log2n) time, using O(n logn) space and O(n log2n) preprocessing time. This matches the best known bound for circular ray shooting in simple polygons.
We make an experimental assessment of the size of the 2D visibility complex of disjoint unit discs randomly distributed in the plane with density $\mu$. We observe that the number of free bitangents is asymptotically linear in the number of discs and we study the dependence of the linear asymptote in terms of the density of the scene. Specifically, for a particular range of scene densities $\mu$, we exhibit an approximation of the number of free bitangents in terms of $\mu$ and the number $n$ of discs, for $n$ larger than some function of $\mu$. We also notice how our approximation gained for rather large densities can be used to guess the onset of the linear behavior for small densities.
Given a set of n points in the plane, we consider the problem of computing the circular ordering of the points about a viewpoint q and efficiently maintaining this ordering information as q moves. In linear space, and after O(n log n) preprocessing time, our solution maintains the view at a cost of O(log n) amortized time (resp. O(log(2) n) worst case time) for each change. Our algorithm can also be used to maintain the set of points sorted according to their distance to q.
The dilation of a geometric graph is the maximum, over all pairs of points in the graph, of the ratio of the Euclidean length of the shortest path between them in the graph and their Euclidean distance. We consider a generalized version of this notion, where the nodes of the graph are not points but axis-parallel rectangles in the plane. The arcs in the graph are horizontal or vertical segments connecting a pair of rectangles, and the distance measure we use is the L1-distance. The dilation of a pair of points is then defined as the length of the shortest rectilinear path between them that stays within the union of the rectangles and the connecting segments, divided by their L1-distance. The dilation of the graph is the maximum dilation over all pairs of points in the union of the rectangles.We study the following problem: given n non-intersecting rectangles and a graph describing which pairs of rectangles are to be connected, we wish to place the connecting segments such that the dilation is minimized. We obtain four results on this problem: (i) for arbitrary graphs, the problem is NP-hard; (ii) for trees, we can solve the problem by linear programming on O(n2) variables and constraints; (iii) for paths, we can solve the problem in time O(n3logn); (iv) for rectangles sorted vertically along a path, the problem can be solved in O(n2) time, and a (1+ɛ)-approximation can be computed in linear time.
Sue H. Whitesides合作论文数Department of Computer Science University of Victoria15
O. Devillers合作论文数INRIA10
Sylvain Petitjean合作论文数LORIA laboratory9
Thomas Shermer合作论文数Graph Theory and Computer Graphics;Computational Geometry6
Hervé Brönnimann合作论文数Polytechnic University,Department of Computer and Information Sciences5
Rene Schott合作论文数University Henri Poincar??-Nancy2