Compartilhar via


Estrutura BoundingFrustum (directxcollision.h)

Um objeto frustum delimitado.

Sintaxe

struct BoundingFrustum {
  size_t                            CORNER_COUNT;
  XMFLOAT3                          Origin;
  XMFLOAT4                          Orientation;
  float                             RightSlope;
  float                             LeftSlope;
  float                             TopSlope;
  float                             BottomSlope;
  float                             Near;
  float                             Far;
  void                              BoundingFrustum() noexcept;
  void                              BoundingFrustum(
    const BoundingFrustum & unnamedParam1
  );
  BoundingFrustum &                 operator=(
    const BoundingFrustum & unnamedParam1
  );
  void                              BoundingFrustum(
    BoundingFrustum && unnamedParam1
  );
  BoundingFrustum &                 operator=(
    BoundingFrustum && unnamedParam1
  );
  void                              BoundingFrustum(
    const XMFLOAT3 & origin,
    const XMFLOAT4 & orientation,
    float            rightSlope,
    float            leftSlope,
    float            topSlope,
    float            bottomSlope,
    float            nearPlane,
    float            farPlane
  ) noexcept;
  void                              BoundingFrustum(
    CXMMATRIX Projection,
    bool      rhcoords
  ) noexcept;
  void XM_CALLCONV                  Transform(
    BoundingFrustum & Out,
    FXMMATRIX         M
  ) noexcept;
  void XM_CALLCONV                  Transform(
    BoundingFrustum & 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 & sp
  ) 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 rayOrigin,
    FXMVECTOR Direction,
    float &   Dist
  ) noexcept;
  ContainmentType XM_CALLCONV       ContainedBy(
    FXMVECTOR Plane0,
    FXMVECTOR Plane1,
    FXMVECTOR Plane2,
    GXMVECTOR Plane3,
    HXMVECTOR Plane4,
    HXMVECTOR Plane5
  ) noexcept;
  void                              GetPlanes(
    XMVECTOR *NearPlane,
    XMVECTOR *FarPlane,
    XMVECTOR *RightPlane,
    XMVECTOR *LeftPlane,
    XMVECTOR *TopPlane,
    XMVECTOR *BottomPlane
  ) noexcept;
  void XM_CALLCONV                  CreateFromMatrix(
    BoundingFrustum & Out,
    FXMMATRIX         Projection,
    bool              rhcoords
  ) noexcept;
};

Membros

CORNER_COUNT

O número de cantos que definem o BoundingFrustum.

Origin

A origem do BoundingFrustum.

Orientation

A orientação do BoundingFrustum representada como um quatérnio.

RightSlope

A inclinação do lado direito do BoundingFrustum.

LeftSlope

A inclinação do lado esquerdo do BoundingFrustum.

TopSlope

A inclinação da parte superior do BoundingFrustum.

BottomSlope

A inclinação da parte inferior do BoundingFrustum.

Near

A distância do plano próximo do BoundingFrustum de sua origem.

Far

A distância do plano distante da origem do BoundingFrustum.

void BoundingFrustum() noexcept

Cria uma instância de BoundingFrustum.

void BoundingFrustum( const BoundingFrustum & unnamedParam1)

Cria uma instância de BoundingFrustum.

BoundingFrustum & operator=( const BoundingFrustum & unnamedParam1)

Copia valores de outro BoundingFrustum.

void BoundingFrustum( BoundingFrustum && unnamedParam1)

Cria uma instância de BoundingFrustum.

BoundingFrustum & operator=( BoundingFrustum && unnamedParam1)

Copia valores de outro BoundingFrustum.

void BoundingFrustum( const XMFLOAT3 & origin, const XMFLOAT4 & orientation, float rightSlope, float leftSlope, float topSlope, float bottomSlope, float nearPlane, float farPlane) noexcept

Cria uma instância de BoundingFrustum.

void BoundingFrustum( CXMMATRIX Projection, bool rhcoords) noexcept

Cria uma instância de BoundingFrustum de uma matriz de projeção à esquerda. Para obter mais informações, consulte BoundingFrustum::CreateFromMatrix.

Void XM_CALLCONV Transform( BoundingFrustum & Out, FXMMATRIX M) noexcept

Transforma o BoundingFrustum pela matriz de transformação especificada.

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

Transforma o BoundingFrustum usando os vetores de escala, rotação e tradução especificados.

void GetCorners( XMFLOAT3 *Corners) noexcept

Obtém os cantos que compõem o BoundingFrustum.

ContainmentType XM_CALLCONV Contains( FXMVECTOR Point) noexcept

Testa se BoundingFrustum contém o ponto especificado.

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

Testa se BoundingFrustum contém o triângulo especificado.

ContainmentType Contains( const BoundingSphere & sp) noexcept

Testa se o BoundingFrustum contém o BoundingSphere especificado.

ContainmentType Contains( const BoundingBox & box) noexcept

Testa se o BoundingFrustum contém o BoundingBox especificado.

ContainmentType Contains( const BoundingOrientedBox & box) noexcept

Testa se BoundingFrustum contém o BoundingOrientedBox especificado.

ContainmentType Contains( const BoundingFrustum & fr) noexcept

Testa se o BoundingFrustum contém o BoundingFrustum especificado.

bool Intersects( const BoundingSphere & sh) noexcept

Teste o BoundingFrustum para interseção com um BoundingSphere.

bool Intersects( const BoundingBox & box) noexcept

Teste o BoundingFrustum para interseção com um BoundingBox.

bool Intersects( const BoundingOrientedBox & box) noexcept

Teste o BoundingFrustum para interseção com boundingOrientedBox.

bool Intersects( const BoundingFrustum & fr) noexcept

Teste o BoundingFrustum para interseção com outro BoundingFrustum.

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

Teste o BoundingFrustum para interseção com um triângulo.

PlaneIntersectionType XM_CALLCONV Intersects( FXMVECTOR Plane) noexcept

Teste o BoundingFrustum para interseção com um plano.

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

Teste o BoundingFrustum 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 BoundingFrustum está contido no frustum especificado.

void GetPlanes( XMVECTOR *NearPlane, XMVECTOR *FarPlane, XMVECTOR *RightPlane, XMVECTOR *LeftPlane, XMVECTOR *TopPlane, XMVECTOR *BottomPlane) noexcept

Obtém os planos que compõem o BoundingFrustum.

void XM_CALLCONV CreateFromMatrix( BoundingFrustum & Out, FXMMATRIX Projection, bool rhcoords) noexcept

Cria um BoundingFrustum da matriz de projeção de perspectiva especificada.

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.

Requisitos

   
Cabeçalho directxcollision.h

Confira também

Classes de biblioteca DirectXMath