Points Vectors Lines Spheres and Matrices Anthony Steed

  • Slides: 33
Download presentation
Points, Vectors, Lines, Spheres and Matrices ©Anthony Steed 2001 -2003 1

Points, Vectors, Lines, Spheres and Matrices ©Anthony Steed 2001 -2003 1

Overview • • • Points Vectors Lines Spheres Matrices • 3 D transformations as

Overview • • • Points Vectors Lines Spheres Matrices • 3 D transformations as matrices • Homogenous co-ordinates 2

Basic Maths In computer graphics we need mathematics both for describing our scenes and

Basic Maths In computer graphics we need mathematics both for describing our scenes and also for performing operations on them, such as projection and various transformations. n Coordinate systems (right- and lefthanded), serve as a reference point. n 3 axes labelled x, y, z at right angles. n 3

Co-ordinate Systems Y Y X X Z Right-Handed System (Z comes out of the

Co-ordinate Systems Y Y X X Z Right-Handed System (Z comes out of the screen) Z Left-Handed System (Z goes in to the screen) 4

Points, P (x, y, z) n Gives us a position in relation to the

Points, P (x, y, z) n Gives us a position in relation to the origin of our coordinate system 5

Vectors, V (x, y, z) n Represent a direction (and magnitude) in 3 D

Vectors, V (x, y, z) n Represent a direction (and magnitude) in 3 D space n Points != Vectors Vector +Vector = Vector Point – Point = Vector Point + Vector = Point + Point = ? 6

Vectors, V (x, y, z) v w 2 v v (1/2)V (-1)v Vector addition

Vectors, V (x, y, z) v w 2 v v (1/2)V (-1)v Vector addition sum v + w Scalar multiplication of vectors (they remain parallel) y w v v+w v P v-w -w Vector difference v - w = v + (-w) O Vector OP x 7

Vectors V n Length (modulus) of a vector V (x, y, z) |V| =

Vectors V n Length (modulus) of a vector V (x, y, z) |V| = n A unit vector: a vector can be normalised such that it retains its direction, but is scaled to have unit length: 8

Dot Product u · v = xu ·xv + yu ·yv + zu ·zv

Dot Product u · v = xu ·xv + yu ·yv + zu ·zv u · v = |u| |v| cos = u · v/ |u| |v| n n n This is purely a scalar number not a vector. What happens when the vectors are unit What does it mean if dot product == 0 or == 1? 9

Cross Product n n The result is not a scalar but a vector which

Cross Product n n The result is not a scalar but a vector which is normal to the plane of the other 2 Can be computed using the determinant of: u x v = i(yvzu -zvyu), -j(xvzu - zvxu), k(xvyu - yvxu) n n Size is u x v = |u||v|sin Cross product of vector with it self is null 10

Parametric equation of a line (ray) Given two points P 0 = (x 0,

Parametric equation of a line (ray) Given two points P 0 = (x 0, y 0, z 0) and P 1 = (x 1, y 1, z 1) the line passing through them can be expressed as: P(t) = P 0 + t(P 1 - P 0) = x(t) = x 0 + t(x 1 - x 0) y(t) = y 0 + t(y 1 - y 0) z(t) = z 0 + t(z 1 - z 0) With - < t < 11

Equation of a sphere n Pythagoras Theorem: a 2 + b 2 = c

Equation of a sphere n Pythagoras Theorem: a 2 + b 2 = c 2 Given a circle through the origin with radius r, then for any point P on it 2 we 2 have: 2 hypotenuse c b a P n r (0, 0) xp yp x +y =r 12

Equation of a sphere * If the circle is not centred on the origin:

Equation of a sphere * If the circle is not centred on the origin: yp r b yc We still have P (xp, yp) a 2 + b 2 = r 2 (xc, yc) a b but a = xp- xc b = yp- yc (0, 0) xc xp a So for the general case (x- xc)2 + (y- yc)2 = r 2 13

Equation of a sphere * Pythagoras theorem generalises to 3 D giving a 2

Equation of a sphere * Pythagoras theorem generalises to 3 D giving a 2 + b 2 + c 2 = d 2 Based on that we can easily prove that the general equation of a sphere is: (x- xc)2 + (y- yc)2 + (z- zc)2 = r 2 and at origin: x 2 + y 2 + z 2 = r 2 14

Matrix Math ©Anthony Steed 2001 15

Matrix Math ©Anthony Steed 2001 15

Vectors and Matrices n Matrix is an array of numbers with dimensions M (rows)

Vectors and Matrices n Matrix is an array of numbers with dimensions M (rows) by N (columns) • 3 by 6 matrix • element 2, 3 is (3) n Vector can be considered a 1 x M matrix • 16

Types of Matrix n n Identity matrices - I Diagonal n Symmetric • Diagonal

Types of Matrix n n Identity matrices - I Diagonal n Symmetric • Diagonal matrices are (of course) symmetric • Identity matrices are (of course) diagonal 17

Operation on Matrices n Addition • Done elementwise n Transpose • “Flip” (M by

Operation on Matrices n Addition • Done elementwise n Transpose • “Flip” (M by N becomes N by M) 18

Operations on Matrices n Multiplication • Only possible to multiply of dimensions – x

Operations on Matrices n Multiplication • Only possible to multiply of dimensions – x 1 by y 1 and x 2 by y 2 iff y 1 = x 2 • resulting matrix is x 1 by y 2 – e. g. Matrix A is 2 by 3 and Matrix by 3 by 4 • resulting matrix is 2 by 4 – Just because A x B is possible doesn’t mean B x A is possible! 19

Matrix Multiplication Order n n n A is n by k , B is

Matrix Multiplication Order n n n A is n by k , B is k by m C = A x B defined by Bx. A not necessarily equal to Ax. B 20

Example Multiplications 21

Example Multiplications 21

Inverse n If A x B = I and B x A = I

Inverse n If A x B = I and B x A = I then A = B-1 and B = A-1 22

3 D Transforms n In 3 -space vectors are transformed by 3 matrices 23

3 D Transforms n In 3 -space vectors are transformed by 3 matrices 23

Scale n Scale uses a diagonal matrix n Scale by 2 along x and

Scale n Scale uses a diagonal matrix n Scale by 2 along x and -2 along z 24

Rotation n Rotation about z axis Y X n Note z values remain the

Rotation n Rotation about z axis Y X n Note z values remain the same whilst x and y change 25

Rotation X, Y and Scale n About X n About Y n Scale (should

Rotation X, Y and Scale n About X n About Y n Scale (should look familiar) 26

Homogenous Points n n Add 1 D, but constrain that to be equal to

Homogenous Points n n Add 1 D, but constrain that to be equal to 1 (x, y, z, 1) Homogeneity means that any point in 3 -space can be represented by an infinite variety of homogenous 4 D points • (2 3 4 1) = (4 6 8 2) = (3 4. 5 6 1. 5) n Why? • 4 D allows as to include 3 D translation in matrix form 27

Homogenous Vectors != Points n Remember points can not be added n If A

Homogenous Vectors != Points n Remember points can not be added n If A and B are points A-B is a vector n Vectors have form (x y z 0) n Addition makes sense n 28

Translation in Homogenous Form n Note that the homogenous component is preserved (* *

Translation in Homogenous Form n Note that the homogenous component is preserved (* * * 1), and aside from the translation the matrix is I 29

Putting it Together R is rotation and scale components n T is translation component

Putting it Together R is rotation and scale components n T is translation component n 30

Order Matters n Composition order of transforms matters • Remember that basic vectors change

Order Matters n Composition order of transforms matters • Remember that basic vectors change so “direction” of translations changed 31

Exercises n n Calculate the following matrix: /2 about X then /2 about Y

Exercises n n Calculate the following matrix: /2 about X then /2 about Y then /2 about Z (remember “then” means multiply on the right). What is a simpler form of this matrix? Compose the following matrix: translate 2 along X, rotate /2 about Y, translate -2 along X. Draw a figure with a few points (you will only need 2 D) and then its translation under this transformation. 32

Matrix Summary Rotation, Scale, Translation n Composition of transforms n The homogenous form n

Matrix Summary Rotation, Scale, Translation n Composition of transforms n The homogenous form n 33