Angular clearance bound for a rotating body (source code)

= Angular clearance bound for a rotating body

A <rigid body> can hit an obstacle while its reference point stays fixed. An <angular clearance bound for a rotating body> controls the motion of every body point, allowing a <collision detection> calculation to reason about orientations between sampled poses.

Let a <compact set> $B$ lie within a <bounding radius for rigid-body clearance> $R$ of a fixed pivot. For a planar <rotation matrix> $Q_\theta$, a point $p\in B$ moves by a <chord of a circle>:
$$
\lVert Q_{\theta+\delta}p-Q_\theta p\rVert=2\lVert p\rVert|\sin(\delta/2)|\le2R|\sin(\delta/2)|\le R|\delta|.
$$
The same correspondence bounds the <Hausdorff distance> between the two body sets. For a fixed nonempty <closed set> of obstacles $O$, let $d(\theta)$ be the nonnegative <set distance> between $Q_\theta B$ and $O$. The <triangle inequality>, applied to each point pair and then to their <infima>, gives
$$
|d(\theta+\delta)-d(\theta)|\le2R|\sin(\delta/2)|\le R|\delta|.
$$
This is an explicit <Lipschitz continuity> bound. It concerns a fixed obstacle and the specified rigid geometry, rather than a universal constant for every robot.

To cover every intermediate orientation with excursion at most $\alpha\ge0$ from a sampled pose, use $2R\sin(\min\{\alpha,\pi\}/2)$, or the simpler $R\alpha$. The cap matters because the <sine> is not increasing beyond $\pi/2$. With translation displacement bounded by $\Delta$, the <triangle inequality> gives the sufficient clearance reduction $\Delta+R\alpha$.

For an original example, a body with $R=0.40\,\mathrm m$ rotating by at most $5\,{}^\circ$ moves any point by at most $2R\sin(2.5\,{}^\circ)=34.90\,\mathrm{mm}$. An exact sampled clearance of $50\,\mathrm{mm}$ leaves at least $15.10\,\mathrm{mm}$ throughout that angular excursion when the pivot and obstacles stay fixed.

The whole excursion must be bounded, not just the difference between endpoint orientations modulo $2\pi$. A full revolution has identical endpoint orientations but can sweep through an obstacle. Likewise, a unit half-length rod rotating from $-30\,{}^\circ$ to $+30\,{}^\circ$ about its center clears an obstacle point at $(1,0)$ by $0.5$ at both endpoints but touches it midway. <Adaptive clearance sampling> therefore uses bounds on the actual interpolated motion. Configuration-space orientation and clearance are central to the continuous-path planning problem.<Robotic Systems by Kris Hauser>[Chapter 9, rotational configuration-space obstacles and planning in SE(2)]{ref}