# Matrix.RotateAtPrepend(Double, Double, Double) Method

## Definition

Important

Some information relates to prerelease product that may be substantially modified before itâ€™s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Prepends a rotation of the specified angle at the specified point to this Matrix structure.

```
public:
void RotateAtPrepend(double angle, double centerX, double centerY);
```

`public void RotateAtPrepend (double angle, double centerX, double centerY);`

`member this.RotateAtPrepend : double * double * double -> unit`

`Public Sub RotateAtPrepend (angle As Double, centerX As Double, centerY As Double)`

#### Parameters

- angle
- Double

The rotation angle, in degrees.

- centerX
- Double

The x-coordinate of the rotation center.

- centerY
- Double

The y-coordinate of the rotation center.

## Examples

The following example shows how to prepend a rotation to a Matrix.

```
private Matrix prependRotateExample()
{
Matrix myMatrix = new Matrix(5, 10, 15, 20, 25, 30);
// Prepend a 90 degree rotation about the origin.
// myMatrix is now equal to (15,20,-5,-10,25,30).
myMatrix.RotatePrepend(90);
return myMatrix;
}
private Matrix prependRotateAboutPointExample()
{
Matrix myMatrix = new Matrix(5, 10, 15, 20, 25, 30);
// Prepend a 90 degree rotation about the
// point (100,100).
// myMatrix is now equal to (15,20,-5,-10,1025,2030).
myMatrix.RotateAtPrepend(90, 100, 100);
return myMatrix;
}
```

## Remarks

In a composite transformation, the order of individual transformations is important. For example, if you first rotate, then scale, then translate, you get a different result than if you first translate, then rotate, then scale. One reason order is significant is that transformations like rotation and scaling are done with respect to the origin of the coordinate system. Scaling an object that is centered at the origin produces a different result than scaling an object that has been moved away from the origin. Similarly, rotating an object that is centered at the origin produces a different result than rotating an object that has been moved away from the origin.