Freigeben über


Matrix.RotatePrepend(Double) Methode

Definition

Stellt dieser Matrix-Struktur eine Drehung mit dem angegebenen Winkel voran.

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

Parameter

angle
Double

Der Winkel der voranzustellenden Drehung.

Beispiele

Im folgenden Beispiel wird gezeigt, wie eine Drehung in eine MatrixDrehung vorgestellt wird.

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;
}

Hinweise

In einer zusammengesetzten Transformation ist die Reihenfolge einzelner Transformationen wichtig. Wenn Sie beispielsweise zuerst drehen, dann skalieren Sie, und übersetzen Sie dann ein anderes Ergebnis, als wenn Sie zuerst übersetzen, dann drehen und dann skalieren. Ein Grund für die Reihenfolge ist, dass Transformationen wie Drehung und Skalierung im Hinblick auf den Ursprung des Koordinatensystems durchgeführt werden. Das Skalieren eines Objekts, das am Ursprung zentriert ist, erzeugt ein anderes Ergebnis als die Skalierung eines Objekts, das vom Ursprung entfernt wurde. Ähnlich erzeugt die Drehung eines Objekts, das am Ursprung zentriert ist, ein anderes Ergebnis als das Drehen eines Objekts, das vom Ursprung entfernt wurde.

Gilt für

Siehe auch