IDirect3DDevice9::SetClipPlane 方法 (d3d9.h)

为设备设置用户定义的剪裁平面的系数。

语法

HRESULT SetClipPlane(
  [in] DWORD       Index,
  [in] const float *pPlane
);

参数

[in] Index

类型: DWORD

要为其设置平面公式系数的剪裁平面的索引。

[in] pPlane

类型: const float*

指向一个由四个元素构成的值数组的地址的指针,这些值表示要设置的剪裁平面系数(采用常规平面公式的形式)。 请参阅“备注”。

返回值

类型: HRESULT

如果方法成功,则返回值D3D_OK。 如果 方法失败,则返回值D3DERR_INVALIDCALL。 此错误指示 Index 中的值超过了设备支持的最大剪切平面索引,或者 pPlane 处的数组不够大,无法包含四个浮点值。

注解

此方法设置的系数采用一般平面公式的形式。 如果 pPlane 数组中的值按数组中的出现顺序标记为 A、B、C 和 D,则它们将适合一般平面公式,以便 Ax + By + Cz + Dw = 0。 如果 Ax + By + Cz + Dw >= 0,则具有同质坐标 (x、y、z、w) 的点在平面的半空间中可见。 剪切平面后面的点将从场景中剪裁。

使用固定函数管道时,假定平面公式位于世界空间中。 使用可编程管道时,假设平面公式位于剪裁空间中, (与输出顶点) 相同的空间。

此方法不启用正在设置的剪切平面公式。 若要启用剪裁平面,请在应用于呈现状态的 DWORD 值中设置相应的位D3DRS_CLIPPLANEENABLE。

要求

要求
目标平台 Windows
标头 d3d9.h (包括 D3D9.h)
Library D3D9.lib

另请参阅

IDirect3DDevice9

IDirect3DDevice9::GetClipPlane