Compartir a través de


GraphicsPath::IsVisible(constPointF&,constGraphics*) (gdipluspath.h)

El método GraphicsPath::IsVisible determina si un punto especificado se encuentra en el área que se rellena cuando este trazado se rellena mediante un objeto Graphics especificado.

Sintaxis

BOOL IsVisible(
  const PointF & point,
  const Graphics *g
);

Parámetros

point

Referencia al punto que se va a probar.

g

Opcional. Puntero a un objeto Graphics que especifica una transformación de mundo a dispositivo. Si el valor de este parámetro es NULL, la prueba se realiza en coordenadas del mundo; de lo contrario, la prueba se realiza en coordenadas del dispositivo. El valor predeterminado es NULL.

Valor devuelto

Si el punto de prueba se encuentra en el interior de esta ruta de acceso, este método devuelve TRUE; de lo contrario, devuelve FALSE.

Observaciones

Ejemplos

En el ejemplo siguiente se crea una ruta elíptica y se dibuja esa ruta con un lápiz negro estrecho. A continuación, el código prueba cada punto de una matriz para ver si el punto se encuentra en el interior de la ruta de acceso. Los puntos que se encuentran en el interior están pintados de color verde, y los puntos que no se encuentran en el interior están pintados en rojo.

VOID IsVisibleExample(HDC hdc)
{
   Graphics graphics(hdc);

   INT j;
   Pen blackPen(Color(255, 0, 0, 0), 1);
   SolidBrush brush(Color(255, 255, 0,  0));

   // Create and draw a path.
   GraphicsPath path;
   path.AddEllipse(50, 50, 200, 100);
   graphics.DrawPath(&blackPen, &path);

   // Create an array of four points, and determine whether each
   // point in the array touches the outline of the path.
   // If a point touches the outline, paint it green.
   // If a point does not touch the outline, paint it red.
   PointF[] = {
      PointF(50, 100),
      PointF(250, 100),
      PointF(150, 170),
      PointF(180, 60)};

   for(j = 0; j <= 3; ++j)
   {
      if(path.IsVisible(points[j], &graphics))
         brush.SetColor(Color(255, 0, 255,  0));
      else
         brush.SetColor(Color(255, 255, 0,  0));

      graphics.FillEllipse(&brush, points[j].X - 3.0f, points[j].Y - 3.0f, 6.0f, 6.0f);
   }
}

Requisitos

   
Encabezado gdipluspath.h

Consulte también

Recorte con una región

Crear y dibujar trazados

Crear un degradado de trazado

Elementos gráficos

Graphicspath

Métodos IsOutlineVisible

Métodos IsVisible

Paths

PointF