# Matrix.Transform Method

## Definition

Transforms the specified point, array of points, vector, or array of vectors by this Matrix.

 Transforms the specified point by the Matrix and returns the result. Transforms the specified points by this Matrix. Transforms the specified vector by this Matrix. Transforms the specified vectors by this Matrix.

## Examples

The follow example shows how to use a Matrix to transform points and vectors.

``````private void transformExamples()
{

Matrix myMatrix = new Matrix(5, 10, 15, 20, 25, 30);

//
// Transform a point.
//
Point myPoint = new Point(15,25);

// pointResult is (475, 680).
Point pointResult = myMatrix.Transform(myPoint);

//
// Transform an array of points.
//
Point[] myPointArray = new Point[]
{new Point(15,25), new Point(30,35)};

// myPointArray becomes (475, 680).
// myPointArray becomes (700, 1030).
myMatrix.Transform(myPointArray);

//
// Transform a vector.
//
Vector myVector = new Vector(15,25);

// vectorResult becomes (450, 650).
Vector vectorResult = myMatrix.Transform(myVector);

//
// Transform an array of vectors.
//
Vector[] myVectorArray = new Vector[]
{new Vector(15, 25), new Vector(30,35)};

// myVectorArray becomes (450, 650).
// myVectorArray becomes (675, 1000).
myMatrix.Transform(myVectorArray);

}
``````

## Transform(Point)

Transforms the specified point by the Matrix and returns the result.

``````public:
System::Windows::Point Transform(System::Windows::Point point);``````
``public System.Windows.Point Transform (System.Windows.Point point);``
``member this.Transform : System.Windows.Point -> System.Windows.Point``

#### Parameters

point
Point

The point to transform.

#### Returns

The result of transforming `point` by this Matrix.

### Examples

The follow example shows how to use a Matrix to transform points and vectors.

``````private void transformExamples()
{

Matrix myMatrix = new Matrix(5, 10, 15, 20, 25, 30);

//
// Transform a point.
//
Point myPoint = new Point(15,25);

// pointResult is (475, 680).
Point pointResult = myMatrix.Transform(myPoint);

//
// Transform an array of points.
//
Point[] myPointArray = new Point[]
{new Point(15,25), new Point(30,35)};

// myPointArray becomes (475, 680).
// myPointArray becomes (700, 1030).
myMatrix.Transform(myPointArray);

//
// Transform a vector.
//
Vector myVector = new Vector(15,25);

// vectorResult becomes (450, 650).
Vector vectorResult = myMatrix.Transform(myVector);

//
// Transform an array of vectors.
//
Vector[] myVectorArray = new Vector[]
{new Vector(15, 25), new Vector(30,35)};

// myVectorArray becomes (450, 650).
// myVectorArray becomes (675, 1000).
myMatrix.Transform(myVectorArray);

}
``````

## Transform(Point[])

Transforms the specified points by this Matrix.

``````public:
void Transform(cli::array <System::Windows::Point> ^ points);``````
``public void Transform (System.Windows.Point[] points);``
``member this.Transform : System.Windows.Point[] -> unit``
``Public Sub Transform (points As Point())``

#### Parameters

points
Point[]

The points to transform. The original points in the array are replaced by their transformed values.

### Examples

The follow example shows how to use a Matrix to transform points and vectors.

``````private void transformExamples()
{

Matrix myMatrix = new Matrix(5, 10, 15, 20, 25, 30);

//
// Transform a point.
//
Point myPoint = new Point(15,25);

// pointResult is (475, 680).
Point pointResult = myMatrix.Transform(myPoint);

//
// Transform an array of points.
//
Point[] myPointArray = new Point[]
{new Point(15,25), new Point(30,35)};

// myPointArray becomes (475, 680).
// myPointArray becomes (700, 1030).
myMatrix.Transform(myPointArray);

//
// Transform a vector.
//
Vector myVector = new Vector(15,25);

// vectorResult becomes (450, 650).
Vector vectorResult = myMatrix.Transform(myVector);

//
// Transform an array of vectors.
//
Vector[] myVectorArray = new Vector[]
{new Vector(15, 25), new Vector(30,35)};

// myVectorArray becomes (450, 650).
// myVectorArray becomes (675, 1000).
myMatrix.Transform(myVectorArray);

}
``````

## Transform(Vector)

Transforms the specified vector by this Matrix.

``````public:
System::Windows::Vector Transform(System::Windows::Vector vector);``````
``public System.Windows.Vector Transform (System.Windows.Vector vector);``
``member this.Transform : System.Windows.Vector -> System.Windows.Vector``

#### Parameters

vector
Vector

The vector to transform.

#### Returns

The result of transforming `vector` by this Matrix.

### Examples

The follow example shows how to use a Matrix to transform points and vectors.

``````private void transformExamples()
{

Matrix myMatrix = new Matrix(5, 10, 15, 20, 25, 30);

//
// Transform a point.
//
Point myPoint = new Point(15,25);

// pointResult is (475, 680).
Point pointResult = myMatrix.Transform(myPoint);

//
// Transform an array of points.
//
Point[] myPointArray = new Point[]
{new Point(15,25), new Point(30,35)};

// myPointArray becomes (475, 680).
// myPointArray becomes (700, 1030).
myMatrix.Transform(myPointArray);

//
// Transform a vector.
//
Vector myVector = new Vector(15,25);

// vectorResult becomes (450, 650).
Vector vectorResult = myMatrix.Transform(myVector);

//
// Transform an array of vectors.
//
Vector[] myVectorArray = new Vector[]
{new Vector(15, 25), new Vector(30,35)};

// myVectorArray becomes (450, 650).
// myVectorArray becomes (675, 1000).
myMatrix.Transform(myVectorArray);

}
``````

## Transform(Vector[])

Transforms the specified vectors by this Matrix.

``````public:
void Transform(cli::array <System::Windows::Vector> ^ vectors);``````
``public void Transform (System.Windows.Vector[] vectors);``
``member this.Transform : System.Windows.Vector[] -> unit``
``Public Sub Transform (vectors As Vector())``

#### Parameters

vectors
Vector[]

The vectors to transform. The original vectors in the array are replaced by their transformed values.

### Examples

The follow example shows how to use a Matrix to transform points and vectors.

``````private void transformExamples()
{

Matrix myMatrix = new Matrix(5, 10, 15, 20, 25, 30);

//
// Transform a point.
//
Point myPoint = new Point(15,25);

// pointResult is (475, 680).
Point pointResult = myMatrix.Transform(myPoint);

//
// Transform an array of points.
//
Point[] myPointArray = new Point[]
{new Point(15,25), new Point(30,35)};

// myPointArray becomes (475, 680).
// myPointArray becomes (700, 1030).
myMatrix.Transform(myPointArray);

//
// Transform a vector.
//
Vector myVector = new Vector(15,25);

// vectorResult becomes (450, 650).
Vector vectorResult = myMatrix.Transform(myVector);

//
// Transform an array of vectors.
//
Vector[] myVectorArray = new Vector[]
{new Vector(15, 25), new Vector(30,35)};

// myVectorArray becomes (450, 650).
// myVectorArray becomes (675, 1000).
myMatrix.Transform(myVectorArray);

}
``````