Partager via


GraphicsPath.Reset Méthode

Définition

Vide les tableaux PathPoints et PathTypes et définit la FillMode sur Alternate.

public:
 void Reset();
public void Reset ();
member this.Reset : unit -> unit
Public Sub Reset ()

Exemples

L’exemple de code suivant est conçu pour être utilisé avec Windows Forms et nécessite PaintEventArgse, un objet d’événement OnPaint. Le code effectue les actions suivantes :

  • Crée un chemin d’accès.

  • Ajoute plusieurs primitives à celui-ci.

  • Dessine le tableau des points du chemin à l’écran.

  • Réinitialise le chemin d’accès à un état vide.

  • Acquiert à nouveau le tableau de points (s’il existe).

  • Dessine le tableau à l’écran.

Notez qu’il ne trouve aucun tableau après l’appel de réinitialisation.

public:
   void GraphicsPathResetExample( PaintEventArgs^ e )
   {
      System::Drawing::Font^ myFont = gcnew System::Drawing::Font( "Arial",8 );
      
      // Create a path and add a line, an ellipse, and an arc.
      GraphicsPath^ myPath = gcnew GraphicsPath;
      myPath->AddLine( Point(0,0), Point(100,100) );
      myPath->AddEllipse( 100, 100, 200, 250 );
      myPath->AddArc( 300, 250, 100, 100, 0, 90 );
      
      // Draw the pre-reset points array to the screen.
      DrawPoints1( e, myPath->PathPoints, 20 );
      
      // Reset the path.
      myPath->Reset();
      
      // See if any points remain.
      if ( myPath->PointCount > 0 )
      {
         
         // Draw the post-reset points array to the screen.
         DrawPoints1( e, myPath->PathPoints, 150 );
      }
      else
            e->Graphics->DrawString( "No Points", myFont, Brushes::Black, 150, 20 );
      // If there are no points, say so.
   }


   //End GraphicsPathResetExample
   // A helper function GraphicsPathResetExample uses to draw the points.
   // to the screen.
   void DrawPoints1( PaintEventArgs^ e, array<PointF>^ pathPoints, int xOffset )
   {
      int y = 20;
      System::Drawing::Font^ myFont = gcnew System::Drawing::Font( "Arial",8 );
      for ( int i = 0; i < pathPoints->Length; i++ )
      {
         e->Graphics->DrawString( String::Concat( pathPoints[ i ].X, ", ", pathPoints[ i ].Y ), myFont, Brushes::Black, (float)xOffset, (float)y );
         y += 20;

      }
   }
   // End DrawPoints
public void GraphicsPathResetExample(PaintEventArgs e)
{
    Font myFont = new Font("Arial", 8);
             
    // Create a path and add a line, an ellipse, and an arc.
    GraphicsPath myPath = new GraphicsPath();
    myPath.AddLine(new Point(0, 0), new Point(100, 100));
    myPath.AddEllipse(100, 100, 200, 250);
    myPath.AddArc(300, 250, 100, 100, 0, 90);
             
    // Draw the pre-reset points array to the screen.
    DrawPoints1(e, myPath.PathPoints, 20);
             
    // Reset the path.
    myPath.Reset();
             
    // See if any points remain.
    if(myPath.PointCount > 0)
    {
             
        // Draw the post-reset points array to the screen.
        DrawPoints1(e, myPath.PathPoints, 150);
    }
    else
             
        // If there are no points, say so.
        e.Graphics.DrawString("No Points",
            myFont,
            Brushes.Black,
            150,
            20);
} 
//End GraphicsPathResetExample
             
// A helper function GraphicsPathResetExample uses to draw the points.
             
// to the screen.
public void DrawPoints1(PaintEventArgs e, PointF[] pathPoints, int xOffset)
{
    int y = 20;
    Font myFont = new Font("Arial", 8);
    for(int i=0;i < pathPoints.Length; i++)
    {
        e.Graphics.DrawString(pathPoints[i].X.ToString() + ", " +
            pathPoints[i].Y.ToString(),
            myFont,
            Brushes.Black,
            xOffset,
            y);
        y += 20;
    }
} 
// End DrawPoints
Public Sub GraphicsPathResetExample(ByVal e As PaintEventArgs)
    Dim myFont As New Font("Arial", 8)

    ' Create a path and add a line, an ellipse, and an arc.
    Dim myPath As New GraphicsPath
    myPath.AddLine(New Point(0, 0), New Point(100, 100))
    myPath.AddEllipse(100, 100, 200, 250)
    myPath.AddArc(300, 250, 100, 100, 0, 90)

    ' Draw the pre-reset points array to the screen.
    DrawPointsHelper1(e, myPath.PathPoints, 20)

    ' Reset the path.
    myPath.Reset()

    ' See if any points remain.
    If myPath.PointCount > 0 Then

        ' Draw the post-reset points array to the screen.
        DrawPointsHelper1(e, myPath.PathPoints, 150)

        ' If there are no points, say so.
    Else
        e.Graphics.DrawString("No Points", myFont, Brushes.Black, _
        150, 20)
    End If
End Sub

' A helper function used by GraphicsPathResetExample to draw points.
Public Sub DrawPointsHelper1(ByVal e As PaintEventArgs, _
ByVal pathPoints() As PointF, ByVal xOffset As Integer)
    Dim y As Integer = 20
    Dim myFont As New Font("Arial", 8)
    Dim i As Integer
    For i = 0 To pathPoints.Length - 1
        e.Graphics.DrawString(pathPoints(i).X.ToString() + _
        ", " + pathPoints(i).Y.ToString(), myFont, Brushes.Black, _
        xOffset, y)
        y += 20
    Next i
End Sub

S’applique à