Difference between revisions of "Transformations"

From Robotics
Jump to: navigation, search
Line 8: Line 8:
 
</math>
 
</math>
  
The basic transformation matrix is an identity matrix, which corresponds to an empty transformation. So an identity matrix as transformation matrix results in the original vector no matter how many dimensions the vector has. The following equations show this for two and three dimensions:<br/>
+
The basic transformation matrix is an identity matrix, which corresponds to an empty transformation. So an identity matrix as transformation matrix results in the original vector no matter how many dimensions the vector has. The following equation shows this for three dimensions:<br/>
:<math>\begin{align}
+
:<math>
\vec{\mathbf{p}}_1&=&\mathbf{I}_2\cdot\vec{\mathbf{p}}_0&=&
+
\vec{\mathbf{p}}_1=\mathbf{I}_3\cdot\vec{\mathbf{p}}_0=
\left[\begin{array}{cc}
 
1&0\\
 
0&1
 
\end{array}\right]
 
\cdot
 
\left[\begin{array}{c}
 
x_0\\
 
y_0
 
\end{array}\right]&=&
 
\left[\begin{array}{c}
 
1\cdot x_0+0\cdot y_0\\
 
0\cdot y_0+1\cdot y_0
 
\end{array}\right]&=&
 
\left[\begin{array}{c}
 
x_0\\
 
y_0
 
\end{array}\right]&=&
 
\vec{\mathbf{p}}_0 \\
 
\vec{\mathbf{p}}_1&=&\mathbf{I}_3\cdot\vec{\mathbf{p}}_0&=&
 
 
\left[\begin{array}{ccc}
 
\left[\begin{array}{ccc}
 
1&0&0\\
 
1&0&0\\
Line 40: Line 21:
 
y_0\\
 
y_0\\
 
z_0
 
z_0
\end{array}\right]&=&
+
\end{array}\right]=
 
\left[\begin{array}{c}
 
\left[\begin{array}{c}
 
1\cdot x_0+0\cdot y_0+0\cdot z_0\\
 
1\cdot x_0+0\cdot y_0+0\cdot z_0\\
 
0\cdot y_0+1\cdot y_0+0\cdot z_0\\
 
0\cdot y_0+1\cdot y_0+0\cdot z_0\\
 
0\cdot y_0+0\cdot y_0+1\cdot z_0
 
0\cdot y_0+0\cdot y_0+1\cdot z_0
\end{array}\right]&=&
+
\end{array}\right]=
 
\left[\begin{array}{c}
 
\left[\begin{array}{c}
 
x_0\\
 
x_0\\
 
y_0\\
 
y_0\\
 
z_0
 
z_0
\end{array}\right]&=&
+
\end{array}\right]=
 
\vec{\mathbf{p}}_0
 
\vec{\mathbf{p}}_0
\end{align}
 
 
</math>   
 
</math>   
 +
This also holds for two, four and more dimensions.
  
By modifying the components of the The different types of transformations are presented in the following subarticles:
+
By modifying the components of the transformation matrix different types of transformations can be achieved. In n-dimensional space rotation, scaling and shearing can basically be described by an n-by-n transformation matrix. Translation however is actually a [[Addition of vectors|vector addition]] of an n-by-1 vector.  These different in the following subarticles:
  
 
# [[Translation]]
 
# [[Translation]]

Revision as of 14:44, 26 May 2014

← Back: Adjugate Formula Overview: Transformations Next: Translation

In this article general transformations used in the context of robotics and the underlying mathematics are described.

Transformations are applied to vectors or coordinates in vector notation, respectively. All types of transformations can be achieved by matrix multiplication. To transform a vector \vec{\mathbf{p}}_0 to \vec{\mathbf{p}}_1, \vec{\mathbf{p}}_0 has to be multilplied by the transformation matrix \mathbf{T}:


\vec{\mathbf{p}}_1=\mathbf{T}\cdot\vec{\mathbf{p}}_0

The basic transformation matrix is an identity matrix, which corresponds to an empty transformation. So an identity matrix as transformation matrix results in the original vector no matter how many dimensions the vector has. The following equation shows this for three dimensions:


\vec{\mathbf{p}}_1=\mathbf{I}_3\cdot\vec{\mathbf{p}}_0=
\left[\begin{array}{ccc}
1&0&0\\
0&1&0\\
0&0&1
\end{array}\right]
\cdot
\left[\begin{array}{c}
x_0\\
y_0\\
z_0
\end{array}\right]=
\left[\begin{array}{c}
1\cdot x_0+0\cdot y_0+0\cdot z_0\\
0\cdot y_0+1\cdot y_0+0\cdot z_0\\
0\cdot y_0+0\cdot y_0+1\cdot z_0
\end{array}\right]=
\left[\begin{array}{c}
x_0\\
y_0\\
z_0
\end{array}\right]=
\vec{\mathbf{p}}_0

This also holds for two, four and more dimensions.

By modifying the components of the transformation matrix different types of transformations can be achieved. In n-dimensional space rotation, scaling and shearing can basically be described by an n-by-n transformation matrix. Translation however is actually a vector addition of an n-by-1 vector. These different in the following subarticles:

  1. Translation
  2. Rotation
  3. Scaling
  4. Combinations of the three transformation types