Graphics::TranslateTransform-Methode (gdiplusgraphics.h)

Die Graphics::TranslateTransform-Methode aktualisiert die Welttransformationsmatrix dieses Graphics-Objekts mit dem Produkt selbst und einer Übersetzungsmatrix.

Syntax

Status TranslateTransform(
  [in]           REAL        dx,
  [in]           REAL        dy,
  [in, optional] MatrixOrder order
);

Parameter

[in] dx

Typ: REAL

Reelle Zahl, die die horizontale Komponente der Übersetzung angibt.

[in] dy

Typ: REAL

Reelle Zahl, die die vertikale Komponente der Übersetzung angibt.

[in, optional] order

Typ: MatrixOrder

Optional. Element der MatrixOrder-Enumeration , das die Reihenfolge der Multiplikation angibt. MatrixOrderPrepend gibt an, dass sich die Übersetzungsmatrix auf der linken Seite befindet, und MatrixOrderAppend gibt an, dass sich die Übersetzungsmatrix auf der rechten Seite befindet. Der Standardwert ist MatrixOrderPrepend.

Rückgabewert

Typ: Status

Wenn die Methode erfolgreich ist, gibt sie OK zurück, ein Element der Status-Enumeration .

Wenn die Methode fehlschlägt, wird eines der anderen Elemente der Status-Enumeration zurückgegeben.

Hinweise

Hinweis GDI+ behandelt Pinsel unterschiedlich, wenn die Welttransformationsskala in x- oder y-Richtung kleiner als 100 %(1,0f) ist. Wenn die Welttransformationsskala kleiner als 100 %(1,0f) ist, müssen Sie den Offset für TranslateTransform mit der Welttransformationsskala multiplizieren.
 

Beispiele

Im folgenden Beispiel wird die Welttransformation eines Graphics-Objekts auf eine Drehung festgelegt. Der Aufruf von Graphics::TranslateTransform multipliziert die vorhandene Welttransformationsmatrix (Rotation) des Graphics-Objekts mit einer Übersetzungsmatrix. Das Argument MatrixOrderAppend gibt an, dass die Multiplikation mit der Übersetzungsmatrix auf der rechten Seite erfolgt. An diesem Punkt stellt die Welttransformationsmatrix des Graphics-Objekts eine zusammengesetzte Transformation dar: zuerst rotieren und dann übersetzen. Der Aufruf von DrawEllipse zeichnet eine gedrehte und übersetzte Ellipse.

VOID Example_TranslateTransform(HDC hdc)
{
   Graphics graphics(hdc);
   Pen pen(Color(255, 0, 0, 255));

   graphics.RotateTransform(30.0f);
   graphics.TranslateTransform(100.0f, 50.0f, MatrixOrderAppend);
   graphics.DrawEllipse(&pen, 0, 0, 200, 80);
}

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows XP, Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows 2000 Server [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile gdiplusgraphics.h (include Gdiplus.h)
Bibliothek Gdiplus.lib
DLL Gdiplus.dll

Weitere Informationen

Koordinatensysteme und Transformationen

Grafiken

Graphics::GetTransform

Graphics::ResetTransform

Graphics::ScaleTransform

Graphics::SetTransform

Graphics::TransformPoints

Matrix

Matrixorder

Transformationen