Share via


Função D3DXBoxBoundProbe

Determina se um raio cruza o volume da caixa delimitadora de uma caixa.

Sintaxe

BOOL D3DXBoxBoundProbe(
  _In_ const D3DXVECTOR3 *pMin,
  _In_ const D3DXVECTOR3 *pMax,
  _In_ const D3DXVECTOR3 *pRayPosition,
  _In_ const D3DXVECTOR3 *pRayDirection
);

Parâmetros

pMin [in]

Tipo: const D3DXVECTOR3*

Ponteiro para uma estrutura D3DXVECTOR3 , descrevendo o canto inferior esquerdo da caixa delimitadora. Consulte Observações.

pMax [in]

Tipo: const D3DXVECTOR3*

Ponteiro para uma estrutura D3DXVECTOR3 , descrevendo o canto superior direito da caixa delimitadora. Consulte Observações.

pRayPosition [in]

Tipo: const D3DXVECTOR3*

Ponteiro para uma estrutura D3DXVECTOR3 , especificando a coordenada de origem do raio.

pRayDirection [in]

Tipo: const D3DXVECTOR3*

Ponteiro para uma estrutura D3DXVECTOR3 , especificando a direção do raio. Esse vetor não deve ser (0,0,0), mas não precisa ser normalizado.

Valor retornado

Tipo: BOOL

Retorna TRUE se o raio cruza o volume da caixa delimitadora da caixa. Caso contrário, retornará FALSE.

Comentários

D3DXboxBoundProbe determina se o raio cruza o volume da caixa delimitadora da caixa, não apenas a superfície da caixa.

Os valores passados para D3DXboxBoundProbe são xmin, xmax, ymin, ymax, zmin e zmax. Portanto, o seguinte define os cantos da caixa delimitadora.

xmax, ymax, zmax
xmax, ymax, zmin
xmax, ymin, zmax
xmax, ymin, zmin
xmin, ymax, zmax
xmin, ymax, zmin
xmin, ymin, zmax
xmin, ymin, zmin

A profundidade da caixa delimitadora na direção z é zmax - zmin, na direção y é ymax - ymin, e na direção x é xmax - xmin. Por exemplo, com os seguintes vetores mínimo e máximo, min (-1, -1, -1) e max (1, 1, 1), a caixa delimitadora é definida da maneira a seguir.

 1,  1,  1
 1,  1, -1
 1, -1,  1
 1, -1, -1
-1,  1,  1
-1,  1, -1
-1, -1,  1
-1, -1, -l

Requisitos

Requisito Valor
parâmetro
D3DX9Mesh.h
Biblioteca
D3dx9.lib

Confira também

Funções de malha

D3DXComputeBoundingBox