Extending editing capabilities of subdivision schemes by refinement of point-normal pairs
EExtending editing capabilities of subdivisionschemes by refinement of point-normal pairs
Evgeny Lipovetsky ∗† , ‡ Nira Dyn § August 20, 2019
Abstract
In this paper we extend the 2D circle average of [11] to a 3D binary av-erage of point-normal pairs, and study its properties. We modify classicalsurface-gener- ating linear subdivision schemes with this average obtain-ing surface-generating schemes refining point-normal pairs. The modifiedschemes give the possibility to generate more geometries by editing theinitial normals. For the case of input data consisting of a mesh only, wepresent a method for computing ”naive” initial normals from the initialmesh. The performance of several modified schemes is compared to theirlinear variants, when operating on the same initial mesh, and examplesof the editing capabilities of the modified schemes are given. In additionwe provide a link to our repository, where we store the initial and refinedmesh files, and the implementation code. Several videos, demonstratingthe editing capabilities of the initial normals are provided in our Youtubechannel.
Keywords: surface-generating subdivision refining 3D point-normal pairs,3D circle average, surface design.
In a previous paper [11] we introduced a weighted binary average of two 2Dpoint-normal pairs (PNPs), termed circle average , and defined subdivision schemesbased on it, which refine PNPs in 2D, and generate curves. This paper presentsa method for extending the 2D circle average to 3D, a method applicable to any2D weighted binary average. The extension of the 2D circle average to 3D pre-serves several important properties of the 2D circle average, and even extendssome of them.With the 3D circle average we modify classical linear surface-generating sub-division schemes refining points, to surface-generating schemes refining PNPs.Our methodology in modifying linear schemes, is the same as that in the 2Dcase: we first write the refinement rules of a converging linear scheme in terms of ∗ Corresponding author † The contribution of Evgeny Lipovetsky is part of his Ph.D. research conducted at Tel-AvivUniversity. ‡ [email protected] , School of Computer Sciences, Tel-Aviv Univ.,Israel § [email protected] , School of Mathematical Sciences, Tel-Aviv Univ., Israel a r X i v : . [ c s . G R ] A ug epeated weighted linear binary averages, and then replace each weighted linearbinary average by the 3D circle average with the same weight. As in the caseof the modified 2D schemes [11], our new 3D schemes also enrich the variety ofgeometries that can be generated, just by editing the initial normals. With subdivision schemes refining points, the only way to alter the geometrygenerated from a given initial mesh is to change the location of the vertices ofthe mesh. The schemes we design in this work refine point-normal pairs. Sucha scheme can generate a richer variety of geometries by editing also the initialnormals.With our approach, we can modify any convergent linear scheme refiningpoints into a scheme refining PNPs. We can enrich any subdivision-based soft-ware system by establishing new editing tools.
Sections 3, 4 present the extension to 3D of the 2D circle average, and assertsproperties of the 3D circle average, in particular the Consistency Property, whichmakes the weighted binary operation an average. In Section 5 we explain ourmethodology for modifying linear subdivision schemes refining points to schemesrefining PNPs. We give a method (algorithm) to write a weighted linear averageof several elements in terms of repeated weighted linear binary averages. Wealso present a method for defining ”naive” normals from a mesh when initialnormals are not given. In Section 6 four modified surface-generating schemesare discussed. Their performance on two initial meshes is compared with thatof their linear counterparts. The editing capability of the modified schemes isdemonstrated by examples presented in three videos and a figure of three snap-shots from one of the videos. A link to the videos is given. A short discussionof the implementation consists of Section 7. The paper ends in Section 8 withConclusions and Future Work.
Classical surface-generating linear subdivision schemes refine points given at thevertices of a mesh [18]. In recent years more involved data at the vertices of amesh are refined by subdivision schemes, such as by Hermite schemes (see e.g.[16]), and by manifold-valued schemes (see e.g. [19]). The information in 3DPNPs is less than that in 3D data refined by Hermite schemes. In the latter casethe data is ”linear” and is refined by a linear scheme, while the unit normals ofa surface is a nonlinear functional applied to the surface (it is the direction ofthe cross-product of two tangents). Indeed the circle average and the modifiedschemes based on it are nonlinear.Previous works on subdivision schemes that refine PNPs are based on abinary operation between two PNPs which is used to define the insertion rulein an interpolatiory scheme [3], [1].There are various papers using the same methodology as ours in adaptinglinear refining-points subdivision schemes to schemes refining other types of2eometric objects. For example: manifold-valued data (see e.g. [8]), sets in R d (see e.g. [9]), and nets of functions (see e.g. [4]). In this section we introduce an extension of the 2D circle average - a weightedbinary average of two 2D point-normal pairs (PNPs) - to an average of two 3DPNPs. First we recall the definition of the 2D circle average.
Given two PNPs in 2D, each consisting of a point and a normal unit vector, P = ( p , n ) , P = ( p , n ), and a real weight ω ∈ [0 , P ω = P (cid:125) ω P = ( p ω , n ω ).The point p ω is on an auxiliary arc (cid:95) P P , at arc distance ωθ from p , where θ is the angle between n and n . The normal n ω is the geodesic average of n and n . For the definition of (cid:95) P P and for more details consult [11]. All the objects mentioned in the rest of the paper, specifically points and vectors,are in 3D, if not stated otherwise.First, we introduce some notation. For two vectors u, v , with u × v (cid:54) = 0, z ( u, v ) denotes the normalized vector in direction u × v . Note that z ( αu + βv, γu + δv ) = z ( u, v ) , for α, β, γ, δ ∈ R , s.t. α + β > , γ + δ > . (1)For a point p and a vector n , let Π( p, n ) be the plane which passes through thepoint p and has the normal n .For P = ( p , n ) and P = ( p , n ), two PNPs to be averaged, we considerthe two parallel planes Π = Π( p , z ( n , n )), Π = Π( p , z ( n , n )). The lengthof the projection of [ p , p ] on z ( n , n ), which is the distance between Π andΠ , is denoted by (cid:126) . We define Π ω to be the plane parallel to Π , Π , which isat distance ω (cid:126) from Π towards Π . We say that P = ( p, n ) belongs to a planeΠ , P ∈ Π, if both p and n are in Π.Let P ω = P (cid:126) ω P denote the circle average in 3D. The construction of P ω = ( p ω , n ω ) is done by the following procedure. (See Fig. 1 for an example.)(i) Project p on Π to obtain p ∗ . Note that P ∗ = ( p ∗ , n ) ∈ Π , and thatalso P ∈ Π .(ii) Compute the 2D circle average P (cid:125) ω P ∗ in a local coordinate system inΠ , and convert the 2D result to a PNP P ∗ ω = ( p ∗ ω , n ω ) in 3D.(iii) Project p ∗ ω on Π ω . Obtain P ω = ( p ω , n ω ).Note that if P , P ∈ Π then the 3D average reduces to the 2D average. As inthe 2D case, the construction is not defined when θ = π . Although, when θ = 0,the direction z is not defined, the 3D average can be obtained by continuity asshown in Section 4.3. 3 n × n h n * p p * n p ω П p ω ω h Figure 1: Construction of P (cid:126) ω P in 3D. Remark 3.1.
It is easy to see that any 2D average of two PNPs can be extendedby the above method to a 3D average.
Many of the properties of the 2D circle average are preserved or enhanced bythe 3D circle average.
In [11], we prove the consistency property of the circle average in 2D. Here weargue that the 3D circle average also has this property, namely ∀ t, s, k ∈ [0 , P (cid:126) t P ) (cid:126) k ( P (cid:126) s P ) = P (cid:126) ω ∗ P , ω ∗ = ks + (1 − k ) t. (2)Indeed, the consistency of the normals is guaranteed by the consistency of thegeodesic average. For the consistency of the points observe that by (1) theprojection direction of steps (i) and (iii) in the construction of the 3D circleaverage is the same in all the averaging operations in (2). Also, all averagesin (2), except for (cid:126) k , are performed in Π , and then moved in the direction z ( n , n ), by a length which is a linear average between zero and (cid:126) . The average (cid:126) k is performed in a plane parallel to Π translated in the z ( n , n ) directionby an appropriate linear average of zero and (cid:126) . Since both the 2D circle averageand the linear average have the consistency property, and they are performedindependently in orthogonal directions, the consistency of the points is asserted.See Figure 2 for an example. If we change the weight in (cid:126) ω continuously and track the position of the pointsof P (cid:126) ω P , then, in a generic 3D case, we obtain a helix instead of the arc (cid:95) P P in the 2D case. We denote this helix by H ( P , P ). Note that the projection onΠ of H ( P , P ) is (cid:95) P P ∗ (see Figure 2a).4 n × n * p p П p ω * p t * p k * p s p t p k p s = * (a) Consistency of points. n n n t n k n s n ω = * (b) Consistency of normals. Figure 2: Consistency property.Note that z and (cid:95) P P ∗ are the same for the circle average with weights t, s, k . The investigation of several limit cases of the circle average requires the nextlemma. The proof of this lemma is straightforward but we give it for the con-venience of the reader.
Lemma 4.1.
The intersection point x ω of [ p , p ] and Π ω is given by x ω = (1 − ω ) p + ωp . (3) Proof.
Figure 3 illustrates the proof. Let (cid:98) p , (cid:98) p be the projections of p , p onΠ ω , and let (cid:98) Π = Π( p , (cid:98) n ) where (cid:98) n is the normalized vector −−→ p p ×−−→ (cid:98) p (cid:98) p . Note that (cid:98) Π contains the segments [ p , p ] and [ (cid:98) p , (cid:98) p ]. Since [ (cid:98) p , (cid:98) p ] is in Π ω then [ (cid:98) p , (cid:98) p ]is contained in the intersection line of (cid:98) Π and Π ω . Moreover, by the definition of (cid:98) p , (cid:98) p , [ (cid:98) p , (cid:98) p ] contains all the projections of points of [ p , p ] on Π ω , in particular x ω ∈ [ (cid:98) p , (cid:98) p ]. Thus the two triangles (cid:52) p (cid:98) p x ω and (cid:52) p (cid:98) p x ω are in (cid:98) Π. Thesetriangles are similar, having equal angles. Therefor | p x ω || p x ω | = | p (cid:99) p || p (cid:99) p | = ω − ω , whichproves (3). p p p p ^ x ω П П ω П ^ φ n × n Figure 3: The setup of Lemma 4.1. The intersection point of [ p , p ] and Π ω isthe linear average of p and p with weight ω .Two basic properties of the 2D circle average are that it is not defined for θ = π , and that its point tends to the 2D linear average when θ →
0. A similar5ehavior holds in 3D. Furthermore, in the 3D case, there are two parameters, θ and the angle ϕ between n × n and −−→ p p (see Figure 3). Note that θ ∈ [0 , π )and ϕ ∈ [0 , π ].Next we show that the point of P (cid:125) ω P tends to x ω = (1 − ω ) p + ωp aseither θ → ϕ → ϕ → π ).First we analyze the case ϕ → ϕ → π for fixed θ ≥ ro* p ω ωθ p ^ x ω p ^ rr θ - θ (1- ω ) - p ^ p ^ Figure 4: The triangle (cid:52) (cid:98) p p ω x ω .Using the geometry as depicted in Figure 4, we get | (cid:98) p p ω | = | (cid:98) p (cid:98) p | sin (cid:0) θω (cid:1) sin (cid:0) θ (cid:1) .We express | p ω x ω | by the cosine theorem in the triangle (cid:52) (cid:98) p p ω x ω ⊂ Π ω , | p ω x ω | = ( | (cid:98) p (cid:98) p | ω ) + (cid:18) | (cid:98) p (cid:98) p | sin (cid:0) θω (cid:1) sin (cid:0) θ (cid:1) (cid:19) − | (cid:98) p (cid:98) p | ω sin (cid:0) θω (cid:1) sin (cid:0) θ (cid:1) cos (cid:18) θ (1 − ω )2 (cid:19) . (4)Since | (cid:98) p (cid:98) p | = | p p | sin ϕ , all the terms in the right side of (4) tend to zero,independently of the value of θ . Thus, p ω → x ω , as ϕ → ϕ → π ).In case θ → < ϕ < π , the right side of (4) is zero becauselim θ → sin (cid:0) θω (cid:1) sin (cid:0) θ (cid:1) = ω. (5) In [11] it is shown that if P , P are sampled from a circle then P (cid:125) ω P =( p ω , n ω ) corresponds to a point on this circle with n ω the normal of the circle at p ω . We say that the 2D circle average ”preserves circles”. This property extendsin the case of the 3D circle average to ”preservation of spheres and cylinders”.Indeed, any two PNPs sampled from a sphere are also samples from the bigcircle C , determined by the two points and the center of the sphere. Thus, thecircle average of the two PNPs is the 2D circle average of the two PNPs sampledfrom C , implying that the 3D circle average ”preserves” spheres. See Figure 5afor an example.Next, consider the case that the two PNPs P , P are sampled from a cylinderof the form x = cos t, y = sin t, z = t, ≤ t ≤ π . Note that z ( n , n ) is the axis6f the cylinder, and that H ( P , P ) is on the cylinder, and its projection on Π is (cid:95) P P ∗ . Due to the ”circle preservation” of the 2D circle average, P (cid:125) ω P ∗ =( p ∗ ω , n ω ) corresponds to a PNP sampled from (cid:95) P P ∗ . By (iii) of the constructionof the 3D circle average, p ω is on H ( P , P ) and the normal to H ( P , P ) at thispoint is n ω . Thus the 3D circle average ”preserves” cylinders. See Figure 5b foran example. n n n ω = П ω П П = p p p ω (a) Sphere preservation. n n n ω П ω П П p p p ω (b) Cylinder preservation. Figure 5: Preservation of special geometries.
We consider subdivision schemes refining point-normal pairs, which are obtainedfrom converging linear subdivision schemes. To obtain these schemes we expressthe linear schemes in terms of repeated, weighted, linear, binary averages ofpoints and replace these averages by the 3D circle average. In this paper weterm the so obtained schemes ”Modified schemes”.We first explain how we rewrite the refinement rules of any linear converg-ing subdivision scheme in terms of repeated, weighted, linear, binary averages.Then we mention four classical surface-generating linear schemes to be modi-fied. The performance of these schemes and their modifications is tested in thenext section. Finally we provide a method which computes initial normals, ifnormals are not given as input.
Here we propose a method for rewriting a weighted linear average of severalpoints in terms of repeated binary averages. Consider computing a point q as aweighted average of points { p i } k − i =0 , i.e. q = α p + α p + ... + α k − p k − , (6)where α i ∈ R , α i (cid:54) = 0 , i = 0 , ..., k − , and k − (cid:88) i =0 α i = 1 . (7)7e rewrite (6) as q = ( α + α ) (cid:16) α α + α p + α α + α p (cid:17) + α p + ... + α k − p k − , (8)reducing by one the number of elements in the outer sum and obtaining a binaryaverage as the first term. Note that in (8) q is a linear average of k − k points. We repeat this step k − k − (cid:96) (cid:88) i =0 α i (cid:54) = 0 , (cid:96) = 1 , ..., k − . We reorder the terms in (6) such that all positive α i precede all the negativeones. With this reordering, (7) guarantees that each partial sum (cid:80) (cid:96)i =0 α i ispositive.It seems that a challenge is to find an order of summands in (6) that performsbest. Yet our experiments indicate that the performance of a modified schemeis almost independent of the order of the summands. In this paper we modify four classical surface-generating linear subdivisionschemes: Catmull-Clark (CC) [2], Kobbelt 4-point (K4) [10], Butterfly (BY)[6], and Loop (LP) [15]. The modification of all these schemes is done by themethod of Section 5.1. We denote a modified scheme by adding ”M” before theacronym of the corresponding linear scheme.
Here we present a method for determining initial normals at the vertices of agiven control mesh, when the normals are not given as input.Consider neighboring faces { f i } k − i =0 and neighboring vertices { v i } k − i =0 of agiven vertex p in a control mesh (see Figure 6). Denote by a i the normalizedvector −→ pv i × −−−→ pv i +1 . The unit vector a i defines a normal related to f i . Let γ i bethe angle (cid:30) v i pv i +1 , and let γ = k − (cid:80) i =0 γ i . We suggest the normalized vector n = a (cid:107) a (cid:107) with a = k − (cid:88) i =0 γ i γ a i , (9)as the ”naive normal” at the vertex p . This method is similar to the one dis-cussed in Section 3.5 in [17]. In our examples we consider input meshes that consists of either quadrilateralfaces or triangular faces. We accept meshes with irregular vertices (of valency8 γ i v i v i+ a i f i Figure 6: Determining a naive normal at p from its neighborhood in the mesh. (cid:54) = 4 in quadrilateral meshes, and (cid:54) = 6 in triangular meshes). Our implementationis limited to meshes of exactly one type of faces. The initial data consists of thevertices of a mesh with a naive normal attached to each vertex. We apply the linear schemes of Section 5.2 and their modifications on two ex-ample meshes with naive normals. We compare the performance of a linearscheme with its modified scheme by inspecting the generated surfaces and bymeasuring estimates of dihedral angles and curvatures. First we explain howwe compute these estimates using the notation of Section 5.3. These estimatesindicate deviation from C smoothness, when considering the magnitude of thedihedral angles and from C smoothness when considering the magnitude of thelocal changes in the curvatures. In the case of a triangular mesh we compute the dihedral angle correspondingto an edge as the angle between the normals of the neighboring triangles to theedge.In the case of a quadrilateral mesh we estimate the dihedral angle at themidpoint of an edge e in the mesh by the following steps:1. Compute the directions (cid:96), r connecting the midpoint of e with the mid-points of the opposite edges of e in the neighboring faces to the left andto the right of e , respectively.2. Compute n (cid:96) = (cid:96) × −→ e and n r = r × −→ e , where −→ e is the edge direction.3. Compute the angle between n (cid:96) and n r .In the following we refer to this angle as the dihedral angle of the edge e . For every vertex p in a mesh M , we compute its discrete curvature K p by K p = (2 π − (cid:80) k − i =0 γ i ) A p , with A p = 16 k − (cid:88) i =0 | pv i || pv i +1 | sin γ i . (10)Here v k = v , and A p stands for the area of the barecentric cell around p (Seee.g. [17].) In the following we refer to K p as the curvature at p .9o estimate the magnitude of the local changes in the curvatures, we firstevaluate the curvature at all vertices of the mesh, and then estimate the localchanges of the curvatures at p as ζ p = (cid:12)(cid:12) max v ∈ V p { K v } − min v ∈ V p { K v } (cid:12)(cid:12) , (11)where V p consists of p and all the adjacent vertices to p in the mesh. In studying the performance of the modified schemes, we consider only thegenerated meshes and ignore the generated normals. Although we do not havea convergence proof for the modified schemes investigated in this paper, our testsindicate that the generated meshes converge to a surface. The convergence ofthe normals is guaranteed by general results about convergence of manifold-valued subdivision schemes, based on geodesic averages (see e.g. [7]). We donot display the limit of the normals because, as in the 2D case [11], they arenot the normals of the limit surface. Yet, as demonstrated in Table 2 of Section6.3, the closer are the initial normals to the naive normals of the initial mesh,the closer are the limit normals to the normals of the limit surface.Two input meshes are studied in this section demonstrating typical perfor-mance of a modified scheme in case of naive initial normals. One is referred as”Tower” and one is referred as ”Tube”. The Tower mesh is taken both in itsquadrilateral and triangular form. For each example several iterations of onelinear subdivision scheme and its modified variant are executed. The resultingsurfaces are depicted in Figures 7, 8, 9. The colors indicate the curvature of thefinal mesh, if not mentioned otherwise. The colors yellow to red (cyan to blue)indicate positive (negative) values. All the examples are provided as mesh filesin our online repository, as explained in Section 7. Our observations regardingthese examples are based on these files. See Table 1 for typical numerical com-parisons. We compute the maximal dihedral angle, ψ , and the maximal ζ p , ζ ∗ ,for each final mesh.scheme LP MLP CC MCC K4 MK4 ψ ° ° ° ° ° ° ζ ∗ ζ ∗ of meshes produced by modified C schemes (MCC, MLP) are of the same order as ζ ∗ of their linear counterparts,while for C schemes, ζ ∗ of the modified schemes are significantly smaller. Also,the decrease rate of the maximal estimated dihedral angle from one refinementlevel to its next level is faster in case of the modified schemes. Remark 6.1.
For P , P with θ = 0 the circle average of the points is their linearaverage with the same weight (as shown in Subsection 4.3), and the normal isthe normal of each of the two PNPs. Thus we conjecture that, if a modifiedscheme converges, then its smoothness equals that of the corresponding linearscheme. 10 a) Input mesh with nor-mals. (b) Modified scheme. (c) Linear scheme. Figure 7: Triangulated Tower mesh and meshes generated by MLP and LPafter 2 iterations.Colors indicate magnitudes of curvature in the range [-0.25, 0.25].
The results of the linear LP scheme and the MLP scheme, applied to the trian-gulated Tower, are depicted in Figure 7. The results of the CC and the MCCschemes, applied to the quadrilateral Tower, look very similar, and are barelydistinguishable from the LP results.The meshes produced by MCC and MLP after four iterations appear tobe ”blown up” versions of the meshes generated by the CC and LP schemesrespectively. The ”blown up” meshes are not contained in the convex hull ofthe initial mesh, as do the linear variants.
The results in Figure 8 were obtained by applications of the linear and themodified K4 schemes to the tower mesh. The MK4 scheme produces mesheswith smoother discrete curvature. However, the result of the linear variantfollows the input control mesh more accurately, as is demonstrated in Fugure8. A similar behavior is observed in the BY/MBY case, when applied to thetriangulated Tower.It is shown in [5] that the linear 4-point scheme produces a self intersectingcurve for an input polygon with edges of significantly different lengths. We ob-serve the same artifact in the case of 3D meshes refined by the linear K4 and BYschemes. This artifact is not surprising, since both schemes are generalizationsof the 4-point scheme.An example of such performance by the BY scheme is depicted in Figure9. The self intersections can be observed in the actual 3D models given in ourGithub repository (see Section 7). Also in Figure 9(c) this self intersection isindicated by the red color, which is assigned to the ”inner side of the surface”.On the other hand, there are no self intersections in the surfaces generated bythe modified schemes (see Figure 9(b)).11 a) Input mesh with nor-mals. (b) Modified scheme. (c) Linear scheme.
Figure 8: Tower mesh and meshes generated by MK4 and K4 after 2 iterations.Colors indicate magnitudes of curvature in the range [-0.25, 0.25]. (a) Tube input mesh (b) Modified scheme (c) Linear scheme
Figure 9: Triangulated Tube mesh and meshes generated by MBY and BYafter 3 iterations.Colors emphasize self intersection, or the lack of it.
Three videos demonstrating the variety of geometries obtainable with modifiedschemes are on our Youtube channel at [12]. The videos show geometry morph-ing processes when the initial mesh is kept and the initial normals are rotated.We obtain a sequence of eleven sets of initial normals, starting from all normalsequal to some normal n ∗ , and arriving in ten steps at the naive normals of themesh. The initial normal at a mesh point in case i, i = 0 , ..., , is the weightedgeodesic average between n ∗ and the naive normal at that point, with weight µ i = i/
10. Refining four times each set of initial data by the same modifiedsubdivision scheme, a sequence of geometries is obtained. These geometries arecombined into a morphing video, demonstrating changes from a surface gener-ated by the corresponding linear scheme (in the case when all initial normals areequal to n ∗ , see Section 4.3), to the surface generated from the naive normals.Three snapshots of one of the videos are given in Figure 10. Note the changes12 a) (b) (c) Figure 10: Surfaces generated by MLP, starting from the same ”fox” meshwith different initial normals. Colors indicate magnitudes in the range [-0.5,0.5] of curvature at the vertices of the final refined mesh, generated by fouriterations.in the curvatures due to the changes in the initial normals.We compute a numerical quantity which estimates the ”distance” betweenthe limit normals and the normals of the limit surface, for the different initialnormals in cases i = 0 , , ...,
10. For every PNP in a final mesh, we computethe angle between the calculated normal of the PNP and the naive normal inthe final mesh at the point of the PNP (approximating the normal of the limitsurface there).Table 2 contains averages of these angles for the weights µ i , denoted by ξ i , i = 0 , ...,
10. Note, that ξ i decrease monotonically with i . µ i ξ i ° ° ° ° ° ° ° ° ° ° ° Table 2: Averages of the angles between the generated normals at the finalrefinement level and the corresponding naive normals of the final mesh.Table 2 indicates that the closer are the initial normals to the naive normals,the closer are the limit normals to the normals of the limit surface.Another observation is that one can setup initial normals such that a modi-fied scheme computes a surface with unexpected geometry. See Figure 10b, foran example. Observe that in Figure 10 the main changes are in the tail of thefox.
We provide an implementation of the algorithms and comparison methods, de-veloped in this work, in our Github repository at [13]. The implementation isin the Python language. The input and the refined mesh files of the examplesstudied in this paper are in that repository too.13
Conclusions and future work
In this paper we design an extension of the 2D circle average to 3D. This isindeed an extension, since the 3D circle average coincides with the 2D circleaverage when the two averaged PNPs are in the same plane. We modify surface-generating linear subdivision schemes refining points to surface-generating schemesrefining PNPs, using the 3D circle average. The modified schemes can generatea variety of new geometries from a given mesh, by editing the initial normals.These editing capabilities are demonstrated in Figure 10 and by three videos[12].Our investigation of the performance of the modified schemes included moreexamples than those of Section 6.2. An overall observation is that the results ofa modified scheme with naive normals appear to be smoother than those of thecorresponding linear scheme in case the initial mesh is homogeneous (consistsof edges with lengths of the same order of magnitude). Also, the results of themodified approximating schemes are ”blown up” versions of their correspondinglinear counterparts, and are not necessarily contained in the convex hull of theinitial mesh.Several research directions should be addressed in the future: • To prove the convergence of the modified schemes. • To analyze the smoothness of the modified schemes.These two topics are addressed in [11],[14] for certain 2D schemes. • How to support creases/sharp edges with the modified schemes? • To design a new binary operation between two point-normal pairs suchthat the modified schemes with this operation generate limit normalswhich are the normals of the limit surface, a property not possessed byour modified schemes (see Section 6.2).
References [1] Mao Aihua, Luo Jie, Chen Jun, and Li Guiqing. A new fast normal-based interpolating subdivision scheme by cubic B´ezier curves.
The VisualComputer , 32(9):1085–1095, 2016.[2] Edwin Catmull and Jim Clark. Recursively generated b-spline surfaces onarbitrary topological meshes.
Computer Aided Design , 10(6):355 – 355,1978.[3] Pavel Chalmoviansk´y and Bert J¨uttler. A non–linear circle–preserving sub-division scheme.
Advances in Computational Mathematics , 27:375–400,2007.[4] Costanza Conti and Nira Dyn. Analysis of subdivision schemes for nets offunctions by proximity and controllability.
Journal of Computational andApplied Math , 236:461 – 475, 2011.145] Nira Dyn, Michael S. Floater, and Kai Hormann. Four-point curve subdivi-sion based on iterated chordal and centripetal parametrizations.
ComputerAided Geometric Design , 26:279–286, 2009.[6] Nira Dyn, John A. Gregory, and David Levin. A butterfly subdivisionscheme for surface interpolation with tension control.
ACM Transactionson Graphics , 9:160 – 169, 1990.[7] Nira Dyn and Nir Sharon. A global approach to the refinement of manifolddata.
Mathematics of Computation , 1:1–2, 2016.[8] Nira Dyn and Nir Sharon. Manifold-valued subdivision schemes based ongeodesic inductive averaging.
Journal of Computational and Applied Math-ematics , 311:5467, February 2017.[9] Shay Kels and Nira Dyn. Subdivision schemes of sets and the approxima-tion of set-valued functions in the symmetric difference metric.
Foundationsof Computational Mathematics , 13(5):835–865, 2013.[10] Leif Kobbelt. Interpolatory subdivision on open quadrilateral nets witharbitrary topology.
Computer Graphics Forum , 15:409 – 420, 1996.[11] Evgeny Lipovetsky and Nira Dyn. A weighted binary average of point-normal pairs with application to subdivision schemes.
Computer AidedGeometric Design , 48:3648, November 2016.[12] Evgeny Lipovetsky and Nira Dyn. Demo video. , 2018.[13] Evgeny Lipovetsky and Nira Dyn. Supplementary source code. https://github.com/subdivision/CircAvg3D , 2018.[14] Evgeny Lipovetsky and Nira Dyn. C analysis of some 2 D subdivisionschemes refining point-normal pairs with the circle average. ComputerAided Geometric Design , 69:45–54, 2019.[15] Charles T. Loop. Smooth subdivision surfaces based on triangles. Master’sthesis, Department of Mathematics, University of Utah, 1987.[16] Jean-Louis Merrien and Tomas Sauer. From hermite to stationary subdi-vision schemes in one and several variables.
Advances in ComputationalMathematics , 36 (4):547 – 579, 2012.[17] Mark Meyer, Mathieu Desbrun, Peter Schroder, and Alan H. Barr. Discretedifferential-geometry operators for triangulated 2-manifolds.
Visualizationand mathematics , 3 (2):52 58, 2002.[18] J¨org Peters and Ulrich Reif.
Subdivision Surfaces , volume 3 of
Geome-try and Computing . Springer-Verlag Berlin Heidelberg, Berlin Heidelberg,2008.[19] Johannes Wallner. On convergent interpolatory subdivision schemes inriemannian geometry.