The Open Toolkit library  1.0
 All Classes Namespaces Functions Variables Enumerations Enumerator Properties Events
OpenTK.Matrix3x2d Struct Reference

Represents a 3x2 matrix. More...

Inherits IEquatable< Matrix3x2d >.

Public Member Functions

 Matrix3x2d (Vector2d row0, Vector2d row1, Vector2d row2)
 Constructs a new instance. More...
 
 Matrix3x2d (double m00, double m01, double m10, double m11, double m20, double m21)
 Constructs a new instance More...
 
override string ToString ()
 Returns a System.String that represents the current Matrix3d. More...
 
override int GetHashCode ()
 Returns the hashcode for this instance. More...
 
override bool Equals (object obj)
 Indicates whether this instance and a specified object are equal. More...
 
bool Equals (Matrix3x2d other)
 Indicates whether the current matrix is equal to another matrix. More...
 

Static Public Member Functions

static void CreateRotation (double angle, out Matrix3x2d result)
 Builds a rotation matrix. More...
 
static Matrix3x2d CreateRotation (double angle)
 Builds a rotation matrix. More...
 
static void CreateScale (double scale, out Matrix3x2d result)
 Creates a scale matrix. More...
 
static Matrix3x2d CreateScale (double scale)
 Creates a scale matrix. More...
 
static void CreateScale (Vector2d scale, out Matrix3x2d result)
 Creates a scale matrix. More...
 
static Matrix3x2d CreateScale (Vector2d scale)
 Creates a scale matrix. More...
 
static void CreateScale (double x, double y, out Matrix3x2d result)
 Creates a scale matrix. More...
 
static Matrix3x2d CreateScale (double x, double y)
 Creates a scale matrix. More...
 
static void Mult (ref Matrix3x2d left, double right, out Matrix3x2d result)
 Multiplies and instance by a scalar. More...
 
static Matrix3x2d Mult (Matrix3x2d left, double right)
 Multiplies and instance by a scalar. More...
 
static void Mult (ref Matrix3x2d left, ref Matrix2d right, out Matrix3x2d result)
 Multiplies two instances. More...
 
static Matrix3x2d Mult (Matrix3x2d left, Matrix2d right)
 Multiplies two instances. More...
 
static void Mult (ref Matrix3x2d left, ref Matrix2x3d right, out Matrix3d result)
 Multiplies two instances. More...
 
static Matrix3d Mult (Matrix3x2d left, Matrix2x3d right)
 Multiplies two instances. More...
 
static void Mult (ref Matrix3x2d left, ref Matrix2x4d right, out Matrix3x4d result)
 Multiplies two instances. More...
 
static Matrix3x4d Mult (Matrix3x2d left, Matrix2x4d right)
 Multiplies two instances. More...
 
static void Add (ref Matrix3x2d left, ref Matrix3x2d right, out Matrix3x2d result)
 Adds two instances. More...
 
static Matrix3x2d Add (Matrix3x2d left, Matrix3x2d right)
 Adds two instances. More...
 
static void Subtract (ref Matrix3x2d left, ref Matrix3x2d right, out Matrix3x2d result)
 Subtracts two instances. More...
 
static Matrix3x2d Subtract (Matrix3x2d left, Matrix3x2d right)
 Subtracts two instances. More...
 
static void Transpose (ref Matrix3x2d mat, out Matrix2x3d result)
 Calculate the transpose of the given matrix. More...
 
static Matrix2x3d Transpose (Matrix3x2d mat)
 Calculate the transpose of the given matrix. More...
 
static Matrix3x2d operator* (double left, Matrix3x2d right)
 Scalar multiplication. More...
 
static Matrix3x2d operator* (Matrix3x2d left, double right)
 Scalar multiplication. More...
 
static Matrix3x2d operator* (Matrix3x2d left, Matrix2d right)
 Matrix multiplication More...
 
static Matrix3d operator* (Matrix3x2d left, Matrix2x3d right)
 Matrix multiplication More...
 
static Matrix3x4d operator* (Matrix3x2d left, Matrix2x4d right)
 Matrix multiplication More...
 
static Matrix3x2d operator+ (Matrix3x2d left, Matrix3x2d right)
 Matrix addition More...
 
static Matrix3x2d operator- (Matrix3x2d left, Matrix3x2d right)
 Matrix subtraction More...
 
static bool operator== (Matrix3x2d left, Matrix3x2d right)
 Compares two instances for equality. More...
 
static bool operator!= (Matrix3x2d left, Matrix3x2d right)
 Compares two instances for inequality. More...
 

Public Attributes

Vector2d Row0
 Top row of the matrix. More...
 
Vector2d Row1
 Second row of the matrix. More...
 
Vector2d Row2
 Bottom row of the matrix. More...
 

Static Public Attributes

static readonly Matrix3x2d Zero = new Matrix3x2d(Vector2d.Zero, Vector2d.Zero, Vector2d.Zero)
 The zero matrix. More...
 

Properties

Vector3d Column0 [get, set]
 Gets or sets the first column of this matrix. More...
 
Vector3d Column1 [get, set]
 Gets or sets the second column of this matrix. More...
 
double M11 [get, set]
 Gets or sets the value at row 1, column 1 of this instance. More...
 
double M12 [get, set]
 Gets or sets the value at row 1, column 2 of this instance. More...
 
double M21 [get, set]
 Gets or sets the value at row 2, column 1 of this instance. More...
 
double M22 [get, set]
 Gets or sets the value at row 2, column 2 of this instance. More...
 
double M31 [get, set]
 Gets or sets the value at row 3, column 1 of this instance. More...
 
double M32 [get, set]
 Gets or sets the value at row 3, column 2 of this instance. More...
 
Vector2d Diagonal [get, set]
 Gets or sets the values along the main diagonal of the matrix. More...
 
double Trace [get]
 Gets the trace of the matrix, the sum of the values along the diagonal. More...
 
double this[int rowIndex, int columnIndex] [get, set]
 Gets or sets the value at a specified row and column. More...
 

Detailed Description

Represents a 3x2 matrix.

Constructor & Destructor Documentation

OpenTK.Matrix3x2d.Matrix3x2d ( Vector2d  row0,
Vector2d  row1,
Vector2d  row2 
)

Constructs a new instance.

Parameters
row0Top row of the matrix.
row1Second row of the matrix.
row2Bottom row of the matrix.
OpenTK.Matrix3x2d.Matrix3x2d ( double  m00,
double  m01,
double  m10,
double  m11,
double  m20,
double  m21 
)

Constructs a new instance

Parameters
m00First item of the first row of the matrix.
m01Second item of the first row of the matrix.
m10First item of the second row of the matrix.
m11Second item of the second row of the matrix.
m20First item of the third row of the matrix.
m21Second item of the third row of the matrix.

Member Function Documentation

static void OpenTK.Matrix3x2d.Add ( ref Matrix3x2d  left,
ref Matrix3x2d  right,
out Matrix3x2d  result 
)
static

Adds two instances.

Parameters
leftThe left operand of the addition.
rightThe right operand of the addition.
resultA new instance that is the result of the addition.
static Matrix3x2d OpenTK.Matrix3x2d.Add ( Matrix3x2d  left,
Matrix3x2d  right 
)
static

Adds two instances.

Parameters
leftThe left operand of the addition.
rightThe right operand of the addition.
Returns
A new instance that is the result of the addition.
static void OpenTK.Matrix3x2d.CreateRotation ( double  angle,
out Matrix3x2d  result 
)
static

Builds a rotation matrix.

Parameters
angleThe counter-clockwise angle in radians.
resultThe resulting Matrix3x2d instance.
static Matrix3x2d OpenTK.Matrix3x2d.CreateRotation ( double  angle)
static

Builds a rotation matrix.

Parameters
angleThe counter-clockwise angle in radians.
Returns
The resulting Matrix3x2d instance.
static void OpenTK.Matrix3x2d.CreateScale ( double  scale,
out Matrix3x2d  result 
)
static

Creates a scale matrix.

Parameters
scaleSingle scale factor for the x, y, and z axes.
resultA scale matrix.
static Matrix3x2d OpenTK.Matrix3x2d.CreateScale ( double  scale)
static

Creates a scale matrix.

Parameters
scaleSingle scale factor for the x and y axes.
Returns
A scale matrix.
static void OpenTK.Matrix3x2d.CreateScale ( Vector2d  scale,
out Matrix3x2d  result 
)
static

Creates a scale matrix.

Parameters
scaleScale factors for the x and y axes.
resultA scale matrix.
static Matrix3x2d OpenTK.Matrix3x2d.CreateScale ( Vector2d  scale)
static

Creates a scale matrix.

Parameters
scaleScale factors for the x and y axes.
Returns
A scale matrix.
static void OpenTK.Matrix3x2d.CreateScale ( double  x,
double  y,
out Matrix3x2d  result 
)
static

Creates a scale matrix.

Parameters
xScale factor for the x axis.
yScale factor for the y axis.
resultA scale matrix.
static Matrix3x2d OpenTK.Matrix3x2d.CreateScale ( double  x,
double  y 
)
static

Creates a scale matrix.

Parameters
xScale factor for the x axis.
yScale factor for the y axis.
Returns
A scale matrix.
override bool OpenTK.Matrix3x2d.Equals ( object  obj)

Indicates whether this instance and a specified object are equal.

Parameters
objThe object to compare to.
Returns
True if the instances are equal; false otherwise.
bool OpenTK.Matrix3x2d.Equals ( Matrix3x2d  other)

Indicates whether the current matrix is equal to another matrix.

Parameters
otherAn matrix to compare with this matrix.
Returns
true if the current matrix is equal to the matrix parameter; otherwise, false.
override int OpenTK.Matrix3x2d.GetHashCode ( )

Returns the hashcode for this instance.

Returns
A System.Int32 containing the unique hashcode for this instance.
static void OpenTK.Matrix3x2d.Mult ( ref Matrix3x2d  left,
double  right,
out Matrix3x2d  result 
)
static

Multiplies and instance by a scalar.

Parameters
leftThe left operand of the multiplication.
rightThe right operand of the multiplication.
resultA new instance that is the result of the multiplication.
static Matrix3x2d OpenTK.Matrix3x2d.Mult ( Matrix3x2d  left,
double  right 
)
static

Multiplies and instance by a scalar.

Parameters
leftThe left operand of the multiplication.
rightThe right operand of the multiplication.
Returns
A new instance that is the result of the multiplication.
static void OpenTK.Matrix3x2d.Mult ( ref Matrix3x2d  left,
ref Matrix2d  right,
out Matrix3x2d  result 
)
static

Multiplies two instances.

Parameters
leftThe left operand of the multiplication.
rightThe right operand of the multiplication.
resultA new instance that is the result of the multiplication.
static Matrix3x2d OpenTK.Matrix3x2d.Mult ( Matrix3x2d  left,
Matrix2d  right 
)
static

Multiplies two instances.

Parameters
leftThe left operand of the multiplication.
rightThe right operand of the multiplication.
Returns
A new instance that is the result of the multiplication.
static void OpenTK.Matrix3x2d.Mult ( ref Matrix3x2d  left,
ref Matrix2x3d  right,
out Matrix3d  result 
)
static

Multiplies two instances.

Parameters
leftThe left operand of the multiplication.
rightThe right operand of the multiplication.
resultA new instance that is the result of the multiplication.
static Matrix3d OpenTK.Matrix3x2d.Mult ( Matrix3x2d  left,
Matrix2x3d  right 
)
static

Multiplies two instances.

Parameters
leftThe left operand of the multiplication.
rightThe right operand of the multiplication.
Returns
A new instance that is the result of the multiplication.
static void OpenTK.Matrix3x2d.Mult ( ref Matrix3x2d  left,
ref Matrix2x4d  right,
out Matrix3x4d  result 
)
static

Multiplies two instances.

Parameters
leftThe left operand of the multiplication.
rightThe right operand of the multiplication.
resultA new instance that is the result of the multiplication.
static Matrix3x4d OpenTK.Matrix3x2d.Mult ( Matrix3x2d  left,
Matrix2x4d  right 
)
static

Multiplies two instances.

Parameters
leftThe left operand of the multiplication.
rightThe right operand of the multiplication.
Returns
A new instance that is the result of the multiplication.
static bool OpenTK.Matrix3x2d.operator!= ( Matrix3x2d  left,
Matrix3x2d  right 
)
static

Compares two instances for inequality.

Parameters
leftThe first instance.
rightThe second instance.
Returns
True, if left does not equal right; false otherwise.
static Matrix3x2d OpenTK.Matrix3x2d.operator* ( double  left,
Matrix3x2d  right 
)
static

Scalar multiplication.

Parameters
leftleft-hand operand
rightright-hand operand
Returns
A new Matrix3x2d which holds the result of the multiplication
static Matrix3x2d OpenTK.Matrix3x2d.operator* ( Matrix3x2d  left,
double  right 
)
static

Scalar multiplication.

Parameters
leftleft-hand operand
rightright-hand operand
Returns
A new Matrix3x2d which holds the result of the multiplication
static Matrix3x2d OpenTK.Matrix3x2d.operator* ( Matrix3x2d  left,
Matrix2d  right 
)
static

Matrix multiplication

Parameters
leftleft-hand operand
rightright-hand operand
Returns
A new Matrix3x2d which holds the result of the multiplication
static Matrix3d OpenTK.Matrix3x2d.operator* ( Matrix3x2d  left,
Matrix2x3d  right 
)
static

Matrix multiplication

Parameters
leftleft-hand operand
rightright-hand operand
Returns
A new Matrix3d which holds the result of the multiplication
static Matrix3x4d OpenTK.Matrix3x2d.operator* ( Matrix3x2d  left,
Matrix2x4d  right 
)
static

Matrix multiplication

Parameters
leftleft-hand operand
rightright-hand operand
Returns
A new Matrix3x4 which holds the result of the multiplication
static Matrix3x2d OpenTK.Matrix3x2d.operator+ ( Matrix3x2d  left,
Matrix3x2d  right 
)
static

Matrix addition

Parameters
leftleft-hand operand
rightright-hand operand
Returns
A new Matrix3x2d which holds the result of the addition
static Matrix3x2d OpenTK.Matrix3x2d.operator- ( Matrix3x2d  left,
Matrix3x2d  right 
)
static

Matrix subtraction

Parameters
leftleft-hand operand
rightright-hand operand
Returns
A new Matrix3x2d which holds the result of the subtraction
static bool OpenTK.Matrix3x2d.operator== ( Matrix3x2d  left,
Matrix3x2d  right 
)
static

Compares two instances for equality.

Parameters
leftThe first instance.
rightThe second instance.
Returns
True, if left equals right; false otherwise.
static void OpenTK.Matrix3x2d.Subtract ( ref Matrix3x2d  left,
ref Matrix3x2d  right,
out Matrix3x2d  result 
)
static

Subtracts two instances.

Parameters
leftThe left operand of the subtraction.
rightThe right operand of the subtraction.
resultA new instance that is the result of the subtraction.
static Matrix3x2d OpenTK.Matrix3x2d.Subtract ( Matrix3x2d  left,
Matrix3x2d  right 
)
static

Subtracts two instances.

Parameters
leftThe left operand of the subtraction.
rightThe right operand of the subtraction.
Returns
A new instance that is the result of the subtraction.
override string OpenTK.Matrix3x2d.ToString ( )

Returns a System.String that represents the current Matrix3d.

Returns
The string representation of the matrix.
static void OpenTK.Matrix3x2d.Transpose ( ref Matrix3x2d  mat,
out Matrix2x3d  result 
)
static

Calculate the transpose of the given matrix.

Parameters
matThe matrix to transpose.
resultThe transpose of the given matrix.
static Matrix2x3d OpenTK.Matrix3x2d.Transpose ( Matrix3x2d  mat)
static

Calculate the transpose of the given matrix.

Parameters
matThe matrix to transpose.
Returns
The transpose of the given matrix.

Member Data Documentation

Vector2d OpenTK.Matrix3x2d.Row0

Top row of the matrix.

Vector2d OpenTK.Matrix3x2d.Row1

Second row of the matrix.

Vector2d OpenTK.Matrix3x2d.Row2

Bottom row of the matrix.

readonly Matrix3x2d OpenTK.Matrix3x2d.Zero = new Matrix3x2d(Vector2d.Zero, Vector2d.Zero, Vector2d.Zero)
static

The zero matrix.

Property Documentation

Vector3d OpenTK.Matrix3x2d.Column0
getset

Gets or sets the first column of this matrix.

Vector3d OpenTK.Matrix3x2d.Column1
getset

Gets or sets the second column of this matrix.

Vector2d OpenTK.Matrix3x2d.Diagonal
getset

Gets or sets the values along the main diagonal of the matrix.

double OpenTK.Matrix3x2d.M11
getset

Gets or sets the value at row 1, column 1 of this instance.

double OpenTK.Matrix3x2d.M12
getset

Gets or sets the value at row 1, column 2 of this instance.

double OpenTK.Matrix3x2d.M21
getset

Gets or sets the value at row 2, column 1 of this instance.

double OpenTK.Matrix3x2d.M22
getset

Gets or sets the value at row 2, column 2 of this instance.

double OpenTK.Matrix3x2d.M31
getset

Gets or sets the value at row 3, column 1 of this instance.

double OpenTK.Matrix3x2d.M32
getset

Gets or sets the value at row 3, column 2 of this instance.

double OpenTK.Matrix3x2d.this[int rowIndex, int columnIndex]
getset

Gets or sets the value at a specified row and column.

double OpenTK.Matrix3x2d.Trace
get

Gets the trace of the matrix, the sum of the values along the diagonal.