Graphics Reference
In-Depth Information
Floating attachment locally abutting
A point of object a is constrained to lie on the surface of b , using the implicit function of object b as
previously mentioned. In addition, the normal of object a and the point must be colinear to and in the
opposite direction of the normal of object b at the point of contact. The normal of object b is computed
as the gradient of its implicit function.
Other constraints are possible. Witkin, Fleischer, and Barr [ 26 ] present several others as well as
some examples of animations using this technique.
ðu a ; v a Þ rI b ð
P a ðu a ; v a ÞÞ
jrI b ð
2
E ¼ðI b
P a
N a
ð
ðu a ; v a ÞÞÞ
þ
P a ðu a ; v a ÞÞj þ
1
:
0
Energy constraints are not hard constraints
While such energy functions can be implemented quite easily and can be effectively used to assemble a
structure defined by relationships such as the ones discussed previously, a drawback to this approach is
that the constraints used are not hard constraints in the sense that the constraint imposed on the model is
not always met. For example, if a point-to-point constraint is specified and one of the points is moved
rapidly away, the other point, as moved by the constraint satisfaction system, will chase around the
moving point. If the moving point comes to a halt, then the second point will, after a time, come to
rest on top of the first point, thus satisfying the point-to-point constraint.
7.6.2 Space-time constraints
Space-time constraints viewmotion as a solution to a constrained optimization problem that takes place
over time in space. Hard constraints, which include equations of motion as well as nonpenetration con-
straints and locating the object at certain points in time and space, are placed on the object. An objective
function that is to be optimized is stated, for example, to minimize the amount of force required to
produce the motion over some time interval.
The material here is taken from Witkin and Kass [ 27 ] . Their introductory example will be used to
illustrate the basic points of the method. Interested readers are urged to refer to that article as well as
follow-up articles on space-time constraints (e.g., [ 3 ][ 16 ]).
Space-time particle
Consider a particle's position to be a function of time, x ( t ). A time-varying force function,
f ( t ), is
responsible for moving the particle. Its equation of motion is given in Equation 7.93 .
0 (7.93)
Given the function f ( t ) and values for the particle's position and velocity, ( t 0 ) and x . ( t 0 ), at some
initial time, the position function, x ( t ), can be obtained by integrating Equation 7.93 to solve the initial
value problem.
However, the objective here is to determine the force function, f ( t ). Initial and final positions for the
particle are given as well as the times the particle must be at these positions ( Eq. 7.94 ). These equations
along with Equation 7.93 are the constraints on the motion.
m€
x
ðtÞ
f
ðtÞm g
¼
x
ðt 0 Þ¼
a
(7.94)
x
ðt 1 Þ¼
b
 
Search WWH ::




Custom Search