後続のすべての描画操作をクリップする四角形を指定します。
構文
void PushAxisAlignedClip(
const D2D1_RECT_F & clipRect,
D2D1_ANTIALIAS_MODE antialiasMode
);
パラメーター
clipRect
型: [in] const D2D1_RECT_F &
クリッピング領域のサイズと位置 (デバイスに依存しないピクセル単位)。
antialiasMode
型: [入力] D2D1_ANTIALIAS_MODE
サブピクセル境界を持つクリップ レクツのエッジを描画し、クリップをシーンコンテンツとブレンドするために使用されるアンチエイリアシング モード。 ブレンドは、PopAxisAlignedClip メソッドが呼び出されたときに 1 回実行され、レイヤー内の各プリミティブには適用されません。
戻り値
何一つ
備考
clipRect は、レンダー ターゲットに設定されている現在のワールド変換によって変換されます。 渡された clipRect に変換が適用されると、clipRect の軸揃え境界ボックスが計算されます。 効率を高めるために、コンテンツは、渡された元の clipRect ではなく、この軸にアラインされた境界ボックスにクリップされます。
次の図は、レンダー ターゲットに回転変換を適用する方法、結果として得られる clipRect、および計算された軸アライン境界ボックスを示しています。
-
次の図の四角形は、画面のピクセルに配置されたレンダー ターゲットであるとします。
の図
-
レンダー ターゲットに回転変換を適用します。 次の図では、黒い四角形は元のレンダー ターゲットを表し、赤い破線の四角形は変換されたレンダー ターゲットを表しています。
の図
-
PushAxisAlignedClip 呼び出すと、回転変換が clipRectに適用されます。 次の図では、青い四角形は、変換された clipRectを表しています。
-
軸揃え境界ボックスが計算されます。 緑色の破線の四角形は、次の図の境界ボックスを表します。 すべてのコンテンツは、この軸揃え境界ボックスにクリップされます。
内の小さな青い四角形の周囲の緑の境界ボックスの図
PushAxisAlignedClip と PopAxisAlignedClip ペアは、PushLayer と PopLayer の前後で発生する可能性がありますが、重複することはできません。 たとえば、PushAxisAlignedClip、PushLayer、PopLayer、PopAxisAlignedClip のシーケンスは有効です。 ただし、PushAxisAlignedClip、PushLayer、PopAxisAlignedClip、PopLayer のシーケンスは無効です。
失敗した場合、このメソッドはエラー コードを返しません。 描画操作 (PushAxisAlignedClipなど) が失敗したかどうかを確認するには、ID2D1RenderTarget::EndDraw または ID2D1RenderTarget::Flush メソッドによって返された結果 確認します。
必要条件
要件 | 価値 |
---|---|
サポートされる最小クライアント | Windows 7、Windows Vista SP2 および Windows Vista 用プラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ] |
サポートされる最小サーバー | Windows Server 2008 R2、Windows Server 2008 SP2 および Windows Server 2008 用プラットフォーム更新プログラム [デスクトップ アプリ |UWP アプリ] |
ターゲット プラットフォーム の | ウィンドウズ |
ヘッダー | d2d1.h |
ライブラリ | D2d1.lib |
DLL | D2d1.dll |