CSCE 590E Spring 2007
Download
Report
Transcript CSCE 590E Spring 2007
CSCE 552 Fall 2012
Math
By Jijun Tang
Applied Trigonometry
Trigonometric functions
Defined using right triangle
y
sin a
h
h
y
x
cos a
h
tan a
a
x
y sin a
x cos a
Applied Trigonometry
Angles measured in radians
radians
degrees
p
180
180
p
degrees
radians
Full circle contains 2p radians
arcs
Vectors and Scalars
Scalars represent quantities that can
be described fully using one value
Mass
Time
Distance
Vectors describe a magnitude and
direction together using multiple values
Examples of vectors
Difference between two points
Velocity of a projectile
Magnitude is the distance between the points
Direction points from one point to the other
Magnitude is the speed of the projectile
Direction is the direction in which it’s traveling
A force is applied along a direction
Vectors Add and Subtraction
Two vectors V and W are added by
placing the beginning of W at the end
of V
Subtraction reverses the second
vector
V
W
V+W
W
V–W
V
V
–W
Matrix Representation
The entry of a matrix M in the i-th row
and j-th column is denoted Mij
For example,
1 2 3
M
4 5 6
M 11 1
M 21 4
M 12 2 M 22 5
M 13 3 M 23 6
Vectors and Matrices
Example matrix product
2 3 2 1 8 13
M
1 1 4 5 6 6
M 11 2 2 3 4
M 12 2 1 3 5
13
8
M 21 1 2 1 4 6
M 22 1 1 1 5
6
Identity Matrix In
For any n n matrix M,
the product with the
identity matrix is M itself
I nM = M
MIn = M
Invertible
An n n matrix M is invertible if there
exists another matrix G such that
1 0
0 1
MG GM I n
0 0
0
0
1
The inverse of M is denoted M-1
Inverse of 2x2 and 3x3
The inverse of a 2 2 matrix M is
1 M 22 M12
M
det M M 21 M11
1
The inverse of a 3 3 matrix M is
M 22 M 33 M 23 M 32
1
1
M
M 23 M 31 M 21M 33
det M
M 21M 32 M 22 M 31
M 13 M 32 M 12 M 33
M 11M 33 M 13 M 31
M 12 M 31 M 11M 32
M 12 M 23 M 13 M 22
M 13 M 21 M 11M 23
M 11M 22 M 12 M 21
Inverse of 4x4
M 1
R 1
0
R111
1
R T R211
R311
1 0
R121
R131
R221
1
R23
R321
R331
0
0
R 1T x
1
R T y
R 1T z
1
Gauss-Jordan Elimination
Gaussian Elimination
The Dot Product
The dot product is a product between
two vectors that produces a scalar
The dot product between two
n-dimensional vectors
V and W is
n
given by V W VW
i i
i 1
In three dimensions,
V W VxWx VyWy VzWz
Dot Product Usage
The dot product can be used to project
one vector onto another
V
a
V cos a
VW
W
W
Dot Product Properties
The dot product satisfies the formula
V W V W cos a
a is the angle between the two vectors
Dot product is always 0 between
perpendicular vectors
If V and W are unit vectors, the dot
product is 1 for parallel vectors pointing in
the same direction, -1 for opposite
Self Dot Product
The dot product of a vector with itself
produces the squared magnitude
VV V V V
2
Often, the notation V 2 is used as
shorthand for V V
The Cross Product
The cross product is a product
between two vectors the produces a
vector
The cross product only applies in three
dimensions
The cross product is perpendicular to
both vectors being multiplied together
The cross product between two parallel
vectors is the zero vector (0, 0, 0)
Illustration
The cross product satisfies the
trigonometric relationship
V W V W sin a
This is the area of
the parallelogram
formed by
V
V and W
||V|| sin a
a
W
Area and Cross Product
The area A of a triangle with vertices
P1, P2, and P3 is thus given by
1
A P2 P1 P3 P1
2
Rules
Cross products obey the right hand
rule
If first vector points along right thumb,
and second vector points along right
fingers,
Then cross product points out of right
palm
W V V W
Reversing order of vectors negates the
cross product:
Rules in Figure
Formular
The cross product between V and W is
V W VyWz VzWy , VzWx VxWz , VxWy VyWx
A helpful tool for remembering this
formula is the pseudodeterminant (x, y,
z) are unit vectors
Alternative
The cross product can also be
expressed as the matrix-vector product
0
V W Vz
Vy
Vz
0
Vx
Vy Wx
Vx Wy
0 Wz
The perpendicularity property means
V W V 0
V W W 0
Transformations
Calculations are often carried out in
many different coordinate systems
We must be able to transform
information from one coordinate
system to another easily
Matrix multiplication allows us to do
this
Illustration
RST
Suppose that the coordinate axes in
one coordinate system correspond to
the directions R, S, and T in another
Then we transform a vector V to the
RST system as follows
Rx
W R S T V Ry
Rz
Sx
Sy
Sz
Tx Vx
Ty Vy
Tz Vz
2D Example
θ
2D Rotations
Rotation Around Arbitrary Vector
Rotation about an arbitrary vector
Counterclockwise rotation about an
arbitrary vector (lx,ly,lz) normalised so
that
by an angle α is given
by a matrix
where
Transformation matrix
We transform back to the original
system by inverting the matrix:
Rx
V Ry
Rz
Sx
Sy
Sz
1
Tx
Ty W
Tz
Often, the matrix’s inverse is equal to
its transpose—such a matrix is called
orthogonal
Translation
A 3 3 matrix can reorient the
coordinate axes in any way, but it
leaves the origin fixed
We must add a translation component
D to move the origin:
Rx
W Ry
Rz
Sx
Sy
Sz
Tx Vx Dx
Ty Vy Dy
Tz Vz Dz
Homogeneous coordinates
Four-dimensional space
Combines 3 3 matrix and translation
into one 4 4 matrix
Rx
Ry
W
Rz
0
Sx
Tx
Sy
Ty
Sz
Tz
0
0
Dx Vx
Dy Vy
Dz Vz
1 Vw
Direction Vector and Point
V is now a four-dimensional vector
The w-coordinate of V determines whether
V is a point or a direction vector
If w = 0, then V is a direction vector and the
fourth column of the transformation matrix has
no effect
If w 0, then V is a point and the fourth column
of the matrix translates the origin
Normally, w = 1 for points
Transformations
The three-dimensional counterpart of a
four-dimensional homogeneous vector
V is given by
Vx Vy Vz
V3D
, ,
Vw Vw Vw
Scaling a homogeneous vector thus
has no effect on its actual 3D value
Transformations
Transformation matrices are often the
result of combining several simple
transformations
Translations
Scales
Rotations
Transformations are combined by
multiplying their matrices together
Transformation Steps
Translation
Translation matrix
M translate
1
0
0
0
0 0 Tx
1 0 Ty
0 1 Tz
0 0 1
Translates the origin by the vector T
Scale
Scale matrix
M scale
a
0
0
0
0 0 0
b 0 0
0 c 0
0 0 1
Scales coordinate axes by a, b, and c
If a = b = c, the scale is uniform
Rotation (Z)
Rotation matrix
M z -rotate
cos q
sin q
0
0
sin q
0
0
cos q
0
0
0
1
0
0
0
1
Rotates points about the z-axis
through the angle q
Rotations (X, Y)
Similar matrices for rotations about x, y
M x -rotate
M y -rotate
1
0
0
0
0
cos q
sin q
0
0
sin q
cos q
0
0
0
0
1
0
sin q
0
1
0
0
0
cos q
0
0
0
1
cos q
0
sin q
0
Transforming Normal Vectors
Normal vectors are transformed differently
than do ordinary points and directions
A normal vector represents the direction
pointing out of a surface
A normal vector is perpendicular to the
tangent plane
If a matrix M transforms points from one
coordinate system to another, then normal
vectors must be transformed by (M-1)T
Orderings
Orderings
Orderings of different type is important
A rotation followed by a translation is
different from a translation followed by
a rotation
Orderings of the same type does not
matter
Geometry -- Lines
A line in 3D space is represented by
P t S tV
S is a point on the line, and V is the
direction along which the line runs
Any point P on the line corresponds to a
value of the parameter t
Two lines are parallel if their direction
vectors are parallel
Plane
A plane in 3D space can be defined by
a normal direction N and a point P
Other points in the plane satisfy
N Q P 0
N
Q
P
Plane Equation
A plane equation is commonly written
Ax By Cz D 0
A, B, and C are the components of the
normal direction N, and D is given by
D N P
for any point P in the plane
Properties of Plane
A plane is often represented by the 4D
vector (A, B, C, D)
If a 4D homogeneous point P lies in
the plane, then (A, B, C, D) P = 0
If a point does not lie in the plane, then
the dot product tells us which side of
the plane the point lies on
Distance from Point to a Line
Distance d from a point P to a line
S+tV
P
P S
d
S
P S V
V
V
Distance from Point to a Line
Use Pythagorean theorem:
P S V
d 2 P S 2
V
Taking square root,
d P S 2
2
P S V 2
V2
If V is unit length, then V 2 = 1
Line and Plane Intersection
Let P(t) = S + t V be the line
Let L = (N, D) be the plane
We want to find t such that L P(t) = 0
Lx S x Ly S y Lz S z Lw
L S
t
LV
LxVx LyVy LzVz
Careful, S has w-coordinate of 1, and V has
w-coordinate of 0
Formular
If L V = 0, the line is parallel to the
plane and no intersection occurs
Otherwise, the point of intersection is
L S
P t S
V
LV