Spatial motion constraints: theory and demonstrations for robot guidance using virtual fixtures | Synapse