다음을 통해 공유


GraphicsPathIterator::Rewind 메서드(gdipluspath.h)

GraphicsPathIterator::Rewind 메서드는 이 반복기를 연결된 경로의 시작 부분으로 되감습니다.

구문

void Rewind();

반환 값

없음

설명

반복기의 NextSubpath 메서드를 처음 호출하면 해당 반복기의 연결된 경로의 첫 번째 그림(하위 경로)을 가져옵니다. 두 번째로 두 번째 그림 등을 가져옵니다. GraphicsPathIterator::Rewind를 호출하면 시퀀스가 다시 시작됩니다. 즉, GraphicsPathIterator::Rewind를 호출한 후 GraphicsPathIterator::NextSubpath에 대한 다음 호출은 경로의 첫 번째 그림을 가져옵니다. GraphicsPathIterator::NextMarkerGraphicsPathIterator::NextPathType 메서드도 비슷하게 동작합니다.

예제

다음 예제에서는 GraphicsPath 개체를 만들고 경로에 5개의 그림을 추가합니다. 코드는 해당 GraphicsPath 개체의 주소를 GraphicsPathIterator 생성자에 전달하여 경로와 연결된 반복기를 만듭니다. 이 코드는 반복기의 GraphicsPathIterator::NextSubpath 메서드를 두 번 호출하여 경로의 두 번째 그림을 검색합니다. DrawPath 메서드는 해당 경로를 파란색으로 그립니다. 다음으로, 코드는 GraphicsPathIterator::Rewind 메서드를 호출한 다음 GraphicsPathIterator::NextSubpath 를 한 번 호출하여 경로의 첫 번째 그림을 가져옵니다. DrawPath 메서드는 해당 그림을 빨간색으로 그립니다.


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);
}

요구 사항

   
지원되는 최소 클라이언트 Windows XP, Windows 2000 Professional [데스크톱 앱만 해당]
지원되는 최소 서버 Windows 2000 Server[데스크톱 앱만]
대상 플랫폼 Windows
헤더 gdipluspath.h(Gdiplus.h 포함)
라이브러리 Gdiplus.lib
DLL Gdiplus.dll

참고 항목

경로 구성 및 그리기

Graphicspath

GraphicsPathIterator

GraphicsPathIterator::NextMarker 메서드

GraphicsPathIterator::NextPathType

GraphicsPathIterator::NextSubpath 메서드

경로