Solutions for 3D Modelling

Stage Turntable

  • Position in the local co-ordinate system \(\mathbf{x}=(x,y,1)\)
  • Translation from the local to the global system \(T=(0,10,0)\).
  • Rotation \[R_{-\alpha} = \begin{bmatrix} \cos\alpha & \sin\alpha \\ -\sin\alpha & \cos\alpha \end{bmatrix}\]
  • Homogeneous transformation \[H_{-\alpha} = \begin{bmatrix} \cos\alpha & \sin\alpha & 0 \\ -\sin\alpha & \cos\alpha & 10 \\ 0 & 0 & 1 \end{bmatrix} \]
  • Global position of the actress \[ H_{-\alpha}\mathbf{x} = \begin{bmatrix} x\cos\alpha + y\sin\alpha \\ -x\sin\alpha + y\cos\alpha + 10 \\ 1 \end{bmatrix}\]
  • Global position in heterogeneous co-ordinates \[(x\cos\alpha + y\sin\alpha, -x\sin\alpha + y\cos\alpha + 10)^T\]

The Crane

Step 2

In homogeneous co-ordinates we had the transformation \[ A^T\mapsto R_y(\beta)\cdot(A^T+(0,0,b)^T)\] Because the translation is made before the rotation, we have to rewrite them as homogeneous co-ordinates separately. The translation is \[ H_T = \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & b \\ 0 & 0 & 0 & 1 \end{bmatrix} \] and the rotation is \[ H_y(\beta) = \begin{bmatrix} \cos\beta & 0 & \sin\beta & 0 \\ 0 & 1 & 0 & 0 \\ -\sin\beta & 0 & \cos\beta & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix} \] The actual homogeneous transformation is \(H(\beta)=H_z(\beta)H_T\), or \[ \tilde A^T\mapsto H_y(\beta)\cdot H_T\cdot \tilde A^T\] By completing the multiplication, we get \[ H(\beta) = \begin{bmatrix} \cos\beta & 0 & \sin\beta & b\sin\beta \\ 0 & 1 & 0 & 0 \\ -\sin\beta & 0 & \cos\beta & b\cos\beta \\ 0 & 0 & 0 & 1 \end{bmatrix} \]

Step 2 Validation

Consider an arbitrary homogeneous point \((x,y,z,1)\) and let’s check if the heterogeneous and the homogeneous transformation give the same result.

Heterogeneous

\[(x,y,z)\mapsto R_y(\beta)\cdot(x,y,z+b)^T = \begin{bmatrix} x\cos\beta + (z+b)\sin\beta \\ y \\ -x\sin\beta + (z+b)\cos\beta \end{bmatrix}\]

Homogeneous

\[(x,y,z)\mapsto H_y(\beta)\cdot(x,y,z,1)^T = \begin{bmatrix} x\cos\beta + z\sin\beta + b\sin\beta\\ y \\ -x\sin\beta + z\cos\beta + b\cos\beta \\ 1 \end{bmatrix}\]

Step 3

Similarly to above, the transformation from the joint basis to the base basis is \[ H(\alpha) = H_z(\alpha)H_{T'} = \begin{bmatrix} \cos\alpha & \sin\alpha & 0 & 0\\ -\sin\alpha & \cos\alpha & 0 & 0 \\ 0 & 0 & 1 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix} \cdot \begin{bmatrix} 1 & 0 & 0 & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 1 & a \\ 0 & 0 & 0 & 1 \end{bmatrix} = \begin{bmatrix} \cos\alpha & \sin\alpha & 0 & 0 \\ -\sin\alpha & \cos\alpha &0 & 0 \\ 0 & 0 & 1 & a \\ 0 & 0 & 0 & 1 \end{bmatrix} \]

Step 3 can be validated in the same way as Step 2.