computer graphics cs 482 – fall 2014 september 3, 2014 vectors and matrices parametric equations...
TRANSCRIPT
COMPUTER GRAPHICS
CS 482 – FALL 2014
SEPTEMBER 3, 2014VECTORS AND MATRICES
• PARAMETRIC EQUATIONS• VECTORS• DOT PRODUCT• CROSS PRODUCT• INTERSECTIONS
PARAMETRIC EQUATIONS
CS 482 – FALL 2014
PARAMETRIC FORM OF A LINE
SEPTEMBER 3, 2014: VECTORS AND MATRICES PAGE 2
P0
P1
GIVEN POINTS P0 = (X0 , Y0 , Z0 ) AND P1 = (X1 , Y1 , Z1 ), THE SEGMENT BETWEEN THESE POINTS CAN BE DETERMINED BY THE EQUATION:
)10,()1()( 10 tttPPttPVIEWED IN TERMS OF THE INDIVIDUAL COORDINATES, THIS AMOUNTS TO:
)10,()1()( 10 tttxxttx
)10,()1()( 10 tttyytty
t = 0P(0) = P0
t = 0.25P(0.25) = 0.75P0 + 0.25P1
t = 0.5P(0.5) = 0.5P0 + 0.5P1
t = 0.9P(0.9) = 0.1P0 + 0.9P1
t = 1P(1) = P1
)10,()1()( 10 tttzzttz
VECTORS
CS 482 – FALL 2014
DEFINITION
SEPTEMBER 3, 2014: VECTORS AND MATRICES PAGE 3
A VECTOR IS AN ARRAY OF VALUES REPRESENTING NOT A POSITION, BUT A DIRECTION AND A MAGNITUDE.
VECTORS MAY BE ADDED TOGETHER, SUBTRACTED FROM EACH OTHER, AND SCALED BY A CONSTANT
FACTOR.
u
v
u+vu-v
-v
FOR EXAMPLE, ALL OF THE VECTORS
ILLUSTRATED ABOVE ARE THE SAME VECTOR, BUT THEIR POSITIONS VARY.
DOT PRODUCT
CS 482 – FALL 2014
DEFINITION
SEPTEMBER 3, 2014: VECTORS AND MATRICES PAGE 4
WHEN PLACED AT THE SAME STARTING POSITION, THE ANGLE BETWEEN TWO VECTORS
U AND V CAN BE DETERMINED BY THEIR DOT PRODUCT:
yyxx vuvuvu
cosvuvu
THE PYTHAGOREAN THEOREM ALLOWS US TO CONCLUDE THE FOLLOWING:
WHERE IS THE ANGLE BETWEEN THE TWO VECTORS.
uv
DOT PRODUCT POSITIVE:
ACUTE ANGLE
DOT PRODUCT ZERO:
RIGHT ANGLE
DOT PRODUCT NEGATIVE:
OBTUSE ANGLE
DOT PRODUCT
CS 482 – FALL 2014
APPLICATION: DETERMINING INTERSECTIONS
SEPTEMBER 3, 2014: VECTORS AND MATRICES PAGE 5
PARAMETRIC EQUATIONS AND DOT PRODUCTS ARE USEFUL WHEN TRYING TO DETERMINE THE INTERSECTION BETWEEN TWO LINE
SEGMENTS. )10,()1()( 10 tttPPttP )10,()1()( 10 tttQQttQ
IF N IS A NORMAL VECTOR TO SEGMENT Q (I.E., PERPENDICULAR TO THE VECTOR BETWEEN Q0 AND Q1), THEN SOLVE THE FOLLOWING EQUATION
FOR t :
0))(( 0 QtPN
IF 0 ≤ t ≤ 1, THEN P(t) IS
THE INTERSECTION.
P0
P1
Q0
Q1
IF t > 1, THEN THERE IS NO
INTERSECTION.
P0
P1
Q0
Q1
If t < 0, THEN THERE IS NO INTERSECTIO
N.
P0
P1
Q0
Q1
CROSS PRODUCT
CS 482 – FALL 2014
DEFINITION
SEPTEMBER 3, 2014: VECTORS AND MATRICES PAGE 6
k)(sinvuvu AGAIN, THE PYTHAGOREAN THEOREM ALLOWS US TO CONCLUDE THAT:
WHERE IS THE ANGLE BETWEEN THE TWO VECTORS.
u v
u
v
WHEN PLACED AT THE SAME STARTING POSITION, A NORMAL VECTOR BETWEEN TWO
VECTORS u AND v (I.E., A VECTOR PERPENDICULAR TO BOTH u AND v) CAN BE DETERMINED BY THEIR CROSS PRODUCT:
k)( xyyx vuvuvu WHERE k IS THE UNIT VECTOR IN THE POSITIVE z DIRECTION.
(RECALL THAT THE “RIGHT-HAND RULE”
APPLIES, SO V U = -U V.)
CROSS PRODUCT
CS 482 – FALL 2014
APPLICATION: POLYGON CONVEXITY
SEPTEMBER 3, 2014: VECTORS AND MATRICES PAGE 7
A POLYGON IS CONVEX THE SEGMENT BETWEEN ANY TWO POINTS ON ITS BOUNDARY IS COMPLETELY CONTAINED WITHIN THE POLYGON.
SOME GRAPHICAL ALGORITHMS DEPEND ON POLYGONS BEING CONVEX.
POSITIVECROSS
PRODUCT
POSITIVECROSS
PRODUCT
POSITIVECROSS
PRODUCT
POSITIVECROSS
PRODUCT
POSITIVECROSS
PRODUCT
POSITIVECROSS
PRODUCT
POSITIVECROSS
PRODUCT
POSITIVECROSS
PRODUCT
POSITIVECROSS
PRODUCT
TO DETERMINE WHETHER A POLYGON IS CONVEX, TAKE THE CROSS PRODUCT OF EACH PAIR OF VECTORS BETWEEN CONSECUTIVE VERTEX
TRIPLES. IF ALL OF THESE CROSS PRODUCTS HAVE THE SAME SIGN, THEN THE POLYGON IS CONVEX.
NEGATIVECROSS
PRODUCT
P
INTERSECTIONS
CS 482 – FALL 2014
RAY-PLANE INTERSECTION
SEPTEMBER 3, 2014: VECTORS AND MATRICES PAGE 8
A RAY MAY BE DEFINED BY SPECIFYING A STARTING POINT P AND A DIRECTION VECTOR d:
)0,()( tttPtR d
Qn
THE PLANE THAT PASSES THROUGH POINT Q AND THAT HAS NORMAL VECTOR n MAY BE DEFINED AS ALL POINTS X SUCH THAT:
0)( nQXTHE INTERSECTION BETWEEN THE RAY AND THE PLANE THEN BECOMES THE POINT ON
THE RAY THAT’S ALSO IN THE PLANE:0))(( nd QtP
AND THIS OCCURS WHEN:
ndn
)( PQ
t