Revision db7bf3030d2674ea0c67064183593ff7dd16106d (click the page title to view the current version)

3D Modelling Part II

Changes from db7bf3030d2674ea0c67064183593ff7dd16106d to ff7b1b60424407b2c5ef721e9f53e1d24be39dca

---
title: More Mathematics for 3D Modelling
categories: session
geometry: margin=2cm
fontsize: 12pt
---

This will be the last session on 3D Modelling, designed to tie up loose ends.
It contents will therefore depend on the challenges encountered in the three first sessions.

# Learning Outcomes

+ Be able to use homogeneous coordinates to model and manipulate motion in 3D

# Briefing and questions

+ [3D Motion]() (additional notes)
+ Quaternions. Ma (2004) Appendix 2.A.  

# Exercises

1. Review the stage turntable exercise from [last week](3D Modelling).
   Use homogeneous co-ordinates to find the global co-ordinates of
   the actress (item 5).
   Check that your calculations match with what you did with heterogeneous co-ordinates.
2.  Given a rotational matrix
    $$
    \begin{bmatrix}
    \cos(\pi/6) & -\sin(\pi/6) & 0 \\
    \sin(\pi/6) & \cos(\pi/6) & 0 \\
    0 & 0 & 1 
    \end{bmatrix}
    $$
    and a translation $\vec{v}=[1,0,2]$.

    What are the homogenous matrices describing each of the 
    following operations:
    + rotate by $R$ and then translate by $\vec{v}$
    + translate by $\vec{v}$ and then rotate by $R$ 
3. Review the crane exercise from [last week](3D Modelling) 
   and redo it using homogenous co-ordinates.
   Check that your calculations match regardless of the method used.
4.  Suppose you have rotated by $R$ and then translated by $\vec{v}$
    as given in the previous exercise.
    What is the homogeneous matrix to undo this operation?

## Exercises from Ma (2004)

1. Exercise 2.11.
   To calculate eigenvalues and -vectors in Python, you can
   use `numpy.linalg.eig`.
1. Exercise 2.7.  
1. Exercise 2.10.  
2.  Ma (2004:40) Exercise 2.14.  Hint: start by drawing 
2.  Ma (2004:40) Exercise 2.13

# Debrief

+ Please ask for solution (sketches) to be published after the session.
I showed this [sample code](Python/homogeneous.py) in class.
It shows one way of dealing with homogeneous co-ordinates 
together with the plotting tools that we have used.

+ [Sample Solutions](Solutions/3D Modelling Part II)