Partager via


Structure BoundingBox (directxcollision.h)

Objet englobant aligné sur l’axe.

Syntaxe

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;
};

Membres

CORNER_COUNT

Nombre de points définissant l’objet BoundingBox.

Center

Centre de l’objet BoundingBox.

Extents

Étendues de l’objet BoundingBox.

void BoundingBox() noexcept

Crée une instance de la classe BoundingBox.

void BoundingBox( const BoundingBox & unnamedParam1)

Crée une instance de la classe BoundingBox.

BoundingBox & operator=( const BoundingBox & unnamedParam1)

Copie les valeurs d’un autre BoundingBox.

void BoundingBox( BoundingBox && unnamedParam1)

Crée une instance de la classe BoundingBox.

BoundingBox & operator=( BoundingBox && unnamedParam1)

void BoundingBox( const XMFLOAT3 & center, const XMFLOAT3 & extents) noexcept

Crée une instance de la classe BoundingBox.

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

Transforme l’objet BoundingBox.

void XM_CALLCONV Transform( BoundingBox & Out, float Scale, FXMVECTOR Rotation, FXMVECTOR Translation) noexcept

Transforme l’objet BoundingBox.

void GetCorners( XMFLOAT3 *Corners) noexcept

Récupère les coins du cadre englobant.

ContainmentType XM_CALLCONV Contains( FXMVECTOR Point) noexcept

Teste si l’objet BoundingBox contient un point spécifié.

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

Testez si le contrôle BoundingBox contient un triangle spécifié.

ContainmentType Contains( const BoundingSphere & sh) noexcept

Teste si l’objet BoundingBox contient un BoundingSphere spécifié.

ContainmentType Contains( const BoundingBox & box) noexcept

Teste si l’objet BoundingBox contient un autre boundingBox.

ContainmentType Contains( const BoundingOrientedBox & box) noexcept

Teste si l’objet BoundingBox contient l’objet BoundingOrientedBox spécifié.

ContainmentType Contains( const BoundingFrustum & fr) noexcept

Teste si l’objet BoundingBox contient l’objet BoundingFrustum spécifié.

bool Intersects( const BoundingSphere & sh) noexcept

Teste BoundingBox pour l’intersection avec un BoundingSphere.

bool Intersects( const BoundingBox & box) noexcept

Teste boundingBox pour l’intersection avec un autre BoundingBox.

bool Intersects( const BoundingOrientedBox & box) noexcept

Testez boundingBox pour l’intersection avec un BoundingOrientedBox.

bool Intersects( const BoundingFrustum & fr) noexcept

Testez BoundingBox pour l’intersection avec un BoundingFrustum.

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

Testez l’élément BoundingBox pour l’intersection avec un triangle.

PlaneIntersectionType XM_CALLCONV Intersects( FXMVECTOR Plane) noexcept

Testez boundingBox pour l’intersection avec un plan.

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

Testez boundingBox pour l’intersection avec un rayon.

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

Teste si l’objet BoundingBox est contenu par le frustum spécifié.

void CreateMerged( BoundingBox & Out, const BoundingBox & b1, const BoundingBox & b2) noexcept

Crée un objet BoundingBox suffisamment grand pour contenir deux instances BoundBox spécifiées.

void CreateFromSphere( BoundingBox & Out, const BoundingSphere & sh) noexcept

Crée un BoundingBox suffisamment grand pour contenir l’objet BoundingSphere spécifié.

void XM_CALLCONV CreateFromPoints( BoundingBox & Out, FXMVECTOR pt1, FXMVECTOR pt2) noexcept

Crée un BoundingBox à partir de deux points.

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

Crée un boundingBox à partir d’une liste de points.

Remarques

Configuration requise pour la plateforme

Microsoft Visual Studio 2010 ou Microsoft Visual Studio 2012 avec le SDK Windows pour Windows 8. Pris en charge pour les applications de bureau Win32, les applications du Windows Store et les applications Windows Phone 8.

Utilisez DirectX.

Configuration requise

   
En-tête directxcollision.h

Voir aussi

Classes de bibliothèque DirectXMath