1. Limited time only! Sign up for a free 30min personal tutor trial with Chegg Tutors
    Dismiss Notice
Dismiss Notice
Join Physics Forums Today!
The friendliest, high quality science and math community on the planet! Everyone who loves science is here!

Matrix and transformation problem

  1. Apr 22, 2014 #1


    User Avatar
    Gold Member

    Let there be a triangle with coordinates A(2,2) , B(5,2) and C(5,4)
    I have learned two ways to shear an object(x-axis invariant) in the Cartesian coordinate system.
    The first way is to find the coordinate vector of a point and multiply the y-component of the vector by the shear factor(2)(Don't change the value) and replace the x-component with it.

    The second way is to use the transformation matrix and multiply it with the coordinate matrix.
    So the transformation matrix is ##\begin{pmatrix}1 & 2\\ 0 & 1 \end{pmatrix}## and the cordinate matrix: ##\begin{pmatrix}2 & 5 & 5\\ 2 & 2 & 4 \end{pmatrix}## and the result is :
    $$\begin{pmatrix}6 & 9 & 13\\ 2 & 2 & 4 \end{pmatrix}$$

    This gives the same answer as the first method.However,the first method is easy to understand.
    I realised that the matrix method does the same thing.It leaves the y-components as it is and add the ##\text{Shear factor} \times \text{Y-component}## to the x-component.

    So when the matrix theory(or whatever) was made,that person must have considered these.The multiplication rule:Row and column made this transformation matrices useful.
    My teacher asked to replace the ##0## with the shear factor.
    I was wondering how did someone find this rule about replacing the zero?By guessing?
    So can I make a transformation matrix which would translate,reflect,rotate,enlarge,stretch and shear it at the same time?
    My main question here is how to make a transformation matrix which would transform the object in the way I like.
  2. jcsd
  3. Apr 23, 2014 #2


    User Avatar
    Gold Member

  4. Apr 23, 2014 #3


    User Avatar
    Science Advisor

    If you have a 3 dimensional space, then you can reflect, rotate, enlarge, stretch, and shear by multiplying by a 3 by 3 matrix. But you cannot translate by multiplying by a matrix because any matrix times (0, 0, 0) would give (0, 0, 0) and translating will move (0, 0, 0) to some other point.

    What you can do is use "projective space". We represent the point (x, y, z) by the array (x, y, z, 1) and include the "equivalence relation" that (ax, ay, az, a) represents the same point as (x, y, z, 1). That is, any time the last number is NOT "1", divide through by it. That way we could represent the transation by the vector (a, b, c) as a matrix multiplication:
    [tex]\begin{bmatrix}1 & 0 & 0 & a \\ 0 & 1 & 0 & b \\ 0 & 0 & 1 & c \\ 0 & 0 & 0 & 1 \end{bmatrix}\begin{bmatrix}x \\ y \\ z \\ 1\end{bmatrix}= \begin{bmatrix}x+ a \\ y+ b \\ z+ c \\ 1\end{bmatrix}[/tex]

    Reflection, rotation, enlarging, stretching, and shearing would be the usual 3 by 3 matrix with the fourth row and column all 0s. And you would form a matrix that combines "reflecting, rotating, enlarging, translating, stretching, and shearing by forming the matrix for each of those and multiplying the matrices.
    Last edited by a moderator: Apr 23, 2014
  5. Apr 23, 2014 #4


    User Avatar
    Gold Member

    Your latex is broken.
    I have not learned matrix transformation in 3-d space yet :frown:
  6. Apr 23, 2014 #5


    Staff: Mentor

    It's fixed now.
Share this great discussion with others via Reddit, Google+, Twitter, or Facebook