Abstract
This paper addresses the problem of computing the optimal stacking of two monotone polytopes P and Q in . A monotone polytope in is defined as a polytope whose intersection with any line parallel to the last coordinate axis is connected, and the stacking of P and Q is defined as a translation of Q, such that “Q touches P from above”. To evaluate the stack, we use three different scoring criteria: (1) the height of the stack, (2) the maximum pointwise distance along the -axis, and (3) the volume between P and Q. We propose exact algorithms to compute the optimal stacking for each scoring criterion.
1. Introduction
The stacking problem is a class of geometric optimization problems that aims to find the optimal way to stack geometric objects, represented as polytopes in d-dimensional space . The study of the stacking problem began in earnest with Johannes Kepler’s conjecture in 1611 about the densest way to stack congruent spheres [], and the simple yet fundamental problem of stacking identical rectangular blocks has also been actively researched up to the present [,]. Solutions to stacking problems are theoretically meaningful, and have applications in industrial fields, including logistics, making it a topic of active research these days [,,].
In this paper, we present algorithms for the optimal stacking of two monotone polytopes, P and Q, in , where a monotone polytope in is defined as a polytope whose intersection with any line parallel to the last coordinate axis is connected. The optimal stacking can be defined in various ways, and we use three different scoring criteria: (1) the height of the stack, (2) the maximum pointwise distance along the -axis, and (3) the volume between P and Q.
For and 3, the optimal stacking under the first scoring criterion minimizes the height of the container enclosing the stacking, making it applicable in the field of logistics, where optimal packing is necessary. Under the second and third scoring criteria, the optimal stacking minimizes the “gap” between P and Q, which can be utilized for optimal occlusion in dentistry []. Additionally, we expect that the optimal stacking for dimensions can be utilized to measure the similarity of data, defined by piecewise linear functions in high-dimensional spaces.
The rest of the paper is organized as follows. Section 2 introduces the formal definition of the stacking problem and three scoring criteria. Section 3, Section 4 and Section 5 introduce methods for computing the translation vector that minimizes each of the scoring criteria: (1) the height of the stack, (2) the maximum pointwise distance along the -axis, and (3) the volume, respectively. In each of these sections, we first solve the problem for the two-dimensional case to enhance understanding of our algorithm and then extend it to higher dimensions . Finally, Section 6 discusses potential applications of the proposed algorithm and outlines possible directions for future research.
2. Preliminaries
Let be the coordinate axes in d-dimensional space , where d is a constant. We say that a line ℓ, a vector , or a hyperplane in is vertical if ℓ, , or is parallel to the -axis. A polytope P in is called -monotone if the intersection of P with any vertical line ℓ is connected. We define the domain of P as the projection of P onto the plane along the -axis, and denote it by .
We consider the stacking problem for two given -monotone polytopes P and Q in . We assume that both and are convex domains without holes in . For a vector , let be the translation of Q by . We say that is placed on top of P if the following conditions are hold:
- C1. The domain of is contained in .
- C2. For a vertical line ℓ, any point has the same or larger -coordinate than that of any point .
- C3. P and have a non-empty intersection.
Figure 1 includes examples of situations where is placed on top of P or not. When and P satisfy C2, we say that lies above P, or Plies below . When lies above P, the length of the shortest vertical vector , such that , is called the vertical distance between and P.

Figure 1.
(a) is placed on top of P. (b–d) The conditions C1, C3, and C2 are violated, respectively.
The translation space is defined as a set of all vectors , such that , where is the translation of by t. For a vector and a real number r, we could construct a d-dimensional vector by concatenating r to t. From the definition of , and P satisfy C1. If is the largest value of r, such that , then and P satisfy the conditions and , so is placed on top of P. Let be the function that maps t to , and be the graph of h. We denote by .
For a point , let be the point with the largest -coordinate in , where is the vertical line passing through p. Then, the set is the upper boundary of P. Similarly, for a point , let be the point with the smallest -coordinate in . Then, the set is the lower boundary of Q. Observe that when is placed on top of P, is the same as . We assume that and are triangulated, and have n and m vertices, respectively.
We define a piecewise linear function that maps to the -coordinate of . Similarly, we define a piecewise linear function for . Also, even when Q is translated by for , we define a function for accordingly. We assume that and are also triangulated by the projection of and , respectively.
In this paper, we use three scoring criteria to determine the optimal placement of Q. For , the first scoring criteria measures the maximum -coordinate of as follows:
With the vector minimizing , we could minimize the height of the stack. The second scoring criterion measures the maximum pointwise vertical distance between and as follows:
The third scoring criterion measures the volume between and as follows:
With the vector that minimizes or , we could minimize the gap between and in terms of pointwise vertical distance or volume.
Note that we use big-O notation when analyzing the time and space complexities of algorithms.
3. Minimizing Scoring Criterion (1)
In this section, we demonstrate how to find the translation vector that minimizes the scoring criterion .
3.1. The Case When
In , P and Q are y-monotone polygons, and and are y-monotone piecewise linear curves. Let and be the vertices of and , which are labeled sequentially from left to right, and and be the projection of and onto the x-axis for and , respectively. Then, and are intervals, and is also an interval.
For a vector , measures the maximum y-coordinate of . Therefore, the optimal vector which minimizes also minimizes the function h; hence, is the lowest point in the graph .
Observe that when is placed on top of P, either a vertex of is contained in an edge of , or a vertex of is contained in an edge of . For two sets and in , the set of all vectors such that can be computed from the Minkowski difference as follows:
Hence, the set of vectors such that is , and the set of vectors such that is . Let C be the union of and for all possible combinations. The following lemma describes the relation between the set C and the graph .
Lemma 1.
The upper envelope of C on is .
Proof.
It is obvious that is a subset of C.
For a vector , let be the vertical line passing through t. From the construction of C, a point in corresponds to a vertex–edge pair or such that or . So, if Q is translated by for a real , lies below , or lies above .
Let be the point with the maximum y-coordinate in . When Q is translated by , every vertex of lies on or above , and every vertex of lies on or below . This implies that is placed on top of P. The upper envelope of C on is defined as the set of points in for . So, the lemma follows. □
We conclude this section with the following theorem, which analyzes the time and space complexities of finding the optimal translation vector.
Theorem 1.
Let P and Q be two y-monotone polygons in , such that and have n and m vertices, respectively. The optimal placement of Q on top of P, which minimizes the height of the stack along the y-axis, can be computed in time using space.
Proof.
Observe that C is a set of line segments. By Lemma 1, the graph is the upper envelope of line segments on , so we could compute in time using space, where is the inverse of Ackermann’s function []. Since is a piecewise linear curve of size , finding the lowest point in can be performed in time. □
3.2. The Case When
Similar to the case when , we find the vector with the minimum -coordinate in .
When is placed on top of P for , there exists a pair such that , where is an i-dimensional face, simply i-face, of and is a -face of , for . Figure 2 shows examples of such pairs when .

Figure 2.
(a) . is a facet-vertex pair. (b) . is an edge-edge pair. (c) . is a vertex-facet pair.
For a pair stated above, the set of vectors such that is . Let C be the union of for all possible pairs of . From the upper bound theorem [], the number of such pairs is . From the assumption that and are triangulated, is a convex subset of a hyperplane in . Also, since d is a constant, can be triangulated into many -simplices (a convex hull of d linearly independent points). Overall, the set C is union of many -simplices.
The upper envelope of C on is also , based on the same argument of Lemma 1. The point with the smallest -coordinate in can be found from one of the following two cases: a vertex of whose projection onto lies in ; and the intersection between an edge (1-face) of and a vertical hyperplane containing a facet (-face) of the boundary of , where the projection of this intersection onto lies in .
First, we show how to determine whether a point lies in . From the convexity of and , if every vertex satisfies for , then . For a vertex , the set of vectors t is such that is a translated copy of . Hence, is the common intersection of m translated copies of .
When , becomes a convex polygon with edges, and can be computed in time. By constructing a point location structure for with time and space [], we can determine whether in time.
When , we use the hierarchical representations suggested by Dobkin and Kirkpatrick [,]. The hierarchical representation of a convex polytope of n vertices in allows the determination of whether a point is contained in in time, with preprocessing time and space. By constructing the hierarchical representation of , we can determine whether belongs to in time by checking whether is contained in for each vertex v of .
Next, we show how to find the intersection between an edge e of and a vertical hyperplane containing a boundary facet of , where the projection of onto lies in . Let v and be the endpoints of the projection of e. To satisfy the above conditions, v must be inside , and must be outside . Also, the projection of is last point where the ray from v to intersects .
When , from the point location structure for , we can determine whether and , and compute the intersection in time.
When , from the hierarchical representation of , we determine whether and in time. Using the hierarchical representation again, we can determine the facet of that a ray from to intersects last, where q is a vertex of , such that and in time. Hence, we can compute the boundary facet of where the projection of e intersects in time.
Lastly, we show how to compute the vertices and the edges of . When , the upper envelope of N triangles in can be computed in time, and the size of the upper envelope is also []. When , the number of vertices and the edge in the upper envelope of N simplices is for any , and they can be computed in expected time [].
We conclude this section with the following theorem, which analyzes the time and space complexities of finding the optimal translation vector.
Theorem 2.
Let P and Q be two -monotone polytopes in for , such that and have n and m vertices, respectively. The optimal placement of Q on top of P which minimizes the height of the stack can be computed in time using space for , and in expected time and space for .
Proof.
First, we consider the case when . The union C consists of triangles, so can be computed in time using space. We find the vertices and edges of by checking whether each vertex or edge of lies above . The number of vertices and edges of is , and this checking can be performed in time after an -time preprocessing step using space. Therefore, we can find the optimal translation vector in time using space.
When , the union C consists of many -simplices, and we compute the vertices and edges of in expected time and space. The number of vertices and edges of is , and we can check whether each vertex or edge of lies above in time after an -time preprocessing step using space. Therefore, we can find the optimal translation vector in expected time and space. □
4. Minimizing Scoring Criterion (2)
In this section, we demonstrate how to find the translation vector that minimizes the scoring criterion .
4.1. The Case When
When is placed on top of P for , measures the maximum pointwise vertical distance between and , which is realized by a vertex–edge pair , where and , or vice versa. See Figure 3 as an example.

Figure 3.
All vertex–edge pairs are depicted with arrows. The black arrow corresponds to the maximum distance.
Let denote the set of vertex–edge pairs that need to be considered to compute . We will refer to as the combinatorial structure of t. Since each vertex of and can be part of at most two pairs, the size of is .
We subdivide into based on whether the combinatorial structure are the same. For a vertex v of , the set of vectors such that is . If we subdivide using the projection of , we have for any two vectors t and chosen from two different intervals. Since the projection of is a translated copy of , is divided into intervals. By applying the same argument to every vertex of and , consists of intervals, and can be computed in time.
For each interval s of , we find a vector that minimizes . For a vertex–edge pair where and , the set of all vectors is such that forms a segment . Moreover, for any vector lying above , also lies above e and the vertical distance between and is the same as the vertical distance between and e. See Figure 4. Similarly, for a vertex–edge pair where and , any vector lying above makes v lie below , and the vertical distance between and is the same as the vertical distance between v and .

Figure 4.
(left,middle) The pairs and have the same geometric configuration. (right) The red arrow is the minimum pointwise vertical distance between and .
Let be a set of all segments computed as above for every pair in for , and let and be the upper and lower envelopes of on s, respectively. From the same argument of Lemma 1, we observe . Moreover, the scoring criterion is the same as the vertical distance between and . Therefore, the vector that minimizes the scoring criterion also minimizes the pointwise vertical distance between and . See Figure 4.
Let be the endpoints of the interval s. See every edge in that intersects the vertical lines and . This implies that (resp. ) is a convex (resp. concave) piecewise linear curve of complexity. Hence, we could find in time using binary search, once we compute and .
Observe that the combinatorial structures corresponding to adjacent intervals in have only different pairs. Herschberger and Suri [] proposed an algorithm maintains the convex hull throughout the process of updating points in . More specifically, given an insert/delete sequence of points of length N, their algorithm maintains the convex hull using time and space. With the point-line duality [], we can maintain the upper and lower envelopes for a updating sequence of lines. We scan the intervals in from left to right, and compute the updating sequence of lines of length , which corresponds to the changes in . By applying [], we compute and corresponding to each interval s in in a total of time.
We conclude this section with the following theorem, which analyzes the time and space complexities of finding the optimal translation vector.
Theorem 3.
Let P and Q be two y-monotone polygons in , such that and have n and m vertices, respectively. The optimal placement of Q on top of P which minimizes the maximum pointwise vertical distance between and can be computed in time using space.
Proof.
We subdivide into , such that the translation vectors belonging to the same interval of have the same combinatorial structure. This can be performed in time, and the size of is . The size of the combinatorial structure corresponding to an interval s of is , so the sizes of and are .
The vector that minimizes the vertical distance between and can be computed in time by applying binary searches on and .
When scanning the intervals in sequentially, we can maintain and in total time. Therefore, we can find the optimal translation vector in time using space. □
4.2. The Case When
Similarly to the case when , we calculate the subdivision of such that remains the same for vectors t in a cell. Next, by traversing each cell of , we update and solve a linear programming problem to find the vector in the cell that minimizes .
When is placed on top of P for , the maximum pointwise vertical distance and is realized by a pair , such that is an i-face of and is a -face of for and lies above . Therefore, becomes the set of pairs that need to be considered to compute for a vector .
We calculate the subdivision of based on whether remains the same. changes when a vertex of starts or stops intersecting a face of , or vice versa. Therefore, is the intersection of with the overlay of m translated copies of and n translated copies of . Note that and are triangulations of complexity and , respectively []. Furthermore, is the set of translation vectors that place every vertex of inside , so can be described as common intersection of half-spaces in . Hence, has a complexity of , and can be computed in time [,]. When , we could apply more efficient algorithm in [], and compute with time and space.
Let s be a cell in . For a vector , the size of is , since the number of faces in and is and , respectively. Let be a pair of . The set of vectors that make and intersect is . Among these vectors, let denotes the set of vectors whose projection onto the plane lies in s. Let be the union of for all pairs in , and the upper and lower envelope of be and , respectively. Same as the case when , and the optimal vector of that minimizes realizes the minimum pointwise vertical distance between and .
However, for dimensions , cannot be found through a simple binary search. For a pair in , consider the -dimensional points , where and , such that is the vertical distance between and . The set of points forms (a part of) a -dimensional hyperplane. From the upper envelope of the hyperplanes formed for all pairs in and , many additional hyperplanes that make lie above , and the point with the smallest -coordinate corresponds to the optimal vector . Matoušek and Schwarzkopf [] presented an algorithm for N hyperplanes in such that, after preprocessing time, one can insert or delete a hyperplane and find the point with the smallest -coordinate in time for a constant . By traversing cells in , we update hyperplanes and find the optimal vector in each cell in time. When , the size of is , and we find the optimal vector in s in time.
We conclude this section with the following theorem, which analyzes the time and space complexities of finding the optimal translation vector.
Theorem 4.
Let P and Q be two -monotone polytopes in for , such that and have n and m vertices, respectively. For a constant , the optimal placement of Q on top of P which minimizes the maximum pointwise vertical distance that can be computed in time using space for , and in time and space for .
Proof.
We subdivide into , such that the translation vectors belonging to the same cell of have the same combinatorial structure. When , this can be performed in time and space, and when , it can be performed in time and space.
The size of the combinatorial structure corresponding to a cell s of is , and we find the optimal translation vector in s by solving a linear programming problem in with constraints.
When traversing the cells in sequentially, using a data structure that supports the insertion and deletion of the constraints, we find the optimal translation vector in s in time when or time when . Therefore, we can find the optimal translation vector in time using space for , and in time and space for . □
5. Minimizing Scoring Criterion (3)
In this section, we demonstrate how to find the translation vector that minimizes the scoring criterion .
5.1. The Case When
When is placed on top of P for , the scoring criterion measures the sum of the area between pairs of edges , such that , and lies above . Let denotes the set of edge pairs that need to be considered to compute . We subdivide into based on whether the combinatorial structure are the same. As in Section 4.1, is defined as the overlay of m translated copies of and m translated copies of . Therefore, can be computed in time and space. Also, the size of is .
As we did in Section 4.1, we can sequentially compute corresponding to the intervals s of in time and space. Let u be a segment of . For vectors , the area between and can be expressed as a constant degree polynomial. See Figure 5 as an example. Therefore, the area between and can also be expressed as a constant degree polynomial. Consequently, the vector in u that minimizes the area between and can be found in time using a numerical method. The total number of segments in that apply this method is bounded by the complexity of , which is .

Figure 5.
lies above , and where is the left endpoint of . The volume between and is .
We conclude this section with the following theorem, which analyzes the time and space complexities of finding the optimal translation vector.
Theorem 5.
Let P and Q be two y-monotone polygons in , such that and have n and m vertices, respectively. The optimal placement of Q on top of P which minimizes the volume between and can be computed in time using space.
Proof.
We subdivide into , such that the translation vectors belonging to the same interval of have the same combinatorial structure. This can be performed in time, and the size of is . The size of the combinatorial structure corresponding to an interval s of is , so the sizes of is .
For an interval s of , the vector that minimizes the volume between and can be computed in time, once we have the function corresponding to the volume between and .
When scanning the intervals in sequentially, we compute for the first interval of and the volume function for the first segment of in time. For the remaining intervals, we can maintain and the volume function in total time. Therefore, we can find the optimal translation vector in time using space. □
5.2. The Case When
Similarly to the case when , we calculate the subdivision of such that remains the same. Next, by traversing each cell s in , we compute on s and find the vector minimizing the volume between and .
When is placed on top of P for , the scoring criterion measures the sum of the area between pairs of -faces , such that , and lies above . Let denotes the set of -face pairs that need to be considered to compute . We subdivide into based on whether the combinatorial structure are the same. As we did in Section 4.2, is defined as the overlay of m translated copies of and m translated copies of within . Hence, has a complexity of , and can be computed in time [,] for , and time and space [] for .
For a cell s in , consider the pair in for . For any face k in the triangulation of , the volume between and for can be expressed as a constant degree polynomial. Therefore, the volume between and can also be expressed as a constant degree polynomial, and the vector in k that minimizes the volume can be calculated in time using numerical methods. Since is the upper envelope on s of hyperplanes in corresponding to the i-face and -face pairs of and , it can be computed in time []. Similarly, the triangulation of s can be computed within the same time and space complexity.
We conclude this section with the following theorem, which analyzes the time and space complexities of finding the optimal translation vector.
Theorem 6.
Let P and Q be two -monotone polygons in for , such that and have n and m vertices, respectively. The optimal placement of Q on top of P which minimizes the volume between and can be computed in time and space.
Proof.
We subdivide into , such that the translation vectors belonging to the same cell of have the same combinatorial structure. This can be performed in time and space. The size of the combinatorial structure corresponding to a cell s of is . Hence, we can compute the graph in time.
For a face k in , we can find the optimal translation vector in k in time, once we have the function corresponding to the volume between and for . The volume function can be computed in time for the first face of , and then updated in time along any (continuous) traversal order of the faces of from . Therefore, we can find the optimal translation vector in time and space. □
6. Discussion and Conclusions
In this paper, we propose algorithms to find the optimal location of Q on top of P under three different scoring criteria. The proposed algorithms are based on a detailed analysis of the geometric configurations and the careful application of suitable data structures. More specifically, the vector minimizing is computed by finding the point with the minimum -coordinate in the graph . To find the vector minimizing , we first subdivide into such that the combinatorial structure remains the same in a cell of . Then, we find the optimal vector in s by solving a linear programming (LP) problem, and we also improve the time complexity by applying data structures that support constraint updates, leveraging the similarity of the LP problems corresponding to each cell. To find the vector minimizing , we use the same subdivision as in the case for . For each cell , the volume function between and for is expressed as a constant degree polynomial when is restricted in a face of that has non-zero volume. Hence, we explicitly compute and find the optimal vector in each face of using numerical methods.
We expect that a careful implementation of the algorithm proposed in this paper can be applied to various real-world applications. Additionally, if the input polytope is composed of triangles that satisfy conditions such as “fat” [], we anticipate that the calculation of the optimal stacking can be performed more efficiently in practice than the worst-case analysis presented in this paper.
Future research may extend to cases where and are non-convex, where P and Q are not -monotone, where P and Q have symmetry, or where both translation and rotation are considered. We expect that the algorithms presented in this paper will serve as a solid baseline for these diverse follow-up studies.
Author Contributions
Conceptualization, methodology and writing: H.-K.A., S.J.L. and S.D.Y.; Writing—review and editing: S.D.Y. All authors have read and agreed to the published version of the manuscript.
Funding
Sang Duk Yoon was supported by the Sungshin Women’s University Research Grant of H20200060.
Data Availability Statement
Data are contained within the article.
Conflicts of Interest
The authors declare no conflicts of interest.
References
- Kepler, J. The Six-Cornered Snowflake; Paul Dry Books: Philadelphia, PA, USA, 2010. [Google Scholar]
- Paterson, M.; Peres, Y.; Thorup, M.; Winkler, P.; Zwick, U. Maximum overhang. Am. Math. Mon. 2009, 116, 763–787. [Google Scholar] [CrossRef]
- Lee, S.J. Efficient Algorithms for Stacking Polytopes. Master’s Thesis, Pohang University of Science and Technology, Pohang, Republic of Korea, 2019. [Google Scholar]
- Ahn, H.K.; Abardia, J.; Bae, S.W.; Cheong, O.; Dann, S.; Park, D.; Shin, C.S. The minimum convex container of two convex polytopes under translations. Comput. Geom. 2019, 77, 40–50. [Google Scholar] [CrossRef]
- Egeblad, J.; Nielsen, B.K.; Brazil, M. Translational packing of arbitrary polytopes. Comput. Geom. 2009, 42, 269–288. [Google Scholar]
- Trivella, A.; Pisinger, D. Bin-Packing Problems with Load Balancing and Stability Constraints. In Proceedings of the INFORMS Transportation and Logistics Society, Chicago, IL, USA, 26–29 July 2017. [Google Scholar]
- Casko, J.S.; Vaden, J.L.; Kokich, V.G.; Damone, J.; James, R.D.; Cangialosi, T.J.; Riolo, M.L.; Owens, S.E.; Bills, E.D. Objective grading system for dental casts and panoramic radiographs. Am. J. Orthod. Dentofac. Orthop. 1998, 114, 589–599. [Google Scholar] [CrossRef] [PubMed]
- Hershberger, J. Finding the upper envelope of n line segments in O(n log n) time. Inf. Process. Lett. 1989, 33, 169–174. [Google Scholar] [CrossRef]
- McMullen, P. The maximum numbers of faces of a convex polytope. Mathematika 1970, 17, 179–184. [Google Scholar] [CrossRef]
- Berg, M.; Cheong, O.; Kreveld, M.; Overmars, M. Computational Geometry: Algorithms and Applications; Springer Science & Business Media: Berlin/Heidelberg, Germany, 2000. [Google Scholar]
- Dobkin, D.P.; Kirkpatrick, D.G. A linear algorithm for determining the separation of convex polyhedra. J. Algorithms 1985, 6, 381–392. [Google Scholar] [CrossRef]
- Dobkin, D.P.; Kirkpatrick, D.G. Determining the separation of preprocessed polyhedra—A unified approach. In International Colloquium on Automata, Languages, and Programming; Springer: Berlin/Heidelberg, Germany, 1990; pp. 400–413. [Google Scholar]
- Edelsbrunner, H.; Guibas, L.J.; Sharir, M. The upper envelope of piecewise linear functions: Algorithms and applications. Discret. Comput. Geom. 1989, 4, 311–336. [Google Scholar] [CrossRef]
- Agarwal, P.K.; Aronov, B.; Sharir, M. Computing envelopes in four dimensions with applications. In Proceedings of the Tenth Annual Symposium on Computational Geometry, Stony Brook, NY, USA, 6–8 June 1994; pp. 348–358. [Google Scholar]
- Herschberger, J.; Suri, S. Offline maintenance of planar configurations. In Proceedings of the Second Annual ACM-SIAM Symposium on Discrete Algorithms, San Francisco, CA, USA, 28–30 January 1991; pp. 32–41. [Google Scholar]
- Clarkson, K.L. New applications of random sampling in computational geometry. Discret. Comput. Geom. 1987, 2, 195–222. [Google Scholar] [CrossRef][Green Version]
- Edelsbrunner, H.; O’Rourke, J.; Seidel, R. Constructing arrangements of lines and hyperplanes with applications. Siam J. Comput. 1986, 15, 341–363. [Google Scholar] [CrossRef]
- Balaban, I.J. An optimal algorithm for finding segments intersections. In Proceedings of the Eleventh Annual Symposium on Computational Geometry, Vancouver, BC, Canada, 5–7 June 1995; pp. 211–219. [Google Scholar]
- Matoušek, J.; Schwarzkopf, O. Linear optimization queries. In Proceedings of the Eighth Annual Symposium on Computational Geometry, Berlin, Germany, 10–12 June 1992; pp. 16–25. [Google Scholar]
- Chazelle, B. An optimal convex hull algorithm in any fixed dimension. Discret. Comput. Geom. 1993, 10, 377–409. [Google Scholar] [CrossRef]
- Moet, E.; van Kreveld, M.; der Stappen, A.F.v. On realistic terrains. Comput. Geom. 2008, 41, 48–67. [Google Scholar] [CrossRef][Green Version]
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content. |
© 2024 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).