Interface ID2D1GeometryGroup (d2d1.h)
Representa uma geometria composta, composta por outros objetos ID2D1Geometry .
Herança
A interface ID2D1GeometryGroup herda de ID2D1Geometry. ID2D1GeometryGroup também tem estes tipos de membros:
Métodos
A interface ID2D1GeometryGroup tem esses métodos.
ID2D1GeometryGroup::GetFillMode Indica como as áreas de interseção das geometrias contidas nesse grupo de geometria são combinadas. |
ID2D1GeometryGroup::GetSourceGeometries Recupera as geometrias no grupo de geometria. |
ID2D1GeometryGroup::GetSourceGeometryCount Indica o número de objetos de geometria no grupo de geometria. |
Comentários
Os grupos de geometria são uma maneira conveniente de agrupar várias geometrias simultaneamente para que todas as figuras de várias geometrias distintas sejam concatenadas em uma.
Criando objetos ID2D1GeometryGroup
Para criar um objeto ID2D1GeometryGroup , chame o método ID2D1Factory::CreateGeometryGroup , passando o fillMode com valores possíveis de D2D1_FILL_MODE_ALTERNATE (alternativo) e D2D1_FILL_MODE_WINDING, uma matriz de objetos geometry a serem adicionados ao grupo de geometria e o número de elementos nessa matriz.Direct2D geometrias são recursos imutáveis e independentes do dispositivo criados por ID2D1Factory. Em geral, você deve criar geometrias uma vez e retê-las durante a vida útil do aplicativo ou até que elas precisem ser modificadas. Para obter mais informações sobre recursos independentes do dispositivo e dependentes do dispositivo, consulte Visão geral de recursos.
Exemplos
O exemplo de código a seguir primeiro declara uma matriz de objetos geometry. Esses objetos são quatro círculos concêntricos que têm os seguintes raios: 25, 50, 75 e 100. Em seguida, chame CreateGeometryGroup no objeto ID2D1Factory , passando D2D1_FILL_MODE_ALTERNATE, uma matriz de objetos de geometria a serem adicionados ao grupo de geometria e o número de elementos nessa matriz.
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
);
}
A ilustração a seguir mostra os resultados da renderização das duas geometrias de grupo do exemplo.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 7, Windows Vista com SP2 e Atualização de Plataforma para Windows Vista [aplicativos da área de trabalho | Aplicativos UWP] |
Servidor mínimo com suporte | Windows Server 2008 R2, Windows Server 2008 com SP2 e Atualização de Plataforma para Windows Server 2008 [aplicativos da área de trabalho | Aplicativos UWP] |
Plataforma de Destino | Windows |
Cabeçalho | d2d1.h |