C# 클래스 Axiom.Math.Matrix4

파일 보기 프로젝트 열기: mono-soc-2011/axiom 1 사용 예제들

공개 프로퍼티들

프로퍼티 타입 설명
m00 Real
m10 Real
m20 Real
m30 Real

공개 메소드들

메소드 설명
Add ( Matrix4 left, Matrix4 right ) : Matrix4

Used to add two matrices together.

Compose ( Vector3 translation, Vector3 scale, Quaternion orientation ) : Matrix4

Creates a translation Matrix

ComposeInverse ( Vector3 translation, Vector3 scale, Quaternion orientation ) : Matrix4

Creates an inverse translation Matrix

Decompose ( Vector3 &translation, Vector3 &scale, Quaternion &orientation ) : void

Decompose the matrix.

Equals ( object obj ) : bool

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

ExtractRotation ( ) : Axiom.Math.Matrix3

Extract the 3x3 matrix representing the current rotation.

ExtractScale ( ) : Vector3

Extract scaling information.

FromMatrix3 ( Axiom.Math.Matrix3 right ) : Matrix4

Used to allow assignment from a Matrix3 to a Matrix4 object.

GetHashCode ( ) : int

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.

The standard implementation is a simple XOR operation between all local member variables.

GetMatrix3 ( ) : Axiom.Math.Matrix3

Returns a 3x3 portion of this 4x4 matrix.

Inverse ( ) : Matrix4

Returns an inverted matrix.

InverseAffine ( ) : Matrix4

Returns an inverted affine matrix.

MakeFloatArray ( float floats ) : void
MakeRealArray ( Real reals ) : void

Matrix4 ( Real m00, Real m01, Real m02, Real m03, Real m10, Real m11, Real m12, Real m13, Real m20, Real m21, Real m22, Real m23, Real m30, Real m31, Real m32, Real m33 ) : System

Creates a new Matrix4 with all the specified parameters.

Multiply ( Matrix4 left, Matrix4 right ) : Matrix4

Used to multiply (concatenate) two 4x4 Matrices.

Multiply ( Matrix4 matrix, Plane plane ) : Plane

Transforms a plane using the specified transform.

Multiply ( Matrix4 matrix, Vector3 vector ) : Vector3

Transforms the given 3-D vector by the matrix, projecting the result back into w = 1.

This means that the initial w is considered to be 1.0, and then all the tree elements of the resulting 3-D vector are divided by the resulting w.

Subtract ( Matrix4 left, Matrix4 right ) : Matrix4

Used to subtract two matrices.

ToString ( ) : string

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

TransformAffine ( Vector3 v ) : Vector3

3-D Vector transformation specially for affine matrix.

Transforms the given 3-D vector by the matrix, projecting the result back into w = 1. The matrix must be an affine matrix. Matrix4.IsAffine.

TransformAffine ( Vector4 v ) : Vector4

4-D Vector transformation specially for affine matrix.

The matrix must be an affine matrix. Matrix4.IsAffine.

Transpose ( ) : Matrix4

Swap the rows of the matrix with the columns.

operator ( ) : Matrix4

Used to multiply (concatenate) two 4x4 Matrices.

operator ( ) : Plane

Used to multiply a transformation to a Plane.

operator ( ) : Vector3

Transforms the given 3-D vector by the matrix, projecting the result back into w = 1.

This means that the initial w is considered to be 1.0, and then all the tree elements of the resulting 3-D vector are divided by the resulting w.

operator ( ) : bool

Compares two Matrix4 instances for equality.

this ( int index ) : Real

Allows the Matrix to be accessed linearly (m[0] -> m[15]).

This indexer is only provided as a convenience, and is not recommended for use in intensive applications.

this ( int row, int col ) : Real

Allows the Matrix to be accessed like a 2d array (i.e. matrix[2,3])

This indexer is only provided as a convenience, and is not recommended for use in intensive applications.

비공개 메소드들

메소드 설명
Adjoint ( ) : Matrix4

Used to generate the adjoint of this matrix.

메소드 상세

Add() 공개 정적인 메소드

Used to add two matrices together.
public static Add ( Matrix4 left, Matrix4 right ) : Matrix4
left Matrix4
right Matrix4
리턴 Matrix4

Compose() 공개 정적인 메소드

Creates a translation Matrix
public static Compose ( Vector3 translation, Vector3 scale, Quaternion orientation ) : Matrix4
translation Vector3
scale Vector3
orientation Quaternion
리턴 Matrix4

ComposeInverse() 공개 정적인 메소드

Creates an inverse translation Matrix
public static ComposeInverse ( Vector3 translation, Vector3 scale, Quaternion orientation ) : Matrix4
translation Vector3
scale Vector3
orientation Quaternion
리턴 Matrix4

Decompose() 공개 메소드

Decompose the matrix.
public Decompose ( Vector3 &translation, Vector3 &scale, Quaternion &orientation ) : void
translation Vector3
scale Vector3
orientation Quaternion
리턴 void

Equals() 공개 메소드

Compares this Matrix to another object. This should be done because the equality operators (==, !=) have been overriden by this class.
public Equals ( object obj ) : bool
obj object
리턴 bool

ExtractRotation() 공개 메소드

Extract the 3x3 matrix representing the current rotation.
public ExtractRotation ( ) : Axiom.Math.Matrix3
리턴 Axiom.Math.Matrix3

ExtractScale() 공개 메소드

Extract scaling information.
public ExtractScale ( ) : Vector3
리턴 Vector3

FromMatrix3() 공개 정적인 메소드

Used to allow assignment from a Matrix3 to a Matrix4 object.
public static FromMatrix3 ( Axiom.Math.Matrix3 right ) : Matrix4
right Axiom.Math.Matrix3
리턴 Matrix4

GetHashCode() 공개 메소드

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.

The standard implementation is a simple XOR operation between all local member variables.

public GetHashCode ( ) : int
리턴 int

GetMatrix3() 공개 메소드

Returns a 3x3 portion of this 4x4 matrix.
public GetMatrix3 ( ) : Axiom.Math.Matrix3
리턴 Axiom.Math.Matrix3

Inverse() 공개 메소드

Returns an inverted matrix.
public Inverse ( ) : Matrix4
리턴 Matrix4

InverseAffine() 공개 메소드

Returns an inverted affine matrix.
public InverseAffine ( ) : Matrix4
리턴 Matrix4

MakeFloatArray() 공개 메소드

public MakeFloatArray ( float floats ) : void
floats float
리턴 void

MakeRealArray() 공개 메소드

public MakeRealArray ( Real reals ) : void
reals Real
리턴 void

Matrix4() 공개 메소드

Creates a new Matrix4 with all the specified parameters.
public Matrix4 ( Real m00, Real m01, Real m02, Real m03, Real m10, Real m11, Real m12, Real m13, Real m20, Real m21, Real m22, Real m23, Real m30, Real m31, Real m32, Real m33 ) : System
m00 Real
m01 Real
m02 Real
m03 Real
m10 Real
m11 Real
m12 Real
m13 Real
m20 Real
m21 Real
m22 Real
m23 Real
m30 Real
m31 Real
m32 Real
m33 Real
리턴 System

Multiply() 공개 정적인 메소드

Used to multiply (concatenate) two 4x4 Matrices.
public static Multiply ( Matrix4 left, Matrix4 right ) : Matrix4
left Matrix4
right Matrix4
리턴 Matrix4

Multiply() 공개 정적인 메소드

Transforms a plane using the specified transform.
public static Multiply ( Matrix4 matrix, Plane plane ) : Plane
matrix Matrix4 Transformation matrix.
plane Plane Plane to transform.
리턴 Plane

Multiply() 공개 정적인 메소드

Transforms the given 3-D vector by the matrix, projecting the result back into w = 1.

This means that the initial w is considered to be 1.0, and then all the tree elements of the resulting 3-D vector are divided by the resulting w.

public static Multiply ( Matrix4 matrix, Vector3 vector ) : Vector3
matrix Matrix4 A Matrix4.
vector Vector3 A Vector3.
리턴 Vector3

Subtract() 공개 정적인 메소드

Used to subtract two matrices.
public static Subtract ( Matrix4 left, Matrix4 right ) : Matrix4
left Matrix4
right Matrix4
리턴 Matrix4

ToString() 공개 메소드

Overrides the Object.ToString() method to provide a text representation of a Matrix4.
public ToString ( ) : string
리턴 string

TransformAffine() 공개 메소드

3-D Vector transformation specially for affine matrix.
Transforms the given 3-D vector by the matrix, projecting the result back into w = 1. The matrix must be an affine matrix. Matrix4.IsAffine.
public TransformAffine ( Vector3 v ) : Vector3
v Vector3
리턴 Vector3

TransformAffine() 공개 메소드

4-D Vector transformation specially for affine matrix.
The matrix must be an affine matrix. Matrix4.IsAffine.
public TransformAffine ( Vector4 v ) : Vector4
v Vector4
리턴 Vector4

Transpose() 공개 메소드

Swap the rows of the matrix with the columns.
public Transpose ( ) : Matrix4
리턴 Matrix4

operator() 공개 정적인 메소드

Used to multiply (concatenate) two 4x4 Matrices.
public static operator ( ) : Matrix4
리턴 Matrix4

operator() 공개 정적인 메소드

Used to multiply a transformation to a Plane.
public static operator ( ) : Plane
리턴 Plane

operator() 공개 정적인 메소드

Transforms the given 3-D vector by the matrix, projecting the result back into w = 1.

This means that the initial w is considered to be 1.0, and then all the tree elements of the resulting 3-D vector are divided by the resulting w.

public static operator ( ) : Vector3
리턴 Vector3

operator() 공개 정적인 메소드

Compares two Matrix4 instances for equality.
public static operator ( ) : bool
리턴 bool

this() 공개 메소드

Allows the Matrix to be accessed linearly (m[0] -> m[15]).
This indexer is only provided as a convenience, and is not recommended for use in intensive applications.
public this ( int index ) : Real
index int
리턴 Real

this() 공개 메소드

Allows the Matrix to be accessed like a 2d array (i.e. matrix[2,3])
This indexer is only provided as a convenience, and is not recommended for use in intensive applications.
public this ( int row, int col ) : Real
row int
col int
리턴 Real

프로퍼티 상세

m00 공개적으로 프로퍼티

public Real m00
리턴 Real

m10 공개적으로 프로퍼티

public Real m10
리턴 Real

m20 공개적으로 프로퍼티

public Real m20
리턴 Real

m30 공개적으로 프로퍼티

public Real m30
리턴 Real