MeshLib Python Docs
Loading...
Searching...
No Matches
Inheritance diagram for mrmeshpy.ConstMatrix3f:

Public Member Functions

Matrix3f __add__ (self, ConstMatrix3f b)
bool __eq__ (self, ConstMatrix3f b)
ConstVector3f __getitem__ (self, int row)
 __init__ (self, *args, **kwargs)
Matrix3f __mul__ (self, float a)
Vector3f __mul__ (self, ConstVector3f b)
Matrix3f __mul__ (self, ConstMatrix3f b)
bool __ne__ (self, ConstMatrix3f b)
str __repr__ (self)
typing.Any __rlshift__ (self, typing.Any mat)
Matrix3f __rmul__ (self, float b)
Matrix3f __sub__ (self, ConstMatrix3f b)
Matrix3f __truediv__ (self, float a)
Vector3f col (self, int i)
float det (self)
Matrix3f inverse (self)
float norm (self)
float normSq (self)
Matrix3_float_QR qr (self)
Vector3f toEulerAngles (self)
float trace (self)
Matrix3f transposed (self)
ConstVector3f x (self)
ConstVector3f y (self)
ConstVector3f z (self)

Static Public Member Functions

Matrix3f approximateLinearRotationMatrixFromEuler (ConstVector3f eulerAngles)
Matrix3f fromColumns (ConstVector3f x, ConstVector3f y, ConstVector3f z)
Matrix3f fromRows (ConstVector3f x, ConstVector3f y, ConstVector3f z)
Matrix3f identity ()
Matrix3f rotation (ConstVector3f axis, float angle)
Matrix3f rotation (ConstVector3f from_, ConstVector3f to)
Matrix3f rotationFromEuler (ConstVector3f eulerAngles)
Matrix3f scale (float s)
Matrix3f scale (float sx, float sy, float sz)
Matrix3f scale (ConstVector3f s)
Matrix3f zero ()

Static Protected Attributes

typing _offsetof_x = 0
typing _offsetof_y = 12
typing _offsetof_z = 24

Detailed Description

Generated from:  MR::Matrix3f
Aliases:  AffineXf_Vector3f_M, Vector3_float_MatrixType

arbitrary 3x3 matrix

Constructor & Destructor Documentation

◆ __init__()

mrmeshpy.ConstMatrix3f.__init__ ( self,
* args,
** kwargs )
__init__(*args, **kwargs)
Overloaded function.

1. __init__(self: meshlib.mrmeshpy.ConstMatrix3f, arg0: meshlib.mrmeshpy.ConstQuaternionf) -> None

converts this into 3x3 rotation matrix

2. __init__(self: meshlib.mrmeshpy.ConstMatrix3f) -> None

3. __init__(self: meshlib.mrmeshpy.ConstMatrix3f, x: meshlib.mrmeshpy.ConstVector3f, y: meshlib.mrmeshpy.ConstVector3f, z: meshlib.mrmeshpy.ConstVector3f) -> None

initializes matrix from its 3 rows

4. __init__(self: meshlib.mrmeshpy.ConstMatrix3f, m: meshlib.mrmeshpy.ConstMatrix3d) -> None

Here `T == U` doesn't seem to cause any issues in the C++ code, but we're still disabling it because it somehow gets emitted
  when generating the bindings, and results in duplicate functions in C#.

5. __init__(self: meshlib.mrmeshpy.ConstMatrix3f, arg0: meshlib.mrmeshpy.Matrix3f) -> None

Implicit copy constructor.

6. __init__(self: meshlib.mrmeshpy.ConstMatrix3f, : meshlib.mrmeshpy.Matrix3f) -> None

Member Function Documentation

◆ __add__()

Matrix3f mrmeshpy.ConstMatrix3f.__add__ ( self,
ConstMatrix3f b )
NOTE: We use `std::declval()` in the operators below because libclang 18 in our binding generator is bugged and chokes on decltyping `a.x` and such. TODO fix this when we update libclang.

◆ __eq__()

bool mrmeshpy.ConstMatrix3f.__eq__ ( self,
ConstMatrix3f b )

◆ __getitem__()

ConstVector3f mrmeshpy.ConstMatrix3f.__getitem__ ( self,
int row )
row access

◆ __mul__() [1/3]

Matrix3f mrmeshpy.ConstMatrix3f.__mul__ ( self,
ConstMatrix3f b )
product of two matrices

◆ __mul__() [2/3]

Vector3f mrmeshpy.ConstMatrix3f.__mul__ ( self,
ConstVector3f b )
x = a * b

◆ __mul__() [3/3]

Matrix3f mrmeshpy.ConstMatrix3f.__mul__ ( self,
float a )

◆ __ne__()

bool mrmeshpy.ConstMatrix3f.__ne__ ( self,
ConstMatrix3f b )

◆ __repr__()

str mrmeshpy.ConstMatrix3f.__repr__ ( self)

◆ __rlshift__()

typing.Any mrmeshpy.ConstMatrix3f.__rlshift__ ( self,
typing.Any mat )

◆ __rmul__()

Matrix3f mrmeshpy.ConstMatrix3f.__rmul__ ( self,
float b )

◆ __sub__()

Matrix3f mrmeshpy.ConstMatrix3f.__sub__ ( self,
ConstMatrix3f b )

◆ __truediv__()

Matrix3f mrmeshpy.ConstMatrix3f.__truediv__ ( self,
float a )

◆ approximateLinearRotationMatrixFromEuler()

Matrix3f mrmeshpy.ConstMatrix3f.approximateLinearRotationMatrixFromEuler ( ConstVector3f eulerAngles)
static
returns linear by angles approximation of the rotation matrix, which is close to true rotation matrix for small angles

◆ col()

Vector3f mrmeshpy.ConstMatrix3f.col ( self,
int i )
column access

◆ det()

float mrmeshpy.ConstMatrix3f.det ( self)
computes determinant of the matrix

◆ fromColumns()

Matrix3f mrmeshpy.ConstMatrix3f.fromColumns ( ConstVector3f x,
ConstVector3f y,
ConstVector3f z )
static
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

◆ fromRows()

Matrix3f mrmeshpy.ConstMatrix3f.fromRows ( ConstVector3f x,
ConstVector3f y,
ConstVector3f z )
static
constructs a matrix from its 3 rows

◆ identity()

Matrix3f mrmeshpy.ConstMatrix3f.identity ( )
static

◆ inverse()

Matrix3f mrmeshpy.ConstMatrix3f.inverse ( self)
computes inverse matrix

◆ norm()

float mrmeshpy.ConstMatrix3f.norm ( self)

◆ normSq()

float mrmeshpy.ConstMatrix3f.normSq ( self)
compute sum of squared matrix elements

◆ qr()

Matrix3_float_QR mrmeshpy.ConstMatrix3f.qr ( self)
decompose this matrix on the product Q*R, where Q is orthogonal and R is upper triangular

◆ rotation() [1/2]

Matrix3f mrmeshpy.ConstMatrix3f.rotation ( ConstVector3f axis,
float angle )
static
creates matrix representing rotation around given axis on given angle

◆ rotation() [2/2]

Matrix3f mrmeshpy.ConstMatrix3f.rotation ( ConstVector3f from_,
ConstVector3f to )
static
creates matrix representing rotation that after application to (from) makes (to) vector

◆ rotationFromEuler()

Matrix3f mrmeshpy.ConstMatrix3f.rotationFromEuler ( ConstVector3f eulerAngles)
static
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

◆ scale() [1/3]

Matrix3f mrmeshpy.ConstMatrix3f.scale ( ConstVector3f s)
static

◆ scale() [2/3]

Matrix3f mrmeshpy.ConstMatrix3f.scale ( float s)
static
returns a matrix that scales uniformly

◆ scale() [3/3]

Matrix3f mrmeshpy.ConstMatrix3f.scale ( float sx,
float sy,
float sz )
static
returns a matrix that has its own scale along each axis

◆ toEulerAngles()

Vector3f mrmeshpy.ConstMatrix3f.toEulerAngles ( self)
returns 3 Euler angles, assuming this is a rotation matrix composed as follows: R=R(z)*R(y)*R(x)

◆ trace()

float mrmeshpy.ConstMatrix3f.trace ( self)
computes trace of the matrix

◆ transposed()

Matrix3f mrmeshpy.ConstMatrix3f.transposed ( self)
computes transposed matrix

◆ x()

ConstVector3f mrmeshpy.ConstMatrix3f.x ( self)
rows, identity matrix by default

Reimplemented in mrmeshpy.Matrix3f, and mrmeshpy.Matrix3f.

◆ y()

ConstVector3f mrmeshpy.ConstMatrix3f.y ( self)

Reimplemented in mrmeshpy.Matrix3f, and mrmeshpy.Matrix3f.

◆ z()

ConstVector3f mrmeshpy.ConstMatrix3f.z ( self)

Reimplemented in mrmeshpy.Matrix3f, and mrmeshpy.Matrix3f.

◆ zero()

Matrix3f mrmeshpy.ConstMatrix3f.zero ( )
static

Member Data Documentation

◆ _offsetof_x

typing mrmeshpy.ConstMatrix3f._offsetof_x = 0
staticprotected

◆ _offsetof_y

typing mrmeshpy.ConstMatrix3f._offsetof_y = 12
staticprotected

◆ _offsetof_z

typing mrmeshpy.ConstMatrix3f._offsetof_z = 24
staticprotected

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