50 6. GLOBAL 2D SHAPE INTERPOLATION

where w

i

2 Œ0; 1. If we put a large w

i

, the rotation and scale of the triangle

i

would be

suppressed. We thus believe that our framework provides more user controllability over

previous approaches.

(iii) As is shown in [Baxter2008], we can symmetrize the interpolation by symmetrizing the

error function. Let E

i

.t/ be a global error function for a local homotopies A

i

.t/, and E

1

i

.t/

be that for A

1

i

.t/. en deﬁne a new error function by

E

0

i

.t/ WD E

i

.t/ C E

1

i

.1 t/:

is is symmetric in the sense that it is invariant under the substitution A

i

A

1

i

and

t 1 t . at means that the same minimizing solution is given if we swap the initial and

the terminal polygons and reversing time.

6.5 EXAMPLES OF CONSTRAINT FUNCTIONS

Now we give a concise list of the constraints we can incorporate into a constraint function

C.v

1

.t/; : : : ; v

n

.t//. See the demonstration video in [Kaji2012].

• Some points must trace speciﬁed loci (for example, given by B-spline curves). is is realized

as follows: let u

k

.t/ be a user-speciﬁed locus of p

k

with u

k

.0/ D p

k

and u

k

.1/ D q

k

. en

add the term c

k

jjv

k

.t/ u

k

.t/jj

2

, where c

k

0 is a weight.

• e directions of some edges must be ﬁxed. is is realized by adding the term c

kl

jjv

k

.t/

v

l

.t/ e

kl

.t/jj

2

, where e

kl

.t/ 2 R

2

is a user-speciﬁed vector and c

kl

0 a weight. is

gives a simple way to control the global rotation.

• e barycenter must trace a speciﬁed locus u

o

.t/. is is realized by adding the term

c

o

jj

1

n

P

n

kD1

v

k

.t/ u

o

.t/jj

2

, where c

o

> 0 is a weight. is gives a simple way to control

the global translation.

Likewise we can add as many constraints as we want.

Get *Mathematical Basics of Motion and Deformation in Computer Graphics* now with O’Reilly online learning.

O’Reilly members experience live online training, plus books, videos, and digital content from 200+ publishers.