Point displacement constraints constitute an attractive technique for interactive design of smooth curves, surfaces and volumes. The user defines an arbitrary number of "control points" on the object and specifies their desired spatial location, while the system computes the object's degrees of freedom so that the constraints are satisfied. A constraint-based interface gives a feeling of direct manipulation of the object. In this paper we introduce soft constraints, constraints which do not have to be met exactly. The softness of each constraint serves as a non-isotropic, local shape parameter enabling the user to explore the space of objects conforming to the constraints. In addition, there is a global shape parameter which determines the amount of similarity of the designed object to a rest shape, or equivalently, the rigidity of the rest shape.
We present an algorithm termed probabilistic point constraints (PPC) for implementing soft constraints. The PPC algorithm views constraints as stochastic measurements of the state of a static system. The softness of a constraint is derived from the covariance of the "measurement". The resulting system of probabilistic equations is solved using the Kalman filter, a powerful estimation tool in the theory of stochastic systems. We also describe a user interface using direct manipulation devices for specifying and visualizing covariances in 2-D and 3-D.
The algorithm is suitable for any object represented as a parametric blend of control points, including most spline representations. The covariance of a constraint provides a continuous transition from exact interpolation to controlled approximation of the constraint. The algorithm involves only linear operations and allows real-time interactive direct manipulation of curves and surfaces on current workstations.