OpenMaya.MMatrix Class Reference

Class Description

4x4 matrix with double-precision elements.

Constructors

SignatureParametersDescription
MMatrix()  

Default constructor. Returns a new matrix set to the identity matrix.

MMatrix(src) src - MMatrix

Copy constructor. Returns a new matrix with the same value as src.

MMatrix(values) values - sequence of 16 float values or four tuples of four float values each.

Returns a new matrix whose elements are set to those given by values. Values are interpreted in row order, so the first four values make up the first row of the matrix, the second four values the second row of the matrix, and so on.

Sequence Support

An MMatrix object is treated like a sequence of 16 float values, in row major order. Element assignment is supported.

len() returns 16.

Deletion, concatenation, repetition and slicing are not supported.

Number Support

OperationResult
MMatrix + MMatrix

Returns a new matrix which is the sum of the two matrices.

MMatrix += MMatrix

Adds the second matrix to the first and returns a new reference to the first.

MMatrix - MMatrix

Returns a new matrix which is the result of subtracting the second matrix from the first.

MMatrix -= MMatrix

Subtracts the second matrix from the first and returns a new reference to the first.

MMatrix * MMatrix

Returns a new matrix which is the product of the two matrices.

MMatrix *= MMatrix

Multiplies the first matrix by the second and returns a new reference to the first.

MMatrix * float

Returns a new matrix in which all of the elements of the given matrix have been multiplied by the given float.

float * MMatrix

Returns a new matrix in which all of the elements of the given matrix have been multiplied by the given float.

MMatrix *= float

Multiplies all the elements of the matrix by the float and returns a new reference to the matrix.

Comparison Support

MMatrix == MMatrix Exact equality test. True if each of the 16 elements of the first matrix is exactly equal to the corresponding element in the second matrix. No tolerance is applied.
MMatrix != MMatrix Exact inequality test. True if any of the 16 elements in the first matrix is not exactly equal to the corresponding element in the second matrix. No tolerance is applied.

All other comparison operators will raise a TypeError exception.

 


+ Inheritance diagram for OpenMaya.MMatrix:

Public Member Functions

__add__ ()
 
__delitem__ ()
 
__eq__ ()
 
__ge__ ()
 
__getitem__ ()
 
__gt__ ()
 
__iadd__ ()
 
__imul__ ()
 
__init__ ()
 
__isub__ ()
 
__le__ ()
 
__len__ ()
 
__lt__ ()
 
__mul__ ()
 
__ne__ ()
 
__radd__ ()
 
__repr__ ()
 
__rmul__ ()
 
__rsub__ ()
 
__setitem__ ()
 
__str__ ()
 
__sub__ ()
 
adjoint ()
 
det3x3 ()
 
det4x4 ()
 
getElement ()
 
homogenize ()
 
inverse ()
 
isEquivalent ()
 
isSingular ()
 
setElement ()
 
setToIdentity ()
 
setToProduct ()
 
transpose ()
 

Static Public Attributes

tuple kIdentity = maya.api.OpenMaya.MMatrix(((1, 0, 0, 0), (0, 1, 0, 0), (0, 0, 1, 0), (0, 0, 0, 1)))
 
int kTolerance = 1
 

Constructor & Destructor Documentation

OpenMaya.MMatrix.__init__ ( )
x.__init__(...) initializes x; see help(type(x)) for signature

Member Function Documentation

OpenMaya.MMatrix.__add__ ( )
x.__add__(y) <==> x+y
OpenMaya.MMatrix.__delitem__ ( )
x.__delitem__(y) <==> del x[y]
OpenMaya.MMatrix.__eq__ ( )
x.__eq__(y) <==> x==y
OpenMaya.MMatrix.__ge__ ( )
x.__ge__(y) <==> x>=y
OpenMaya.MMatrix.__getitem__ ( )
x.__getitem__(y) <==> x[y]
OpenMaya.MMatrix.__gt__ ( )
x.__gt__(y) <==> x>y
OpenMaya.MMatrix.__iadd__ ( )
x.__iadd__(y) <==> x+=y
OpenMaya.MMatrix.__imul__ ( )
x.__imul__(y) <==> x*=y
OpenMaya.MMatrix.__isub__ ( )
x.__isub__(y) <==> x-=y
OpenMaya.MMatrix.__le__ ( )
x.__le__(y) <==> x<=y
OpenMaya.MMatrix.__len__ ( )
x.__len__() <==> len(x)
OpenMaya.MMatrix.__lt__ ( )
x.__lt__(y) <==> x<y
OpenMaya.MMatrix.__mul__ ( )
x.__mul__(y) <==> x*y
OpenMaya.MMatrix.__ne__ ( )
x.__ne__(y) <==> x!=y
OpenMaya.MMatrix.__radd__ ( )
x.__radd__(y) <==> y+x
OpenMaya.MMatrix.__repr__ ( )
x.__repr__() <==> repr(x)
OpenMaya.MMatrix.__rmul__ ( )
x.__rmul__(y) <==> y*x
OpenMaya.MMatrix.__rsub__ ( )
x.__rsub__(y) <==> y-x
OpenMaya.MMatrix.__setitem__ ( )
x.__setitem__(i, y) <==> x[i]=y
OpenMaya.MMatrix.__str__ ( )
x.__str__() <==> str(x)
OpenMaya.MMatrix.__sub__ ( )
x.__sub__(y) <==> x-y
OpenMaya.MMatrix.adjoint ( )
Returns a new matrix containing this matrix's adjoint.
Signature: adjoint()
Parameters:  
Returns: MMatrix
Description: Returns a new matrix containing this matrix's adjoint.
OpenMaya.MMatrix.det3x3 ( )
Returns the determinant of the 3x3 matrix formed by the first 3 elements of the first 3 rows of this matrix.
Signature: det3x3()
Parameters:  
Returns: float
Description: Returns the determinant of the 3x3 matrix formed by the first 3 elements of the first 3 rows of this matrix.
OpenMaya.MMatrix.det4x4 ( )
Returns this matrix's determinant.
Signature: det4x4()
Parameters:  
Returns: float
Description: Returns this matrix's determinant.
OpenMaya.MMatrix.getElement ( )
Returns the matrix element for the specified row and column.
Signature: getElement(row,col)
Parameters: row - int
col - int
Returns: float
Description: Returns the matrix element specified by row and col. For retrieving single elements this is faster than indexing into the matrix as a sequence because it does not require the creation of an entire row tuple simply to retrieve one element from that row.
OpenMaya.MMatrix.homogenize ( )
Returns a new matrix containing the homogenized version of this matrix.
Signature: homogenize()
Parameters:  
Returns: MMatrix
Description: Returns a new matrix containing the homogenized version of this matrix.
OpenMaya.MMatrix.inverse ( )
Returns a new matrix containing this matrix's inverse.
Signature: inverse()
Parameters:  
Returns: MMatrix
Description: Returns a new matrix containing this matrix's nverse.
OpenMaya.MMatrix.isEquivalent ( )
Test for equivalence of two matrices, within a tolerance.
Signature: isEquivalent(other, tolerance=kTolerance)
Parameters: other - MMatrix
tolerance - float
Returns: bool
Description: Inexact equality test. Returns True if each element of this matrix is within tolerance of the corresponding element of other.
OpenMaya.MMatrix.isSingular ( )
Returns True if this matrix is singular.
Signature: isSingular()
Parameters:  
Returns: bool
Description: Returns True if this matrix is singular.
OpenMaya.MMatrix.setElement ( )
Sets the matrix element for the specified row and column.
Signature: setElement(row,col,value)
Parameters: row - int
col - int
value - float
Returns: New reference to self.
Description: Set the matrix element specified by row and col to the given value.
OpenMaya.MMatrix.setToIdentity ( )
Sets this matrix to the identity.
Signature: setToIdentity()
Parameters:  
Returns: New reference to self.
Description: Sets this matrix to the identity.
OpenMaya.MMatrix.setToProduct ( )
Sets this matrix to the product of the two matrices passed in.
Signature: setToProduct(left, right)
Parameters: left - MMatrix
right - MMatrix
Returns: New reference to self.
Description: Sets this matrix to the product of left and right.
OpenMaya.MMatrix.transpose ( )
Returns a new matrix containing this matrix's transpose.
Signature: transpose()
Parameters:  
Returns: MMatrix
Description: Returns a new matrix containing this matrix's transpose.

Member Data Documentation

OpenMaya.MMatrix.kIdentity = maya.api.OpenMaya.MMatrix(((1, 0, 0, 0), (0, 1, 0, 0), (0, 0, 1, 0), (0, 0, 0, 1)))
static
Name: kIdentity
Type: MMatrix
Description: Identity matrix.
OpenMaya.MMatrix.kTolerance = 1
static
Name: kTolerance
Type: float
Description: Default tolerance for non-exact equality tests.