on the common boundary curve.
The remaining parts of this paper are arranged as
follows: Section 2 reviews the G
1
continuity con-
straints; the details of our approximation is introduced
in Section 3; in Section 4, we show some resulting
surfaces, which we compare to surfaces generated by
other G
1
schemes; conclusions and possible future
work are presented in Section 5.
2 CONTINUITY CONSTRAINTS
A triangular B
´
ezier patch of degree n is deﬁned as
S(u, v,w) =
∑
i+ j+k=n
P
i jk
B
n
i jk
(u,v,w).
Here (u,v,w) are barycentric coordinates for the para-
meter; B
n
i jk
(u,v,w) is the generalized Bernstein poly-
nomial; P
i jk
are the control points of the patch. For
two triangular patches to join each other with G
1
con-
tinuity, i.e., the tangent planes from the two adjacent
patches are coplanar at any point along the boundary
curve, certain constraints must be fulﬁlled.
Figure 1: G
1
continuity at a vertex.
For a vertex V with valence n in our mesh, we num-
ber the surrounding patches F
i
, i = 0, . ..,n − 1, in
anti-clockwise order. Figure 1, right, shows a pair
of neighbouring patches F
i−1
and F
i
with common
boundary H
i
, with their domain triangles appearing
on the left of the ﬁgure. The parametric direction for
the partial derivative along the common edge is de-
ﬁned from V to V
i
in the domain triangles.
In this paper, we focus on cubic B
´
ezier patches to
explore the G
1
continuity conditions. Two adjacent
cubic patches F
i
and F
i−1
with their control points are
shown in Figure 2. We deﬁne the following vectors:
~u
j
= H
j+1
i
− H
j
i
, ~v
j
= F
j
i
− H
j
i
, ~w
j
= F
j
i−1
− H
j
i
,
with j = 0, 1,2. Then for any given point along the
boundary curve, the tangent planes calculated from
the two patches are deﬁned by vectors ~u, ~v and ~w, all
of which are quadratic B
´
ezier functions:
~u =
2
∑
j=0
~u
j
B
n
j
(t), ~v =
2
∑
j=0
~v
j
B
n
j
(t), ~w =
2
∑
j=0
~w
j
B
n
j
(t).
H
3
i
F
0
i
F
1
i
F
1
i−1
F
2
i−1
H
0
i
F
0
i−1
H
1
i
H
2
i
F
2
i
Figure 2: Adjacent cubic patches.
If patches F
i
and F
i−1
meet with G
1
continuity, they
must share the control points of the common bound-
ary H
j
i
, j = 0,1, 2, 3. Moreover, the two tangent
planes at any boundary point should be coplanar, i.e.,
there exist scalar valued functions φ(t), µ(t) and ν(t)
such that for any parameter value t, t ∈ [0,1], we have
φ(t)~u = µ(t)~v + ν(t)~w. (1)
To guarantee the proper orientation of the tangents,
assume µ(t)ν(t) ≥ 0. Since it is not guaranteed to
create surface using cubic patches to have G
1
con-
tinuity (Piper, 1987; Peters, 1990), all the existing
G
1
schemes use at least quartic patches (Shirman and
S
´
equin, 1991; Mann et al., 1992)
For all the patches to meet with G
1
continuity at
vertex V , the G
1
constraints of Equation 1 are applied
to all boundaries originating from vertex V . Differen-
tiating these equations and evaluate at vertex V results
in a linear system. Solving this system is called the
“twist compatibility” or “vertex consistency” prob-
lem, and it has been shown that this linear system may
not have a solution (Watkins, 1988; Sarraga, 1988;
Loop, 1994). Even if there exists a G
1
solution by
solving the twist compatibility problem, it is not clear
that the resulting surface has a satisfactory shape.
In the past work, one approach to construct G
1
continuous surfaces is to perform a Clough-Tocher
like domain split on each patch F
i
surrounding vertex
V (Clough and Tocher, 1965). At least quartic degree
patches are used in a domain split method (Shirman
and S
´
equin, 1991). Alternatively, Loop invented a so-
lution to solve the twist compatibility using one sextic
patch for each data triangle (Loop, 1994), with details
introduced in Section 3.1.
Instead of using high degree patches to fulﬁl the
G
1
constraints, we focus on using low degree (cu-
bic) patches to create surfaces with approximate G
1
GRAPP 2008 - International Conference on Computer Graphics Theory and Applications
40