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.

Illustrazione di due set di quattro cerchi concentrici, uno con il secondo e quarto anelli riempiti e uno con tutti gli anelli riempiti

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

Vedi anche

ID2D1Geometry