Matrix.RotatePrepend(Double) Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Poprzedza obrót 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, przeprowadź skalowanie, a następnie przetłumaczesz, uzyskasz inny wynik niż w przypadku uprzedniego tłumaczenia, a następnie obrócenia, a następnie skalowania. Jedną z przyczyn jest to, że przekształcenia, takie jak rotacja i skalowanie, są wykonywane w odniesieniu do źródła 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.