scispace - formally typeset
Search or ask a question
Author

Hossam ElGindy

Bio: Hossam ElGindy is an academic researcher from University of Pennsylvania. The author has contributed to research in topics: General position & Simple polygon. The author has an hindex of 4, co-authored 5 publications receiving 71 citations.

Papers
More filters
Journal ArticleDOI
TL;DR: This work shows that whenP containsn′ interior points, there is always one point, called a splitter, that partitionsP intod + 1 simplices, none of which contain more thandn′/(d + 1) points, and gives anO(nd4 log1+1/dn) algorithm for triangulating simplicial point sets that are in general position.
Abstract: A setP ofn points inRd is called simplicial if it has dimensiond and contains exactlyd + 1 extreme points. We show that whenP containsn? interior points, there is always one point, called a splitter, that partitionsP intod + 1 simplices, none of which contain more thandn?/(d + 1) points. A splitter can be found inO(d4 +nd2) time. Using this result, we give anO(nd4 log1+1/dn) algorithm for triangulating simplicial point sets that are in general position. InR3 we give anO(n logn +k) algorithm for triangulating arbitrary point sets, wherek is the number of simplices produced. We exhibit sets of 2n + 1 points inR3 for which the number of simplices produced may vary between (n ? 1)2 + 1 and 2n ? 2. We also exhibit point sets for which every triangulation contains a quadratic number of simplices.

48 citations

Proceedings ArticleDOI
01 Aug 1986
TL;DR: It is shown that when P, the set of points in R, contains interior points, there is always one point, called a splitter, that partitions P into d + 1 simplices, none of which contain more thandn /(dn
Abstract: A set P of points in Rd is called simplicial if it has dimension d and contains exactly d + 1 extreme points. We show that when P contains n interior points, there is always one point, called a splitter, that partitions P into d + 1 simplices, none of which contain more than dn /(d + 1) points. A splitter can be found in O (d4n) time. Using this result, we give a O (d4n log1+1/dn) algorithm for triangulating simplicial point sets that are in general position. In R3 we give an O (n logn + k) algorithm for triangulating arbitrary point sets, where k is the number of simplices produced. We exhibit sets of 2n + 1 points in R3 for which the number of simplices produced may vary between (n -1)2 + 1 and 2n -2. We also exhibit point sets for which every triangulation contains a quadratic number of simplices.

13 citations

Journal ArticleDOI
TL;DR: A parallel algorithm for triangulating simplicial point sets in arbitrary dimensions based on the idea of the sequential algorithm presented in Ref. 5 is developed.
Abstract: Previous research on developing parallel triangulation algorithms concentrated on triangulating planar point sets.O(log3n) running time algorithms usingO(n) processors have been developed in Refs. 1 and 2. Atallah and Goodrich(3) presented a data structure that can be viewed as a parallel analogue of the sequential plane-sweeping paradigm, which can be used to triangulate a planar point set inO(logn loglogn) time usingO(n) processors. Recently Merks(4) described an algorithm for triangulating point sets which runs inO(logn) time usingO(n) processors, and is thus optimal. In this paper we develop a parallel algorithm for triangulating simplicial point sets in arbitrary dimensions based on the idea of the sequential algorithm presented in Ref. 5. The algorithm runs inO(log2n) time usingO(n/logn) processors. The algorithm hasO(n logn) as the product of the running time and the number of processors; i.e., an optimal speed-up.

9 citations

Book ChapterDOI
01 Jan 1988
TL;DR: The notion of geodesic paths is used to characterize all the classes of polygons for which linear time triangulation algorithms are known, and a new very simple linear time algorithm is obtained for triangulating star-shaped polygons.
Abstract: No one has yet been able to triangulate a simple polygon of n vertices in O (n) time. The fastest algorithm to date, due to Tarjan and van Wyk, runs in 0 (n loglogn) time. On the other hand several classes of simple polygons do admit linear-time triangulation. Some examples of such famous classes are: star-shaped, monotone, spiral, edge visible, and weakly externally visible polygons. In this paper the notion of geodesic paths is used to characterize all the classes of polygons for which linear time triangulation algorithms are known. First we introduce a new class of polygons, termed palm polygons, which subsumes many known classes of polygons for which linear time triangulation algorithms are known, and present an algorithm for triangulating palm polygons in 0(n) time. Then a class of polygons termed crab polygons is defined and shown to contain all classes of existing polygons for which linear time triangulation algorithms are known. As a by product of this characterization we obtain a new very simple linear time algorithm for triangulating star-shaped polygons.

4 citations

Book ChapterDOI
01 Jan 1987
TL;DR: The problem of triangulating line segments has not been previously explored and the following section provides optimal O(nlogn) algorithm for triangulated a set of n line segments.
Abstract: Much attention has been given to triangulating sets of points and polygons (see [1] for a survey) but the problem of triangulating line segments has not been previously explored. It is well known that a polygon can always be triangulated and a simple proof of this can be found in [2]. Furthermore, efficient algorithms exist for carrying out this task [3,4]. Thus at first glance one may wonder why not just construct a simple polygon through the set of line segments and subsequently apply the algorithms of [3] or [4]. Unfortunately a set of line segments does not necessarily admit a simple circuit [5]. The reader can easily construct such an example with three parallel line segments. In the following section we provide optimal O(nlogn) algorithm for triangulating a set of n line segments. Optimality follows from the fact that Ω(nlogn) time is a lower bound for triangulating a set of points [6, p. 187] which is a set of line segments of zero length. Section 3 is devoted to presenting algorithms for inserting and deleting edges from triangulations.

Cited by
More filters
Book
01 Jan 1987
TL;DR: This book offers a modern approach to computational geo- metry, an area thatstudies the computational complexity of geometric problems with an important role in this study.
Abstract: This book offers a modern approach to computational geo- metry, an area thatstudies the computational complexity of geometric problems. Combinatorial investigations play an important role in this study.

2,284 citations

Journal ArticleDOI
TL;DR: The problem of deciding whether a given polyhedron can be triangulated is NP-complete, and hence likely to be computationally intractable.
Abstract: A number of different polyhedraldecomposition problems have previously been studied, most notably the problem of triangulating a simple polygon. We are concerned with thepolyhedron triangulation problem: decomposing a three-dimensional polyhedron into a set of nonoverlapping tetrahedra whose vertices must be vertices of the polyhedron. It has previously been shown that some polyhedra cannot be triangulated in this fashion. We show that the problem of deciding whether a given polyhedron can be triangulated is NP-complete, and hence likely to be computationally intractable. The problem remains NP-complete when restricted to the case of star-shaped polyhedra. Various versions of the question of how many Steiner points are needed to triangulate a polyhedron also turn out to be NP-hard.

162 citations

Book ChapterDOI
01 Jan 1993
TL;DR: The theme of this chapter is a rather simple method that has proved very potent in the analysis of the expected performance of various randomized algorithms and data structures in computational geometry, which is to analyze a randomized algorithm as if it were running backwards in time, from output to input.
Abstract: The theme of this chapter is a rather simple method that has proved very potent in the analysis of the expected performance of various randomized algorithms and data structures in computational geometry. The method can be described as “analyze a randomized algorithm as if it were running backwards in time, from output to input.” We apply this type of analysis to a variety of algorithms, old and new, and obtain solutions with optimal or near optimal expected performance for a plethora of problems in computational geometry, such as computing Delaunay triangulations of convex polygons, computing convex hulls of point sets in the plane or in higher dimensions, sorting, intersecting line segments, linear programming with a fixed number of variables, and others.

141 citations

Journal ArticleDOI
TL;DR: For random split trees, this work offers a universal law of large numbers and a limit law for the depth of the last inserted point, as well as a law ofLarge numbers for the height.
Abstract: Random binary search trees, b-ary search trees, median-of-(2k+1) trees, quadtrees, simplex trees, tries, and digital search trees are special cases of random split trees. For these trees, we offer a universal law of large numbers and a limit law for the depth of the last inserted point, as well as a law of large numbers for the height.

134 citations

Journal ArticleDOI
TL;DR: It is shown that any set of points in the plane has a Hamiltonian triangulation, and it is proved that certain nondegenerate point sets do not admit asequential triangulations.
Abstract: High-performance rendering engines are often pipelined; their speed is bounded by the rate at which triangulation data can be sent into the machine. An ordering such that consecutive triangles share a face, which reduces the data rate, exists if and only if the dual graph of the triangulation contains a Hamiltonian path. We (1) show thatany set ofn points in the plane has a Hamiltonian triangulation; (2) prove that certain nondegenerate point sets do not admit asequential triangulation; (3) test whether a polygonP has a Hamiltonian triangulation in time linear in the size of its visibility graph; and (4) show how to add Steiner points to a triangulation to create Hamiltonian triangulations that avoid narrow angles.

116 citations