IDirect3DDevice9::GetClipPlane
デバイスのユーザー定義クリップ面の係数を取得します。
HRESULT
GetClipPlane(
DWORD Index,
float * pPlane
);
パラメータ
- Index
平面方程式の係数を取得するクリップ面のインデックス - pPlane
一般平面方程式においてクリップ面の係数を表す値の、4 要素で構成される配列へのポインター。「解説」を参照してください。
戻り値
メソッドが成功した場合は、D3D_OK を返します。失敗すると、D3DERR_INVALIDCALL を返します。このエラーは、Index の値がデバイスでサポートされる最大クリップ面インデックスを超えていること、または pPlane の配列が 4 つの浮動小数点値を格納するには十分な大きさではないことを示しています。
解説
このメソッドは、D3DCREATE_PUREDEVICE 定数を使って作成されたデバイスのデバイス ステートを返しません。このメソッドを使用するには、D3DCREATE にその他の値を指定してデバイスを作成する必要があります。
このメソッドで取得できる係数は、一般平面方程式の形をとります。pPlane で配列内の値が、配列内に表示される順に A、B、C、および D とラベル付けされている場合、これらの値は一般平面方程式が Ax + By + Cz + Dw = 0 になるように適用されます。Ax + By + Cz + Dw > = 0 である場合、同次座標 (x, y, z, w) のポイントは平面で切り取られた半分の空間に表示されます。クリップ面上またはクリップ面の背後に存在するポイントはシーンからクリッピングされます。
このメソッドで使われる平面方程式はワールド空間にあり、その前に呼び出された IDirect3DDevice9::SetClipPlane メソッドによって設定されます。
要件
ヘッダー: D3D9.h 宣言
ライブラリ: D3D9.lib 内容