Język

Matrix.RotatePrepend(Double) Metoda

Definicja

Poprzedza rotację określonego kąta do tej Matrix struktury.

public:
 void RotatePrepend(double angle);
public void RotatePrepend(double angle);
member this.RotatePrepend : double -> unit
Public Sub RotatePrepend (angle As Double)

Parametry

angle
Double

Kąt obrotu do wstępnego.

Przykłady

W poniższym przykładzie pokazano, jak poprzedzać rotację do elementu 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;
}

Uwagi

W transformacji złożonej kolejność poszczególnych przekształceń jest ważna. Jeśli na przykład najpierw obrócisz, potem skalujesz, a na końcu przesuniesz, uzyskasz inny wynik niż w przypadku, gdy najpierw przesuniesz, potem obrócisz, a na końcu skalujesz. Jednym z powodów, dla których kolejność jest istotna, jest to, że przekształcenia, takie jak rotacja i skalowanie, są wykonywane w odniesieniu do początku układu współrzędnych. Skalowanie obiektu, który jest wyśrodkowany na początku, powoduje inny wynik niż skalowanie obiektu, który został przeniesiony z punktu początkowego. Podobnie obracanie obiektu, który jest wyśrodkowany na początku, powoduje inny wynik niż obracanie obiektu, który został przeniesiony z punktu początkowego.

Dotyczy

Zobacz też