Метод IDirect3DDevice9::GetClipPlane (d3d9helper.h)
Извлекает коэффициенты определяемой пользователем плоскости обрезки для устройства.
Синтаксис
HRESULT GetClipPlane(
[in] DWORD Index,
[out] float *pPlane
);
Параметры
[in] Index
Тип: DWORD
Индекс обрезной плоскости, для которой извлекаются коэффициенты уравнений плоскости.
[out] pPlane
Тип: float*
Указатель на массив значений из четырех элементов, представляющий коэффициенты плоскости обрезки в виде уравнения общей плоскости. См. заметки.
Возвращаемое значение
Тип: HRESULT
Если метод выполнен успешно, возвращаемое значение будет D3D_OK. Если метод завершается сбоем, возвращаемое значение будет D3DERR_INVALIDCALL. Эта ошибка указывает на то, что значение в индексе превышает максимальный индекс плоскости обрезки, поддерживаемый устройством, или что массив в pPlane недостаточно велик, чтобы содержать четыре значения с плавающей запятой.
Комментарии
Этот метод не возвращает состояние устройства, созданного с помощью D3DCREATE_PUREDEVICE. Если вы хотите использовать этот метод, необходимо создать устройство с любыми другими значениями в D3DCREATE.
Коэффициенты, которые сообщает этот метод, принимают форму уравнения общей плоскости. Если значения в массиве в pPlane были помечены как A, B, C и D в том порядке, в который они отображаются в массиве, они будут помещаться в уравнение общей плоскости, чтобы Ax + By + Cz + Dw = 0. Точка с однородными координатами (x, y, z, w) видна в полупространстве плоскости, если Ax + By + Cz + Dw >= 0. Точки, существующие на плоскости обрезки или за ней, обрезаются из сцены.
Уравнение плоскости, используемое этим методом, существует в мировом пространстве и задается предыдущим вызовом метода IDirect3DDevice9::SetClipPlane .
Требования
Целевая платформа | Windows |
Header | d3d9helper.h (включая D3D9.h) |
Библиотека | D3D9.lib |