Graphics.ScaleTransform Método
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Aplica a operação de escalonamento especificada à matriz de transformação deste Graphics ao prependê-la na matriz de transformação do objeto.
Sobrecargas
| Name | Description |
|---|---|
| ScaleTransform(Single, Single) |
Aplica a operação de escalonamento especificada à matriz de transformação deste Graphics ao prependê-la na matriz de transformação do objeto. |
| ScaleTransform(Single, Single, MatrixOrder) |
Aplica a operação de escalonamento especificada à matriz de transformação desta Graphics na ordem especificada. |
ScaleTransform(Single, Single)
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
Aplica a operação de escalonamento especificada à matriz de transformação deste Graphics ao prependê-la na matriz de transformação do objeto.
public:
void ScaleTransform(float sx, float sy);
public void ScaleTransform(float sx, float sy);
member this.ScaleTransform : single * single -> unit
Public Sub ScaleTransform (sx As Single, sy As Single)
Parâmetros
- sx
- Single
Fator de escala na direção x.
- sy
- Single
Fator de escala na direção y.
Exemplos
O seguinte exemplo de código foi concebido para uso com Windows Forms e requer PaintEventArgse, que é um parâmetro do tratador de eventos Paint. O código executa as seguintes ações:
Roda a matriz de transformação do mundo do Windows Form em 30 graus.
Escala essa matriz por um fator de 3 na direção x e um fator de 1 na direção y, antecedendo a transformação de escala.
Desenha um retângulo escamado e rodado com uma caneta azul.
O resultado continua a ser um retângulo.
public:
void ScaleTransformFloat( PaintEventArgs^ e )
{
// Set world transform of graphics object to rotate.
e->Graphics->RotateTransform( 30.0F );
// Then to scale, prepending to world transform.
e->Graphics->ScaleTransform( 3.0F, 1.0F );
// Draw scaled, rotated rectangle to screen.
e->Graphics->DrawRectangle( gcnew Pen( Color::Blue,3.0f ), 50, 0, 100, 40 );
}
private void ScaleTransformFloat(PaintEventArgs e)
{
// Set world transform of graphics object to rotate.
e.Graphics.RotateTransform(30.0F);
// Then to scale, prepending to world transform.
e.Graphics.ScaleTransform(3.0F, 1.0F);
// Draw scaled, rotated rectangle to screen.
e.Graphics.DrawRectangle(new Pen(Color.Blue, 3), 50, 0, 100, 40);
}
Private Sub ScaleTransformFloat(ByVal e As PaintEventArgs)
' Set world transform of graphics object to rotate.
e.Graphics.RotateTransform(30.0F)
' Then to scale, prepending to world transform.
e.Graphics.ScaleTransform(3.0F, 1.0F)
' Draw scaled, rotated rectangle to screen.
e.Graphics.DrawRectangle(New Pen(Color.Blue, 3), 50, 0, 100, 40)
End Sub
Observações
A operação de escalonamento consiste em multiplicar a matriz de transformação por uma matriz diagonal cujos elementos são (sx, sy, 1). Este método antepõe a matriz de transformação de por Graphics pela matriz de escalamento.
Aplica-se a
ScaleTransform(Single, Single, MatrixOrder)
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
- Origem:
- Graphics.cs
Aplica a operação de escalonamento especificada à matriz de transformação desta Graphics na ordem especificada.
public:
void ScaleTransform(float sx, float sy, System::Drawing::Drawing2D::MatrixOrder order);
public void ScaleTransform(float sx, float sy, System.Drawing.Drawing2D.MatrixOrder order);
member this.ScaleTransform : single * single * System.Drawing.Drawing2D.MatrixOrder -> unit
Public Sub ScaleTransform (sx As Single, sy As Single, order As MatrixOrder)
Parâmetros
- sx
- Single
Fator de escala na direção x.
- sy
- Single
Fator de escala na direção y.
- order
- MatrixOrder
Membro da MatrixOrder enumeração que especifica se a operação de escalonamento é anteposta ou anexada à matriz de transformação.
Exemplos
O seguinte exemplo de código foi concebido para uso com Windows Forms e requer PaintEventArgse, que é um parâmetro do tratador de eventos Paint. O código executa as seguintes ações:
Roda a matriz de transformação do mundo do Windows Form em 30 graus.
Escala essa matriz por um fator de 3 na direção x e um fator de 1 na direção y ao adicionar a transformação de escala ao Append elemento.
Desenha um retângulo rodado e em escala com uma caneta azul.
O resultado é um paralelogramo.
public:
void ScaleTransformFloatMatrixOrder( PaintEventArgs^ e )
{
// Set world transform of graphics object to rotate.
e->Graphics->RotateTransform( 30.0F );
// Then to scale, appending to world transform.
e->Graphics->ScaleTransform( 3.0F, 1.0F, MatrixOrder::Append );
// Draw rotated, scaled rectangle to screen.
e->Graphics->DrawRectangle( gcnew Pen( Color::Blue,3.0f ), 50, 0, 100, 40 );
}
private void ScaleTransformFloatMatrixOrder(PaintEventArgs e)
{
// Set world transform of graphics object to rotate.
e.Graphics.RotateTransform(30.0F);
// Then to scale, appending to world transform.
e.Graphics.ScaleTransform(3.0F, 1.0F, MatrixOrder.Append);
// Draw rotated, scaled rectangle to screen.
e.Graphics.DrawRectangle(new Pen(Color.Blue, 3), 50, 0, 100, 40);
}
Private Sub ScaleTransformFloatMatrixOrder(ByVal e As PaintEventArgs)
' Set world transform of graphics object to rotate.
e.Graphics.RotateTransform(30.0F)
' Then to scale, appending to world transform.
e.Graphics.ScaleTransform(3.0F, 1.0F, MatrixOrder.Append)
' Draw rotated, scaled rectangle to screen.
e.Graphics.DrawRectangle(New Pen(Color.Blue, 3), 50, 0, 100, 40)
End Sub
Observações
A operação de escalonamento consiste em multiplicar a matriz de transformação por uma matriz diagonal cujos elementos são (sx, sy, 1). Este método antepõe ou acrescenta a matriz de transformação do Graphics por a matriz de escala de acordo com o order parâmetro.