The great majority of present day commercial robots are programmed using ``robot-level'' programming technology. The only spatial representation necessary to support this type of programming is a stored description of robot motion. Typical components of such a description are:
These components are often amalgamated in a ``trajectory'', which describes the sequence of positions, velocities, or forces that the programmer has specified. A sophisticated program may have a number of trajectories, which can be selected or modified, depending on sensory input.
A powerful set of techniques for motion representation are the configuration space methods, which describe robot motion in a multi-dimensional space. This is useful in describing general robot motion, where it can be necessary to simultaneously move an object in any of three directions (x,y, and z axes), while rotating it around any of three axes. The complete motion can be planned and described in a six dimensional configuration space. Path planning techniques using this type of configuration space are described by Lozano-Perez [LP83], Gouzenes [Gou86], and Donald [Don87].
Multi-dimensional motion spaces for reasoning about force control problems are described by Mason [Mas81]. His system specifies motion along ``C-surfaces'', which are surfaces in a 6-dimensional space that defines force application in three directions, in addition to position. C-surfaces can be used to describe the motion involved in complex force control tasks such as drawing on a blackboard with chalk, or tightening a screw while holding a screwdriver in the slot.
Athough the shape and arrangement of workpieces are to some degree implicit in the programmed trajectory or C-space motion, it would be difficult to derive very much useful information about the workpiece from this ``representation''. (There is certainly some simple information that could be deduced - consider, for example, the possibility of finding the body shape of a car from the path followed by a spray painting robot).
I include a discussion of these motion representations for completeness, but they are really too specialised (to robots) to be applied to more general questions of spatial reasoning.