Freigeben über


Matrix.Prepend(Matrix) Methode

Definition

Stellt dieser Matrix-Struktur die angegebene Matrix-Struktur voran.

public:
 void Prepend(System::Windows::Media::Matrix matrix);
public void Prepend (System.Windows.Media.Matrix matrix);
member this.Prepend : System.Windows.Media.Matrix -> unit
Public Sub Prepend (matrix As Matrix)

Parameter

matrix
Matrix

Die dieser Matrix-Struktur voranzustellende Matrix-Struktur.

Beispiele

Das folgende Beispiel zeigt, wie sie einem Matrix anderen Matrixvorangestellt werden.

private Matrix prependExample()
{

    Matrix matrix1 = new Matrix(5, 10, 15, 20, 25, 30);
    Matrix matrix2 = new Matrix(2, 4, 6, 8, 10, 12);

    matrix1.Prepend(matrix2);

    // matrix1 is equal to (70,100,150,220,255,370). 
    return matrix1;
}

Hinweise

Dieser Vorgang entspricht dem Multiplizieren des Parameters matrix mit dieser Matrix Struktur. Die Matrixmultiplikation ist jedoch nicht kommutativ, sodass dieser Vorgang nicht mit dem Multiplizieren dieser Matrix Struktur mit dem Parameter matrixidentisch ist. Das heißt, matrix * dies ist nicht identisch mit diesem * matrix.

In einer zusammengesetzten Transformation ist die Reihenfolge der einzelnen Transformationen wichtig. Wenn Sie beispielsweise erst drehen, dann skalieren und dann übersetzen, erhalten Sie ein anderes Ergebnis im Vergleich dazu, wenn Sie erst übersetzen, dann drehen und dann skalieren. Ein Grund für die Bedeutung der Reihenfolge ist, dass Transformationen wie Rotation und Skalierung in Bezug auf den Ursprung des Koordinatensystems durchgeführt werden. Die Skalierung eines Objekts, das auf den Ursprung zentriert ist, führt zu einem anderen Ergebnis als die Skalierung eines Objekts, das vom Ursprung weg bewegt wurde. In ähnlicher Weise führt das Drehen eines Objekts, das auf den Ursprung zentriert ist, zu einem anderen Ergebnis als das Drehen eines Objekts, das vom Ursprung weg bewegt wurde.

Gilt für:

Weitere Informationen