Método Graphics::TranslateTransform (gdiplusgraphics.h)

O método Graphics::TranslateTransform atualiza a matriz de transformação mundial deste objeto Graphics com o produto de si mesmo e uma matriz de tradução.

Sintaxe

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

Parâmetros

[in] dx

Tipo: REAL

Número real que especifica o componente horizontal da tradução.

[in] dy

Tipo: REAL

Número real que especifica o componente vertical da tradução.

[in, optional] order

Tipo: MatrixOrder

Opcional. Elemento da enumeração MatrixOrder que especifica a ordem de multiplicação. MatrixOrderPrepend especifica que a matriz de tradução está à esquerda e MatrixOrderAppend especifica que a matriz de tradução está à direita. O valor padrão é MatrixOrderPrepend.

Retornar valor

Tipo: Status

Se o método for bem-sucedido, ele retornará Ok, que é um elemento da enumeração Status .

Se o método falhar, ele retornará um dos outros elementos da enumeração Status .

Comentários

Nota O GDI+ manipula pincéis de forma diferente quando a escala de transformação mundial é menor que 100%(1,0f) na direção x ou y. Se a escala de transformação mundial for inferior a 100%(1,0f), multiplique o deslocamento para TranslateTransform pela escala de transformação mundial.
 

Exemplos

O exemplo a seguir define a transformação mundial de um objeto Graphics como uma rotação. A chamada para Graphics::TranslateTransform multiplica a matriz de transformação mundial (rotação) existente do objeto Graphics por uma matriz de tradução. O argumento MatrixOrderAppend especifica que a multiplicação é feita com a matriz de tradução à direita. Nesse ponto, a matriz de transformação mundial do objeto Graphics representa uma transformação composta: primeiro gire e, em seguida, traduza. A chamada para DrawEllipse desenha uma elipse girada e traduzida.

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

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows XP, Windows 2000 Professional [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows 2000 Server [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho gdiplusgraphics.h (inclua Gdiplus.h)
Biblioteca Gdiplus.lib
DLL Gdiplus.dll

Confira também

Sistemas de coordenadas e transformações

Elementos gráficos

Graphics::GetTransform

Graphics::ResetTransform

Graphics::ScaleTransform

Graphics::SetTransform

Graphics::TransformPoints

Matriz

Matrixorder

Transformações