Main Page | Class Hierarchy | Class List | Class Members

SC::Math::Matrix3 Struct Reference

List of all members.

Public Member Functions

 Matrix3 (float m00, float m01, float m02, float m10, float m11, float m12, float m20, float m21, float m22)
 Matrix3 (Vector3 xAxis, Vector3 yAxis, Vector3 zAxis)
Matrix3 Transpose ()
Vector3 GetColumn (int col)
void SetColumn (int col, Vector3 vector)
void FromAxes (Vector3 xAxis, Vector3 yAxis, Vector3 zAxis)
void FromEulerAnglesXYZ (float yaw, float pitch, float roll)
void RotateX (float angle)
void RotateY (float angle)
void RotateAngleAxis (float angle, Vector3 axis)
override string ToString ()
override int GetHashCode ()
override bool Equals (object obj)

Static Public Member Functions

Matrix3 Multiply (Matrix3 left, Matrix3 right)
Matrix3 operator * (Matrix3 left, Matrix3 right)
Vector3 Multiply (Vector3 vector, Matrix3 matrix)
Vector3 operator * (Vector3 vector, Matrix3 matrix)
Vector3 Multiply (Matrix3 matrix, Vector3 vector)
Vector3 operator * (Matrix3 matrix, Vector3 vector)
Matrix3 Multiply (Matrix3 matrix, float scalar)
Matrix3 operator * (Matrix3 matrix, float scalar)
Matrix3 Multiply (float scalar, Matrix3 matrix)
Matrix3 operator * (float scalar, Matrix3 matrix)
Matrix3 Add (Matrix3 left, Matrix3 right)
Matrix3 operator+ (Matrix3 left, Matrix3 right)
Matrix3 Subtract (Matrix3 left, Matrix3 right)
Matrix3 operator- (Matrix3 left, Matrix3 right)
Matrix3 Negate (Matrix3 matrix)
Matrix3 operator- (Matrix3 matrix)
bool operator== (Matrix3 left, Matrix3 right)

Public Attributes

float m00
float m01
float m02

Properties

Matrix3 Identity
Matrix3 Zero
float this [int row, int col]

Detailed Description

A 3x3 matrix which can represent rotations around axes.


Constructor & Destructor Documentation

SC::Math::Matrix3::Matrix3 float  m00,
float  m01,
float  m02,
float  m10,
float  m11,
float  m12,
float  m20,
float  m21,
float  m22
[inline]
 

Creates a new Matrix3 with all the specified parameters.

SC::Math::Matrix3::Matrix3 Vector3  xAxis,
Vector3  yAxis,
Vector3  zAxis
[inline]
 

Create a new Matrix from 3 Vertex3 objects.


Member Function Documentation

Matrix3 SC::Math::Matrix3::Add Matrix3  left,
Matrix3  right
[inline, static]
 

Used to add two matrices together.

override bool SC::Math::Matrix3::Equals object  obj  )  [inline]
 

Compares this Matrix to another object. This should be done because the equality operators (==, !=) have been overriden by this class.

void SC::Math::Matrix3::FromAxes Vector3  xAxis,
Vector3  yAxis,
Vector3  zAxis
[inline]
 

Creates a Matrix3 from 3 axes.

void SC::Math::Matrix3::FromEulerAnglesXYZ float  yaw,
float  pitch,
float  roll
[inline]
 

Constructs this Matrix from 3 euler angles, in degrees.

Vector3 SC::Math::Matrix3::GetColumn int  col  )  [inline]
 

Gets a matrix column by index. A Vector3 representing one of the Matrix columns.

override int SC::Math::Matrix3::GetHashCode  )  [inline]
 

Provides a unique hash code based on the member variables of this class. This should be done because the equality operators (==, !=) have been overriden by this class. <p/> The standard implementation is a simple XOR operation between all local member variables.

Matrix3 SC::Math::Matrix3::Multiply float  scalar,
Matrix3  matrix
[inline, static]
 

Multiplies all the items in the Matrix3 by a scalar value.

Matrix3 SC::Math::Matrix3::Multiply Matrix3  matrix,
float  scalar
[inline, static]
 

Multiplies all the items in the Matrix3 by a scalar value.

Vector3 SC::Math::Matrix3::Multiply Matrix3  matrix,
Vector3  vector
[inline, static]
 

matrix * vector [3x3 * 3x1 = 3x1]

Vector3 SC::Math::Matrix3::Multiply Vector3  vector,
Matrix3  matrix
[inline, static]
 

vector * matrix [1x3 * 3x3 = 1x3]

Matrix3 SC::Math::Matrix3::Multiply Matrix3  left,
Matrix3  right
[inline, static]
 

Multiply (concatenate) two Matrix3 instances together.

Matrix3 SC::Math::Matrix3::Negate Matrix3  matrix  )  [inline, static]
 

Negates all the items in the Matrix.

Matrix3 SC::Math::Matrix3::operator * float  scalar,
Matrix3  matrix
[inline, static]
 

Multiplies all the items in the Matrix3 by a scalar value.

Matrix3 SC::Math::Matrix3::operator * Matrix3  matrix,
float  scalar
[inline, static]
 

Multiplies all the items in the Matrix3 by a scalar value.

Vector3 SC::Math::Matrix3::operator * Matrix3  matrix,
Vector3  vector
[inline, static]
 

matrix * vector [3x3 * 3x1 = 3x1]

Vector3 SC::Math::Matrix3::operator * Vector3  vector,
Matrix3  matrix
[inline, static]
 

vector * matrix [1x3 * 3x3 = 1x3]

Matrix3 SC::Math::Matrix3::operator * Matrix3  left,
Matrix3  right
[inline, static]
 

Multiply (concatenate) two Matrix3 instances together.

Matrix3 SC::Math::Matrix3::operator+ Matrix3  left,
Matrix3  right
[inline, static]
 

Used to add two matrices together.

Matrix3 SC::Math::Matrix3::operator- Matrix3  matrix  )  [inline, static]
 

Negates all the items in the Matrix.

Matrix3 SC::Math::Matrix3::operator- Matrix3  left,
Matrix3  right
[inline, static]
 

Used to subtract two matrices.

bool SC::Math::Matrix3::operator== Matrix3  left,
Matrix3  right
[inline, static]
 

Test two matrices for (value) equality

void SC::Math::Matrix3::RotateAngleAxis float  angle,
Vector3  axis
[inline]
 

Rotates around a given axis. The angle to rotate. The axis to rotate around.

void SC::Math::Matrix3::RotateX float  angle  )  [inline]
 

Rotates around the x axis. The angle to rotate.

void SC::Math::Matrix3::RotateY float  angle  )  [inline]
 

Rotates around the y axis. The angle to rotate.

void SC::Math::Matrix3::SetColumn int  col,
Vector3  vector
[inline]
 

Sets one of the columns of the Matrix with a Vector3.

Matrix3 SC::Math::Matrix3::Subtract Matrix3  left,
Matrix3  right
[inline, static]
 

Used to subtract two matrices.

override string SC::Math::Matrix3::ToString  )  [inline]
 

Overrides the Object.ToString() method to provide a text representation of a Matrix4. A string representation of a vector3.

Matrix3 SC::Math::Matrix3::Transpose  )  [inline]
 

Swap the rows of the matrix with the columns. A transposed Matrix.


Member Data Documentation

float SC::Math::Matrix3::m00
 

float SC::Math::Matrix3::m01
 

float SC::Math::Matrix3::m02
 


Property Documentation

Matrix3 SC::Math::Matrix3::Identity [static, get]
 

Identity Matrix

float SC::Math::Matrix3::this [get, set]
 

Indexer for accessing the matrix like a 2d array (i.e. matrix[2,3]).

Matrix3 SC::Math::Matrix3::Zero [static, get]
 

Zero matrix.


The documentation for this struct was generated from the following file:
Generated on Sat Jan 15 23:59:00 2005 for StreamCtrl by doxygen 1.3.6