Next: Contact State Transitions Up: A Program for Reasoning Previous: A Program for Reasoning

## Representing Contact State

In terms of the ASSF representation, a ``contact'' is one item on the list of things that are in contact with a particular feature. Each item on this list refers to a second shape feature (on a different object) that is in contact with this one. The qualitative state information implicit in this representation of a contact includes the names of the two objects that are in contact, the relative size of the features which are in contact, the relative orientation of the objects which they belong to, and the qualitative shapes of the features, and their neighbouring features.

The most important of these qualities for the purposes of sliding analysis is the shape of the two features. Different sliding behaviour can be observed for each of the differently shaped feature pairs described in the following list:

1.
Contact between two vertices only. This results in each vertex appearing on the contact list associated with the other. (See figure 5.1)

2.
Contact between a line segment and a vertex. Each appears on the contact list of the other. (See figure 5.2)
;

3.
Contact between two line segments of the same length, which are exactly aligned. Each line segment appears on the contact list of the other. In addition to this, the vertices at each end of each segment appear on the contact list associated with the vertices at each end of the other segment. (See figure 5.3)
;

4.
Contact between two overlapping line segments. In this case, the contact list of each line segment includes the other line segment, and also the vertex at one end of the other. Each vertex also has the other line segment on its contact list. The side of the line segment on which the contacting vertex appears separates two types of overlap contact - either both vertices are clockwise from the contacting segment when the boundary of the object is being traversed, or both are anticlockwise. (See figure 5.4)
;

5.
Contact between two line segments, where one is longer than the other, and the longer one extends past the shorter at both ends. In this case the contact list of the longer will include the shorter segment, and also the vertex at each end. The contact list of the shorter will have only one entry - the larger line segment. (See figure 5.5)
;

6.
Contact between a vertex and a convex curve. Each appears on the contact list of the other. (See figure 5.6)
;

7.
Contact between a vertex and a concave curve. Each appears on the contact list of the other. (See figure 5.7)
;

8.
Contact between a line segment and a convex curve. Each appears on the contact list of the other. The vertices at the ends of the line segment will not be in contact with the curve. (See figure 5.8)
;

9.
Contact between a line segment and a concave curve is not possible, but the vertices at each end of the line segment can be in contact with a concave curve. (See figure 5.9)
;

10.
Two convex curves can contact each other. (Concave curves cannot.) (See figure 5.10)
;

11.
A concave and convex curve can contact each other only if the angle of the convex curve is smaller than the concave curve. (See figure 5.11)
;

In addition to the actual shape of two features in contact, it is apparent from the above list that the shape and contact status of neighbouring features is also relevant in distinguishing between qualitative contact states. The shape of neighbouring features becomes more important, however, when considering the ways in which the contact state can change as the objects slide past each other.

Next: Contact State Transitions Up: A Program for Reasoning Previous: A Program for Reasoning
Alan Blackwell
2000-11-17