Polygons with Prescribed Angles in 2D and 3D
PPolygons with Prescribed Angles in 2D and 3D ∗ Alon Efrat, Radoslav Fulek, Stephen Kobourov, Csaba D. T´oth
Abstract
We consider the construction of a polygon P with n vertices whose turning angles at the vertices aregiven by a sequence A = ( α , . . . , α n − ), α i ∈ ( − π, π ), for i ∈ { , . . . , n − } . The problem of realizing A by a polygon can be seen as that of constructing a straight-line drawing of a graph with prescribed anglesat vertices, and hence, it is a special case of the well studied problem of constructing an angle graph .In 2D, we characterize sequences A for which every generic polygon P ⊂ R realizing A has at least c crossings, for every c ∈ N , and describe an efficient algorithm that constructs, for a given sequence A , ageneric polygon P ⊂ R that realizes A with the minimum number of crossings. In 3D, we describe anefficient algorithm that tests whether a given sequence A can be realized by a (not necessarily generic)polygon P ⊂ R , and for every realizable sequence the algorithm finds a realization. ————————————————– Straight-line realizations of graphs with given metric properties have been one of the earliest applications ofgraph theory. Rigidity theory, for example, studies realizations of graphs with prescribed edge lengths, butalso considers a mixed model where the edges have prescribed lengths or directions [4, 13, 14, 15, 22]. Inthis paper, we extend research on the so-called angle graphs , introduced by Vijayan [28] in the 1980s, whichare geometric graphs with prescribed angles between adjacent edges. Angle graphs found applications inmesh flattening [30], and computation of conformal transformations [8, 23] with applications in the theoryof minimal surfaces and fluid dynamics.Viyajan [28] characterized planar angle graphs under various constraints, including the case when thegraph is a cycle [28, Theorem 2] and when the graph is 2-connected [28, Theorem 3]. In both cases, thecharacterization leads to an efficient algorithm to find a planar straight-line drawing or report that noneexists. Di Battista and Vismara [6] showed that for 3-connected angle graphs (e.g., a triangulation), planaritytesting reduces to solving a system of linear equations and inequalities in linear time. Garg [10] proved thatplanarity testing for angle graphs is NP-hard, disproving a conjecture by Viyajan. Bekos et al. [2] showedthat the problem remains NP-hard even if all angles are multiples of π/ ∗ Research on this paper is supported, in part, by NSF grants CCF-1740858, CCF-1712119, DMS-1800734, and DMS-1839274. a r X i v : . [ c s . C G ] N ov n R without self-intersections with axis-parallel edges of given directions. Patrignani [21] showed thatrecognizing crossing-free realizability is NP-hard for graphs of maximum degree 6 in this setting.Throughout the paper we assume modulo n arithmetic on the indices, and use ⟨ ., . ⟩ scalar productnotation. Angle sequences in 2-space.
In the plane, an angle sequence A is a sequence ( α , . . . , α n − ) of realnumbers such that α i ∈ ( − π, π ) for all i ∈ { , . . . , n − } . Let P ⊂ R be an oriented polygon with n vertices v , . . . , v n − that appear in the given order along P , which is consistent with the given orientation of P .The turning angle of P at v i is the angle in ( − π, π ) between the vector v i − v i − and v i +1 − v i . The sign ofthe angle is positive if a rotation of the plane that maps the vector v i − v i − to the positive direction of the x -axis, makes the y -coordinate of v i +1 − v i positive. Otherwise, the angle nonpositive; see Fig. 1. α i < α i > v i v i Figure 1: A negative, or right, (on the left) and a positive, or left, (on the right) turning angle α i at thevertex v i of an oriented polygon.The oriented polygon P realizes the angle sequence A if the turning angle of P at v i is equal to α i , for i = 0 , . . . , n −
1. A polygon P ⊂ R is generic if all its self-intersections are transversal (that is, propercrossings), vertices of P are distinct points, and no vertex of P is contained in a relative interior of an edgeof P . Following the terminology of Viyajan [28], an angle sequence A = ( α , . . . , α n − ) is consistent if thereexists a generic polygon P with n vertices realizing A . For a polygon P that realizes an angle sequence A = ( α , . . . , α n − ) in the plane, the total curvature of P is TC( P ) = ∑︁ n − i =0 α i , and the turning number (also known as rotation number ) of P is tn( P ) = TC( P ) / (2 π ), where tn( P ) ∈ Z [25]. Therefore a necessarycondition for the consistency of an angle sequence is that ∑︁ n − i =0 α i ≡ π ). This condition is alsosufficient except for the case when ∑︁ n − i =0 α i = 0. We give a sufficient condition in all cases in the nextparagraph to complete the characterization of consistent angle sequences.Let β i = ∑︁ ij =0 α j mod 2 π , and let u i ∈ R be the unit vector (cos β i , sin β i ) for i = 0 , . . . , n − A is consistent if and only if ∑︁ n − i =0 α i ≡ π ) and is astrictly positive convex combination of vectors u i , that is, there exist scalars λ , . . . , λ n − > ∑︁ n − i =0 λ u i = and ∑︁ n − i =0 λ i = 1. We use this characterization, in the proof of Theorem 1 stated below.The crossing number , denoted by cr( P ), of a generic polygon is the number of self-crossings of P . The crossing number of a consistent angle sequence A is the minimum integer c , denoted by cr( A ), such thatthere exists a generic polygon P ∈ R realizing A with cr( P ) = c . Our first main results is the followingtheorem. Theorem 1.
For a consistent angle sequence A = ( α , . . . , α n − ) in the plane, we have cr( A ) = {︄ if ∑︁ n − i =0 α i = 0 , | k | − if ∑︁ n − i =0 α i = 2 kπ and k ̸ = 0 . The proof of Theorem 1 can be easily converted into a weakly linear-time algorithm that constructs,for a given consistent sequence A , a generic polygon P ⊂ R that realizes A with the minimum number ofcrossings. 2 ngle sequences in 3-space and spherical polygonal linkages. In R d , d ≥
3, the sign of a turningangle no longer plays a role: The turning angle of an oriented polygon P at v i is in (0 , π ), and an anglesequence A = ( α , . . . , α n − ) is in (0 , π ) n . The unit-length direction vectors of the edges of P determine aspherical polygon P ′ in S d − . Note that the turning angles of P correspond to the spherical lengths of thesegments of P ′ . It is not hard to see that this observation reduces the problem of realizability of A by apolygon in R d to the problem of realizability of A by a spherical polygon in S d − , in the sense defined below,that additionally contains the origin in the interior of its convex hull.Let S ⊂ R denote the unit 2-sphere. A great circle C ⊂ S is the intersection of S with a 2-dimensionalhyperplane in R containing . A spherical line segment is a connected subset of a great circle that doesnot contain a pair of antipodal points of S . The length of a spherical line segment ab equals the measureof the central angle subtended by ab . A spherical polygon P ⊂ S is a closed curve consisting of finitelymany spherical segments; and a spherical polygon P = ( u , . . . , u n − ), u i ∈ S , realizes an angle sequence A = ( α , . . . , α n − ) if the spherical segment ( u i − , u i ) has (spherical) length α i , for i = 0 , . . . , n −
1. Asusual, the turning angle of P at u i is the angle in [0 , π ] between the tangents to S at u i that are co-planarwith the great circles containing ( u i , u i +1 ) and ( u i , u i − ). Unlike for polygons in R and R , we do not putany constraints on turning angles of spherical polygons (i.e., angles 0 and π are allowed).Regarding realizations of A by spherical polygons, we prove the following. Theorem 2.
Let A = ( α , . . . , α n − ) , n ≥ , be an angle sequence. There exists a polygon P ⊂ R realizing A if and only if ∑︁ n − i =0 α i ≥ π and there exists a spherical polygon P ′ ⊂ S realizing A . Furthermore, P canbe constructed efficiently if P ′ is given. Theorem 3.
There exists a constructive weakly polynomial-time algorithm to test whether a given anglesequence A = ( α , . . . , α n − ) can be realized by a spherical polygon P ′ ⊂ S . A simple exponential-time algorithm for realizability of angle sequences by spherical polygons followsfrom a known characterization [3, Theorem 2.5], which also implies that the order of angles in A does notmatter for the spherical realizability. The topology of the configuration spaces of spherical polygonal linkageshave also been studied [16]. Independently, Streinu et al. [20, 24] showed that the configuration space of noncrossing spherical linkages is connected if ∑︁ n − i =0 α i ≤ π . However, these results do not seem to helpprove Theorem 3.The combination of Theorems 2 and 3 yields our second main result. Theorem 4.
There exists a constructive weakly polynomial-time algorithm to test whether a given anglesequence A = ( α , . . . , α n − ) can be realized by a polygon P ⊂ R . Our methods directly generalize from R to R d for any integer d ≥
3. It turns out that higher dimensionsdo not translate to more realizable angle sequences. In particular, an angle sequence is realizable by apolygon in R d , d ≥
3, if and only if it is realizable in R . We restrict ourselves to 2D and 3D in this paper. Organization.
We prove Theorem 1 in Section 2 and Theorems 2, 3, and 4 in Section 3. We showin Section 4 that self-intersections are unavoidable in 3D if all realizations of an angle sequence are 2-dimensional. We finish with concluding remarks in Section 5.
The first part of the following lemma gives a folklore necessary condition for the consistency of an anglesequence A in the plane. The condition is also sufficient except when k = 0. The second part follows from aresult of Gr¨unbaum and Shepard [11, Theorem 6], using a decomposition due to Wiener [29]. We provide aproof for the sake of completeness. Lemma 1.
If an angle sequence A = ( α , . . . , α n − ) is consistent, then ∑︁ n − i =0 α i = 2 kπ for some k ∈ Z ,and cr( A ) ≥ | k | − . P (cid:48) P (cid:48)(cid:48) α − α Figure 2: Splitting an oriented closed polygon P at a self-crossing point into 2 oriented closed polygons P ′ and P ′′ such that tn( P ) = tn( P ′ ) + tn( P ′′ ). cP (cid:48) P (cid:48)(cid:48) P Figure 3: Constructing a polygon P with | tn( P ) | − Proof.
Since A is consistent, ∑︁ n − i =0 α i = 2 kπ for some k ∈ Z , where k = tn( P ) is the turning number of anygeneric realization P of the angle sequence A . We prove by induction on cr( A ) that cr( A ) ≥ | k | − A ) = 0. Let P be a generic realization of A such that cr( P ) = 0. Then P is asimple polygon with n vertices. The internal angles of a simple n -gon sum up to ( n − π . The internal angle of P at vertex v i is π − α i or π + α i , depending on the orientation of P . Thus ( n − π = ∑︁ n − i =0 ( π − α i ) = ( n − k ) π or ( n − π = ∑︁ n − i =0 ( π + α i ) = ( n + 2 k ) π . Both cases yield | ∑︁ n − i =0 α i | = 2 π , hence | tn( P ) | = k = 1 and theclaim follows.In the inductive step, we have cr( A ) ≥
1. Let P be a generic realization of A such that cr( A ) = cr( P );refer to Fig. 2. By splitting P at a self-crossing, we obtain a pair of closed polygons P ′ and P ′′ such thattn( P ) = tn( P ′ ) + tn( P ′′ ). Since cr( P ′ ) < cr( P ) and cr( P ′′ ) < cr( P ), induction yields cr( P ) = 1 + cr( P ′ ) +cr( P ′′ ) ≥ | tn( P ′ ) | − | tn( P ′′ ) | − ≥ | tn( P ) | −
1, as required.The following lemma shows that the lower bound in Lemma 1 is tight when α i > i ∈ { , . . . , n − } . Lemma 2. If A = ( α , . . . , α n − ) is an angle sequence such that ∑︁ n − i =0 α i = 2 kπ , k ̸ = 0 , and α i > for all i , then cr( A ) ≤ | k | − .Proof. Refer to Fig. 3. In three steps, we construct a polygon P realizing A with | tn( P ) | − A ) ≤ | k | − | tn( P ) | −
1. In the first step, we construct an oriented self-crossing-freepolygonal line P ′ with n + 2 vertices, whose first and last (directed) edges are parallel to the positive x -axis,and whose internal vertices have turning angles α , . . . , α n − in this order. We construct P ′ incrementally:The first edge has unit length starting from the origin; and every successive edge lies on a ray emanatingfrom the endpoint of the previous edge. If the ray intersects neither the x -axis nor previous edges, then letthe next edge have unit length, otherwise its length is chosen to avoid any such intersection.Let S ′ be the last (directed) edge of P ′ , and let ℓ be the (horizontal) supporting line of S ′ . Since α i > i , the non-horizontal portions of P ′ can be partitioned into 2 k maximal y -monotone paths: k increasingand k decreasing paths. By construction, these paths are pairwise non-crossing, their y -extents, that is, theprojections to the y -axis, are pairwise nested intervals, where each interval contains subsequent intervals.Consequently, ℓ intersects all 2 k y -monotone paths. In particular, it crosses k increasing paths to the rightof S ′ , and meets all k decreasing path at or to the left of S ′ .In the second step, extend S ′ to the right until its rightmost intersection point c with a y -monotoneincreasing path of P ′ ; and denote by P ′′ the resulting closed polygon composed of the part of P ′ from c to c S ′ . Note that P ′′ has k − S ′ crosses P ′ in k − P realizing A from P ′′ by a modification of P ′′ in a small neighborhoodof c without creating additional self-crossings. Specifically, we replace the neighborhood of c with a scaledcopy of the initial portion of P ′ between the first vertex of P ′ and c .To prove the upper bound in Theorem 1, it remains to consider the case that A = ( α , . . . , α n − ) containsboth positive and negative angles. The crucial notion in the proof is that of an (essential) sign change of A which we define next. Let β i = ∑︁ ij =0 α j mod 2 π for i = 0 , . . . , n −
1. Let v i ∈ R denote the unit vector(cos β i , sin β i ). Hence, v i is the direction vector of the ( i + 1)-st edge of an oriented polygon P realizing A if the direction vector of the first edge of P is (1 , ∈ R . By Garg’s observation [10, Section 6], theconsistency of A implies that is a strictly positive convex combination of vectors v i , that is, there existscalars λ , . . . , λ n − > ∑︁ n − i =0 λ v i = and ∑︁ n − i =0 λ i = 1.The sign change of A is an index i ∈ { , . . . , n − } such that α i · α i +1 <
0, where arithmetic on theindices is taken modulo n . Let sc( A ) denote the number of sign changes of A . Note that the number of signchanges of A is even. A sign change i ∈ { , . . . , n − } of a consistent angle sequence A is essential if isnot a strictly positive convex combination of { v , . . . , v i − , v i +1 , . . . , v n − } . Lemma 3. If A = ( α , . . . , α n − ) is a consistent angle sequence, where ∑︁ n − i =0 α i = 2 kπ , k ∈ Z , and all signchanges are essential, then cr( A ) ≤ ⃓⃓ | k | − ⃓⃓ .Proof. We distinguish between two cases depending on whether ∑︁ n − i =0 α i = 0. Case 1: ∑︁ n − i =0 α i = 0 . Since ∑︁ n − i =0 α i = 0, we have sc( A ) ≥
2. Since all sign changes are essential, for anytwo distinct sign changes i ̸ = j , we have v i ̸ = v j , therefore counting different vectors v i , where i is a signchange, is equivalent to counting essential sign changes.We show next that sc( A ) = 2. Suppose, to the contrary, that sc( A ) >
2. Since the number of signchanges in a cyclic sequence of signs is even, we have sc( A ) ≥
4. We observe that if v i corresponds to anessential sign change i , then there exists an open halfplane H i bounded by a line through the origin thatsuch that H i ∩ { v , . . . , v n − } = { v i } . Let i , j , i ′ , and j ′ be distinct essential sign changes such that v i , v j , v i ′ , and v i ′ are in cyclic order around the origin. Since H i and H i ′ contains neither v j nor v j ′ , then H i and H i ′ are disjoint, lying on opposite sides of a line, which necessarily contains both v j and v j ′ . In particular,we have v b = − v d . Analogously, we can show that v a = v d . Since j is an sign change, either H i or H i ′ contains both v j − and v j +1 . Thus there exists a fifth vector v k , which implies that one of i , i ′ , j , and j ′ isnot essential (contradiction).Assume w.l.o.g. that the only two sign changes are j and n −
1, for some j ∈ { , . . . , n − } . We claim that v j ̸ = − v n − . Suppose, to the contrary, that v j = − v n − . Since both sign changes are essential, all vectors v i , other than v j and v n − , are outside of H j ∪ H n − . If H j ∩ H n − ̸ = ∅ , then these vectors are an openhalf-plane bounded by the line through v j and − v n − . However, then is not a strict convex combinationof the vectors { v , . . . , v n − , contradicting the consistency of A . Hence we may assume that H j and H n − are disjoint, and they lie on opposite sides of a line through the origin. Due to the consistency of A , thereexists a pair { i, i ′ } such that v i = − v i ′ . However, j and n − ℓ such that v ℓ ̸ = ± v i (contradiction). λ n − v n − λ j v j λ v v n − v j v v j − λ j − v j − λ j +1 v j +1 λ n − v n − Figure 4: The case of exactly 2 sign changes j and n −
1, both of which are essential, when ∑︁ n − i =0 α i = 0.Both missing parts of the polygon on the left are convex chains.5e may assume that v j and v n − are not collinear, and that the remaining vectors v i belong to theclosed convex cone bounded by − v j and − v n − ; refer to Fig. 4. Thus, we may assume that (i) β n − = 0,(ii) the sign changes of A are j and n −
1, and (iii) 0 < β < . . . < β j and β j > β j +1 > . . . > β n − = 0.Now, realizing A by a generic polygon with exactly 1 crossing between the line segments in the direction of v j and v n − is a simple exercise. Case 2: ∑︁ n − i =0 α i ̸ = 0 . We show that, unlike in the first case, none of the sign changes of A can be es-sential. Indeed, suppose j is an essential sign change, and let A ′ = ( α ′ , . . . , α ′ n − ) = ( α , . . . , α j − , α j + α j +1 , . . . , α n − ) and β ′ i = ∑︁ ij =0 α ′ j mod 2 π . Consider the unit vectors v ′ , . . . , v ′ n − , where v ′ i = (cos β ′ i , sin β ′ i ).Since j is an essential sign change, there exists a nonzero vector v such that ⟨︁ v , v j ⟩︁ > ⟨︁ v , v ′ i ⟩︁ ≤ i . Hence, by symmetry, we may assume that 0 ≤ β ′ i ≤ π , for all i . Since j is a sign change, we have − π < α ′ i < π for all i , consequently β ′ j = ∑︁ ji =0 α ′ i mod 2 π = ∑︁ ji =0 α ′ i , which in turn implies, by Lemma 1,that 0 = β ′ n − = ∑︁ n − i =0 α ′ i = ∑︁ n − i =0 α i (contradiction).We have shown that A has no sign changes. By Lemma 2, we have cr( A ) ≤ | k | −
1, which concludes theproof.
Theorem 1.
For a consistent angle sequence A = ( α , . . . , α n − ) in the plane, we have cr( A ) = {︄ if ∑︁ n − i =0 α i = 0 , | k | − if ∑︁ n − i =0 α i = 2 kπ and k ̸ = 0 . Proof.
The claimed lower bound cr( A ) ≥ ⃓⃓ | k | − ⃓⃓ on the crossing number of A follows by Lemma 1, in thecase when k ̸ = 0, and the result of Viyajan [28, Theorem 2] in the case when k = 0. It remains to prove theupper bound cr( A ) ≤ ⃓⃓ | k | − ⃓⃓ .We proceed by induction on n . In the base case, we have n = 3. Then P is a triangle, ∑︁ i =0 α i = ± π ,and cr( A ) = 0, as required. In the inductive step, assume n ≥
4, and that the claim holds for all shorterangle sequences. Let A = ( α , . . . , α n − ) be an angle sequence with ∑︁ n − i =0 α i = 2 kπ .If A has no sign changes or if all sign changes are essential, then Lemma 2 or Lemma 3 completes theproof. Otherwise, there is at least one nonessential sign change. Let s ∈ { , . . . , n − } be a nonessentialsign change and let A ′ = ( α ′ , . . . , α ′ n − ) = ( α , . . . , α s − , α s + α s +1 , . . . , α n − ). Note that ∑︁ n − i =0 α ′ i = 2 kπ .We eliminate α s + α s +1 from A ′ if it is equal to 0. Since the sign change s is nonessential, is a strictlypositive convex combination of { β ′ , . . . , β ′ n − } , where β ′ i = ∑︁ ij =0 α ′ j mod 2 π for i = 0 , . . . , n −
2. Indeed,this follows from the fact that β ′ i = β i , for i < s , and β ′ i = β i +1 , for i ≥ s .By the induction hypothesis, we obtain a realization of A ′ as a generic polygon P ′ with ⃓⃓ | k | − ⃓⃓ crossings.Let v be a vertex of P ′ corresponding to α s + α s +1 , which is incident to sides S ′ s − and S ′ s of P ′ parallel tovectors v s − = v ′ s − and v s +1 = v ′ s . We construct a generic polygon realizing A by modifying P in a smallneighborhood of v without introducing crossings, similarly to the method developed by Guibas et al. [12]as follows. If α s + α s +1 = 0, then α s + α s +1 is eliminated from the sequence A ′ . We define v as a vertexcorresponding to α s +2 in this case. λ (cid:48) s − v (cid:48) s − λ (cid:48) s v (cid:48) s λ s +1 v s + α s α s +1 α s + α s +1 vS (cid:48) s − S (cid:48) s v = a S s λ s − v s − bc ∆ Figure 5: Re-introducing the s -th vertex to the polygon P ′ realizing A ′ in order to obtain a polygon P realizing A when α s + α s +1 ̸ = 0.First, we consider the case that α s + α s +1 ̸ = 0. Assume w.l.o.g. that α s and α s + α s +1 have the samesign; refer to Fig. 5. Then there exists a triangle ∆ = ∆( abc ) such that ab⃗ , bc⃗ , and ca⃗ are positive multiples6f v s − = v ′ s − , v s , and − v s +1 = − v ′ s , respectively. By a suitable translation, we may assume that a = v ;and by a suitable scaling, we may assume that ∆ is disjoint from all sides of P ′ other than S ′ s − and S ′ s .Then we construct P from P ′ as follows. We extend S ′ s − beyond v = a with segment ab , insert a new side bc , and shorten S ′ s by removing segment ac = vc . λ (cid:48) s − v (cid:48) s − λ (cid:48) s v (cid:48) s v λ s − v s − α s +2 α s +2 α s +1 α s ∆ v = abc dλ s +2 v s + Figure 6: Re-introducing the s -th and ( s + 1)-st vertex to the polygon P ′ realizing A ′ in order to obtain apolygon P realizing A when α s + α s +1 = 0.It remains to consider the case that α s + α s +1 = 0. Assume w.l.o.g. that α s and α s +2 have the samesign; refer to Fig. 6. Then there exists a trapezoid ∆ = ∆( abcd ) such that ab⃗ , bc⃗ , cd⃗ , and da⃗ are positivemultiples of − v s − = − v ′ s − , v s , v s +1 = v ′ s − , and − v s +2 = − v ′ s , respectively. By a suitable translation,we may assume that a = v ; and by a suitable scaling, we may assume that ∆ is disjoint from all sides of P ′ other than S ′ s − and S ′ s . Then we construct P from P ′ as follows. We shorten S ′ s − by removing segment ab = vb , insert two new sides bc and cd , and shorten S ′ s by removing segment da = dv . In this section, we describe a polynomial-time algorithm to decide whether an angle sequence A = ( α , . . . α n − ) ∈ (0 , π ) n can be realized as a polygon in R .We note that this problem is equivalent to solving a system of polynomial equations, where 3 n variablesdescribe the coordinates of the n vertices of P , and each of n equations is obtained by the cosine theoremapplied for a vertex and two incident edges of P . However, it is unclear how to solve such a system efficiently.By Fenchel’s theorem in differential geometry [9], the total curvature of a smooth curve in R d is at least2 π , and the curves with the total curvature equal to 2 π must be plane. Fenchel’s theorem has been adaptedto closed polygons [25, Theorem 2.4], and it gives the following a necessary condition for an angle sequence A to have a realization in R d , for all d ≥ n − ∑︂ i =0 α i ≥ π, (1)and if ∑︁ n − i =0 α i ≥ π , then any realization lies in a plane (an affine subspace of R d ). We show that a slightlystronger condition is both necessary and sufficient, hence it characterizes realizable angle sequences in R . Lemma 4.
Let A = ( α , . . . , α n − ) , n ≥ , be an angle sequence. There exists a polygon P ⊂ R realizing A if and only if there exists a spherical polygon P ′ ⊂ S realizing A such that ∈ relint(conv( P ′ )) (relativeinterior of conv( P ′ ) ). Furthermore, P can be constructed efficiently if P ′ is given.Proof. Assume that an oriented polygon P = ( v , . . . , v n − ) realizes A in R . Let u i = ( v i +1 − v i ) / ∥ v i +1 − v i ∥ ∈ S be the unit direction vector of the edge v i v i +1 of P according to its orientation. Then P ′ =( u , . . . , u n − ) is a spherical polygon that realizes A . Suppose, for the sake of contradiction, that is not inthe relative interior of conv( P ′ ). Then there is a plane H that separates and P ′ , that is, if n is the normalvector of H , then ⟨︁ n , u i ⟩︁ > i ∈ { , . . . , n − } . This implies ⟨︁ n , ( v i +1 − v i ) ⟩︁ > i , hence ⟨︁ n , ∑︁ n − i =1 ( v i +1 − v i ) ⟩︁ >
0, which contradicts the fact that ∑︁ n − i =1 ( v i +1 − v i ) = , and ⟨︁ n , ⟩︁ = 0.7onversely, assume that a spherical polygon P ′ realizes A , with edge lengths α , . . . , α n − >
0. If allthe vertices of P ′ lie on a common great circle, then ∈ relint(conv( P ′ )) implies ∑︁ n − i =0 ± α i = 0 mod 2 π ,where the sign is determined by the direction (cw. or ccw.) in which a particular segment of P ′ traversesthe common great circle according to its orientation. As observed by Garg [10, Section 6], the signed anglesequence is consistent in this case due to the assumption that ∈ relint(conv( P ′ )). Thus, we obtain arealization of A that is contained in a plane.Otherwise we may assume that ∈ int(conv( P ′ )). By Carath´eodory’s theorem [17, Thereom 1.2.3], P ′ has 4 vertices whose convex combination is the origin . Then we can express as a strictly positive convexcombination of all vertices of P ′ . The coefficients in the convex combination encode the lengths of the edgesof a polygon P realizing A , which concludes the proof in this case.We now show how to compute strictly positive coefficients in strongly polynomial time. Let c = n ∑︁ n − i =0 u i be the centroid of the vertices of P ′ . If c = , we are done. Otherwise, we can find a tetrahedron T = conv { u i , . . . , u i } such that ∈ T and such that the ray from in the direction − c intersects int( T ),by solving an LP feasibility problem in R . By computing the intersection of the ray with the faces of T ,we find the maximum µ > − µ c ∈ ∂T (the boundary of T ). We have − µ c = ∑︁ j =0 λ j u i j and ∑︁ j =0 λ j = 1 for suitable coefficients λ j ≥
0. Now = µ c − µ c = µn ∑︁ n − i =0 u i + ∑︁ j =0 λ j u i j is a strictlypositive convex combination of the vertices of P ′ .It is easy to find an angle sequence A that satisfies (1) but does not correspond to a spherical polygon P ′ . Consider, for example, A = ( π − ε, π − ε, π − ε, ε ), for some small ε >
0. Points in S at (spherical)distance π − ε are nearly antipodal. Hence, the endpoints of a polygonal chain ( π − ε, π − ε, π − ε ) are nearlyantipodal as well, and cannot be connected by an edge of (spherical) length ε . Thus a spherical polygoncannot realize A . Algorithms.
In the remainder of this section, we show how to find a realization P ⊂ R or report thatnone exists, in polynomial time. Our first concern is to decide whether an angle sequence is realizable by aspherical polygon. This is possible to do in a weakly polynomial-time. Theorem 3.
There exists a constructive weakly polynomial-time algorithm to test whether a given anglesequence A = ( α , . . . , α n − ) can be realized by a spherical polygon P ′ ⊂ S .Proof. Let A = ( α , . . . , α n − ) ∈ (0 , π ) n be a given angle sequence. Let n = (0 , , ∈ S , that is, n isthe north pole. For i ∈ { , , . . . , n − } , let U i ⊆ S be the locus of the end vertices u i of all (spherical)polygonal lines P ′ i = ( n , u , . . . , u i ) with edge lengths α , . . . , α i − . It is clear that A is realizable by aspherical polygon P ′ if and only if n ∈ U n − .Note that for all i ∈ { , . . . , n − } , the set U i is invariant under rotations about the z -axis, since n is afixed point and rotations are isometries. We show how to compute the sets U i , i ∈ { , . . . , n − } , efficiently.We define a spherical zone as a subset of S between two horizontal planes (possibly, a circle, a sphericalcap, or a pole). Recall the parameterization of S using spherical coordinates (cf. Figure 7 (left)): for every v ∈ S , v ( ψ, φ ) = (sin ψ sin φ, cos ψ sin φ, cos φ ), with longitude ψ ∈ [0 , π ) and polar angle φ ∈ [0 , π ], wherethe polar angle φ is the angle between v and n . Using this parameterization, a spherical zone is a Cartesianproduct [0 , π ) × I for some circular arc I ⊂ [0 , π ]. In the remainder of the proof, we associate each sphericalzone with such a circular arc I .We define additions and subtraction on polar angles α, β ∈ [0 , π ] by α ⊕ β = min { α + β, π − ( α + β ) } , α ⊖ β = max { α − β, β − α } ;see Figure 7 (right). (This may be interpreted as addition mod 2 π , restricted to the quotient space definedby the equivalence relation φ ∼ π − φ .)We show that U i is a spherical zone for all i ∈ { , . . . , n − } , and show how to compute the intervals I i ⊂ [0 , π ] efficiently. First note that U is a circle at (spherical) distance α from n , hence U is a sphericalzone with I = [ α , α ]. 8 ( ψ, ϕ ) ϕ ( v ) ψ ( v ) n ϕ ϕ + α i +1 ϕ (cid:9) α i +1 C i +1 ( ϕ ) ϕ ⊕ α i +1 Figure 7: Parametrization of the unit vectors (left). Circular arc C i +1 ( φ ) (right).Assume that U i is a spherical zone associated with I i ⊂ [0 , π ]. Let u i ∈ U i , where u i = v ( ψ, φ ) with ψ ∈ [0 , π ) and φ ∈ I i . By the definition U i , there exists a polygonal line ( n , u , . . . , u i ) with edge lengths α , . . . , α i . The locus of points in S at distance α i +1 from u i is a circle; the polar angles of the points inthe circle form an interval C i +1 ( φ ). Specifically (see Figure 7 (right)), we have C i +1 ( φ ) = [min { φ ⊖ α i +1 , φ ⊕ α i +1 } , max { φ ⊖ α i +1 , φ ⊕ α i +1 } ] . By rotational symmetry, U i +1 = [0 , π ) × I i +1 , where I i +1 = ⋃︁ φ ∈ I i C i +1 ( φ ). Consequently, I i +1 ⊂ [0 , π ] isconnected, and hence, I i +1 is an interval. Therefore U i +1 is a spherical zone. As φ ⊕ α i +1 and φ ⊖ α i +1 arepiecewise linear functions of φ , we can compute I i +1 using O (1) arithmetic operations.We can construct the intervals I , . . . , I n − ⊂ [0 , π ] as described above. If 0 / ∈ I n − , then n / ∈ U n − and A is not realizable. Otherwise, we can compute the vertices of a spherical realization P ′ ⊂ S by backtracking.Put u n − = n = (0 , , u i = v ( ψ, φ ), we choose u i − as follows. Let u i − be v ( ψ, φ ⊕ α i ) or v ( ψ, φ ⊖ α i ) if either of them is in U i − (break ties arbitrarily). Else the spherical circle of radius α i centeredat u i intersects the boundary of U i − , and then we choose u i − to be an arbitrary such intersection point.The decision algorithm (whether 0 ∈ I n − ) and the backtracking both use O ( n ) arithmetic operations. Enclosing the Origin.
Theorem 3 provides an efficient algorithm to test whether an angle sequence canbe realized by a spherical polygon, however, Lemma 4 requires a spherical polygon P ′ whose convex hullcontains the origin in its relative interior. We show that this is always possible if a realization exists and ∑︁ n − i =0 α i ≥ π . The general strategy in the inductive proof of this claim (Lemma 6 below) is to incrementallymodify P ′ by changing the turning angle at one of its vertices to 0 or π . This allows us to reduce the numberof vertices of P ′ and apply induction.Before we are ready to prove Lemma 6 we need to do some preliminary work. First, we introduce someterminology for spherical polygonal linkages with one fixed endpoint. Let P ′ = ( u , . . . , u n − ) be a polygonin S that realizes an angle sequence A = ( α , . . . , α n − ); we do not assume ∑︁ n − i =0 α i ≥ π . Denote by U j − i the locus of the endpoints u ′ i ∈ S of all (spherical) polygonal lines ( u i − j , u ′ i − j +1 , . . . , u ′ i ), where the firstvertex is fixed at u i − j , and the edge lengths are α i − j , . . . , α i . Similarly, denote by U j + i the locus of theendpoints u ′ i ∈ S of all (spherical) polygonal lines ( u i + j , u ′ i + j − , . . . , u ′ i ) with edge lengths α i + j +1 , . . . , α i +1 .Due to rotational symmetry about the line passing through u i − j and , the sets U j − i and U j + i are each a spherical zone (i.e., a subset of S bounded by two parallel circles), possibly just a circle, or a cap, or a point.In particular, the distance between u i and any boundary component (circle) of U j − i or U j + i is the same; seeFig. 8.If U i is bounded by two circles, let T i and B i denote the two boundary circles such that u i is closerto T i than to B i . If U i is a cap, let T i denote the boundary of U i , and let B i denote the centerof U i . We define T − i and B − i analogously.The vertex u i of P ′ is a spur of P ′ if the segments u i u i +1 and u i u i − overlap (equivalently, the turningangle of P ′ at u i is π ). We use the following simple but crucial observation.9 u α n ϕ ( u ) π ϕ ( u ) = I ϕ ( u ) ∈ I U = U − B − T − U − Figure 8: The spherical zone U (or U − ) containing u corresponding to I . Observation 1.
Assume that n ≥ and U i is neither a circle nor a point. The turning angle of P ′ at u i +1 is 0 iff u i ∈ B i ; and u i +1 is a spur of P ′ iff u i ∈ T i . (By symmetry, the same holds if we replace + with − .) Lemma 5.
Let P ′ be a spherical polygon ( u , . . . , u n − ) , n ≥ , that realizes an angle sequence A =( α , . . . , α n − ) . Then there exists a spherical polygon P ′′ = ( u , . . . , u i − , u ′ i , u ′ i +1 , u i +2 , . . . , u n − ) that alsorealizes A such that the turning angle at u i − is , or the turning angle at u ′ i +1 is or π .Proof. If n ≥
4, Observation 1 allows us to move vertices u i and u i +1 so that the turning angle at u i − dropsto 0, or the turning angle at u i +1 changes to 0 or π , while all other vertices of P ′ remain fixed. Indeed, oneof the following three options holds: U − i ⊆ U i , U − i ∩ B i ̸ = ∅ , or U − i ∩ T i ̸ = ∅ . If U − i ⊆ U i , thenby Observation 1 there exists u ′ i ∈ U − i ∩ B − i ∩ U i . Since u ′ i ∈ U i there exists u ′ i +1 ∈ U i +1 such that P ′′ = ( u , . . . , u i − , u ′ i , u ′ i +1 , u i +2 , . . . , u n − ) realizes A and the turning angle at u i − equals 0. Similarly, ifthere exists u ′ i ∈ U − i ∩ B i or u ′ i ∈ U − i ∩ T i , then there exists u ′ i +1 ∈ U i +1 such that P ′′ as above realizes A with the turning angle at u i +1 equal to 0 or π , respectively.We are now ready to prove the lemma stated below. Lemma 6.
Given a spherical polygon P ′ that realizes an angle sequence A = ( α , . . . , α n − ) , n ≥ ,with ∑︁ n − i =0 α ≥ π , we can compute in polynomial time a spherical polygon P ′′ realizing A such that ∈ relint(conv( P ′′ )) .Proof. We proceed by induction on the number of vertices of P ′ . In the basis step, we have n = 3. Inthis case, P ′ is a spherical triangle. The length of every spherical triangle is at most 2 π , contradicting theassumption that ∑︁ n − i =0 α i > π . Hence the claim vacuously holds.In the induction step, assume that n ≥ n . Assume / ∈ relint(conv( P ′ )), otherwise the proof is complete. We distinguish between several cases. Case 1: a path of consecutive edges lying in a great circle contains a half-circle.
We may assumew.l.o.g. that at least one endpoint of the half-circle is a vertex of P ′ . Since the length of each edge is lessthan π , the path that contains a half-circle has at least 2 edges. Case 1.1: both endpoints of the half-circle are vertices of P ′ . Assume w.l.o.g., that the two endpointsof the half-circle are u i and u j , for some i < j . These vertices decompose P ′ into two polylines, P ′ and P ′ .We rotate P ′ about the line through u i u j so that the turning angle at u i is a suitable value in [ − ε, + ε ] asfollows. First, set the turning angle at u i to be 0. Let P ′′ denote the resulting polygon. If ∈ int(conv( P ′′ ))we are done. If P ′′ is contained in a great circle then ∈ int(conv( P ′′ )) due to the angle 0 at u i , and we10re done as well. Else, P ′′ is contained in a hemisphere H bounded by the great circle through u i − u i u i +1 .In this case, we perturb the turning angle at u i so that u i +1 is not contained in H thereby achieving ∈ int(conv( P ′′ )). Case 1.2: only one endpoint of the half-circle is a vertex of P ′ . Let P ′ = ( u i , . . . , u j ) be the longestpath in P ′ that contains a half-circle, and lies in a great circle. Since / ∈ relint(conv( P ′ )), the polygon P ′ is contained in a hemisphere H bounded by the great circle ∂H that contains P ′ , but P ′ is not containedin ∂H . By construction of P ′ , we have u j +1 / ∈ ∂H . In order to make the proof in this case easier, wemake the following assumption. If a part P of P ′ between two antipodal/identical vertices that belong ∂H is contained in a great circle, w.l.o.g. we assume that P is contained in ∂H . (This can be achieved by asuitable rotation about the line passing through the endpoints of P .)Assume, w.l.o.g. that the second endpoint of P ′ is u , that is, j = 0. Let j ′ be the smallest value suchthat u j ′ ∈ ∂H . Since / ∈ relint(conv( P ′ )), we have u , . . . , u j ′ ∈ H . We show that we can perturb thepolygon P ′ into a new polygon P ′′ = ( u ′ , . . . , u ′ j ′ − , u j ′ , . . . , u n − ) realizing A so that ∈ int(conv( P ′′ )).Since ( u , . . . , u j ′ ) is not contained in a great circle by our assumption, there exists j ′′ , < j ′′ < j ′ , suchthat the turning angle of P ′ at j ′′ is neither 0 nor π . We prove in the next paragraph that we can assumethat j ′′ = 1.Suppose that j ′′ >
1. We perturb the polygon P ′ thereby lowering its value j ′′ , while still keeping P ′ a realization of A . By Observation 1, u j ′′ − / ∈ ∂U j ′′ − . Since the turning angle at u j ′′ − is either 0 or π . Note that U j ′′ − is the union of the spherical circles S c of radius α j ′′ − with centers c on U j ′′ . Since u j ′′ − / ∈ ∂U j ′′ − , there exists a circle S c that intersects U − j ′′ − in two different points p and p . We replace u j ′′ with c and u j ′′ − with p on P ′ thereby still keeping P ′ a realization of A . In the modified polygon P ′ ,the turning angle at u j ′′ − = p is neither 0 nor π .By Observation 1 and the assumption j ′′ = 1, we have u / ∈ ∂U , and we can perturb u within U into u ′ and u into u ′ so that u ′ / ∈ H , and u ′ , u . . . , u j ′ − ∈ relint( H ), thereby achieving ∈ int(conv( P ′′ )). Case 2: the turning angle of P ′ is 0 at some vertex u i . By supressing the vertex u i , we obtain aspherical polygon Q ′ on n − α , . . . , α i − , α i − + α i , α i +1 , . . . , α n − )unless α i − + α i ≥ π , but then we are in Case 1. By induction, this sequence has a realization Q ′′ such that ∈ relint(conv( Q ′′ )). Subdivision of the edge of length α i − + α i producers a realization P ′′ of A such that ∈ relint(conv( Q ′′ )) = relint(conv( P ′′ )). Case 3: there is no path of consecutive edges lying in a great circle and containing a half-circle,and no turning angle is 0.Case 3.1: n = 4 . We claim that U ∩ U − contains B − or B . By Observation 1, this immediatelyimplies that we can change one turning angle to 0 and proceed to Case 1.To prove the claim, note that U ∩ U − ̸ = ∅ and − ≡ T − , T , B − , and B are all parallel since they are all orthogonal to u . Thus, by symmetry there are two casesto consider depending on whether U ⊆ U − . If U ⊆ U − , then B ⊂ U ∩ U − . Else U ∩ U − contains B or B − , whichever is closer to u , which concludes the proof of this case. Case 3.2: n ≥ . Choose i ∈ { , . . . , n − } so that α i +2 is a minimum angle in A . Note that U i isneither a circle nor a point since that would mean that u i +2 and u i +1 , or u i and u i +1 are antipodal, whichis impossible. We apply Lemma 5 and obtain a spherical polygon P ′′ = ( u , . . . , u i − , u ′ i , u ′ i +1 , u i +2 , . . . , u n − ) . If the turning angle of P ′′ at u i − or u ′ i +1 equals to 0, we proceed to Case 2. Otherwise, the turning angle of P ′′ at u ′ i +1 equals π . In other words, we introduce a spur at u ′ i +1 . If α i +1 = α i +2 we can make the turningangle of P ′′ at u i +2 equal to 0 by rotating the overlapping segments ( u ′ i +1 , u i +2 ) and ( u ′ i +1 , u ′ i ) around u i +2 = u ′ i and proceed to Case 2. Otherwise, we have α i +2 < α i +1 by the choice of i . Let Q ′ denote anauxiliary polygon realizing ( α , . . . , α i , α i +1 − α i +2 , α i +3 , . . . , α n − ). We construct Q ′ from P ′′ by cutting off11he overlapping segments ( u ′ i +1 , u i +2 ) and ( u ′ i +1 , u ′ i ). We apply Lemma 5 to Q ′ thereby obtaining anotherrealization Q ′′ = ( u , . . . , u i − , u ′′ i , u ′′ i +1 , u i +3 , . . . , u n − ) . We re-introduce the cut off part to Q ′′ at u ′′ i +1 as an extension of length α i +2 of the segment u ′′ i u ′′ i +1 , whoselength in Q ′′ is α i +1 − α i +2 >
0, in order to recover a realization of A by the following polygon R ′ = ( u , . . . , u i − , u ′′ i , u ′′ i +1 , u ′′ i +2 , u i +3 , . . . , u n − ) . If the turning angle of Q ′′ at u i − equals 0, the same holds for R ′ and we proceed to Case 2. If the turningangle of Q ′′ at u ′′ i +1 equals π , then the turning angle of R ′ at u ′′ i +1 equals 0 and we proceed to Case 2.Finally, if the turning angle of Q ′′ at u ′′ i +1 equals 0, then R ′ has a pair of consecutive spurs at u ′′ i +1 and u ′′ i +2 , that is, a so-called “crimp.” We may assume w.l.o.g. that α i +3 < α i +1 . Also we assume that the part( u ′′ i , u ′′ i +1 , u ′′ i +2 , u i +3 ) of R ′ does not contain a pair of antipodal points, since otherwise we proceed to Case 1.Since ( u ′′ i , u ′′ i +1 , u ′′ i +2 , u i +3 ) does not contain a pair of antipodal points, | ( u ′′ i , u i +3 ) | = α i +1 + α i +3 − α i +2 .It follows that | ( u ′′ i , u i +3 ) | + | ( u ′′ i , u ′′ i +1 ) | + | ( u ′′ i +1 u ′′ i +2 ) | + | ( u ′′ i +2 , u i +3 ) | = α i +1 + α i +3 − α i +2 + α i +1 + α i +2 + α i +3 = 2( α i +1 + α i +3 ) . If α i +3 + α i +1 < π , then the 3 angles α i +1 , α i +2 + α i +3 , and | ( u ′′ i , u i +3 ) | are all less than π . Moreover, theirsum, which is equal to 2( α i +3 + α i +1 ), is less than 2 π , and they satisfy the triangle inequalities. Thereforewe can turn the angle at u ′′ i +2 to 0, by replacing the path ( u ′′ i , u ′′ i +1 , u ′′ i +2 , u i +3 ) on R ′ by a pair of segmentsof lengths α i +1 and α i +2 + α i +3 .Otherwise, α i +3 + α i +1 ≥ π , and thus, | ( u ′′ i , u i +3 ) | + | ( u ′′ i , u ′′ i +1 ) | + | ( u ′′ i +1 u ′′ i +2 ) | + | ( u ′′ i +2 , u i +3 ) | ≥ π. In this case, we can apply the induction hypothesis to the closed spherical polygon ( u ′′ i , u ′′ i +1 , u ′′ i +2 , u i +3 ).In the resulting realization S ′ , that is w.l.o.g. fixing u ′′ i and u i +3 , we replace the segment ( u ′′ i , u i +3 ) by theremaining part of R ′ between u ′′ i and u i +3 . Let R ′′ denote the resulting realization of A . If S ′ is not containedin a great circle then ∈ int(conv( S ′ )) ⊆ int(conv( R ′′ )), and we are done. Otherwise, S ′ \ ( u i +3 , u i ) containsa pair of antipodal points on a half-circle. The same holds for R ′′ , and we proceed to Case 1, which concludesthe proof.The combination of Theorem 3 with Lemmas 4–6 yields Theorems 2 and 4. The proof of Lemma 6 canbe turned into an algorithm with running time polynomial in n if we assume that every arithmetic operationcan be carried out in O (1) time. Nevertheless, we get only a weakly polynomial running time, since we areunable to guarantee a polynomial size encoding of the numerical values that are computed in the process ofconstructing a spherical polygon realizing A that contains in its convex hull in the proof of Lemma 6. It is perhaps surprising that in R not all realizable angle sequences can be realized without a crossing. Thefollowing theorem identifies some angle sequences for which this is the case. They correspond exactly tosequences realizable as a standard musquash [19], see Fig. 9 for an illustration, which is a thrackle , that is,a polygon in which every pair of nonadjacent edges cross each other. Theorem 5.
Let A = ( α , . . . , α n − ) be an angle sequence, where n ≥ is odd, ∑︁ n − i =0 ( π − α i ) = π and α i ∈ (0 , π ) for all i ∈ { , . . . , n − } . Then A is realizable in R but every realization lies in an affine planeand has a self-intersection. Proof.
Let P ′ = ( u , . . . , u n − ) be a spherical realization of A corresponding to a realization P in R , suchthat n ≥ ∑︁ n − i =0 ( π − α i ) = π . We permute the vertices of the polygon P ′ thereby obtaining anauxiliary spherical polygon Q ′ = ( u , u , . . . , u n − , u , u , . . . , u ). The spherical polygon Q ′ is well definedsince n is odd.Note that (assuming modulo n arithmetic on the indices) the spherical distance between u i and u i +2 isbounded above by | ( u i , u i +2 ) | ≤ π − α i + π − α i − , (2)for every i = 0 , . . . , n −
1. Indeed, (2) is vacuously true if α i + α i +1 ≤ π . (Recall the definition of U i fromSection 3.) Otherwise, π − α i + π − α i − is the spherical distance of any point on T − i to u i which is also thefarthest possible distance of u i +2 from u i . By (2), the total spherical length of the polygon Q ′ is at most2( nπ − ∑︁ n − i =0 α i ) = 2 π .It follows, by applying Fenchel’s theorem to Q ′ , that the length of Q ′ is 2 π . By Lemma 4, we concludethat Q ′ , and thus, also P ′ are contained in a great circle, which we can assume to be the equator. Due toits length, Q ′ has no self-intersections. (The polygon Q is in fact convex, but we do not use this in whatfollows.)Since P ′ lies in a plane, P also lies in a plane and realizes a signed version A ± of the original angle sequence A . As inequality (2) must hold with equality due to the length of Q ′ , for all i = 0 , . . . , n , the all angles in A ± have the same sign. We may assume w.l.o.g. that α i > i . Note that ∑︁ n − i =0 α i = ( n − π ≥ π by the hypothesis of the theorem. Thus, by Theorem 1, the polygon P must have a self-crossing. We devised efficient algorithms to realize a consistent angle sequence with the minimum number of crossingsin 2D. In 3D, we can test efficiently whether a given angle sequence is realizable, and find a realization if oneexists. Every claim we make for R generalizes to R d , for all d ≥ R d . The reason is that the circular arcs I i constructed during an execution of the algorithm in the proof of Theorem 3 depend only on the angles inthe sequence, and would be the same in any higher dimension.However, it remains an open problem to find an efficient algorithms that computes the minimum numberof crossings in generic realizations. As we have seen in Section 4, there exist consistent angle sequences in 3Dfor which every generic realization has crossings. It is not difficult to see that crossings are unavoidable onlyif every 3D realization of an angle sequence A is contained in a plane, which is the case, for example, when A = ( π − ε, . . . , π − ε, ( n − ε ), for odd n ≥ A . Thus, an efficient algorithm for thisproblem would follow by Theorem 1, once one can test efficiently whether A admits a fully 3D realization.The evidence that we have points to the following conjecture that the converse of Theorem 5 also holds. Conjecture 1.
An angle sequence A = ( α , . . . , α n − ) , where α i ∈ (0 , π ) and n ≥ , that can be realizedby a polygon in R , has a realization by a self-intersection free polygon in R if and only if n is even or ∑︁ n − i =0 ( π − α i ) ̸ = π .
13t can be seen that Conjecture 1 is equivalent to the claim that every realization A in R has a self-intersection if and only if A can be realized in R as a thrackle .Can our results in R or R be extended to broader interesting classes of graphs? A natural analog ofour problem in R would be a construction of triangulated spheres with prescribed dihedral angles, discussedin a recent paper by Amenta and Rojas [1]. For convex polyhedra, Mazzeo and Montcouquiol [18] proved,settling Stoker’s conjecture, that dihedral angles determine face angles. References [1] Nina Amenta and Carlos Rojas. Dihedral deformation and rigidity.
Computational Geometry: Theoryand Applications , 90:101657, 2020.[2] Michael A. Bekos, Henry F¨orster, and Michael Kaufmann. On smooth orthogonal and octilinear draw-ings: Relations, complexity and Kandinsky drawings.
Algorithmica , 81(5):2046–2071, 2019.[3] Richard E. Buckman and Nicholas Schmitt. Spherical polygons and unitarization.
Preprint
Journalof Combinatorial Theory, Series B , 145:145–168, 2020.[5] Giuseppe Di Battista, Ethan Kim, Giuseppe Liotta, Anna Lubiw, and Sue Whitesides. The shape oforthogonal cycles in three dimensions.
Discrete & Computational Geometry , 47(3):461–491, 2012.[6] Giuseppe Di Battista and Luca Vismara. Angles of planar triangular graphs.
SIAM Journal on DiscreteMathematics , 9(3):349–359, 1996.[7] Yann Disser, Mat´uˇs Mihal´ak, and Peter Widmayer. A polygon is determined by its angles.
Computa-tional Geometry: Theory and Applications , 44:418–426, 2011.[8] Tobin A Driscoll and Stephen A Vavasis. Numerical conformal mapping using cross-ratios and Delaunaytriangulation.
SIAM Journal on Scientific Computing , 19(6):1783–1803, 1998.[9] Werner Fenchel. On the differential geometry of closed space curves.
Bulletin of the American Mathe-matical Society , 57(1):44–54, 1951.[10] Ashim Garg. New results on drawing angle graphs.
Computational Geometry: Theory and Applications ,9(1-2):43–82, 1998.[11] Branko Gr¨unbaum and Geoffrey Colin Shephard. Rotation and winding numbers for planar polygonsand curves.
Transactions of the American Mathematical Society , 322(1):169–187, 1990.[12] Leonidas Guibas, John Hershberger, and Subhash Suri. Morphing simple polygons.
Discrete & Com-putational Geometry , 24(1):1–34, 2000.[13] Bill Jackson and Tibor Jord´an. Globally rigid circuits of the direction-length rigidity matroid.
Journalof Combinatorial Theory, Series B , 100(1):1–22, 2010.[14] Bill Jackson and Peter Keevash. Necessary conditions for the global rigidity of direction-length frame-works.
Discrete & Computational Geometry , 46(1):72–85, 2011.[15] Audrey Lee-St. John and Ileana Streinu. Angular rigidity in 3D: Ccombinatorial characterizations andalgorithms. In
Proc. 21st Canadian Conference on Computational Geometry (CCCG) , pages 67–70,2009.[16] Michael Kapovich and John J. Millson. On the moduli space of a spherical polygonal linkage.
CanadianMathematical Bulletin , 42:307–320, 1999. 1417] Jiˇr´ı Matouˇsek.
Lectures on Discrete Geometry , volume 212 of
Graduate Texts in Mathematics . Springer-Verlag New York, 2002.[18] Rafe Mazzeo and Gr´egoire Montcouquiol. Infinitesimal rigidity of cone-manifolds and the Stoker problemfor hyperbolic and Euclidean polyhedra.
Journal of Differential Geometry , 87(3):525–576, 2011.[19] Grace Misereh and Yuri Nikolayevsky. Thrackles containing a standard musquash.
Australasian JournalOf Combinatorics , 70(2):168––184, 2018.[20] Gaiane Panina and Ileana Streinu. Flattening single-vertex origami: The non-expansive case.
Compu-tational Geometry: Theory and Applications , 43(8):678–687, 2010.[21] Maurizio Patrignani. Complexity results for three-dimensional orthogonal graph drawing.
J. DiscreteAlgorithms , 6(1):140–161, 2008.[22] Franco Saliola and Walter Whiteley. Constraining plane configurations in CAD: circles, lines, and anglesin the plane.
SIAM Journal on Discrete Mathematics , 18(2):246–271, 2004.[23] Jack Snoeyink. Cross-ratios and angles determine a polygon.
Discrete & Computational Geometry ,22(4):619–631, 1999.[24] Ileana Streinu and Walter Whiteley. Single-vertex origami and spherical expansive motions. In onJapanese Conference on Discrete and Computational Geometry , volume 3742 of
LNCS , pages 161–173.Springer, 2004.[25] John M. Sullivan. Curves of finite total curvature. In Alexander I. Bobenko, John M. Sullivan, PeterSchr¨oder, and G¨unter M. Ziegler, editors,
Discrete Differential Geometry , pages 137–161. Birkh¨auser,Basel, 2008.[26] Carsten Thomassen. Planarity and duality of finite and infinite graphs.
Journal of CombinatorialTheory, Series B , 29:244–271, 1980.[27] William Thomas Tutte. How to draw a graph.
Proceedings of the London Mathematical Society , 3(1):743–767, 1963.[28] Gopalakrishnan Vijayan. Geometry of planar graphs with angles. In
Proc. 2nd ACM Symposium onComputational Geometry , pages 116–124, 1986.[29] Christian Wiener. ¨Uber Vielecke und Vielflache . Teubner, Leipzig, 1864.[30] Rhaleb Zayer, Christian R¨ossler, and Hans-Peter Seidel. Variations on angle based flattening. In N. A.Dodgson, M. S. Floater, and M. A. Sabin, editors,