Freigeben über


GraphicsPath.Transform-Methode

Weist diesem GraphicsPath eine Transformationsmatrix zu.

Namespace: System.Drawing.Drawing2D
Assembly: System.Drawing (in system.drawing.dll)

Syntax

'Declaration
Public Sub Transform ( _
    matrix As Matrix _
)
'Usage
Dim instance As GraphicsPath
Dim matrix As Matrix

instance.Transform(matrix)
public void Transform (
    Matrix matrix
)
public:
void Transform (
    Matrix^ matrix
)
public void Transform (
    Matrix matrix
)
public function Transform (
    matrix : Matrix
)

Parameter

  • matrix
    Eine Matrix, die die zuzuweisende Transformation darstellt.

Hinweise

Mithilfe der Transformation kann GraphicsPath skaliert, verschoben, gedreht oder gezerrt werden.

Beispiel

Das folgende Codebeispiel ist für die Verwendung mit Windows Forms vorgesehen und erfordert das OnPaint-Ereignisobjekt PaintEventArgse. Der Code führt die folgenden Aktionen aus:

  • Erstellt einen Pfad und fügt diesem eine Ellipse hinzu.

  • Zeichnet den Pfad auf dem Bildschirm.

  • Erstellt eine Transformationsmatrix, die den Pfad um 100 Einheiten in Richtung der x-Achse verschiebt.

  • Zeichnet den transformierten Pfad auf dem Bildschirm.

Beachten Sie, dass die ursprüngliche Ellipse schwarz und die transformierte rot gezeichnet wird.

Public Sub TransformExample(ByVal e As PaintEventArgs)

    ' Create a path and add and ellipse.
    Dim myPath As New GraphicsPath
    myPath.AddEllipse(0, 0, 100, 200)

    ' Draw the starting position to screen.
    e.Graphics.DrawPath(Pens.Black, myPath)

    ' Move the ellipse 100 points to the right.
    Dim translateMatrix As New Matrix
    translateMatrix.Translate(100, 0)
    myPath.Transform(translateMatrix)

    ' Draw the transformed ellipse to the screen.
    e.Graphics.DrawPath(New Pen(Color.Red, 2), myPath)
End Sub
private void TransformExample(PaintEventArgs e)
{
             
    // Create a path and add and ellipse.
    GraphicsPath myPath = new GraphicsPath();
    myPath.AddEllipse(0, 0, 100, 200);
             
    // Draw the starting position to screen.
    e.Graphics.DrawPath(Pens.Black, myPath);
             
    // Move the ellipse 100 points to the right.
    Matrix translateMatrix = new Matrix();
    translateMatrix.Translate(100, 0);
    myPath.Transform(translateMatrix);
             
    // Draw the transformed ellipse to the screen.
    e.Graphics.DrawPath(new Pen(Color.Red, 2), myPath);
}
private:
   void TransformExample( PaintEventArgs^ e )
   {
      // Create a path and add and ellipse.
      GraphicsPath^ myPath = gcnew GraphicsPath;
      myPath->AddEllipse( 0, 0, 100, 200 );

      // Draw the starting position to screen.
      e->Graphics->DrawPath( Pens::Black, myPath );

      // Move the ellipse 100 points to the right.
      Matrix^ translateMatrix = gcnew Matrix;
      translateMatrix->Translate( 100, 0 );
      myPath->Transform(translateMatrix);

      // Draw the transformed ellipse to the screen.
      e->Graphics->DrawPath( gcnew Pen( Color::Red,2.0f ), myPath );
   }
private void TransformExample(PaintEventArgs e)
{
    // Create a path and add and ellipse.
    GraphicsPath myPath = new GraphicsPath();

    myPath.AddEllipse(0, 0, 100, 200);

    // Draw the starting position to screen.
    e.get_Graphics().DrawPath(Pens.get_Black(), myPath);

    // Move the ellipse 100 points to the right.
    Matrix translateMatrix = new Matrix();

    translateMatrix.Translate(100, 0);
    myPath.Transform(translateMatrix);

    // Draw the transformed ellipse to the screen.
    e.get_Graphics().DrawPath(new Pen(Color.get_Red(), 2), myPath);
} //TransformExample

Plattformen

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

GraphicsPath-Klasse
GraphicsPath-Member
System.Drawing.Drawing2D-Namespace