Upload
others
View
3
Download
0
Embed Size (px)
Citation preview
1
Splines for Surfaces of Arbitrary Topology
Mike Neamtu*Center for Constructive Approximation
Vanderbilt University
*part of the talk is based on joint work with Dan Gonsor, The Boeing Co.
Curves and Surfaces, Avignon ‘06
2
Basic Heuristic Questions
• Why is there a “schism” between classical bivariate spline theory and CAGD?
• Why can’t we use the same (or slightly modified) methods of bivariate spline theory to construct parametric surfaces in CAGD?
• Why don’t we seem to have a concept of a linear spline space defined for surfaces of arbitrary topological type? (Note: “free-form” splines typically do not form a vector space).
• Are algebraic polynomials suitable for defining splines on surfaces?
• Why don’t we use the “R” in NURBS?
3
Bivariate Splines
• For this talk, the term “spline” will mean a bivariate piecewise analytic function defined on a locally finite “triangulation” (w.l.o.g.)- What does a “triangulation” mean? “Triangulation” of what?- Why not “spline space”?- Smoothness?
• “Euclidean spline” is a bivariate piecewise (algebraic) polynomial on a triangulation in the plane:
∆( ) ( )rdS S∆ = ∆
4
Surfaces
Assumptions:- a surface M is a 2-manifold immersed in- for simplicity, M is assumed to be closed i.e., compact and without boundary
- a triangulation of M is assumed to be given
3�
∆
M
∆
5
Objectives
• Find a “useful” analog of the space of scalar spline functions on M, with similar properties to , so as to be able to do “constructive approximation theory” (see e.g., the upcoming book: Larry Schumakerand Ming-Jun Lai, Splines on Triangulations, Cambridge Univ. Press,to appear.)
• Simplicial surface should serve as a natural parameter domain for the splines
• The spline space should contain “smooth” functions so that we can represent/approximate smooth surfaces M using parametric splines.
• Would like to have a “Theorem” of the sort: There is a local approximation/interpolation method of particular type (degree/smoothness/…) iff there is a planar analog of such a method.
( )S ∆
∆
( )rdS ∆
6
Approaches to Constructing Smooth Surfaces Using Spline-like Functions
• Surfaces homeomorphic to a subset of the torus (plane): Classical splines, NURBS, many other approaches that work for the Euclidean setting (well-known problems arise when one wants to use these methods to model surfaces of arbitrary genus).
• Methods based on stitching patches together using various requirements/formulations of “smoothness”
• “Exotic” approaches (e.g. subdivision, PDEs, singular parametrizations) to cope with the difficulties associated with surfaces of arbitrary topology
• Other
7
Stitching Triangular Patches Together Smoothly
3 3: , :p T p T′ ′→ →� �
1 :
det( , , ) 0u u v
G
p p p′′ =Necessary condition for
along the common edge
(nonlinear!)
vp
up up ′′
M
T′T
p p′
1( )G
8
Reparametrization ApproachDefinition (Hahn, Peters,…)Let be (planar) triangles with edges , respectively. A mapping r,
defined in a neighborhood of e’, is a reparametrization between and if:
(a) r(e’) = e,(b) a neighborhood of e’ , interior to T’, is mapped to a region exterior to T(c) r is a homeomorphism on a neighborhood of e’(d) r is a map
T′e e′
T
r
,T T′ ,e e′T T′
kC
9
DefinitionLet be two regular maps. Then the patches join with continuity if there exists a
reparametrization r between T and T’ such that the values and
all derivatives of up to order k are equal along edge e.
Reparametrization Approach (cont.)
3 3: , :p T p T′ ′→ →� �
Thus, the condition of existence of reparametrization is a nonlinear
condition: if p, p’ and q, q’ join with continuity, p+q and
p’+q’ may not!
( ), ( )p T p T′ ′
T′T
p p′
( )p T( )p T′ ′
r
kG
kG kC
p p r′ oand
10
Conditions on Reparametrizations:Compatibility Constraints Around Vertex
“Vertex enclosure constraints” on the reparametrizations:and the identity mapping must agree at the
central vertex, together with all derivatives up to order .
( )... nr r r′o o o idk
TT′e e′
rr ′
( )nr
11
Strengthening of Compatibility Constraints Around Vertex
•To construct splines of arbitrary order of smoothness (using a fixed set of reparametrizations), one could strengthen the vertex enclosure condition and require that the composition of the reparametrizations be the identity map
•The reparametrizations should map lines to lines –i.e., they should be projective transformations
12
• Such stronger conditions are trivially satisfied for a planar triangulation, where one can take the reparametrizations to be the identities
• Another example is the torus. More formally, we can consider a set of triangles . We say that it is an (abstract) triangulation of the torus if there exist affine reparametrizations satisfying the vertex enclosure constraint.
• For a general surface, such affine reparametrizations cannot be found. However, it is known that one can remove a single vertex from the triangulation and this will guarantee existence of such affine reparametrizations.
• “Manifold splines” of X. Ge,Y. He, H. Qin
Strengthening of Compatibility Constraints Around Vertex (cont.)
{ }iT′∆ =
13
Objectives Formulated More Clearly
What we desire:
• Splines that can lead to arbitrary smoothness (smoothness being defined in terms of reparametrizations, these reparametrizations being fixed in advance and independently of the desired degree of smoothness)
• The sought-for splines should mimic most important properties of bivariate splines
• The splines should form linear spaces (note the difference between “nonlinear spaces” and “nonlinear methods”employing linear spaces)
14
Spherical Splines
• The basic idea (Alfeld, N., Schumaker ‘96): start with a spherical triangulation;
• Locally the spherical spline space
is spanned by Bernstein basis
polynomials built using the spherical barycentric coordinates.
1 2 3
1 2 3
1 1 2 2 3 3
, , ,
, ,
.
v v v
b b b
v b v b v b v
v
= + +
Given a spherical triangle with vertices define
the spherical barycentric coordinates of a point
w.r.t. to this triangle by :
15
Barycentric Coordinates Defined for Arbitrary Surfaces?
Consider a smooth surface M and a triangulation . Then
existence of barycentric coordinates requires that for each triangle Tof there exists a space (“linear functions”) of infinitely smooth functions such that the following conditions are satisfied:
– are 3-dimensional and can interpolate at vertices of T
– restricted to each edge of T is 2-dimensional
– The “polynomial” spaces (spanned by “B-polynomials”) can be used to obtain splines of arbitrary high order of smoothness locally
(for large enough n), i. e.,
,
| |
: ,T n Tn i i i
i n
c B cπ=
= ∈ ∑ R
C∞ ∆
TL
TL
TLTnπ
∆
16
Barycentric Coordinates Defined for Arbitrary Surfaces? (cont.)
1
,
,
T
T
n
T T M
f n
f f fn
C
T T f
n ππ ′
−
′ ∈ ∆∈
′ ′∈
′ ∈
L e t b e tw o a d ja ce n t tr ia n g le s o n .
S u p p o s e th a t fo r e v e ry a n d e v e ry
th e re e x is ts a n su ch th a t a n d jo in
w ith co n tin u ity a lo n g th e co m m o n e d g e
o f . T h e n e a c
m
L a
h
e m
LT
C T T
T LT
∞ ′∪′ ′
ca n b e e x te n d e d
a s a fu n c tio n o n w h ic h , w h e n re s tric te d
to , b e lo n g s to .
17
What are the reparametrizations on the sphere?
On the sphere the reparametrizations are linear rational!
T T′
r
�T′�T
v′�v′
1 2 3
1 2 3
1 0
0 1
0 0
, , , , 0.
( ) , (1,1,1), ( , , ) ,
( , , ) ,
t
tu
v
w
u v w w
Bbb r b b b b b
Bb
b b b b B ∈ <
′′= = = =′
′ ′ ′ ′= =
11
R
18
• For a general surface the reparametrizations are also linear rational IF barycentric coordinates exist.
• Thus, a necessary condition for existence of barycentric coordinatesfor a surface M, parametrized by a given triangulation , is that for each pair of adjacent triangles of , viewed as planar parameter domains, there exists a projective reparametrization (of the above form) between them, satisfying the vertex compatibility condition:
for every vertex.
What are the reparametrizations on a general surface?
r
( )... ,nBB B I′ ⋅ ⋅ =
B
∆∆
19
Do such reparametrizations always exist?
• Yes
• This is a consequence, among other things, of the well-known fact that every surface can be given a projective structure
• How do we construct such compatible reparametrizations?
• How do we use them to build splines?
20
Periodicity(1) Consider any “closed chain” of triangles:
and corresponding reparametrizations:
satisfying the periodicity condition:
Then
( ), , ,..., nr r r r′ ′′
( ), , ,..., ,nT T T T T′ ′′
( )... nr r r r Id′ ′′ =o o o o
( )... , a.e., nf r r r r f f′ ′′ = ∀o o o o o
rr ′
( )nrT
T′
( )nT
21
Example
1b
(0,1)
(1,0)( 1,0)−
(0, 1)−
2b1b′
2b′
1 2( , )tb b′ ′
1 2( , )tb b
T T′
0 1
1 0(1,1), ,
Bbb rb B
Bb−′ ′= = = ′
1=1
4, r r r r Id B I= =o o o
22
Periodicity (cont.)
(2) Consider a space such that
(3) Consider a space such that
( ) ( )... , , , ,..., ,n nTf r r r r f f L T T T T′ ′′ ′= ∀ ∈ ∀o o o o o
TL
TL
( ) ( )... , , , ,..., ,n nT Tf r r r r L f L T T T T′ ′′ ′∈ ∀ ∈ ∀o o o o o
Example: The torus2T
23
Construction of Spaces• Fix a triangle T and a 3-dimensional space of the
form , where is a scalar function, positive onT.
• The existence of projective reparametrizations guarantees that extends to neighboring triangles of T to a space of the same form. In particular, let T’ be a triangle adjacent to T. Then
1 / Thπ
1 1 1( ) ( ( )) ( )( ) : : ( ), ( )
( ) ( ( )) ( ) 1T TT T T
b r b b BbL b L b r b
h b h r b h b Bb
π π π′
′
′ ′ ′′ ′= = = = =′ ′ ′
TLTh
TL
TL
24
Construction of Spaces (cont.)
• Composition of reparametrizations r may introduce singularities, hence must be homogeneous of degree 1.
• Our choice is motivated by the spherical case:
where A is positive definite on the standard
2-simplex.
( ) ,tTh b b Ab=
Th
TL
25
A First Solution
• Instead of considering a given , consider first a special “standard” triangulation , for any particular surface .
• Prove existence of matrices A for .
• Then modify triangulation in a sequence of steps (vertex insertion/edge swapping) to obtain . Show that in each elementary step one preserves the existence of the As for each modified triangulation.
∆′∆
M
′∆′∆
∆
26
Example: n-torus
• Decompose an n-torus as a collection of pairs of pants and triangulate them in a standard way.
Triangulate hexagons
Two types of vertices: valence 6 and valence 8
Two types of pairs of adjacent triangles in the triangulation:
8
8
6
8
6
8
6
8
27
8
Example: n-torus (cont.)
8
6
8
6
8
6
8r r’
1 0 2
0 1 2
0 0 1
( ) , ,Bb
b r b BBb −
′′= = = ′ 1
1 0 1
0 1 1
0 0 1
( ) , Bb
b r b BBb −
′ ′′ ′ ′= = = ′ ′ 1
3 3 3
3 1 2
3 2 1
,A =
3 3
33
1
1
2
1 23
3
3
28
Using Homogeneous Geometry
2 1 2 3: , , ( , , )CT t
T
CbP v b C
b A b
= = ∈ ∆ =
c c c
For a triangle T, consider a linear patch:
then clearly
Thus, the universal covering space of M can be chosen to bea quadric surface!
1 1, .t t CT Tv C A C v v P− − = ∀ ∈
29
Using Homogeneous Geometry (cont.)
• Thus, choose a single standard quadric surface, which will depend on the topology of the surface
• Equip the surface with one of the standard homogeneous geometries: for most surfaces we can use the hyperbolic geometry, e.g., choose one sheet of the standard hyperboloid of two sheets:
2 2 2 1z x y− − =
30
Using Homogeneous Geometry (cont.)
• Thus, instead of the original triangulation , we can consider a combinatorially equivalent triangulation , which, depending on the topology of M, consists of either spherical, planar, or hyperbolic triangles.
• The triangulation is an abstract triangulation in that there exists a compatible collection of reparametrizations such that for each pair of adjacent triangles in there is a projective reparametrization between the two triangles.
∆′∆
′∆′∆
31
Algorithm For Finding Triangulation : An Example
LemmaA set of hyperbolic triangles is an abstract
triangulation of an orientable surface of genus g>1 if and only if:(a) the sum of the areas of all triangles in is ;(b) the sum of angles around each vertex is ;
(c) common sides of adjacent triangles have equal length.
′∆
{ }iT′∆ =
′∆2π
4 ( 1)gπ −
32
Algorithm Finding Triangulation : An Example (cont.)
′∆Iterative Algorithm(1) Select a set of interior angles of triangles satisfying
conditions (a), (b).(2) Modify locally angles associated with adjacent triangles,
where edge-length discrepancy is largest, while preserving conditions (a), (b).
{ }iT
T T′
33
Related Work
• H. Ferguson & A. Rockwood, ’93• J. Wallner ’96, J. Wallner & H. Pottmann, 97• C. Grimm, ’95,…
34
Spline Spaces Defined
DefinitionLet be an (abstract) triangulation of M, depending on
the topology of M, consisting of spherical, planar, or hyperbolic
triangles. The spline space of degree d and smoothness r is
defined as
such that for every pair of adjacent triangles , the values
and derivatives of and up to order r are identical
along the common edge. Here is the vector of barycentric
coordinates w.r.t. triangle .
| |
( ) : : , ( ) ( ), ,j j jT T Tr nd j j j i i
i n
S f T f b c B b=
′∆ = → =
∑R
{ }iT′∆ =
,j kT T
k jkf rojfjTb
jT
35
Spline Spaces Defined (cont.)
• Since there is a 1-1 correspondence between triangles in and , functions in the spline space can also be parametrized by the simplicial surface .
• Standard Bezier formalism can be used with the defined spline space.
• Essentially the constructive aspects of the new space are the same as for the classical spline spaces (such as continuity conditions); hence we can extend any available local approximation/interpolation method in a straightforward way to any surface M (e.g., the Powell-Sabin and other macro-element methods)
∆′∆
∆
36
Example: Continuity Conditions for Bezier Triangles
200 200c c′=
110 110 c c′=
020 020c c′=
011c
002c
101c
002c′
101c′
011c′
101 200 110 101 011 110 020 011, c uc vc wc c uc vc wc′ ′= + + = + +
u
u
vw
wv
37
Parametric Surfaces: 15S
38
Parametric Surfaces: 28S
39
Rational Splines
• Construct, for any given spline space a positive scalar spline and divide every spline in this space by this positive spline. If d is sufficiently large (compared to r), such positive function will exist.
• The above is easily understood for B-spline-type constructions (e.g., simplex splines): obtain piecewise rational functions by dividing by a convex combination of B-splines (which are nonnegative). In this way one can obtain partition of unity and classical control points satisfying the convex hull property.
• (In the homogeneous setting) parameterize the sphere/hyperbolic plane rationally (Wallner/Pottmann)
rdS
40
Open Questions
• Obtain results about approximation power of the spaces (at leastin the case d>3r+1); use projection to tangent planes and use results for algebraic polynomial splines
• Parametrization issue (e.g., analog of Floater parametrization?)
• Making parametrization a (more) local process – e.g., divide up the triangulation/surface by geodesic closed curves.
• Adding a handle to the n-torus
• Going from genus 0 or 1 to higher genus.
• Gain more experience (e.g., rational splines, various standard approximation schemes)
41
Adding a Handle
Attaching a cylinder does not work (unless we retriangulate globally):
42
Adding a Handle (cont.)
geodesic