Difference between revisions of "Canvas3D JS Library"
(→Vector Class) |
|||
Line 7: | Line 7: | ||
* Mark Paruzel (CodeBot) | * Mark Paruzel (CodeBot) | ||
* Andrew Smith | * Andrew Smith | ||
+ | |||
+ | == Prototype == | ||
+ | [[Image:Class Design v1]] | ||
== Math Operations == | == Math Operations == |
Revision as of 00:45, 17 January 2008
Contents
Introduciton
Under Construction
People Working On This Project
- Mark Paruzel (CodeBot)
- Andrew Smith
Prototype
Math Operations
Vector Class
A Vector basically describes a direction in the form of X, Y, and Z coordinates of a 3D world. Basic 3D math cannot exist without the utilization of spatial coordinates which the Vector Class encapsulates. The Vector Class will have the following members within it:
- void Normalize() - Unit Normalization
- float Dot() - Dot Product
- float Length() - Length of Vector from (0, 0, 0)
- float LengthSquared() - Squared value of Length
- Vector Cross(Vector) - Cross Product
- Vector Multiply(Float) - Multiplication by a scalar
- Vector Divide(Float) - Division by a scalar
- Vector Subtract(Vector) - Subtraction of a Vector
- Vector Add(Vector) - Addition to a Vector
- bool Equals(Vector) - Equals Comparison
Matrix Class
A Matrix Class is necessary to provide Matrix operations such as rotation, translation, and scaling to any point in the 3D world. It is composed of a 4x4 matrix of floating point values that can be applied to any Matrix operation. The Matrix Class has the following members:
- void Identity() - Create Identity Matrix
- void Transpose() - Transpose a Matrix
- void Inverse() - Inverse Matrix Values
- float Multiply(Matrix) - Multiplication by Scalar
- float Divide(Matrix) - Division by Scalar
- Matrix Add(Matrix) - Addition of two Matrices
- Matrix Subtract(Matrix) - Subtraction of two Matrices
- Vector Multiply(Vector) - Matrix times a Vector
- Matrix Multiply(Matrix) - Matrix times a Matrix