Metodo GraphicsPathIterator::Rewind (gdipluspath.h)
Il metodo GraphicsPathIterator::Rewind riavvolge questo iteratore all'inizio del percorso associato.
Sintassi
void Rewind();
Valore restituito
nessuno
Osservazioni
La prima volta che si chiama il metodo NextSubpath di un iteratore, ottiene la prima figura (subpath) del percorso associato dell'iteratore. La seconda volta, ottiene la seconda figura e così via. Quando si chiama GraphicsPathIterator::Rewind, la sequenza inizia; ovvero, dopo aver chiamato GraphicsPathIterator::Rewind, la chiamata successiva a GraphicsPathIterator::NextSubpath ottiene la prima figura nel percorso. I metodi GraphicsPathIterator::NextMarker e GraphicsPathIterator::NextPathType si comportano in modo analogo.
Esempio
Nell'esempio seguente viene creato un oggetto GraphicsPath e vengono aggiunte cinque figure al percorso. Il codice passa l'indirizzo dell'oggetto GraphicsPath a un costruttore GraphicsPathIterator per creare un iteratore associato al percorso. Il codice chiama il metodo GraphicsPathIterator::NextSubpath due volte per recuperare la seconda figura nel percorso. Il metodo DrawPath disegna il percorso in blu. Successivamente, il codice chiama il metodo GraphicsPathIterator::Rewind e quindi chiama GraphicsPathIterator::NextSubpath una volta per ottenere la prima figura nel percorso. Il metodo DrawPath disegna tale figura in rosso.
VOID RewindExample(HDC hdc)
{
Graphics graphics(hdc);
// Create a graphics path with five figures (subpaths).
GraphicsPath path;
path.AddRectangle(Rect(20, 20, 60, 30)); // Subpath count is 1.
path.AddLine(100, 20, 160, 50); // Subpath count is 2.
path.AddArc(180, 20, 60, 30, 0.0f, 180.0f);
path.AddRectangle(Rect(260, 20, 60, 30)); // Subpath count is 3.
path.AddLine(340, 20, 400, 50); // Subpath count is 4.
path.AddArc(340, 20, 60, 30, 0.0f, 180.0f);
path.CloseFigure();
path.AddRectangle(Rect(420, 20, 60, 30)); // Subpath count is 5.
// Create an iterator, and associate it with the path.
GraphicsPathIterator iterator(&path);
// Get the second subpath by calling NextSubpath twice.
GraphicsPath subpath;
BOOL isClosed;
INT count;
count = iterator.NextSubpath(&subpath, &isClosed);
count = iterator.NextSubpath(&subpath, &isClosed);
// Draw the second figure in blue.
Pen bluePen(Color(255, 0, 0, 255));
graphics.DrawPath(&bluePen, &subpath);
// Rewind the iterator, and get the first figure in the path.
iterator.Rewind();
count = iterator.NextSubpath(&subpath, &isClosed);
// Draw the first figure in red.
Pen redPen(Color(255, 255, 0, 0));
graphics.DrawPath(&redPen, &subpath);
}
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
Metodi GraphicsPathIterator::NextMarker
GraphicsPathIterator::NextPathType