Metodo GraphicsPathIterator::NextMarker(constGraphicsPath*) (gdipluspath.h)
Il metodo GraphicsPathIterator::NextMarker ottiene la sezione successiva delimitata dal marcatore del percorso associato di questo iteratore.
Sintassi
INT NextMarker(
[out] const GraphicsPath *path
);
Parametri
[out] path
Tipo: GraphicsPath*
Puntatore a un oggetto GraphicsPath . Questo metodo imposta i punti dati di questo oggetto GraphicsPath in modo che corrispondano ai punti dati della sezione recuperata.
Valore restituito
Tipo: INT
Questo metodo restituisce il numero di punti dati nella sezione recuperata. Se non sono presenti altre sezioni delimitate da marcatori da recuperare, questo metodo restituisce 0.
Commenti
Un percorso ha una matrice di punti dati che definiscono le linee e le curve. È possibile chiamare il metodo SetMarker di un percorso per designare determinati punti nella matrice come marcatori. Tali punti marcatori suddividono il percorso in sezioni.
La prima volta che si chiama il metodo GraphicsPathIterator::NextMarker di un iteratore, ottiene la prima sezione delimitata dal marcatore del percorso associato dell'iteratore. La seconda volta, ottiene la seconda sezione e così via. Ogni volta che si chiama GraphicsPathIterator::NextSubpath, viene restituito il numero di punti dati nella sezione recuperata. Quando non ci sono sezioni rimanenti, restituisce 0.
Esempio
Nell'esempio seguente viene creato un oggetto GraphicsPath e vengono aggiunte cinque figure al percorso. Le chiamate al metodo SetMarker posizionano due marcatori nel percorso. Il primo marcatore si trova alla fine di una figura e il secondo marcatore si trova al centro di una figura. Il codice passa l'indirizzo dell'oggetto GraphicsPath a un costruttore GraphicsPathIterator per creare un iteratore associato al percorso. Il codice chiama quindi il metodo GraphicsPathIterator::NextMarker dell'iteratore due volte per ottenere la seconda sezione delimitata dal marcatore del percorso. Infine, il codice disegna la sezione recuperata del percorso.
VOID NextMarkerExample(HDC hdc)
{
Graphics graphics(hdc);
// Create a graphics path with five figures (subpaths).
GraphicsPath path;
path.AddRectangle(Rect(20, 20, 60, 30));
path.SetMarker(); // first marker
path.AddLine(100, 20, 160, 50);
path.AddArc(180, 20, 60, 30, 0.0f, 180.0f);
path.AddRectangle(Rect(260, 20, 60, 30));
path.AddLine(340, 20, 400, 50);
path.SetMarker(); // second marker
path.AddArc(340, 20, 60, 30, 0.0f, 180.0f);
path.CloseFigure();
path.AddRectangle(Rect(420, 20, 60, 30));
// Create an iterator, and associate it with the path.
GraphicsPathIterator iterator(&path);
// Get the second marker-delimited section by calling NextMarker twice.
GraphicsPath section;
INT count;
count = iterator.NextMarker(§ion);
count = iterator.NextMarker(§ion);
// The variable "count" now holds the number of
// data points in the second marker-delimited section.
// Draw the retrieved section.
Pen bluePen(Color(255, 0, 0, 255));
graphics.DrawPath(&bluePen, §ion);
}
Requisiti
Client minimo supportato | Windows XP, Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | gdipluspath.h (include Gdiplus.h) |
Libreria | Gdiplus.lib |
DLL | Gdiplus.dll |
Vedi anche
Costruzione e creazione di percorsi