ID2D1TransformGraph インターフェイス (d2d1effectauthor.h)
変換ノードのグラフを表します。
継承
ID2D1TransformGraph インターフェイスは、IUnknown インターフェイスから継承されます。 ID2D1TransformGraph には、次の種類のメンバーもあります。
メソッド
ID2D1TransformGraph インターフェイスには、これらのメソッドがあります。
ID2D1TransformGraph::AddNode 指定したノードを変換グラフに追加します。 |
ID2D1TransformGraph::Clear 変換グラフから変換ノードとすべての接続をクリアします。 |
ID2D1TransformGraph::ConnectNode 変換グラフ内の 2 つのノードを接続します。 |
ID2D1TransformGraph::ConnectToEffectInput グラフ内の変換ノードを、カプセル化効果の対応する効果入力に接続します。 |
ID2D1TransformGraph::GetInputCount 変換グラフへの入力の数を返します。 |
ID2D1TransformGraph::RemoveNode 指定されたノードを変換グラフから削除します。 |
ID2D1TransformGraph::SetOutputNode 変換グラフの出力ノードを設定します。 |
ID2D1TransformGraph::SetPassthroughGraph 指定した入力を効果出力として使用します。 |
ID2D1TransformGraph::SetSingleTransformNode 1 つの変換ノードをグラフ全体と等価として設定します。 |
注釈
このインターフェイスを使用すると、変換ノードのグラフを指定できます。 このインターフェイスは ID2D1EffectImpl::Initialize に渡され、効果の実装で変換のグラフまたは 1 つの変換を指定できます。
例
この例では、 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 7 のWindows 8とプラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2008 R2 のWindows Server 2012とプラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | d2d1effectauthor.h |