Condividi tramite


GraphicsPath.GetBounds Metodo

Definizione

Restituisce un rettangolo che delimita questo GraphicsPath.

Overload

GetBounds()

Restituisce un rettangolo che delimita questo GraphicsPath.

GetBounds(Matrix)

Restituisce un rettangolo che delimita questo GraphicsPath quando questo percorso viene trasformato dal Matrixspecificato.

GetBounds(Matrix, Pen)

Restituisce un rettangolo che delimita questo GraphicsPath quando il percorso corrente viene trasformato dal Matrix specificato e disegnato con il Penspecificato.

GetBounds()

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

Restituisce un rettangolo che delimita questo GraphicsPath.

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

Restituisce

Oggetto RectangleF che rappresenta un rettangolo che delimita questo GraphicsPath.

Esempio

L'esempio di codice seguente è progettato per l'uso con Windows Form e richiede PaintEventArgse, un oggetto evento OnPaint. 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à, 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, più un margine aggiuntivo per consentire il limite finale.

Si applica a

GetBounds(Matrix)

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

Restituisce un rettangolo che delimita questo GraphicsPath quando questo percorso viene trasformato dal Matrixspecificato.

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

Il Matrix che specifica una trasformazione da applicare a questo percorso prima che venga calcolato il rettangolo di delimitazione. Questo percorso non viene trasformato in modo permanente; la trasformazione viene utilizzata solo durante il processo di calcolo del rettangolo di delimitazione.

Restituisce

Oggetto RectangleF che rappresenta un rettangolo che delimita questo GraphicsPath.

Esempio

Per un esempio, vedere GetBounds().

Commenti

Le dimensioni del rettangolo di delimitazione restituito sono influenzate dal tipo di estremità, 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, più un margine aggiuntivo per consentire il limite finale.

Si applica a

GetBounds(Matrix, Pen)

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

Restituisce un rettangolo che delimita questo GraphicsPath quando il percorso corrente viene trasformato dal Matrix specificato e disegnato con il Penspecificato.

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

Il Matrix che specifica una trasformazione da applicare a questo percorso prima che venga calcolato il rettangolo di delimitazione. Questo percorso non viene trasformato in modo permanente; la trasformazione viene utilizzata solo durante il processo di calcolo del rettangolo di delimitazione.

pen
Pen

Pen con cui disegnare il GraphicsPath.

Restituisce

Oggetto RectangleF che rappresenta un rettangolo che delimita questo GraphicsPath.

Esempio

Per un esempio, vedere GetBounds().

Commenti

Le dimensioni del rettangolo di delimitazione restituito sono influenzate dal tipo di estremità, 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, più un margine aggiuntivo per consentire il limite finale.

Si applica a