# Matrix Class

A Matrix object represents a 3 ×3 matrix that, in turn, represents an affine transformation. A Matrix object stores only six of the 9 numbers in a 3 ×3 matrix because all 3 ×3 matrices that represent affine transformations have the same third column (0, 0, 1).

## Methods

The Matrix class has these methods.

Method Description
Matrix::Clone The Matrix::Clone method creates a new Matrix object that is a copy of this Matrix object.
Matrix::Equals The Matrix::Equals method determines whether the elements of this matrix are equal to the elements of another matrix.
Matrix::GetElements The Matrix::GetElements method gets the elements of this matrix. The elements are placed in an array in the order m11, m12, m21, m22, m31, m32, where mij denotes the element in row i, column j.
Matrix::GetLastStatus The Matrix::GetLastStatus method returns a value that indicates the nature of this Matrix object's most recent method failure.
Matrix::Invert If this matrix is invertible, the Matrix::Invert method replaces the elements of this matrix with the elements of its inverse.
Matrix::IsIdentity The Matrix::IsIdentity method determines whether this matrix is the identity matrix.
Matrix::IsInvertible The Matrix::IsInvertible method determines whether this matrix is invertible.
Matrix::Matrix Creates and initializes a Matrix::Matrix object that represents the identity matrix.
Matrix::Matrix Creates and initializes a Matrix::Matrix object based on six numbers that define an affine transformation.
Matrix::Matrix Creates a Matrix::Matrix object based on a rectangle and a point.
Matrix::Matrix Creates a Matrix::Matrix object based on a rectangle and a point.
Matrix::Matrix Creates and initializes a Matrix::Matrix object that represents the identity matrix.
Matrix::Matrix Creates and initializes a Matrix::Matrix object that represents the identity matrix.
Matrix::Multiply The Matrix::Multiply method updates this matrix with the product of itself and another matrix.
Matrix::OffsetX The Matrix::OffsetX method gets the horizontal translation value of this matrix, which is the element in row 3, column 1.
Matrix::OffsetY The Matrix::OffsetY method gets the vertical translation value of this matrix, which is the element in row 3, column 2.
Matrix::Reset The Matrix::Reset method updates this matrix with the elements of the identity matrix.
Matrix::Rotate The Matrix::Rotate method updates this matrix with the product of itself and a rotation matrix.
Matrix::RotateAt The Matrix::RotateAt method updates this matrix with the product of itself and a matrix that represents rotation about a specified point.
Matrix::Scale The Matrix::Scale method updates this matrix with the product of itself and a scaling matrix.
Matrix::SetElements The Matrix::SetElements method sets the elements of this matrix.
Matrix::Shear The Matrix::Shear method updates this matrix with the product of itself and a shearing matrix.
Matrix::TransformPoints This topic lists the TransformPoints methods of the Matrix class. For a complete list of methods for the Matrix class, see Matrix Methods.
Matrix::TransformPoints The Matrix::TransformPoints method multiplies each point in an array by this matrix. Each point is treated as a row matrix. The multiplication is performed with the row matrix on the left and this matrix on the right.
Matrix::TransformVectors This topic lists the TransformVectors methods of the Matrix class. For a complete list of methods for the Matrix class, see Matrix Methods.
Matrix::TransformVectors The Matrix::TransformVectors method multiplies each vector in an array by this matrix.
Matrix::Translate The Matrix::Translate method updates this matrix with the product of itself and a translation matrix.

## Requirements

Target Platform Windows