# nuke.rotopaint.CMatrix4

class nuke.rotopaint.CMatrix4

Bases: `object`

A 4x4 matrix with methods for affine transformations.

Methods

 `makeIdentity` Set this matrix to be the identity matrix. `rotateX` Post-multiply this matrix by a rotation around the X axis. `rotateY` Post-multiply this matrix by a rotation around the Y axis. `rotateZ` self.rotateY(angleInRadians) -> None Post-multiply this matrix by a rotation around the Z axis. `scale` Post-multiply this matrix by a scale transformation. `skew` Post-multiply this matrix with a skew transformation. `translate` Post-multiply this matrix by a translation matrix. `translation` Set this matrix to be a translation matrix, replacing any existing values. `transpose` Transpose the matrix in-place.

Return self+value.

__mul__(value, /)

Return self*value.

makeIdentity() None

Set this matrix to be the identity matrix.

Post-multiply this matrix by a rotation around the X axis.

Post-multiply this matrix by a rotation around the Y axis.

rotateZ()

self.rotateY(angleInRadians) -> None Post-multiply this matrix by a rotation around the Z axis.

scale(x, y, z) None

Post-multiply this matrix by a scale transformation. The y and z parameters may be left out; if so the scale is uniform along all three axes.

skew(x, y, z) None

Post-multiply this matrix with a skew transformation. The y and z parameters may be left out; if so, the skew is in the X direction only.

translate(x, y, z) None

Post-multiply this matrix by a translation matrix.

translation(x, y, z) None

Set this matrix to be a translation matrix, replacing any existing values.

This is different from other methods in this class as it replaces, rather than multiplying by, the existing values in the matrix.

transpose() None

Transpose the matrix in-place.