GraphicsPathIterator::GetCount-Methode (gdipluspath.h)
Die GraphicsPathIterator::GetCount-Methode gibt die Anzahl der Datenpunkte im Pfad zurück.
Syntax
INT GetCount();
Rückgabewert
Typ: INT
Diese Methode gibt die Anzahl der Datenpunkte im Pfad zurück.
Hinweise
Dieses GraphicsPathIterator-Objekt ist einem GraphicsPath-Objekt zugeordnet. Dieses GraphicsPath-Objekt verfügt über ein Array von Punkten und ein Array von Typen. Jedes Element im Array von Typen ist ein Byte, das den Punkttyp und eine Reihe von Flags für das entsprechende Element im Array von Punkten angibt. Mögliche Punkttypen und Flags sind in der PathPointType-Enumeration aufgeführt.
Beispiele
Im folgenden Beispiel wird ein GraphicsPath-Objekt erstellt und dann dem Pfad ein Rechteck und eine Ellipse hinzugefügt. Der Code übergibt die Adresse dieses GraphicsPath-Objekts an einen GraphicsPathIterator-Konstruktor , um einen Iterator zu erstellen, der dem Pfad zugeordnet ist. Der Code ruft die GraphicsPathIterator::GetCount-Methode des Iterators auf, um die Anzahl der Datenpunkte im Pfad zu bestimmen. Der Aufruf von GraphicsPathIterator::Enumerate ruft zwei Arrays aus dem Pfad ab: eines, das die Datenpunkte des Pfads enthält, und eines, das die Punkttypen des Pfads enthält. Nachdem die Datenpunkte abgerufen wurden, ruft der Code die FillEllipse-Methode eines Objekts auf, um jeden der Datenpunkte zu zeichnen.
VOID GetCountExample(HDC hdc)
{
Graphics graphics(hdc);
// Create a path that has a rectangle and an ellipse.
GraphicsPath path;
path.AddRectangle(Rect(20, 20, 60, 30));
path.AddEllipse(Rect(20, 70, 100, 50));
// Create an iterator, and associate it with the path.
GraphicsPathIterator iterator(&path);
// Get the number of data points in the path.
INT count = iterator.GetCount();
// Get the data points.
PointF* points = new PointF[count];
BYTE* types = new BYTE[count];
iterator.Enumerate(points, types, count);
// Draw the data points.
SolidBrush brush(Color(255, 255, 0, 0));
for(INT j = 0; j < count; ++j)
graphics.FillEllipse(
&brush,
points[j].X - 3.0f,
points[j].Y - 3.0f,
6.0f,
6.0f);
delete points;
delete types;
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows XP, Windows 2000 Professional [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows 2000 Server [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | gdipluspath.h (include Gdiplus.h) |
Bibliothek | Gdiplus.lib |
DLL | Gdiplus.dll |
Weitere Informationen
Erstellen und Zeichnen von Pfaden
GraphicsPathIterator::CopyData