Graphics.ScaleTransform Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Aplica la operación de escalado especificada a la matriz de transformación de este Graphics prepending it a la matriz de transformación del objeto.
Sobrecargas
ScaleTransform(Single, Single) |
Aplica la operación de escalado especificada a la matriz de transformación de este Graphics prepending it a la matriz de transformación del objeto. |
ScaleTransform(Single, Single, MatrixOrder) |
Aplica la operación de escalado especificada a la matriz de transformación de este Graphics en el orden especificado. |
ScaleTransform(Single, Single)
- Source:
- Graphics.cs
- Source:
- Graphics.cs
- Source:
- Graphics.cs
- Source:
- Graphics.cs
- Source:
- Graphics.cs
Aplica la operación de escalado especificada a la matriz de transformación de este Graphics prepending it a la matriz de transformación del 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
Factor de escala en la dirección x.
- sy
- Single
Factor de escala en la dirección y.
Ejemplos
El ejemplo de código siguiente está diseñado para su uso con Windows Forms y requiere PaintEventArgse
, que es un parámetro del controlador de eventos Paint. El código realiza las siguientes acciones:
Gira la matriz de transformación mundial de Windows Form en 30 grados.
Escala esa matriz por un factor de 3 en la dirección x y un factor de 1 en la dirección y prepending la transformación de escalado.
Dibuja un rectángulo escalado girado con un lápiz azul.
El resultado sigue siendo un rectá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
Comentarios
La operación de escalado consta de multiplicar la matriz de transformación por una matriz diagonal cuyos elementos son (sx
, sy
, 1). Este método antepone la matriz de transformación de la Graphics por la matriz de escalado.
Se aplica a
ScaleTransform(Single, Single, MatrixOrder)
- Source:
- Graphics.cs
- Source:
- Graphics.cs
- Source:
- Graphics.cs
- Source:
- Graphics.cs
- Source:
- Graphics.cs
Aplica la operación de escalado especificada a la matriz de transformación de este Graphics en el orden especificado.
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
Factor de escala en la dirección x.
- sy
- Single
Factor de escala en la dirección y.
- order
- MatrixOrder
Miembro de la enumeración MatrixOrder que especifica si la operación de escalado se antepone o anexa a la matriz de transformación.
Ejemplos
El ejemplo de código siguiente está diseñado para su uso con Windows Forms y requiere PaintEventArgse
, que es un parámetro del controlador de eventos Paint. El código realiza las siguientes acciones:
Gira la matriz de transformación mundial de Windows Form en 30 grados.
Escala esa matriz por un factor de 3 en la dirección x y un factor de 1 en la dirección y anexando la transformación de escalado con el miembro Append.
Dibuja un rectángulo girado y escalado con un lápiz azul.
El resultado es un paralelismo.
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
Comentarios
La operación de escalado consta de multiplicar la matriz de transformación por una matriz diagonal cuyos elementos son (sx
, sy
, 1). Este método antepone o anexa la matriz de transformación del Graphics mediante la matriz de escalado según el parámetro order
.