MeshLib Python Docs
Loading...
Searching...
No Matches
mrmeshpy.Matrix3f Class Reference

Public Member Functions

Matrix3f __add__ (self, Matrix3f b)
 
bool __eq__ (self, Matrix3f b)
 
Vector3f __getitem__ (self, int row)
 
Vector3f __getitem__ (self, int row)
 
Matrix3f __iadd__ (self, Matrix3f b)
 
Matrix3f __imatmul__ (self, float b)
 
None __init__ (self, Quaternionf arg0)
 
None __init__ (self)
 
None __init__ (self, Vector3f x, Vector3f y, Vector3f z)
 
None __init__ (self, Matrix3f m)
 
None __init__ (self, Matrix3d m)
 
Matrix3f __isub__ (self, Matrix3f b)
 
Matrix3f __itruediv__ (self, float b)
 
Matrix3f __mul__ (self, float a)
 
Vector3f __mul__ (self, Vector3f b)
 
Matrix3f __mul__ (self, Matrix3f b)
 
bool __ne__ (self, Matrix3f b)
 
str __repr__ (self)
 
Matrix3f __rmul__ (self, float b)
 
None __setitem__ (self, int arg0, Vector3f arg1)
 
Matrix3f __sub__ (self, Matrix3f 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)
 
Vector3f x (self)
 
None x (self, Vector3f arg1)
 

Static Public Member Functions

None __init__ (*args, **kwargs)
 
Matrix3f approximateLinearRotationMatrixFromEuler (Vector3f eulerAngles)
 
Matrix3f fromColumns (Vector3f x, Vector3f y, Vector3f z)
 
Matrix3f fromRows (Vector3f x, Vector3f y, Vector3f z)
 
Matrix3f identity ()
 
Matrix3f operator (*args, **kwargs)
 
Matrix3f operator (*args, **kwargs)
 
Matrix3f rotation (Vector3f axis, float angle)
 
Matrix3f rotation (Vector3f from_, Vector3f to)
 
Matrix3f rotationFromEuler (Vector3f eulerAngles)
 
Matrix3f scale (float s)
 
Matrix3f scale (float sx, float sy, float sz)
 
Matrix3f scale (Vector3f 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:  Vector3_float_MatrixType, AffineXf_Vector3f_M

arbitrary 3x3 matrix
\\ingroup MatrixGroup

Constructor & Destructor Documentation

◆ __init__() [1/6]

None mrmeshpy.Matrix3f.__init__ ( * args,
** kwargs )
static

◆ __init__() [2/6]

None mrmeshpy.Matrix3f.__init__ ( self,
Quaternionf arg0 )
converts this into 3x3 rotation matrix

◆ __init__() [3/6]

None mrmeshpy.Matrix3f.__init__ ( self)

◆ __init__() [4/6]

None mrmeshpy.Matrix3f.__init__ ( self,
Vector3f x,
Vector3f y,
Vector3f z )
initializes matrix from its 3 rows

◆ __init__() [5/6]

None mrmeshpy.Matrix3f.__init__ ( self,
Matrix3f m )

◆ __init__() [6/6]

None mrmeshpy.Matrix3f.__init__ ( self,
Matrix3d m )

Member Function Documentation

◆ __add__()

Matrix3f mrmeshpy.Matrix3f.__add__ ( self,
Matrix3f 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.Matrix3f.__eq__ ( self,
Matrix3f b )

◆ __getitem__() [1/2]

Vector3f mrmeshpy.Matrix3f.__getitem__ ( self,
int row )
row access

◆ __getitem__() [2/2]

Vector3f mrmeshpy.Matrix3f.__getitem__ ( self,
int row )

◆ __iadd__()

Matrix3f mrmeshpy.Matrix3f.__iadd__ ( self,
Matrix3f b )

◆ __imatmul__()

Matrix3f mrmeshpy.Matrix3f.__imatmul__ ( self,
float b )

◆ __isub__()

Matrix3f mrmeshpy.Matrix3f.__isub__ ( self,
Matrix3f b )

◆ __itruediv__()

Matrix3f mrmeshpy.Matrix3f.__itruediv__ ( self,
float b )

◆ __mul__() [1/3]

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

◆ __mul__() [2/3]

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

◆ __mul__() [3/3]

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

◆ __ne__()

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

◆ __repr__()

str mrmeshpy.Matrix3f.__repr__ ( self)

◆ __rmul__()

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

◆ __setitem__()

None mrmeshpy.Matrix3f.__setitem__ ( self,
int arg0,
Vector3f arg1 )

◆ __sub__()

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

◆ __truediv__()

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

◆ approximateLinearRotationMatrixFromEuler()

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

◆ col()

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

◆ det()

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

◆ fromColumns()

Matrix3f mrmeshpy.Matrix3f.fromColumns ( Vector3f x,
Vector3f y,
Vector3f 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.Matrix3f.fromRows ( Vector3f x,
Vector3f y,
Vector3f z )
static
constructs a matrix from its 3 rows

◆ identity()

Matrix3f mrmeshpy.Matrix3f.identity ( )
static

◆ inverse()

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

◆ norm()

float mrmeshpy.Matrix3f.norm ( self)

◆ normSq()

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

◆ operator() [1/2]

Matrix3f mrmeshpy.Matrix3f.operator ( * args,
** kwargs )
static

◆ operator() [2/2]

Matrix3f mrmeshpy.Matrix3f.operator ( * args,
** kwargs )
static

◆ qr()

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

◆ rotation() [1/2]

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

◆ rotation() [2/2]

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

◆ rotationFromEuler()

Matrix3f mrmeshpy.Matrix3f.rotationFromEuler ( Vector3f 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.Matrix3f.scale ( float s)
static
returns a matrix that scales uniformly

◆ scale() [2/3]

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

◆ scale() [3/3]

Matrix3f mrmeshpy.Matrix3f.scale ( Vector3f s)
static

◆ toEulerAngles()

Vector3f mrmeshpy.Matrix3f.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.Matrix3f.trace ( self)
computes trace of the matrix

◆ transposed()

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

◆ x() [1/2]

Vector3f mrmeshpy.Matrix3f.x ( self)
rows, identity matrix by default

◆ x() [2/2]

None mrmeshpy.Matrix3f.x ( self,
Vector3f arg1 )

◆ zero()

Matrix3f mrmeshpy.Matrix3f.zero ( )
static

Member Data Documentation

◆ _offsetof_x

typing mrmeshpy.Matrix3f._offsetof_x = 0
staticprotected

◆ _offsetof_y

typing mrmeshpy.Matrix3f._offsetof_y = 12
staticprotected

◆ _offsetof_z

typing mrmeshpy.Matrix3f._offsetof_z = 24
staticprotected

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