**3.1 Geometric and physical modeling of contact**

Contact is a fundamental element of haptic interaction with virtual objects. At large it can be considered as the result of two modeling aspects, first the geometrical aspect then the

On the Integration of Tactile and Force Feedback 57

In general, contact is characterized by an impulsive phase and later by a contact force. The impulsive phase takes into account Signorini law and restitution coefficient of the material, providing an impulsive force that separates the two objects. Later, the contact has to be taken into account during the evolution of the system. In literature this is addressed in two ways. The first way is a penalty function that applies a force directed along the contact direction and proportional to the computed penetration, expressed in terms of penetration depth or volume. Its simplicity is balanced by the fact of reduction of realism. The second way transforms the collision into a constraint equation that prevents the two objects to penetrate. This model is formulated as an additional equation in the Linear

Objects for haptic interaction can be represented in several ways like implicit functions describing the surface (K Salisbury & Tar, 1997), volumetric objects based on voxels, or distance fields, but the most common are triangulated meshes that allow to rely on proven techniques from the fields of simulation and computer graphics. Due to the timing constraints of haptic rendering these representations can take advantage of boundary representation for collision detection or hierarchical representation of the object for reducing the computational effort. An interesting example is the technique of sensation preserving simplification by Otaduy (Otaduy & Lin, 2003) in which an object is represented by a hierarchy of variations of the object, each more detailed than the parent. Every level is represented by an aggregation of convex parts. In this approach the proxy is also an aggregate of convex parts, while collision detection is performed at a given level by comparing pairs of convex elements using the effective GJK algorithm (Gilbert, Johnson, & Keerthi, 1988). The sensation preservation is taken into account when the algorithm has to decide if it is necessary to descend into the hierarchy or to compute the force feedback at the current level. Surface properties of the pair are used to evaluate if the additional details can

The interaction with deformable objects raises the computational requirements of haptic rendering and it requires adapting the deformable representations coming from other domains (Nealen, M"uller, Keiser, Boxerman, & Carlson, 2006) to the specific characteristics of haptics. The fact that the object is deformable means that it has smaller stiffness, reducing the required update rate. Several models have been explored in literature mostly based on Finite Element Models (FEM) depending on the linearization approach and the entity of

The key point of deformable haptics is the management of the potential collision. When the collision between the proxy and the object is identified at a given point in space and time, it is being handled by the collision response. The first stage of the response deals with handling the spatial overlapping that is typically managed by moving the deformable surface outside the proxy, as an extension of the impulsive phase discussed above. The second stage has the role of preventing future penetration and it can be solved using the general methods discussed above: penalty or motion constraints. In cloth simulation, for

Complementarity Problem (LCP) that is used to describe the body dynamics.

provide more sensation information or they are not influent.

**3.1.2 Rigid objects** 

**3.1.3 Deformable objects** 

supported deformations.

physical one. The former describes the geometrical representation of the shape of the proxy and the objects touched, while the latter comprises the effects of deformation and material properties like friction. In terms of temporal scale it is possible to organize contact distinguishing between first impact and then continuous contact, having two different time scales and physical modeling.

At beginning of haptic rendering research, contact has been modeled by representing the proxy as a single point like in the reference god-object algorithm (Zilles & J. Salisbury, 1995) or as a rigid sphere (Ruspini et al., 1997). In both cases the interaction between the proxy and the objects is based on geometrical considerations with the objective of avoiding penetration. The proxy is mass-less, and it produces a force on the handle proportional to the material's stiffness without being affected by such force. This model is effective for rendering tool proxies that are rigid, with the advantage of high performance, requiring only point or sphere contact with object geometry. This model contains several simplifications that allow discussing the later improvements. First, both the proxy and the object are considered rigid in geometrical terms, while for realistic contact it will be necessary to represent soft fingers and deformable bodies. Second, the contact has no friction, an aspect that can be integrated with or without a complete physic simulation of the proxy. Third, the feedback has only a force component, while contact for grasping requires a torsion component. Fourth, contact is quasi static because there is low frequency contact transient.

There is anyway a general result that has been applied by later approaches with different geometry models and physical properties: the proxy is constrained to move over the surface of the object without penetration while the haptic handle pulls it around. The other general result is the importance of a collision detection method that allows to identify or to predict the intersection of the proxy with the object. For a review on the topic see (Teschner et al., 2005). As in this case it is not necessary that both proxy and object have the same geometrical representation, it is instead more usual the case of adopting an asymmetric scheme, knowing that the proxy object is under the control of the user.
