Blaine Hodge's Homepage
home: http://www.geocities.com/SiliconValley/Code/1219/
e-mail: craterz@hotmail.com

Addition & Subtraction

a + b = ( a.x + b.x, a.y + b.y, a.z + b.z )

a - b = ( a.x - b.x, a.y - b.y, a.z - b.z )

-a = ( -a.x, -a.y, -a.z )

a - b = a + -b

Scaling

s * a = a * s = ( a.x * s, a.y * s, a.z * s )

a / s = a * (1/s) = ( a.x / s, a.y / s, a.z / s )

Length & Distance

length( a ) = sqrt( a.x * a.x + a.y * a.y + a.z * a.z )

distance( a, b ) = length( a - b )

Unit Vector

normalize( a ) = a * (1 / len( a )) = a / len( a )

Dot Product (Scalar)

dot( a, b ) = a.x * b.x + a.y * b.y + a.z * b.z

dot( a, b ) = len( a ) * len( b ) * cos(ø)

Cross Product (Vector)

cross( a, b ) = ( a.y * b.z - a.z * b.y,
                  a.z * b.x - a.x * b.z,
                  a.x * b.y - a.y * b.x )

len( cross( a, b ) ) = len( a ) * len( b ) * sin( theta )

Plane Equation

dot( n, p ) + k = 0

dot( n, p ) + k > 0 // in front of the plane
dot( n, p ) + k = 0 // lies on the plane
dot( n, p ) + k < 0 // in behind the plane

Plane from 3 Points

n = normalize( cross( p3 - p2, p1 - p2 ) )
k = dot( n, p1 )

[ powered by Latte and Python | last updated Sat Aug 25 00:54:56 2001 PST ]