ID2D1Factory::CreateGeometryGroup 메서드(d2d1.h)
다른 기하 도형을 보유하는 개체인 ID2D1GeometryGroup을 만듭니다.
구문
HRESULT CreateGeometryGroup(
D2D1_FILL_MODE fillMode,
[in] ID2D1Geometry **geometries,
UINT32 geometriesCount,
[out] ID2D1GeometryGroup **geometryGroup
);
매개 변수
fillMode
형식: D2D1_FILL_MODE
복합 셰이프가 지정된 점이 기하 도형의 일부인지 여부를 결정하는 데 사용하는 규칙을 지정하는 값입니다.
[in] geometries
형식: ID2D1Geometry**
기하 도형 그룹에 추가할 geometry 개체를 포함하는 배열입니다. 이 배열의 요소 수는 geometriesCount 매개 변수로 표시됩니다.
geometriesCount
형식: UINT
기하 도형의 요소 수입니다.
[out] geometryGroup
형식: ID2D1GeometryGroup**
이 메서드가 반환되면 이 메서드에서 만든 기하 도형 그룹에 대한 포인터의 주소가 포함됩니다.
반환 값
형식: HRESULT
메서드가 성공하면 S_OK를 반환하고, 그렇지 않으면 HRESULT 오류 코드를 반환합니다.
설명
기하 도형 그룹은 여러 기하 도형을 동시에 그룹화하여 여러 고유 기하 도형의 모든 피규어를 하나로 연결할 수 있는 편리한 방법입니다. ID2D1GeometryGroup 개체를 만들려면 ID2D1Factory 개체에서 CreateGeometryGroup 메서드를 호출하여 D2D1_FILL_MODE_ALTERNATE(대체) 및 D2D1_FILL_MODE_WINDING 가능한 값이 있는 fillMode를 전달하고, 기하 도형 그룹에 추가할 기하 도형 개체의 배열과 이 배열의 요소 수를 전달합니다.
예제
다음 코드 예제에서는 먼저 기하 도형 개체의 배열을 선언합니다. 이러한 개체는 25, 50, 75 및 100의 반지름이 있는 4개의 동심원입니다. 그런 다음 ID2D1Factory 개체에서 CreateGeometryGroup을 호출하여 D2D1_FILL_MODE_ALTERNATE, 기하 도형 그룹에 추가할 기하 도형 개체의 배열 및 이 배열의 요소 수를 전달합니다.
ID2D1Geometry *ppGeometries[] =
{
m_pEllipseGeometry1,
m_pEllipseGeometry2,
m_pEllipseGeometry3,
m_pEllipseGeometry4
};
hr = m_pD2DFactory->CreateGeometryGroup(
D2D1_FILL_MODE_ALTERNATE,
ppGeometries,
ARRAYSIZE(ppGeometries),
&m_pGeoGroup_AlternateFill
);
if (SUCCEEDED(hr))
{
hr = m_pD2DFactory->CreateGeometryGroup(
D2D1_FILL_MODE_WINDING,
ppGeometries,
ARRAYSIZE(ppGeometries),
&m_pGeoGroup_WindingFill
);
}
다음 그림에서는 예제에서 두 그룹 기하 도형을 렌더링한 결과를 보여 줍니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 7, Windows Vista SP2 및 Windows Vista용 플랫폼 업데이트 [데스크톱 앱 | UWP 앱] |
지원되는 최소 서버 | Windows Server 2008 R2, Windows Server 2008 SP2 및 Windows Server 2008용 플랫폼 업데이트 [데스크톱 앱 | UWP 앱] |
대상 플랫폼 | Windows |
헤더 | d2d1.h |
라이브러리 | D2d1.lib |
DLL | D2d1.dll |