Поделиться через


Интерфейс ID2D1TransformGraph (d2d1effectauthor.h)

Представляет граф узлов преобразования.

Наследование

Интерфейс ID2D1TransformGraph наследуется от интерфейса IUnknown . ID2D1TransformGraph также имеет следующие типы элементов:

Методы

Интерфейс ID2D1TransformGraph содержит следующие методы.

 
ID2D1TransformGraph::AddNode

Добавляет предоставленный узел в граф преобразования.
ID2D1TransformGraph::Clear

Очищает узлы преобразования и все подключения из графа преобразования.
ID2D1TransformGraph::ConnectNode

Соединяет два узла внутри графа преобразования.
ID2D1TransformGraph::ConnectToEffectInput

Соединяет узел преобразования внутри графа с соответствующими входными данными эффекта инкапсулирования.
ID2D1TransformGraph::GetInputCount

Возвращает количество входных данных для графа преобразования.
ID2D1TransformGraph::RemoveNode

Удаляет указанный узел из графа преобразования.
ID2D1TransformGraph::SetOutputNode

Задает выходной узел для графа преобразования.
ID2D1TransformGraph::SetPassthroughGraph

Использует указанные входные данные в качестве выходных данных эффекта.
ID2D1TransformGraph::SetSingleTransformNode

Задает один узел преобразования как эквивалентный всему графу.

Комментарии

Этот интерфейс позволяет указать граф узлов преобразования. Этот интерфейс передается в ID2D1EffectImpl::Initialize , чтобы реализовать эффект для указания графа преобразований или одного преобразования.

Примеры

В этом примере показано, сколько методов в ID2D1TransformGraph можно использовать.


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

Требования

Требование Значение
Минимальная версия клиента Windows 8 и обновление платформы для Windows 7 [классические приложения | Приложения UWP]
Минимальная версия сервера Windows Server 2012 и обновление платформы для Windows Server 2008 R2 [классические приложения | Приложения UWP]
Целевая платформа Windows
Header d2d1effectauthor.h

См. также раздел

ID2D1EffectImpl