Graphics.ScaleTransform Metoda
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Použije zadanou operaci škálování na transformační matici tohoto Graphics tím, že ji předpovědí na transformační matici objektu.
Přetížení
ScaleTransform(Single, Single) |
Použije zadanou operaci škálování na transformační matici tohoto Graphics tím, že ji předpovědí na transformační matici objektu. |
ScaleTransform(Single, Single, MatrixOrder) |
Použije zadanou operaci škálování na transformační matici tohoto Graphics v zadaném pořadí. |
ScaleTransform(Single, Single)
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
Použije zadanou operaci škálování na transformační matici tohoto Graphics tím, že ji předpovědí na transformační matici objektu.
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)
Parametry
- sx
- Single
Koeficient ve směru x.
- sy
- Single
Koeficient ve směru y.
Příklady
Následující příklad kódu je určený pro použití s Windows Forms a vyžaduje PaintEventArgse
, což je parametr obslužné rutiny události Paint. Kód provede následující akce:
Otočí světovou transformační matici formuláře Windows Form o 30 stupňů.
Škáluje matici faktorem 3 ve směru x a faktorem 1 ve směru y tím, že předpíná transformaci škálování.
Nakreslí škálovaný otočený obdélník modrým perem.
Výsledek je stále obdélník.
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
Poznámky
Operace škálování se skládá z vynásobení transformační matice diagonální maticí, jejíž prvky jsou (sx
, sy
, 1). Tato metoda předem předpne transformační matici Graphics pomocí matice škálování.
Platí pro
ScaleTransform(Single, Single, MatrixOrder)
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
- Zdroj:
- Graphics.cs
Použije zadanou operaci škálování na transformační matici tohoto Graphics v zadaném pořadí.
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)
Parametry
- sx
- Single
Koeficient ve směru x.
- sy
- Single
Koeficient ve směru y.
- order
- MatrixOrder
Člen MatrixOrder výčtu, který určuje, zda je operace škálování předem oddělena nebo připojena k matici transformace.
Příklady
Následující příklad kódu je určený pro použití s Windows Forms a vyžaduje PaintEventArgse
, což je parametr obslužné rutiny události Paint. Kód provede následující akce:
Otočí světovou transformační matici formuláře Windows Form o 30 stupňů.
Škáluje matici faktorem 3 ve směru x a faktorem 1 ve směru y připojením transformace měřítka k členu Append.
Nakreslí otočený obdélník s modrým perem.
Výsledkem je paralelogram.
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
Poznámky
Operace škálování se skládá z vynásobení transformační matice diagonální maticí, jejíž prvky jsou (sx
, sy
, 1). Tato metoda předem připojí transformační matici Graphics pomocí matice škálování podle parametru order
.