DXPLANE
D3DXPLANE
Для представления плоскости в коде достаточно указать вектор нормали n и константу d. Можно думать об этом как о четырехмерном векторе, который мы будем обозначать (n,d). В библиотеке D3DX для плоскостей используется следующая структура:
typedef struct D3DXPLANE { #ifdef __cplusplus public: D3DXPLANE() {} D3DXPLANE(CONST FLOAT*); D3DXPLANE(CONST D3DXFLOAT16*); D3DXPLANE(FLOAT a, FLOAT b, FLOAT c, FLOAT d);
// приведение типа operator FLOAT* (); operator CONST FLOAT* () const;
// унарные операторы D3DXPLANE operator + () const; D3DXPLANE operator - () const;
// бинарные операторы BOOL operator == (CONST D3DXPLANE&) const; BOOL operator != (CONST D3DXPLANE&) const; #endif //__cplusplus FLOAT a, b, c, d; } D3DXPLANE, *LPD3DXPLANE;
где a, b, и c — это компоненты вектора нормали плоскости n, а d — это константа d из формулы (8).