Condividi tramite


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

GraphicsPath

GraphicsPathIterator

Metodi GraphicsPathIterator::NextMarker

GraphicsPathIterator::NextPathType

Metodi GraphicsPathIterator::NextSubpath

Percorsi