Share via


GraphicsPath.GetBounds Metodo

Definizione

Restituisce un rettangolo che delimita questa classe GraphicsPath.

Overload

GetBounds()

Restituisce un rettangolo che delimita questa classe GraphicsPath.

GetBounds(Matrix)

Restituisce un rettangolo che delimita questa classe GraphicsPath quando il percorso viene trasformato dalla classe Matrix specificata.

GetBounds(Matrix, Pen)

Restituisce un rettangolo che delimita questa classe GraphicsPath quando il percorso corrente viene trasformato dalla classe Matrix specificata e disegnato con la classe Pen specificata.

GetBounds()

Origine:
GraphicsPath.cs
Origine:
GraphicsPath.cs
Origine:
GraphicsPath.cs

Restituisce un rettangolo che delimita questa classe GraphicsPath.

public:
 System::Drawing::RectangleF GetBounds();
public System.Drawing.RectangleF GetBounds ();
member this.GetBounds : unit -> System.Drawing.RectangleF
Public Function GetBounds () As RectangleF

Restituisce

Struttura RectangleF che rappresenta un rettangolo che delimita questa classe GraphicsPath.

Esempio

L'esempio di codice seguente è progettato per l'uso con Windows Forms e richiede PaintEventArgse, un OnPaint oggetto evento. Il codice esegue le azioni seguenti:

  • Crea un percorso grafico.

  • Aggiunge un'ellisse (cerchio) e la disegna sullo schermo.

  • Recupera il rettangolo di delimitazione per il cerchio con una chiamata a GetBounds e disegna il rettangolo sullo schermo.

  • Crea un secondo percorso grafico.

  • Aggiunge un cerchio e estende il percorso a una larghezza pari a 10.

  • Disegna il percorso dello schermo.

  • Recupera il rettangolo di delimitazione per il secondo cerchio.

  • Disegna il rettangolo di delimitazione sullo schermo.

  • Visualizza le dimensioni del rettangolo in una finestra di dialogo.

Si noti che il rettangolo di delimitazione a destra è maggiore (per tenere conto della larghezza aggiuntiva della linea).

public:
   void GetBoundsExample( PaintEventArgs^ e )
   {
      // Create path number 1 and a Pen for drawing.
      GraphicsPath^ myPath = gcnew GraphicsPath;
      Pen^ pathPen = gcnew Pen( Color::Black,1.0f );

      // Add an Ellipse to the path and Draw it (circle in start
      // position).
      myPath->AddEllipse( 20, 20, 100, 100 );
      e->Graphics->DrawPath( pathPen, myPath );

      // Get the path bounds for Path number 1 and draw them.
      RectangleF boundRect = myPath->GetBounds();
      e->Graphics->DrawRectangle( gcnew Pen( Color::Red,1.0f ), boundRect.X, boundRect.Y, boundRect.Height, boundRect.Width );

      // Create a second graphics path and a wider Pen.
      GraphicsPath^ myPath2 = gcnew GraphicsPath;
      Pen^ pathPen2 = gcnew Pen( Color::Black,10.0f );

      // Create a new ellipse with a width of 10.
      myPath2->AddEllipse( 150, 20, 100, 100 );
      myPath2->Widen( pathPen2 );
      e->Graphics->FillPath( Brushes::Black, myPath2 );

      // Get the second path bounds.
      RectangleF boundRect2 = myPath2->GetBounds();

      // Draw the bounding rectangle.
      e->Graphics->DrawRectangle( gcnew Pen( Color::Red,1.0f ), boundRect2.X, boundRect2.Y, boundRect2.Height, boundRect2.Width );

      // Display the rectangle size.
      MessageBox::Show( boundRect2.ToString() );
   }
public void GetBoundsExample(PaintEventArgs e)
{
             
    // Create path number 1 and a Pen for drawing.
    GraphicsPath myPath = new GraphicsPath();
    Pen pathPen = new Pen(Color.Black, 1);
             
    // Add an Ellipse to the path and Draw it (circle in start
             
    // position).
    myPath.AddEllipse(20, 20, 100, 100);
    e.Graphics.DrawPath(pathPen, myPath);
             
    // Get the path bounds for Path number 1 and draw them.
    RectangleF boundRect = myPath.GetBounds();
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1),
        boundRect.X,
        boundRect.Y,
        boundRect.Height,
        boundRect.Width);
             
    // Create a second graphics path and a wider Pen.
    GraphicsPath myPath2 = new GraphicsPath();
    Pen pathPen2 = new Pen(Color.Black, 10);
             
    // Create a new ellipse with a width of 10.
    myPath2.AddEllipse(150, 20, 100, 100);
    myPath2.Widen(pathPen2);
    e.Graphics.FillPath(Brushes.Black, myPath2);
             
    // Get the second path bounds.
    RectangleF boundRect2 = myPath2.GetBounds();
             
    // Draw the bounding rectangle.
    e.Graphics.DrawRectangle(new Pen(Color.Red, 1),
        boundRect2.X,
        boundRect2.Y,
        boundRect2.Height,
        boundRect2.Width);
             
    // Display the rectangle size.
    MessageBox.Show(boundRect2.ToString());
}
Public Sub GetBoundsExample(ByVal e As PaintEventArgs)

    ' Create path number 1 and a Pen for drawing.
    Dim myPath As New GraphicsPath
    Dim pathPen As New Pen(Color.Black, 1)

    ' Add an Ellipse to the path and Draw it (circle in start

    ' position).
    myPath.AddEllipse(20, 20, 100, 100)
    e.Graphics.DrawPath(pathPen, myPath)

    ' Get the path bounds for Path number 1 and draw them.
    Dim boundRect As RectangleF = myPath.GetBounds()
    e.Graphics.DrawRectangle(New Pen(Color.Red, 1), boundRect.X, _
    boundRect.Y, boundRect.Height, boundRect.Width)

    ' Create a second graphics path and a wider Pen.
    Dim myPath2 As New GraphicsPath
    Dim pathPen2 As New Pen(Color.Black, 10)

    ' Create a new ellipse with a width of 10.
    myPath2.AddEllipse(150, 20, 100, 100)
    myPath2.Widen(pathPen2)
    e.Graphics.FillPath(Brushes.Black, myPath2)

    ' Get the second path bounds.
    Dim boundRect2 As RectangleF = myPath2.GetBounds()

    ' Show the bounds in a message box.
    e.Graphics.DrawString("Rectangle2 Bounds: " + _
    boundRect2.ToString(), New Font("Arial", 8), Brushes.Black, _
    20, 150)

    ' Draw the bounding rectangle.
    e.Graphics.DrawRectangle(New Pen(Color.Red, 1), boundRect2.X, _
    boundRect2.Y, boundRect2.Height, boundRect2.Width)
End Sub

Commenti

Le dimensioni del rettangolo di delimitazione restituito sono influenzate dal tipo di estremità finale, larghezza della penna e limite di miter della penna e quindi produce un "adattamento libero" al percorso delimitato. La formula approssimativa è: il rettangolo di delimitazione iniziale viene gonfiato in base alla larghezza della penna e questo risultato viene moltiplicato per il limite di miter, oltre ad alcuni margini aggiuntivi per consentire estremità finali.

Si applica a

GetBounds(Matrix)

Origine:
GraphicsPath.cs
Origine:
GraphicsPath.cs
Origine:
GraphicsPath.cs

Restituisce un rettangolo che delimita questa classe GraphicsPath quando il percorso viene trasformato dalla classe Matrix specificata.

public:
 System::Drawing::RectangleF GetBounds(System::Drawing::Drawing2D::Matrix ^ matrix);
public System.Drawing.RectangleF GetBounds (System.Drawing.Drawing2D.Matrix matrix);
public System.Drawing.RectangleF GetBounds (System.Drawing.Drawing2D.Matrix? matrix);
member this.GetBounds : System.Drawing.Drawing2D.Matrix -> System.Drawing.RectangleF
Public Function GetBounds (matrix As Matrix) As RectangleF

Parametri

matrix
Matrix

Classe Matrix che specifica una trasformazione da applicare a questo percorso prima di calcolare il rettangolo di delimitazione. Questo percorso non viene trasformato in maniera permanente e la trasformazione viene utilizzata solo durante il processo di calcolo del rettangolo di delimitazione.

Restituisce

Struttura RectangleF che rappresenta un rettangolo che delimita questa classe GraphicsPath.

Esempio

Per un esempio, vedere GetBounds().

Commenti

Le dimensioni del rettangolo di delimitazione restituito sono influenzate dal tipo di estremità finale, larghezza della penna e limite di miter della penna e quindi produce un "adattamento libero" al percorso delimitato. La formula approssimativa è: il rettangolo di delimitazione iniziale viene gonfiato in base alla larghezza della penna e questo risultato viene moltiplicato per il limite di miter, oltre ad alcuni margini aggiuntivi per consentire estremità finali.

Si applica a

GetBounds(Matrix, Pen)

Origine:
GraphicsPath.cs
Origine:
GraphicsPath.cs
Origine:
GraphicsPath.cs

Restituisce un rettangolo che delimita questa classe GraphicsPath quando il percorso corrente viene trasformato dalla classe Matrix specificata e disegnato con la classe Pen specificata.

public:
 System::Drawing::RectangleF GetBounds(System::Drawing::Drawing2D::Matrix ^ matrix, System::Drawing::Pen ^ pen);
public System.Drawing.RectangleF GetBounds (System.Drawing.Drawing2D.Matrix matrix, System.Drawing.Pen pen);
public System.Drawing.RectangleF GetBounds (System.Drawing.Drawing2D.Matrix? matrix, System.Drawing.Pen? pen);
member this.GetBounds : System.Drawing.Drawing2D.Matrix * System.Drawing.Pen -> System.Drawing.RectangleF
Public Function GetBounds (matrix As Matrix, pen As Pen) As RectangleF

Parametri

matrix
Matrix

Classe Matrix che specifica una trasformazione da applicare a questo percorso prima di calcolare il rettangolo di delimitazione. Questo percorso non viene trasformato in maniera permanente e la trasformazione viene utilizzata solo durante il processo di calcolo del rettangolo di delimitazione.

pen
Pen

Classe Pen con la quale disegnare la classe GraphicsPath.

Restituisce

Struttura RectangleF che rappresenta un rettangolo che delimita questa classe GraphicsPath.

Esempio

Per un esempio, vedere GetBounds().

Commenti

Le dimensioni del rettangolo di delimitazione restituito sono influenzate dal tipo di estremità finale, larghezza della penna e limite di miter della penna e quindi produce un "adattamento libero" al percorso delimitato. La formula approssimativa è: il rettangolo di delimitazione iniziale viene gonfiato in base alla larghezza della penna e questo risultato viene moltiplicato per il limite di miter, oltre ad alcuni margini aggiuntivi per consentire estremità finali.

Si applica a