다음을 통해 공유


ID2D1SimplifiedGeometrySink::Close 메서드(d2d1.h)

geometry 싱크를 닫고 오류 상태인지 여부를 나타내고 싱크의 오류 상태를 다시 설정합니다.

구문

HRESULT Close();

반환 값

형식: HRESULT

메서드가 성공하면 S_OK를 반환하고, 그렇지 않으면 HRESULT 오류 코드를 반환합니다.

설명

그림이 아직 진행 중인 동안에는 기하 도형 싱크를 닫지 마세요. 이렇게 하면 geometry 싱크가 오류 상태에 놓입니다. 닫기 작업이 성공하려면 BeginFigure에 대한 각 호출에 대해 하나의 EndFigure 호출이 있어야 합니다.

이 메서드를 호출한 후 기하 도형 싱크를 사용할 수 없을 수 있습니다. 이 인터페이스의 Direct2D 구현에서는 기하 도형 싱크를 닫은 후 수정할 수 없지만 다른 구현에서는 이 제한을 적용하지 않을 수 있습니다.

예제

다음 예제에서는 ID2D1PathGeometry를 만들고, 싱크를 검색하고, 이를 사용하여 모래 시계 모양을 정의합니다.

ID2D1GeometrySink *pSink = NULL;


// Create a path geometry.
if (SUCCEEDED(hr))
{
    hr = m_pD2DFactory->CreatePathGeometry(&m_pPathGeometry);

    if (SUCCEEDED(hr))
    {
        // Write to the path geometry using the geometry sink.
        hr = m_pPathGeometry->Open(&pSink);

        if (SUCCEEDED(hr))
        {
            pSink->BeginFigure(
                D2D1::Point2F(0, 0),
                D2D1_FIGURE_BEGIN_FILLED
                );

            pSink->AddLine(D2D1::Point2F(200, 0));

            pSink->AddBezier(
                D2D1::BezierSegment(
                    D2D1::Point2F(150, 50),
                    D2D1::Point2F(150, 150),
                    D2D1::Point2F(200, 200))
                );

            pSink->AddLine(D2D1::Point2F(0, 200));

            pSink->AddBezier(
                D2D1::BezierSegment(
                    D2D1::Point2F(50, 150),
                    D2D1::Point2F(50, 50),
                    D2D1::Point2F(0, 0))
                );

            pSink->EndFigure(D2D1_FIGURE_END_CLOSED);

            hr = pSink->Close();
        }
        SafeRelease(&pSink);
    }
}

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 7, Windows Vista SP2 및 Windows Vista용 플랫폼 업데이트가 포함된 Windows Vista [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2008 R2, Windows Server 2008 SP2 및 Windows Server 2008용 플랫폼 업데이트 [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 d2d1.h
라이브러리 D2d1.lib
DLL D2d1.dll

추가 정보

ID2D1SimplifiedGeometrySink