Partager via


Interface ID2D1GeometrySink (d2d1.h)

Décrit un chemin géométrique qui peut contenir des lignes, des arcs, des courbes de Bézier cubiques et des courbes de Bézier quadratique.

Héritage

L’interface ID2D1GeometrySink hérite d’ID2D1SimplifiedGeometrySink. ID2D1GeometrySink a également les types de membres suivants :

Méthodes

L’interface ID2D1GeometrySink possède ces méthodes.

 
ID2D1GeometrySink::AddArc

Ajoute un arc unique à la géométrie de chemin d’accès.
ID2D1GeometrySink::AddArc

Crée un arc unique et l’ajoute à la géométrie de chemin.
ID2D1GeometrySink::AddBezier

Crée une courbe de Bézier cubique lissée entre le point actuel et le point de fin spécifié.
ID2D1GeometrySink::AddBezier

Crée une courbe de Bézier cubique entre le point actuel et le point de terminaison spécifié.
ID2D1GeometrySink::AddLine

Crée un segment de ligne entre le point actuel et le point de terminaison spécifié et l’ajoute au récepteur geometry.
ID2D1GeometrySink::AddQuadraticBezier

Crée une courbe de Bézier quadratique lissée entre le point actuel et le point de fin spécifié.
ID2D1GeometrySink::AddQuadraticBezier

Crée une courbe de Bézier quadratique entre le point actuel et le point de terminaison spécifié et l’ajoute au récepteur de géométrie.
ID2D1GeometrySink::AddQuadraticBeziers

Ajoute une séquence de segments de Béziers quadratiques sous forme de tableau dans un seul appel.

Notes

L’interface ID2D1GeometrySink étend l’interface ID2D1SimplifiedGeometrySink pour ajouter la prise en charge des arcs et des béziers quadratiques, ainsi que des fonctions pour l’ajout de lignes simples et de beziers cubiques.

Un récepteur geometry se compose d’une ou plusieurs figures. Chaque figure est composée d’une ou plusieurs lignes, courbes ou segments d’arc. Pour créer une figure, appelez la méthode BeginFigure , spécifiez le point de début de la figure, puis utilisez ses méthodes Add (telles que AddLine et AddBezier) pour ajouter des segments. Lorsque vous avez terminé d’ajouter des segments, appelez la méthode EndFigure . Vous pouvez répéter cette séquence pour créer des figures supplémentaires. Lorsque vous avez terminé de créer des figures, appelez la méthode Close .

Exemples

L’exemple suivant crée un ID2D1PathGeometry, récupère un récepteur et l’utilise pour définir une forme de sablier. Pour obtenir l’exemple complet, consultez Comment dessiner et remplir une forme complexe.

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);
    }
}

Configuration requise

   
Client minimal pris en charge Windows 7, Windows Vista avec SP2 et Mise à jour de plateforme pour Windows Vista [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2008 R2, Windows Server 2008 avec SP2 et Mise à jour de plateforme pour Windows Server 2008 [applications de bureau | Applications UWP]
Plateforme cible Windows
En-tête d2d1.h

Voir aussi

Vue d’ensemble des géométries

Comment dessiner et remplir une forme complexe

ID2D1SimplifiedGeometrySink