M22f
Constructors
Constructor | Description |
new(m00, m01, m10, m11)
Signature: (m00:float32 * m01:float32 * m10:float32 * m11:float32) -> unit
|
|
new(a)
Signature: (a:float32 []) -> unit
|
|
new(a, start)
Signature: (a:float32 [] * start:int) -> unit
|
Instance members
Instance member | Description |
Adjoin()
Signature: unit -> M22f
Modifiers: abstract |
Converts this matrix to its adjoint. |
Adjoint
Signature: M22f
Modifiers: abstract |
Returns adjoint of this matrix. |
C0()
Signature: unit -> unit
|
|
C1()
Signature: unit -> unit
|
|
Column(index)
Signature: index:int -> V2f
Modifiers: abstract |
Returns index-th column of this matrix. |
Columns
Signature: IEnumerable<V2f>
|
|
Copy(element_fun)
Signature: element_fun:Func<float32,int> -> M22i
|
Returns a copy with all elements transformed by the supplied function. |
Copy(element_index0_index1_fun)
Signature: element_index0_index1_fun:Func<float32,int,int,int> -> M22i
|
Returns a copy with all elements transformed by the supplied function. |
Copy(element_fun)
Signature: element_fun:Func<float32,int64> -> M22l
|
Returns a copy with all elements transformed by the supplied function. |
Copy(element_index0_index1_fun)
Signature: element_index0_index1_fun:Func<float32,int,int,int64> -> M22l
|
Returns a copy with all elements transformed by the supplied function. |
Copy(element_fun)
Signature: element_fun:Func<float32,float32> -> M22f
|
Returns a copy with all elements transformed by the supplied function. |
Copy(element_index0_index1_fun)
Signature: element_index0_index1_fun:Func<float32,int,int,float32> -> M22f
|
Returns a copy with all elements transformed by the supplied function. |
Copy(element_fun)
Signature: element_fun:Func<float32,float> -> M22d
|
Returns a copy with all elements transformed by the supplied function. |
Copy(element_index0_index1_fun)
Signature: element_index0_index1_fun:Func<float32,int,int,float> -> M22d
|
Returns a copy with all elements transformed by the supplied function. |
CopyTo(array, index)
Signature: (array:int [] * index:int64) -> unit
|
|
CopyTo(array, index)
Signature: (array:int64 [] * index:int64) -> unit
|
|
CopyTo(array, index)
Signature: (array:float32 [] * index:int64) -> unit
|
|
CopyTo(array, index)
Signature: (array:float [] * index:int64) -> unit
|
|
Det
Signature: float32
Modifiers: abstract |
Gets the determinant of this matrix. The determinant is only defined for square matrices. |
Determinant()
Signature: unit -> float32
|
Returns the determinant of this matrix. The determinant is only defined for square matrices. |
Dim
Signature: V2l
Modifiers: abstract |
|
Elements
Signature: IEnumerable<float32>
|
|
Equals(other)
Signature: other:obj -> bool
Modifiers: abstract |
|
GetHashCode()
Signature: unit -> int
Modifiers: abstract |
|
GetValue(x, y)
Signature: (x:int64 * y:int64) -> obj
Modifiers: abstract |
|
GetValue(v)
Signature: v:V2l -> obj
Modifiers: abstract |
|
Inverse
Signature: M22f
Modifiers: abstract |
Returns the inverse of this matrix. If the matrix is not invertible M22f.Zero is returned. |
Invert()
Signature: unit -> bool
Modifiers: abstract |
Inverts the matrix in place. Returns true if the matrix was invertible, otherwise the matrix remains unchanged. |
Invertible
Signature: bool
Modifiers: abstract |
Returns whether this matrix is invertible. A matrix is invertible if its determinant is not zero. |
IsIdentity(epsilon)
Signature: epsilon:float32 -> bool
|
Returns if the matrix is the identity matrix I. |
IsInvalid
Signature: bool
Modifiers: abstract |
|
IsOrthogonal(epsilon)
Signature: epsilon:float32 -> bool
|
Returns if the matrix is orthogonal (i.e. all non-diagonal entries of M * M^t == 0) |
IsOrthonormal(epsilon)
Signature: epsilon:float32 -> bool
|
Returns if the matrix is orthonormal (i.e. M * M^t == I) |
IsValid
Signature: bool
Modifiers: abstract |
|
[()]
Signature: unit -> int
|
|
[arg1]
Signature: int -> int
Modifiers: abstract |
|
[arg1]
Signature: int64 -> int64
Modifiers: abstract |
NOTE: this indexer has reversed order of coordinates with respect to the default indexer!!! |
[()]
Signature: unit -> V2l
Modifiers: abstract |
NOTE: this indexer has reversed order of coordinates with respect to the default indexer!!! |
LuInverse()
Signature: unit -> M22f
|
Returns the inverse of the matrix using lu factorization. If the matrix is not invertible, M22f.Zero is returned. |
LuInvert()
Signature: unit -> bool
|
Inverts the matrix using lu factorization in place. Returns true if the matrix was invertible, otherwise the matrix remains unchanged. |
Norm(p)
Signature: p:float32 -> float32
|
Returns the p-norm of the matrix. This is calculated as (|M00|^p + |M01|^p + ... )^(1/p) |
Norm1
Signature: float32
|
Returns the Manhattan (or 1-) norm of the matrix. This is calculated as |M00| + |M01| + ... |
Norm2
Signature: float32
|
Returns the Euclidean (or 2-) norm of the matrix. This is calculated as Sqrt(M00 M00 + M01 M01 + ... ) |
NormMax
Signature: float32
|
Returns the infinite (or maximum) norm of the matrix. This is calculated as max(|M00|, |M01|, ...). |
NormMin
Signature: float32
|
Returns the minimum norm of the matrix. This is calculated as min(|M00|, |M01|, ...). |
R0()
Signature: unit -> unit
|
|
R1()
Signature: unit -> unit
|
|
Row(index)
Signature: index:int -> V2f
Modifiers: abstract |
Returns index-th row of this matrix. |
Rows
Signature: IEnumerable<V2f>
|
|
SetValue(value, x, y)
Signature: (value:obj * x:int64 * y:int64) -> unit
Modifiers: abstract |
|
SetValue(value, v)
Signature: (value:obj * v:V2l) -> unit
Modifiers: abstract |
|
Singular
Signature: bool
Modifiers: abstract |
Returns whether this matrix is singular. A matrix is singular if its determinant is zero. |
ToArray()
Signature: unit -> float32 []
|
|
ToString()
Signature: unit -> string
Modifiers: abstract |
|
ToString(format)
Signature: format:string -> string
|
|
ToString(format, fp)
Signature: (format:string * fp:IFormatProvider) -> string
|
|
ToString(...)
Signature: (format:string * fp:IFormatProvider * beginM:string * betweenM:string * endM:string * beginR:string * betweenR:string * endR:string) -> string
|
Outputs e.g. a 2x2-Matrix in the form "(beginM)(beginR)m00(betweenR)m01(endR)(betweenM)(beginR)m10(betweenR)m11(endR)(endM)". |
Trace
Signature: float32
Modifiers: abstract |
Returns the trace of this matrix. The trace is defined as the sum of the diagonal elements, and is only defined for square matrices. |
Transform(v)
Signature: v:V2f -> V2f
Modifiers: abstract |
Transforms vector v. |
TransformDir(v)
Signature: v:float32 -> float32
Modifiers: abstract |
Transforms direction vector v (v.w is presumed 0.0) by this matrix. |
TransformPos(p)
Signature: p:float32 -> float32
Modifiers: abstract |
|
TransformPosProj(p)
Signature: p:float32 -> float32
Modifiers: abstract |
|
TransformPosProjFull(p)
Signature: p:float32 -> V2f
|
|
Transpose()
Signature: unit -> unit
Modifiers: abstract |
Transposes this matrix (and returns this). |
Transposed
Signature: M22f
Modifiers: abstract |
Gets transpose of this matrix. |
Static members
Static member | Description |
Add(a, b)
Signature: (a:M22f * b:M22f) -> M22f
|
|
Add(m, s)
Signature: (m:M22f * s:float32) -> M22f
|
|
Add(s, m)
Signature: (s:float32 * m:M22f) -> M22f
|
|
Add(a, b)
Signature: (a:M22f * b:M22d) -> M22d
|
|
Add(m, s)
Signature: (m:M22f * s:float) -> M22d
|
|
Add(s, m)
Signature: (s:float * m:M22f) -> M22d
|
|
ApproximatelyEquals(a, b, epsilon)
Signature: (a:M22f * b:M22f * epsilon:float32) -> bool
|
Returns if all entries in the matrix a are approximately equal to the respective entries in matrix b. |
Distance(a, b, p)
Signature: (a:M22f * b:M22f * p:float32) -> float32
|
Returns the p-distance between two matrices. |
Distance1(a, b)
Signature: (a:M22f * b:M22f) -> float32
|
Returns the Manhatten (or 1-) distance between two matrices. |
Distance2(a, b)
Signature: (a:M22f * b:M22f) -> float32
|
Returns the Euclidean (or 2-) distance between two matrices. |
DistanceMax(a, b)
Signature: (a:M22f * b:M22f) -> float32
|
Returns the maximal absolute distance between the components of the two matrices. |
DistanceMin(a, b)
Signature: (a:M22f * b:M22f) -> float32
|
Returns the minimal absolute distance between the components of the two matrices. |
Divide(a, b)
Signature: (a:M22f * b:M22f) -> M22f
|
|
Divide(m, s)
Signature: (m:M22f * s:float32) -> M22f
|
|
Divide(s, m)
Signature: (s:float32 * m:M22f) -> M22f
|
|
Divide(a, b)
Signature: (a:M22f * b:M22d) -> M22d
|
|
Divide(m, s)
Signature: (m:M22f * s:float) -> M22d
|
|
Divide(s, m)
Signature: (s:float * m:M22f) -> M22d
|
|
Enlarge(m)
Signature: m:M22f -> M33f
|
|
FromCols(col0, col1)
Signature: (col0:V2f * col1:V2f) -> M22f
|
|
FromRows(row0, row1)
Signature: (row0:V2f * row1:V2f) -> M22f
|
|
Modulo(a, b)
Signature: (a:M22f * b:M22f) -> M22f
|
|
Modulo(m, s)
Signature: (m:M22f * s:float32) -> M22f
|
|
Modulo(s, m)
Signature: (s:float32 * m:M22f) -> M22f
|
|
Modulo(a, b)
Signature: (a:M22f * b:M22d) -> M22d
|
|
Modulo(m, s)
Signature: (m:M22f * s:float) -> M22d
|
|
Modulo(s, m)
Signature: (s:float * m:M22f) -> M22d
|
|
Multiply(mat, vec)
Signature: (mat:M22f * vec:V3f) -> V3f
|
Multiplies matrix with a V3f. |
Multiply(mat, vec)
Signature: (mat:M22f * vec:V4f) -> V4f
|
Multiplies matrix with a V4f. |
Multiply(matrix, scale)
Signature: (matrix:M22f * scale:Scale3f) -> M33f
|
|
Multiply(matrix, shift)
Signature: (matrix:M22f * shift:Shift3f) -> M34f
|
|
Multiply(m, s)
Signature: (m:M22f * s:float32) -> M22f
|
|
Multiply(s, m)
Signature: (s:float32 * m:M22f) -> M22f
|
|
Multiply(m, s)
Signature: (m:M22f * s:float) -> M22d
|
|
Multiply(s, m)
Signature: (s:float * m:M22f) -> M22d
|
|
Multiply(m, v)
Signature: (m:M22f * v:V2f) -> V2f
|
|
Multiply(a, b)
Signature: (a:M22f * b:M22f) -> M22f
|
|
op_Addition(a, b)
Signature: (a:M22f * b:M22f) -> M22f
|
|
op_Addition(m, s)
Signature: (m:M22f * s:float32) -> M22f
|
|
op_Addition(s, m)
Signature: (s:float32 * m:M22f) -> M22f
|
|
op_Addition(a, b)
Signature: (a:M22f * b:M22d) -> M22d
|
|
op_Addition(m, s)
Signature: (m:M22f * s:float) -> M22d
|
|
op_Addition(s, m)
Signature: (s:float * m:M22f) -> M22d
|
|
op_Division(a, b)
Signature: (a:M22f * b:M22f) -> M22f
|
|
op_Division(m, s)
Signature: (m:M22f * s:float32) -> M22f
|
|
op_Division(s, m)
Signature: (s:float32 * m:M22f) -> M22f
|
|
op_Division(a, b)
Signature: (a:M22f * b:M22d) -> M22d
|
|
op_Division(m, s)
Signature: (m:M22f * s:float) -> M22d
|
|
op_Division(s, m)
Signature: (s:float * m:M22f) -> M22d
|
|
op_Equality(a, b)
Signature: (a:M22f * b:M22f) -> bool
|
|
op_Equality(a, s)
Signature: (a:M22f * s:float32) -> bool
|
|
op_Equality(s, a)
Signature: (s:float32 * a:M22f) -> bool
|
|
op_Explicit(m)
Signature: m:M22i -> M22f
|
|
op_Explicit(m)
Signature: m:M23i -> M22f
|
|
op_Explicit(m)
Signature: m:M33i -> M22f
|
|
op_Explicit(m)
Signature: m:M34i -> M22f
|
|
op_Explicit(m)
Signature: m:M44i -> M22f
|
|
op_Explicit(m)
Signature: m:M22l -> M22f
|
|
op_Explicit(m)
Signature: m:M23l -> M22f
|
|
op_Explicit(m)
Signature: m:M33l -> M22f
|
|
op_Explicit(m)
Signature: m:M34l -> M22f
|
|
op_Explicit(m)
Signature: m:M44l -> M22f
|
|
op_Explicit(m)
Signature: m:M23f -> M22f
|
|
op_Explicit(m)
Signature: m:M33f -> M22f
|
|
op_Explicit(m)
Signature: m:M34f -> M22f
|
|
op_Explicit(m)
Signature: m:M44f -> M22f
|
|
op_Explicit(m)
Signature: m:M22d -> M22f
|
|
op_Explicit(m)
Signature: m:M23d -> M22f
|
|
op_Explicit(m)
Signature: m:M33d -> M22f
|
|
op_Explicit(m)
Signature: m:M34d -> M22f
|
|
op_Explicit(m)
Signature: m:M44d -> M22f
|
|
op_Explicit(a)
Signature: (a:int []) -> M22f
|
|
op_Explicit(a)
Signature: (a:int [,]) -> M22f
|
|
op_Explicit(m)
Signature: m:M22f -> int []
|
|
op_Explicit(m)
Signature: m:M22f -> int [,]
|
|
op_Explicit(a)
Signature: (a:int64 []) -> M22f
|
|
op_Explicit(a)
Signature: (a:int64 [,]) -> M22f
|
|
op_Explicit(m)
Signature: m:M22f -> int64 []
|
|
op_Explicit(m)
Signature: m:M22f -> int64 [,]
|
|
op_Explicit(a)
Signature: (a:float32 []) -> M22f
|
|
op_Explicit(a)
Signature: (a:float32 [,]) -> M22f
|
|
op_Explicit(m)
Signature: m:M22f -> float32 []
|
|
op_Explicit(m)
Signature: m:M22f -> float32 [,]
|
|
op_Explicit(a)
Signature: (a:float []) -> M22f
|
|
op_Explicit(a)
Signature: (a:float [,]) -> M22f
|
|
op_Explicit(m)
Signature: m:M22f -> float []
|
|
op_Explicit(m)
Signature: m:M22f -> float [,]
|
|
op_GreaterThan(a, b)
Signature: (a:M22f * b:M22f) -> bool
|
|
op_GreaterThan(a, s)
Signature: (a:M22f * s:float32) -> bool
|
|
op_GreaterThan(s, a)
Signature: (s:float32 * a:M22f) -> bool
|
|
op_GreaterThanOrEqual(a, b)
Signature: (a:M22f * b:M22f) -> bool
|
|
op_GreaterThanOrEqual(a, s)
Signature: (a:M22f * s:float32) -> bool
|
|
op_GreaterThanOrEqual(s, a)
Signature: (s:float32 * a:M22f) -> bool
|
|
op_Inequality(a, b)
Signature: (a:M22f * b:M22f) -> bool
|
|
op_Inequality(m, s)
Signature: (m:M22f * s:float32) -> bool
|
|
op_Inequality(s, m)
Signature: (s:float32 * m:M22f) -> bool
|
|
op_LessThan(a, b)
Signature: (a:M22f * b:M22f) -> bool
|
|
op_LessThan(a, s)
Signature: (a:M22f * s:float32) -> bool
|
|
op_LessThan(s, a)
Signature: (s:float32 * a:M22f) -> bool
|
|
op_LessThanOrEqual(a, b)
Signature: (a:M22f * b:M22f) -> bool
|
|
op_LessThanOrEqual(a, s)
Signature: (a:M22f * s:float32) -> bool
|
|
op_LessThanOrEqual(s, a)
Signature: (s:float32 * a:M22f) -> bool
|
|
op_Modulus(a, b)
Signature: (a:M22f * b:M22f) -> M22f
|
|
op_Modulus(m, s)
Signature: (m:M22f * s:float32) -> M22f
|
|
op_Modulus(s, m)
Signature: (s:float32 * m:M22f) -> M22f
|
|
op_Modulus(a, b)
Signature: (a:M22f * b:M22d) -> M22d
|
|
op_Modulus(m, s)
Signature: (m:M22f * s:float) -> M22d
|
|
op_Modulus(s, m)
Signature: (s:float * m:M22f) -> M22d
|
|
op_Multiply(m, n)
Signature: (m:M22f * n:V3f) -> V3f
|
|
op_Multiply(m, n)
Signature: (m:M22f * n:V4f) -> V4f
|
|
op_Multiply(m, n)
Signature: (m:M22f * n:Scale3f) -> M33f
|
|
op_Multiply(m, n)
Signature: (m:M22f * n:Shift3f) -> M34f
|
|
op_Multiply(m, q)
Signature: (m:M22f * q:Rot2f) -> M22f
|
Multiplies a matrix with given rotation also represented as 2x2 matrix. |
op_Multiply(m, s)
Signature: (m:M22f * s:float32) -> M22f
|
|
op_Multiply(s, m)
Signature: (s:float32 * m:M22f) -> M22f
|
|
op_Multiply(m, s)
Signature: (m:M22f * s:float) -> M22d
|
|
op_Multiply(s, m)
Signature: (s:float * m:M22f) -> M22d
|
|
op_Multiply(m, v)
Signature: (m:M22f * v:V2f) -> V2f
|
|
op_Multiply(a, b)
Signature: (a:M22f * b:M22f) -> M22f
|
|
op_Subtraction(a, b)
Signature: (a:M22f * b:M22f) -> M22f
|
|
op_Subtraction(m, s)
Signature: (m:M22f * s:float32) -> M22f
|
|
op_Subtraction(s, m)
Signature: (s:float32 * m:M22f) -> M22f
|
|
op_Subtraction(a, b)
Signature: (a:M22f * b:M22d) -> M22d
|
|
op_Subtraction(m, s)
Signature: (m:M22f * s:float) -> M22d
|
|
op_Subtraction(s, m)
Signature: (s:float * m:M22f) -> M22d
|
|
Parse(s)
Signature: s:string -> M22f
|
|
Rotation(angleInRadians)
Signature: angleInRadians:float32 -> M22f
|
Creates a 2D rotation matrix with the specified angle in radians. |
Subtract(a, b)
Signature: (a:M22f * b:M22f) -> M22f
|
|
Subtract(m, s)
Signature: (m:M22f * s:float32) -> M22f
|
|
Subtract(s, m)
Signature: (s:float32 * m:M22f) -> M22f
|
|
Subtract(a, b)
Signature: (a:M22f * b:M22d) -> M22d
|
|
Subtract(m, s)
Signature: (m:M22f * s:float) -> M22d
|
|
Subtract(s, m)
Signature: (s:float * m:M22f) -> M22d
|
|
Transform(m, v)
Signature: (m:M22f * v:V2f) -> V2f
|
Transforms vector v. |
TransformDir(m, v)
Signature: (m:M22f * v:float32) -> float32
|
Transforms direction vector v (v.w is presumed 0.0) by matrix m. |
TransformPos(m, p)
Signature: (m:M22f * p:float32) -> float32
|
Transforms point p (v.w is presumed 1.0) by matrix m. No projective transform is performed. |
TransformPosProj(m, p)
Signature: (m:M22f * p:float32) -> float32
|
Transforms point p (p.w is presumed 1.0) by matrix m. Projective transform is performed. Perspective Division is performed. |
TransformPosProjFull(m, p)
Signature: (m:M22f * p:float32) -> V2f
|
Transforms point p (p.w is presumed 1.0) by matrix m. Projective transform is performed. |
TransposedMultiply(v, m)
Signature: (v:V2f * m:M22f) -> V2f
|