Partager via


Interface ID2D1TransformGraph (d2d1effectauthor.h)

Représente un graphique de nœuds de transformation.

Héritage

L’interface ID2D1TransformGraph hérite de l’interface IUnknown. ID2D1TransformGraph a également les types de membres suivants :

Méthodes

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

 
ID2D1TransformGraph ::AddNode

Ajoute le nœud fourni au graphe de transformation.
ID2D1TransformGraph ::Clear

Efface les nœuds de transformation et toutes les connexions du graphe de transformation.
ID2D1TransformGraph ::ConnectNode

Connecte deux nœuds à l’intérieur du graphe de transformation.
ID2D1TransformGraph ::ConnectToEffectInput

Connecte un nœud de transformation à l’intérieur du graphe à l’entrée d’effet correspondante de l’effet d’encapsulation.
ID2D1TransformGraph ::GetInputCount

Retourne le nombre d’entrées dans le graphique de transformation.
ID2D1TransformGraph ::RemoveNode

Supprime le nœud fourni du graphe de transformation.
ID2D1TransformGraph ::SetOutputNode

Définit le nœud de sortie pour le graphe de transformation.
ID2D1TransformGraph ::SetPassthroughGraph

Utilise l’entrée spécifiée comme sortie d’effet.
ID2D1TransformGraph ::SetSingleTransformNode

Définit un nœud de transformation unique comme équivalent à l’ensemble du graphe.

Remarques

Cette interface permet de spécifier un graphique de nœuds de transformation. Cette interface est passée à ID2D1EffectImpl ::Initialize pour permettre à une implémentation d’effet de spécifier un graphique de transformations ou une transformation unique.

Exemples

Cet exemple montre combien de méthodes sur id2D1TransformGraph peuvent être utilisées.


class CMyEffect : public ID2D1EffectImpl
{
public:

    IFACEMETHODIMP SetGraph(
       __in ID2D1TransformGraph *pGraph
       )
    {
        HRESULT hr = S_OK;

        hr = pGraph->Clear();

        if (SUCEEDED(hr))
        {
            hr = pGraph->AddNode(_pTransform1);
        }
   
        if (SUCCEEDED(hr))
        {
            hr = pGraph->AddNode(_pTransform2);
        }
 
        if (SUCCEEDED(hr))
        {
            hr = pGraph->SetOutputNode(_pTransform2);
        }

        if (SUCCEEDED(hr))
        {
            hr = pGraph->ConnectNode(_pTransform1, _pTransform2, 0);
        }

        if (SUCCEEDED(hr))
        {
            hr = pGraph->ConnectToEffectInput(0, _pTransform1, 0);
        }

        return hr;
    }

private:

    class CMyTransform1 : public ID2D1DrawTransform
    {
        // <Snip> The transform implementation, one node input</Snip>
    };

    class CMyTransform2 : public ID2D1DrawTransform
    {
 	   // <Snip> A second transform implementation one node input</Snip>
    };

    CMyTransform1 *_pTransform1;
    CMyTransform2 *_pTransform2;
};

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 8 et mise à jour de plateforme pour Windows 7 [applications de bureau | Applications UWP]
Serveur minimal pris en charge Windows Server 2012 et mise à jour de plateforme pour Windows Server 2008 R2 [applications de bureau | Applications UWP]
Plateforme cible Windows
En-tête d2d1effectauthor.h

Voir aussi

ID2D1EffectImpl