Метод IDirect3DDevice9::GetClipPlane (d3d9.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. Точки, существующие на плоскости обрезки или за ней, обрезаются из сцены.
Уравнение плоскости, используемое этим методом, существует в мировом пространстве и задается предыдущим вызовом метода IDirect3Device9::SetClipPlane .
Требования
Требование | Значение |
---|---|
Целевая платформа | Windows |
Header | d3d9.h (включая D3D9.h) |
Библиотека | D3D9.lib |