Microsoft DirectX 8.0 (C++) |
境界ボックスを算出する。
HRESULT D3DXComputeBoundingBox( PVOID pPointsFVF, DWORD NumVertices, DWORD FVF, D3DXVECTOR3* pMin, D3DXVECTOR3* pMax );
成功した場合は D3D_OK を返す。
失敗した場合は、1 つの D3DERR_INVALIDCALL を返す。
D3DXComputeBoundingBox が返す D3DXVECTOR3 の値は、xmin、xmax、ymin、ymax、zmin、zmax である。したがって、境界ボックスの角の定義は次のようになる。
xmax, ymax, zmax xmax, ymax, zmin xmax, ymin, zmax xmax, ymin, zmin xmin, ymax, zmax xmin, ymax, zmin xmin, ymin, zmax xmin, ymin, zmin
境界ボックスの深度は、z 方向が zmax - zmin、y 方向が ymax - ymin、そして x 方向が xmax - xmin である。たとえば、最小ベクトルが min (-1, -1, -1)、最大ベクトルが (1, 1, 1) の場合、境界ボックスの定義は次のようになる。
1, 1, 1 1, 1, -1 1, -1, 1 1, -1, -1 -1, 1, 1 -1, 1, -1 -1, -1, 1 -1, -1, -1
ヘッダー : D3dx8mesh.h で宣言。
インポート ライブラリ : D3dx8.lib を使用。