Share via


Metodo Graphics::TranslateTransform (gdiplusgraphics.h)

Il metodo Graphics::TranslateTransform aggiorna la matrice di trasformazione mondiale dell'oggetto Graphics con il prodotto stesso e una matrice di traduzione.

Sintassi

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

Parametri

[in] dx

Tipo: REAL

Numero reale che specifica il componente orizzontale della traduzione.

[in] dy

Tipo: REAL

Numero reale che specifica il componente verticale della traduzione.

[in, optional] order

Tipo: MatrixOrder

facoltativo. Elemento dell'enumerazione MatrixOrder che specifica l'ordine di moltiplicazione. MatrixOrderPrepend specifica che la matrice di traduzione si trova a sinistra e MatrixOrderAppend specifica che la matrice di traduzione è a destra. Il valore predefinito è MatrixOrderPrepend.

Valore restituito

Tipo: Stato

Se il metodo ha esito positivo, restituisce Ok, ovvero un elemento dell'enumerazione Status .

Se il metodo ha esito negativo, restituisce uno degli altri elementi dell'enumerazione Status .

Commenti

Nota GDI+ gestisce i pennelli in modo diverso quando la scala di trasformazione mondiale è inferiore al 100%(1,0f) nella direzione x o y. Se la scala di trasformazione mondiale è minore del 100%(1,0f), assicurarsi di moltiplicare l'offset per TranslateTransform per la scala di trasformazione mondiale.
 

Esempio

Nell'esempio seguente viene impostata la trasformazione mondiale di un oggetto Graphics su una rotazione. La chiamata a Graphics::TranslateTransform moltiplica la matrice di trasformazione mondiale esistente dell'oggetto Graphics (rotazione) da una matrice di traduzione. L'argomento MatrixOrderAppend specifica che la moltiplicazione viene eseguita con la matrice di traduzione a destra. A quel punto, la matrice di trasformazione mondiale dell'oggetto Graphics rappresenta una trasformazione composita: ruotare prima, quindi tradurre. La chiamata a DrawEllipse disegna un'ellisse ruotata e tradotta.

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

Requisiti

Requisito Valore
Client minimo supportato Windows XP, Windows 2000 Professional [solo app desktop]
Server minimo supportato Windows 2000 Server [solo app desktop]
Piattaforma di destinazione Windows
Intestazione gdiplusgraphics.h (include Gdiplus.h)
Libreria Gdiplus.lib
DLL Gdiplus.dll

Vedi anche

Sistemi di coordinate e trasformazioni

Grafica

Grafica::GetTransform

Grafica::ResetTransform

Grafica::ScaleTransform

Grafica::SetTransform

Grafica::TransformPoints

Matrice

Matrixorder

Trasformazioni