8.1 The Method of Separating Axes 419
and isUnique[0] is true. If the minimum is obtained from an edge E
j
, then index[0]
stores j and isUnique[0] stores false. The same conventions apply for the one-
indexed entries corresponding to the maximum of the interval.
To support calculation of the contact set and the new configuration structure, we
need to modify the extremal query, call it
GetExtremeIndex. For stationary objects, we
just need to know the index of the vertex that projects to the extreme interval value.
For moving objects, we also need it to tell us whether exactly one ver tex projects to
the extreme or an entire edge projects to the extreme. The signature for the query is
int GetExtremeIndex (ConvexPolyhedron C, Vector D, bool& isUnique);