No Title
22C:161 Introduction to Robotics Spring 1995
Homework 2 - Due Monday , February 5
These homework problems are similar to the Programming Exercises at the
end of Chapter 2 (p.66-67). See them for clarification. In this
class, however, we'll be doing all exercises in three dimensions rather
than in two.
In this assignment, you'll write and test routines that will be used during
the rest of the course. You should represent rotation matrices as 3x3 arrays
of doubles, and 4x4 homogeneous transformations as 4x4 arrays of doubles.
- Write procedures to multiply rotation matrices, to multiply 4x4 transformation
matrices, to multiply a rotation matrix by a 3-vector, and to transform a 3-vector
using a 4x4 transformation (so, arguments will be 4x4 matrix and 3-vector or
4-vector with 1 as last component - your choice).
- Write procedures (or functions, if you prefer) to set up rotations matrices Rx(theta),
Ry(theta), and Rz(theta) (where theta is specified in degrees).
- Write a procedure (or function) to produce the inverse of a rotation matrix.
- Write a procedure (or function) to produce a 4x4 transformation given
a rotation matrix and an x,y,z translation.
- Write a procedure (or function) to produce the inverse of a 4x4 transformation.
- Write a small file documenting your routines. E.G. "(double *) InverseTransform(double * T)
returns the 4x4 transformation matrix that is the inverse of the input transformation T".
- Interpret Programming Exercise 2, Problem 5 on page 67 as a three-dimensional question.
Create 4x4 transformations for T(A,U), T(A,B), and T(U,C) (where T(P,Q) means T with
presubscript P and presuperscript Q). The use the routines you've written to
compute T(C,B). Print out T(A,U), T(A,B), T(U,C), and T(C,B).
- Check your work by creating, transforming, and drawing LINKs and COORDINATE FRAMEs using the class graphics package.
class - Jim Cremer
Wed Jan 25 13:14:01 CST 1995