Estrutura BoundingBox (directxcollision.h)
Um objeto alinhado ao eixo delimitado.
Sintaxe
struct BoundingBox {
size_t CORNER_COUNT;
XMFLOAT3 Center;
XMFLOAT3 Extents;
void BoundingBox() noexcept;
void BoundingBox(
const BoundingBox & unnamedParam1
);
BoundingBox & operator=(
const BoundingBox & unnamedParam1
);
void BoundingBox(
BoundingBox && unnamedParam1
);
BoundingBox & operator=(
BoundingBox && unnamedParam1
);
void BoundingBox(
const XMFLOAT3 & center,
const XMFLOAT3 & extents
) noexcept;
void XM_CALLCONV Transform(
BoundingBox & Out,
FXMMATRIX M
) noexcept;
void XM_CALLCONV Transform(
BoundingBox & Out,
float Scale,
FXMVECTOR Rotation,
FXMVECTOR Translation
) noexcept;
void GetCorners(
XMFLOAT3 *Corners
) noexcept;
ContainmentType XM_CALLCONV Contains(
FXMVECTOR Point
) noexcept;
ContainmentType XM_CALLCONV Contains(
FXMVECTOR V0,
FXMVECTOR V1,
FXMVECTOR V2
) noexcept;
ContainmentType Contains(
const BoundingSphere & sh
) noexcept;
ContainmentType Contains(
const BoundingBox & box
) noexcept;
ContainmentType Contains(
const BoundingOrientedBox & box
) noexcept;
ContainmentType Contains(
const BoundingFrustum & fr
) noexcept;
bool Intersects(
const BoundingSphere & sh
) noexcept;
bool Intersects(
const BoundingBox & box
) noexcept;
bool Intersects(
const BoundingOrientedBox & box
) noexcept;
bool Intersects(
const BoundingFrustum & fr
) noexcept;
bool XM_CALLCONV Intersects(
FXMVECTOR V0,
FXMVECTOR V1,
FXMVECTOR V2
) noexcept;
PlaneIntersectionType XM_CALLCONV Intersects(
FXMVECTOR Plane
) noexcept;
bool XM_CALLCONV Intersects(
FXMVECTOR Origin,
FXMVECTOR Direction,
float & Dist
) noexcept;
ContainmentType XM_CALLCONV ContainedBy(
FXMVECTOR Plane0,
FXMVECTOR Plane1,
FXMVECTOR Plane2,
GXMVECTOR Plane3,
HXMVECTOR Plane4,
HXMVECTOR Plane5
) noexcept;
void CreateMerged(
BoundingBox & Out,
const BoundingBox & b1,
const BoundingBox & b2
) noexcept;
void CreateFromSphere(
BoundingBox & Out,
const BoundingSphere & sh
) noexcept;
void XM_CALLCONV CreateFromPoints(
BoundingBox & Out,
FXMVECTOR pt1,
FXMVECTOR pt2
) noexcept;
void CreateFromPoints(
BoundingBox & Out,
size_t Count,
const XMFLOAT3 *pPoints,
size_t Stride
) noexcept;
};
Membros
CORNER_COUNT
O número de pontos que definem o BoundingBox.
Center
O centro da BoundingBox.
Extents
As extensões do BoundingBox.
Cria uma instância de BoundingBox
classe.
void BoundingBox( const BoundingBox & unnamedParam1)
Cria uma instância de BoundingBox
classe.
BoundingBox & operator=( const BoundingBox & unnamedParam1)
Copia valores de outro BoundingBox.
void BoundingBox( BoundingBox && unnamedParam1)
Cria uma instância de BoundingBox
classe.
BoundingBox & operator=( BoundingBox && unnamedParam1)
void BoundingBox( const XMFLOAT3 & center, const XMFLOAT3 & extents) noexcept
Cria uma instância de BoundingBox
classe.
Void XM_CALLCONV Transform( BoundingBox & Out, FXMMATRIX M) noexcept
Transforma o BoundingBox.
Transforma o BoundingBox.
void GetCorners( XMFLOAT3 *Corners) noexcept
Recupera os cantos do BoundingBox.
ContainmentType XM_CALLCONV Contains( FXMVECTOR Point) noexcept
Testa se o BoundingBox contém um ponto especificado.
ContainmentType XM_CALLCONV Contains( FXMVECTOR V0, FXMVECTOR V1, FXMVECTOR V2) noexcept
Teste se o BoundingBox contém um triângulo especificado.
ContainmentType Contains( const BoundingSphere & sh) noexcept
Testa se o BoundingBox contém um BoundingSphere especificado.
ContainmentType Contains( const BoundingBox & box) noexcept
Testa se o BoundingBox contém outro BoundingBox.
ContainmentType Contains( const BoundingOrientedBox & box) noexcept
Testa se o BoundingBox contém o BoundingOrientedBox especificado.
ContainmentType Contains( const BoundingFrustum & fr) noexcept
Testa se o BoundingBox contém o BoundingFrustum especificado.
bool Intersects( const BoundingSphere & sh) noexcept
Testa o BoundingBox para interseção com um BoundingSphere.
bool Intersects( const BoundingBox & box) noexcept
Testa o BoundingBox para interseção com outro BoundingBox.
bool Intersects( const BoundingOrientedBox & box) noexcept
Teste o BoundingBox para interseção com um BoundingOrientedBox.
bool Intersects( const BoundingFrustum & fr) noexcept
Teste o BoundingBox para interseção com um BoundingFrustum.
bool XM_CALLCONV Intersects( FXMVECTOR V0, FXMVECTOR V1, FXMVECTOR V2) noexcept
Teste o BoundingBox para interseção com um triângulo.
PlaneIntersectionType XM_CALLCONV Intersects( FXMVECTOR Plane) noexcept
Teste o BoundingBox para interseção com um plano.
bool XM_CALLCONV Intersects( FXMVECTOR Origin, FXMVECTOR Direction, float & Dist) noexcept
Teste o BoundingBox para interseção com um raio.
Testa se o BoundingBox está contido no frustum especificado.
void CreateMerged( BoundingBox & Out, const BoundingBox & b1, const BoundingBox & b2) noexcept
Cria uma BoundingBox grande o suficiente para conter duas instâncias BoundBox especificadas.
void CreateFromSphere( BoundingBox & Out, const BoundingSphere & sh) noexcept
Cria uma BoundingBox grande o suficiente para conter um BoundingSphere especificado.
void XM_CALLCONV CreateFromPoints( BoundingBox & Out, FXMVECTOR pt1, FXMVECTOR pt2) noexcept
Cria um BoundingBox de dois pontos.
Cria um BoundingBox a partir de uma lista de pontos.
Comentários
Requisitos da plataforma
Microsoft Visual Studio 2010 ou Microsoft Visual Studio 2012 com o SDK do Windows para Windows 8. Com suporte para aplicativos da área de trabalho Win32, aplicativos da Windows Store e aplicativos Windows Phone 8.Use DirectX.
Requisitos
Cabeçalho | directxcollision.h |