Compartilhar via


Estrutura BoundingOrientedBox (directxcollision.h)

Um objeto de caixa delimitadora orientado.

Sintaxe

struct BoundingOrientedBox {
  size_t                            CORNER_COUNT;
  XMFLOAT3                          Center;
  XMFLOAT3                          Extents;
  XMFLOAT4                          Orientation;
  void                              BoundingOrientedBox() noexcept;
  void                              BoundingOrientedBox(
    const BoundingOrientedBox & unnamedParam1
  );
  BoundingOrientedBox &             operator=(
    const BoundingOrientedBox & unnamedParam1
  );
  void                              BoundingOrientedBox(
    BoundingOrientedBox && unnamedParam1
  );
  BoundingOrientedBox &             operator=(
    BoundingOrientedBox && unnamedParam1
  );
  void                              BoundingOrientedBox(
    const XMFLOAT3 & center,
    const XMFLOAT3 & extents,
    const XMFLOAT4 & orientation
  ) noexcept;
  void XM_CALLCONV                  Transform(
    BoundingOrientedBox & Out,
    FXMMATRIX             M
  ) noexcept;
  void XM_CALLCONV                  Transform(
    BoundingOrientedBox & 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                              CreateFromBoundingBox(
    BoundingOrientedBox & Out,
    const BoundingBox &   box
  ) noexcept;
  void                              CreateFromPoints(
    BoundingOrientedBox & Out,
    size_t                Count,
    const XMFLOAT3        *pPoints,
    size_t                Stride
  ) noexcept;
};

Membros

CORNER_COUNT

O número de pontos que definem BoundingOrientedBox.

Center

O centro da BoundingOrientedBox.

Extents

As extensões de BoundingOrientedBox.

Orientation

A orientação de BoundingOrientedBox representada como um quatérnion.

void BoundingOrientedBox() noexcept

Cria uma instância de BoundingOrientedBox.

void BoundingOrientedBox( const BoundingOrientedBox & unnamedParam1)

Cria uma instância de BoundingOrientedBox.

BoundingOrientedBox & operator=( const BoundingOrientedBox & unnamedParam1)

Copia valores de outro BoundingOrientedBox.

void BoundingOrientedBox( BoundingOrientedBox && unnamedParam1)

Cria uma instância de BoundingOrientedBox.

BoundingOrientedBox & operator=( BoundingOrientedBox && unnamedParam1)

Copia valores de outro BoundingOrientedBox.

void BoundingOrientedBox( const XMFLOAT3 & center, const XMFLOAT3 & extents, const XMFLOAT4 & orientation) noexcept

Cria uma instância de BoundingOrientedBox.

void XM_CALLCONV Transform( BoundingOrientedBox & Out, FXMMATRIX M) noexcept

Transforma o BoundingOrientedBox.

Void XM_CALLCONV Transform( BoundingOrientedBox & Out, float Scale, FXMVECTOR Rotation, FXMVECTOR Translation) noexcept

Transforma o BoundingOrientedBox.

void GetCorners( XMFLOAT3 *Corners) noexcept

Recupera os cantos da BoundingOrientedBox.

ContainmentType XM_CALLCONV Contains( FXMVECTOR Point) noexcept

Testa se BoundingOrientedBox contém um ponto especificado.

ContainmentType XM_CALLCONV Contains( FXMVECTOR V0, FXMVECTOR V1, FXMVECTOR V2) noexcept

Testa se BoundingOrientedBox contém um triângulo.

ContainmentType Contains( const BoundingSphere & sh) noexcept

Testa se BoundingOrientedBox contém um BoundingSphere.

ContainmentType Contains( const BoundingBox & box) noexcept

Testa se BoundingOrientedBox contém um BoundingBox.

ContainmentType Contains( const BoundingOrientedBox & box) noexcept

Testa se BoundingOrientedBox contém um BoundingOrientedBox.

ContainmentType Contains( const BoundingFrustum & fr) noexcept

Testa se BoundingOrientedBox contém um BoundingFrustum.

bool Intersects( const BoundingSphere & sh) noexcept

Testa BoundingOrientedBox para interseção com um BoundingSphere.

bool Intersects( const BoundingBox & box) noexcept

Testa BoundingOrientedBox para interseção com um BoundingBox.

bool Intersects( const BoundingOrientedBox & box) noexcept

Testa BoundingOrientedBox para interseção com boundingOrientedBox.

bool Intersects( const BoundingFrustum & fr) noexcept

Testa BoundingOrientedBox para interseção com boundingFrustum.

bool XM_CALLCONV Intersects( FXMVECTOR V0, FXMVECTOR V1, FXMVECTOR V2) noexcept

Testa BoundingOrientedBox para interseção com um triângulo.

PlaneIntersectionType XM_CALLCONV Intersects( FXMVECTOR Plane) noexcept

Testa BoundingOrientedBox para interseção com um plano.

bool XM_CALLCONV Intersects( FXMVECTOR Origin, FXMVECTOR Direction, float & Dist) noexcept

Testa BoundingOrientedBox para interseção com um raio.

ContainmentType XM_CALLCONV ContainedBy( FXMVECTOR Plane0, FXMVECTOR Plane1, FXMVECTOR Plane2, GXMVECTOR Plane3, HXMVECTOR Plane4, HXMVECTOR Plane5) noexcept

Testa se BoundingOrientedBox está contido em um frustum.

void CreateFromBoundingBox( BoundingOrientedBox & Out, const BoundingBox & box) noexcept

Cria um BoundingOrientedBox de uma BoundingBox.

void CreateFromPoints( BoundingOrientedBox & Out, size_t Count, const XMFLOAT3 *pPoints, size_t Stride) noexcept

Cria um BoundingOrientedBox de uma coleção de pontos.

Comentários

Requisitos de 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.

Requisitos

   
Cabeçalho directxcollision.h

Confira também

Classes da biblioteca DirectXMath