Interfaccia ID2D1GeometryGroup (d2d1.h)
Rappresenta una geometria composita, composta da altri oggetti ID2D1Geometry .
Ereditarietà
L'interfaccia ID2D1GeometryGroup eredita da ID2D1Geometry. ID2D1GeometryGroup include anche questi tipi di membri:
Metodi
L'interfaccia ID2D1GeometryGroup include questi metodi.
ID2D1GeometryGroup::GetFillMode Indica come vengono combinate le aree intersecanti delle geometrie contenute in questo gruppo geometry. |
ID2D1GeometryGroup::GetSourceGeometries Recupera le geometrie nel gruppo geometry. |
ID2D1GeometryGroup::GetSourceGeometryCount Indica il numero di oggetti geometry nel gruppo geometry. |
Commenti
I gruppi geometry sono un modo pratico per raggruppare diverse geometrie simultaneamente, in modo che tutte le figure di diverse geometrie distinte siano concatenate in una.
Creazione di oggetti ID2D1GeometryGroup
Per creare un oggetto ID2D1GeometryGroup , chiamare il metodo ID2D1Factory::CreateGeometryGroup , passando il fillMode con valori possibili di D2D1_FILL_MODE_ALTERNATE (alternativo) e D2D1_FILL_MODE_WINDING, una matrice di oggetti geometry da aggiungere al gruppo geometry e il numero di elementi in questa matrice.Le geometrie Direct2D sono non modificabili e le risorse indipendenti dal dispositivo create da ID2D1Factory. In generale, è necessario creare geometrie una volta e conservarle per la vita dell'applicazione o fino a quando non devono essere modificate. Per altre informazioni sulle risorse dipendenti dal dispositivo e indipendenti dal dispositivo, vedere Panoramica delle risorse.
Esempio
Nell'esempio di codice seguente viene innanzitutto dichiarata una matrice di oggetti geometry. Questi oggetti sono quattro cerchi concentrici che hanno lo radii seguente: 25, 50, 75 e 100. Chiamare quindi CreateGeometryGroup nell'oggetto ID2D1Factory , passando D2D1_FILL_MODE_ALTERNATE, una matrice di oggetti geometry da aggiungere al gruppo geometry e il numero di elementi in questa matrice.
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
);
}
Nella figura seguente vengono illustrati i risultati del rendering delle due geometrie del gruppo dall'esempio.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 7, Windows Vista con SP2 e Aggiornamento della piattaforma per Windows Vista [app desktop | App UWP] |
Server minimo supportato | Windows Server 2008 R2, Windows Server 2008 con SP2 e Platform Update per Windows Server 2008 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | d2d1.h |