Compartir a través de


GraphicsPath::GetBounds(RectF*,constMatrix*,constPen*) método (gdipluspath.h)

El método GraphicsPath::GetBounds obtiene un rectángulo delimitador para esta ruta de acceso.

Sintaxis

Status GetBounds(
  RectF        *bounds,
  const Matrix *matrix,
  const Pen    *pen
);

Parámetros

bounds

Puntero a un objeto rectF de que recibe el rectángulo delimitador.

matrix

Opcional. Puntero a un objeto Matrix que especifica una transformación que se va a aplicar a esta ruta de acceso antes de calcular el rectángulo delimitador. Esta ruta de acceso no se transforma permanentemente; la transformación solo se usa durante el proceso de cálculo del rectángulo delimitador. El valor predeterminado es NULL.

pen

Opcional. Puntero a un Pen objeto que influye en el tamaño del rectángulo delimitador. El rectángulo delimitador recibido en límites será lo suficientemente grande como para incluir esta ruta de acceso cuando la ruta de acceso se dibuja con el lápiz especificado por este parámetro. Esto garantiza que la ruta de acceso esté entre el rectángulo delimitador incluso si la ruta de acceso se dibuja con un lápiz ancho. El valor predeterminado es NULL.

Valor devuelto

Tipo de : estado de

Si el método se ejecuta correctamente, devuelve Ok, que es un elemento de la enumeración Status Status.

Si se produce un error en el método, devuelve uno de los otros elementos de la enumeración Status .

Observaciones

El rectángulo devuelto por este método puede ser mayor que necesario para incluir la ruta de acceso dibujada por el lápiz especificado. El rectángulo se calcula para permitir el límite de miter del lápiz en esquinas afiladas y permitir los límites finales del lápiz.

Ejemplos

En el ejemplo siguiente se crea una ruta de acceso que tiene una curva y una elipse. El código dibuja la ruta de acceso con un lápiz amarillo grueso y un lápiz negro fino. El método GraphicsPath::GetBounds recibe la dirección del lápiz amarillo grueso y calcula un rectángulo delimitador para la ruta de acceso. A continuación, el código dibuja el rectángulo delimitador.


VOID GetBoundsExample(HDC hdc)
{
   Graphics graphics(hdc);
   Pen blackPen(Color(255, 0, 0, 0), 1);
   Pen yellowPen(Color(255, 255, 255, 0), 10);
   Pen redPen(Color(255, 255, 0, 0), 1);

   Point pts[] = {Point(120,120), 
                  Point(200,130), 
                  Point(150,200), 
                  Point(130,180)};

   // Create a path that has one curve and one ellipse.
   GraphicsPath path;
   path.AddClosedCurve(pts, 4);
   path.AddEllipse(120, 220, 100, 40);

   // Draw the path with a thick yellow pen and a thin black pen.
   graphics.DrawPath(&yellowPen, &path);
   graphics.DrawPath(&blackPen, &path);

   // Get the path's bounding rectangle.
   RectF rect;
   path.GetBounds(&rect, NULL, &yellowPen);
   graphics.DrawRectangle(&redPen, rect);  
}

Color(255, 0, 0, 0)Color(255, 255, 0,  0)

Requisitos

Requisito Valor
encabezado de gdipluspath.h

Consulte también

recorte con una región

construir y dibujar rutas de acceso

crear un de degradado de trazado

GraphicsPath

matriz de

rutas de acceso de

pen

RectF