Idioma

Matrix.RotateAtPrepend(Double, Double, Double) Método

Definição

Prepara uma rotação do ângulo especificado no ponto especificado para essa Matrix estrutura.

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)

Parâmetros

angle
Double

O ângulo de rotação, em graus.

centerX
Double

A coordenada x do centro de rotação.

centerY
Double

A coordenada y do centro de rotação.

Exemplos

O exemplo a seguir mostra como preparar uma rotação para um 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;
}

Comentários

Em uma transformação composta, a ordem das transformações individuais é importante. Por exemplo, se você primeiro girar, depois dimensionar, depois traduzir, obterá um resultado diferente do que se traduzir primeiro, depois girar e, em seguida, dimensionar. Uma ordem de motivo é significativa é que transformações como rotação e dimensionamento são feitas em relação à origem do sistema de coordenadas. Dimensionar um objeto centrado na origem produz um resultado diferente do dimensionamento de um objeto que foi movido para longe da origem. Da mesma forma, girar um objeto centrado na origem produz um resultado diferente do que girar um objeto que foi movido para longe da origem.

Aplica-se a