Estructura BoundingBox (directxcollision.h)
Objeto alineado con el eje delimitador.
Sintaxis
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;
};
Miembros
CORNER_COUNT
Número de puntos que definen boundingBox.
Center
Centro de BoundingBox.
Extents
Extensiones de BoundingBox.
Crea una instancia de la clase BoundingBox
.
void BoundingBox( const BoundingBox & unnamedParam1)
Crea una instancia de la clase BoundingBox
.
BoundingBox & operator=( const BoundingBox & unnamedParam1)
Copia valores de otro BoundingBox.
void BoundingBox( BoundingBox && unnamedParam1)
Crea una instancia de la clase BoundingBox
.
BoundingBox & operator=( BoundingBox && unnamedParam1)
void BoundingBox( const XMFLOAT3 & center, const XMFLOAT3 & extensiones) noexcept
Crea una instancia de la clase BoundingBox
.
void XM_CALLCONV Transform( BoundingBox & Out, FXMMATRIX M) noexcept
Transforma boundingBox.
Transforma boundingBox.
void GetCorners( XMFLOAT3 *Corners) noexcept
Recupera las esquinas de BoundingBox.
ContainsmentType XM_CALLCONV Contains( FXMVECTOR Point) noexcept
Comprueba si boundingBox contiene un punto especificado.
ContainsmentType XM_CALLCONV Contains( FXMVECTOR V0, FXMVECTOR V1, FXMVECTOR V2) noexcept
Pruebe si boundingBox contiene un triángulo especificado.
ContainsmentType Contains( const BoundingSphere & sh) noexcept
Comprueba si BoundingBox contiene un BoundingSphere especificado.
ContainsmentType Contains( const BoundingBox & box) noexcept
Comprueba si BoundingBox contiene otro BoundingBox.
ContainsmentType Contains( const BoundingOrientedBox & box) noexcept
Comprueba si BoundingBox contiene el BoundingOrientedBox especificado.
ContainsmentType Contains( const BoundingFrustum & fr) noexcept
Comprueba si BoundingBox contiene el BoundingFrustum especificado.
bool Intersects( const BoundingSphere & sh) noexcept
Comprueba la intersección de BoundingBox con boundingSphere.
bool Intersects( const BoundingBox & box) noexcept
Prueba boundingBox para la intersección con otro BoundingBox.
bool Intersects( const BoundingOrientedBox & box) noexcept
Pruebe boundingBox para la intersección con boundingOrientedBox.
bool Intersects( const BoundingFrustum & fr) noexcept
Pruebe boundingBox para la intersección con boundingFrustum.
bool XM_CALLCONV Intersects( FXMVECTOR V0, FXMVECTOR V1, FXMVECTOR V2) noexcept
Pruebe boundingBox para la intersección con un triángulo.
PlaneIntersectionType XM_CALLCONV Intersects( FXMVECTOR Plane) noexcept
Pruebe boundingBox para la intersección con un plano.
bool XM_CALLCONV Intersects( FXMVECTOR Origin, FXMVECTOR Direction, float & Dist) noexcept
Pruebe boundingBox para la intersección con un rayo.
Comprueba si boundingBox está contenido en el frustum especificado.
void CreateMerged( BoundingBox & Out, const BoundingBox & b1, const BoundingBox & b2) noexcept
Crea un boundingBox lo suficientemente grande como para contener dos instancias de BoundBox especificadas.
void CreateFromSphere( BoundingBox & Out, const BoundingSphere & sh) noexcept
Crea un boundingBox lo suficientemente grande como para contener el objeto BoundingSphere especificado.
void XM_CALLCONV CreateFromPoints( BoundingBox & Out, FXMVECTOR pt1, FXMVECTOR pt2) noexcept
Crea un BoundingBox a partir de dos puntos.
Crea un BoundingBox a partir de una lista de puntos.
Comentarios
Requisitos de la plataforma
Microsoft Visual Studio 2010 o Microsoft Visual Studio 2012 con Windows SDK para Windows 8. Compatible con aplicaciones de escritorio Win32, aplicaciones de la Tienda Windows y Windows Phone 8 aplicaciones.Use DirectX.
Requisitos
Encabezado | directxcollision.h |