MeshLib C# Docs
Loading...
Searching...
No Matches
MR.Matrix3d Struct Reference

arbitrary 3x3 matrix Generated from class MR.Matrix3d. This is the by-value version of the struct. More...

+ Inheritance diagram for MR.Matrix3d:

Public Member Functions

 Matrix3d (Matrix3d _other)
 Generated copy constructor.
 
unsafe Matrix3d ()
 Constructs an empty (default-constructed) instance.
 
unsafe Matrix3d (in MR.Vector3d x, in MR.Vector3d y, in MR.Vector3d z)
 initializes matrix from its 3 rows Generated from constructor MR.Matrix3d.Matrix3d.
 
unsafe ref MR.Vector3d index (int row)
 Generated from method MR.Matrix3d.operator[].
 
readonly unsafe MR.Vector3d col (int i)
 column access Generated from method MR.Matrix3d.col.
 
readonly unsafe double trace ()
 computes trace of the matrix Generated from method MR.Matrix3d.trace.
 
readonly unsafe double normSq ()
 compute sum of squared matrix elements Generated from method MR.Matrix3d.normSq.
 
readonly unsafe double norm ()
 Generated from method MR.Matrix3d.norm.
 
readonly unsafe double det ()
 computes determinant of the matrix Generated from method MR.Matrix3d.det.
 
readonly unsafe MR.Matrix3d inverse ()
 computes inverse matrix Generated from method MR.Matrix3d.inverse.
 
readonly unsafe MR.Matrix3d transposed ()
 computes transposed matrix Generated from method MR.Matrix3d.transposed.
 
readonly unsafe MR.Vector3d toEulerAngles ()
 returns 3 Euler angles, assuming this is a rotation matrix composed as follows: R=R(z)*R(y)*R(x) Generated from method MR.Matrix3d.toEulerAngles.
 
readonly unsafe MR.Matrix3_Double.QR qr ()
 decompose this matrix on the product Q*R, where Q is orthogonal and R is upper triangular Generated from method MR.Matrix3d.qr.
 
unsafe ref MR.Matrix3d addAssign (in MR.Matrix3d b)
 Generated from function MR.operator+=.
 
unsafe ref MR.Matrix3d subAssign (in MR.Matrix3d b)
 Generated from function MR.operator-=.
 
unsafe ref MR.Matrix3d mulAssign (double b)
 Generated from function MR.operator*=.
 
unsafe ref MR.Matrix3d divAssign (double b)
 Generated from function MR.operator/=.
 
bool Equals (MR.Matrix3d b)
 
override bool Equals (object? other)
 

Static Public Member Functions

static implicit operator Matrix3d (ConstBox_Matrix3d other)
 Copy contents from a wrapper class to this struct.
 
static MR.Matrix3d zero ()
 Generated from method MR.Matrix3d.zero.
 
static MR.Matrix3d identity ()
 Generated from method MR.Matrix3d.identity.
 
static MR.Matrix3d scale (double s)
 returns a matrix that scales uniformly Generated from method MR.Matrix3d.scale.
 
static MR.Matrix3d scale (double sx, double sy, double sz)
 returns a matrix that has its own scale along each axis Generated from method MR.Matrix3d.scale.
 
static unsafe MR.Matrix3d scale (in MR.Vector3d s)
 Generated from method MR.Matrix3d.scale.
 
static unsafe MR.Matrix3d rotation (in MR.Vector3d axis, double angle)
 creates matrix representing rotation around given axis on given angle Generated from method MR.Matrix3d.rotation.
 
static unsafe MR.Matrix3d rotation (in MR.Vector3d from, in MR.Vector3d to)
 creates matrix representing rotation that after application to (from) makes (to) vector Generated from method MR.Matrix3d.rotation.
 
static unsafe MR.Matrix3d rotationFromEuler (in MR.Vector3d eulerAngles)
 creates matrix representing rotation from 3 Euler angles: R=R(z)*R(y)*R(x) see more https://en.wikipedia.org/wiki/Euler_angles#Conventions_by_intrinsic_rotations Generated from method MR.Matrix3d.rotationFromEuler.
 
static unsafe MR.Matrix3d approximateLinearRotationMatrixFromEuler (in MR.Vector3d eulerAngles)
 returns linear by angles approximation of the rotation matrix, which is close to true rotation matrix for small angles Generated from method MR.Matrix3d.approximateLinearRotationMatrixFromEuler.
 
static unsafe MR.Matrix3d fromRows (in MR.Vector3d x, in MR.Vector3d y, in MR.Vector3d z)
 constructs a matrix from its 3 rows Generated from method MR.Matrix3d.fromRows.
 
static unsafe MR.Matrix3d fromColumns (in MR.Vector3d x, in MR.Vector3d y, in MR.Vector3d z)
 constructs a matrix from its 3 columns; use this method to get the matrix that transforms basis vectors ( plusX, plusY, plusZ ) into vectors ( x, y, z ) respectively Generated from method MR.Matrix3d.fromColumns.
 
static unsafe bool operator== (MR.Matrix3d a, MR.Matrix3d b)
 Generated from function MR.operator==.
 
static unsafe bool operator!= (MR.Matrix3d a, MR.Matrix3d b)
 
static unsafe MR.Matrix3d operator+ (MR.Matrix3d a, in MR.Matrix3d b)
 Generated from function MR.operator+.
 
static unsafe MR.Matrix3d operator- (MR.Matrix3d a, in MR.Matrix3d b)
 Generated from function MR.operator-.
 
static unsafe MR.Matrix3d operator* (double a, MR.Matrix3d b)
 Generated from function MR.operator*.
 
static unsafe MR.Matrix3d operator* (MR.Matrix3d b, double a)
 Generated from function MR.operator*.
 
static MR.Matrix3d operator/ (MR.Matrix3d b, double a)
 Generated from function MR.operator/.
 
static unsafe MR.Vector3d operator* (MR.Matrix3d a, in MR.Vector3d b)
 x = a * b Generated from function MR.operator*.
 
static unsafe MR.Matrix3d operator* (MR.Matrix3d a, in MR.Matrix3d b)
 product of two matrices Generated from function MR.operator*.
 

Public Attributes

MR.Vector3d x
 rows, identity matrix by default
 
MR.Vector3d y
 
MR.Vector3d z
 

Properties

readonly unsafe ref readonly MR.Vector3d this[int row] [get]
 row access Generated from method MR.Matrix3d.operator[].
 

Detailed Description

arbitrary 3x3 matrix Generated from class MR.Matrix3d. This is the by-value version of the struct.


The documentation for this struct was generated from the following file: