Compartilhar via


GraphicsPath.GetBounds Método

Definição

Retorna um retângulo que associa esse GraphicsPath.

Sobrecargas

GetBounds()

Retorna um retângulo que associa esse GraphicsPath.

GetBounds(Matrix)

Retorna um retângulo que associa esse GraphicsPath quando esse caminho é transformado pelo Matrixespecificado.

GetBounds(Matrix, Pen)

Retorna um retângulo que associa esse GraphicsPath quando o caminho atual é transformado pelo Matrix especificado e desenhado com o Penespecificado.

GetBounds()

Origem:
GraphicsPath.cs
Origem:
GraphicsPath.cs
Origem:
GraphicsPath.cs
Origem:
GraphicsPath.cs
Origem:
GraphicsPath.cs

Retorna um retângulo que associa esse GraphicsPath.

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

Retornos

Um RectangleF que representa um retângulo que vincula esse GraphicsPath.

Exemplos

O exemplo de código a seguir foi projetado para uso com o Windows Forms e requer PaintEventArgse, um objeto de evento OnPaint. O código executa as seguintes ações:

  • Cria um caminho gráfico.

  • Adiciona uma elipse (círculo) a ela e a desenha para a tela.

  • Recupera o retângulo delimitador para o círculo com uma chamada para GetBounds e desenha o retângulo para a tela.

  • Cria um segundo caminho gráfico.

  • Adiciona um círculo e amplia o caminho para uma largura de 10.

  • Desenha o caminho para a tela.

  • Recupera o retângulo delimitador para o segundo círculo.

  • Desenha o retângulo delimitador para a tela.

  • Exibe o tamanho do retângulo em uma caixa de diálogo.

Observe que o retângulo delimitador à direita é maior (para considerar a largura extra da linha).

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

Comentários

O tamanho do retângulo delimitador retornado é influenciado pelo tipo de tampas finais, largura da caneta e limite de caneta e, portanto, produz um "ajuste solto" para o caminho delimitado. A fórmula aproximada é: o retângulo delimitador inicial é inflado pela largura da caneta e esse resultado é multiplicado pelo limite de miter, além de alguma margem adicional para permitir limites finais.

Aplica-se a

GetBounds(Matrix)

Origem:
GraphicsPath.cs
Origem:
GraphicsPath.cs
Origem:
GraphicsPath.cs
Origem:
GraphicsPath.cs
Origem:
GraphicsPath.cs

Retorna um retângulo que associa esse GraphicsPath quando esse caminho é transformado pelo Matrixespecificado.

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

Parâmetros

matrix
Matrix

O Matrix que especifica uma transformação a ser aplicada a esse caminho antes que o retângulo delimitador seja calculado. Esse caminho não é transformado permanentemente; a transformação é usada somente durante o processo de cálculo do retângulo delimitador.

Retornos

Um RectangleF que representa um retângulo que vincula esse GraphicsPath.

Exemplos

Para obter um exemplo, consulte GetBounds().

Comentários

O tamanho do retângulo delimitador retornado é influenciado pelo tipo de tampas finais, largura da caneta e limite de caneta e, portanto, produz um "ajuste solto" para o caminho delimitado. A fórmula aproximada é: o retângulo delimitador inicial é inflado pela largura da caneta e esse resultado é multiplicado pelo limite de miter, além de alguma margem adicional para permitir limites finais.

Aplica-se a

GetBounds(Matrix, Pen)

Origem:
GraphicsPath.cs
Origem:
GraphicsPath.cs
Origem:
GraphicsPath.cs
Origem:
GraphicsPath.cs
Origem:
GraphicsPath.cs

Retorna um retângulo que associa esse GraphicsPath quando o caminho atual é transformado pelo Matrix especificado e desenhado com o Penespecificado.

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

Parâmetros

matrix
Matrix

O Matrix que especifica uma transformação a ser aplicada a esse caminho antes que o retângulo delimitador seja calculado. Esse caminho não é transformado permanentemente; a transformação é usada somente durante o processo de cálculo do retângulo delimitador.

pen
Pen

O Pen com o qual desenhar o GraphicsPath.

Retornos

Um RectangleF que representa um retângulo que vincula esse GraphicsPath.

Exemplos

Para obter um exemplo, consulte GetBounds().

Comentários

O tamanho do retângulo delimitador retornado é influenciado pelo tipo de tampas finais, largura da caneta e limite de caneta e, portanto, produz um "ajuste solto" para o caminho delimitado. A fórmula aproximada é: o retângulo delimitador inicial é inflado pela largura da caneta e esse resultado é multiplicado pelo limite de miter, além de alguma margem adicional para permitir limites finais.

Aplica-se a