GraphicsPath::IsOutlineVisible(constPointF&,constPen*,constGraphics*)-Methode (gdipluspath.h)

Die GraphicsPath::IsOutlineVisible-Methode bestimmt, ob ein angegebener Punkt die Gliederung dieses Pfads berührt, wenn der Pfad von einem angegebenen Graphics-Objekt und einem angegebenen Stift gezeichnet wird.

Syntax

BOOL IsOutlineVisible(
  const PointF & point,
  const Pen      *pen,
  const Graphics *g
);

Parameter

point

Verweis auf den zu prüfenden Punkt.

pen

Zeiger auf ein Pen-Objekt . Diese Methode bestimmt, ob der Testpunkt die Pfadgliederung berührt, die von diesem Stift gezeichnet würde. Mehr Punkte berühren eine Gliederung, die von einem breiten Stift gezeichnet wurde, als eine Gliederung, die von einem schmalen Stift gezeichnet wurde.

g

Optional. Zeiger auf ein Graphics-Objekt , das eine Transformation von Welt zu Gerät angibt. Wenn der Wert dieses Parameters NULL ist, wird der Test in Weltkoordinaten durchgeführt. Andernfalls wird der Test in Gerätekoordinaten durchgeführt. Der Standardwert ist NULL.

Rückgabewert

Wenn der Testpunkt den Umriss dieses Pfads berührt, gibt diese Methode TRUE zurück. Andernfalls wird FALSE zurückgegeben.

Bemerkungen

Beispiele

Das folgende Beispiel erstellt einen elliptischen Pfad und zeichnet diesen Pfad mit einem breiten gelben Stift. Anschließend testet der Code jeden Punkt in einem Array, um zu sehen, ob der Punkt die Gliederung berührt (wie er durch den breiten gelben Stift gezeichnet würde) des Pfads. Punkte, die den Umriss berühren, werden grün gezeichnet, und Punkte, die den Umriss nicht berühren, werden rot gezeichnet.

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

   INT j;
   Pen yellowPen(Color(255, 255, 255, 0), 20);
   SolidBrush brush(Color(255, 255, 0,  0));

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

   // Create an array of three 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(230, 138),
      PointF(100, 120),
      PointF(150, 170)};

   for(j = 0; j <= 2; ++j)
   {
      if(path.IsOutlineVisible(points[j], &yellowPen, NULL))
         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);
   }
}

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

Anforderungen

   
Kopfzeile gdipluspath.h

Weitere Informationen

Ausschneiden mit einer Region

Erstellen und Zeichnen von Pfaden

Erstellen eines Pfadverlaufs

Grafiken

Graphicspath

IsOutlineVisible-Methoden

IsVisible-Methoden

Paths

Stift

Stifte, Linien und Rechtecke

Pointf

Festlegen der Stiftbreite und -ausrichtung