BoundingBox-Struktur (directxcollision.h)

Ein an der Begrenzungsachse ausgerichtetes Objekt.

Syntax

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

Member

CORNER_COUNT

Die Anzahl der Punkte, die das BoundingBox definieren.

Center

Die Mitte des BoundingBox-Elements.

Extents

Die Blöcke von BoundingBox.

void BoundingBox() noexcept

Erstellt eine Instanz der BoundingBox-Klasse.

void BoundingBox( const BoundingBox & unnamedParam1)

Erstellt eine Instanz der BoundingBox-Klasse.

BoundingBox & operator=( const BoundingBox & unnamedParam1)

Kopiert Werte aus einem anderen BoundingBox-Objekt.

void BoundingBox( BoundingBox && unnamedParam1)

Erstellt eine Instanz der BoundingBox-Klasse.

BoundingBox & operator=( BoundingBox && unnamedParam1)

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

Erstellt eine Instanz der BoundingBox-Klasse.

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

Transformiert das BoundingBox-Objekt.

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

Transformiert das BoundingBox-Objekt.

void GetCorners( XMFLOAT3 *Ecken) noexcept

Ruft die Ecken des BoundingBox-Elements ab.

ContainmentType XM_CALLCONV Contains( FXMVECTOR Point) noexcept

Testet, ob das BoundingBox einen angegebenen Punkt enthält.

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

Testen Sie, ob das BoundingBox-Objekt ein angegebenes Dreieck enthält.

ContainmentType Contains( const BoundingSphere & sh) noexcept

Testet, ob boundingBox eine angegebene BoundingSphere enthält.

ContainmentType Contains( const BoundingBox & Box) noexcept

Testet, ob das BoundingBox-Element ein anderes BoundingBox-Element enthält.

ContainmentType Contains( const BoundingOrientedBox & Feld) noexcept

Testet, ob das BoundingBox-Element das angegebene BoundingOrientedBox-Objekt enthält.

ContainmentType Contains( const BoundingFrustum & fr) noexcept

Testet, ob boundingBox das angegebene BoundingFrustum enthält.

bool Intersects( const BoundingSphere & sh) noexcept

Testet das BoundingBox-Objekt auf Schnittmenge mit einer BoundingSphere.The BoundingBox for intersection with a BoundingSphere.

bool Intersects( const BoundingBox & Box) noexcept

Testet das BoundingBox-Objekt auf Schnittmenge mit einem anderen BoundingBox-Objekt.

bool Intersects( const BoundingOrientedBox & Box) noexcept

Testen Sie das BoundingBox-Element auf Schnittmenge mit einem BoundingOrientedBox-Steuerelement.

bool Intersects( const BoundingFrustum & fr) noexcept

Testen Sie das BoundingBox-Steuerelement auf Schnittmenge mit einem BoundingFrustum.

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

Testen Sie das BoundingBox-Steuerelement auf Schnittmenge mit einem Dreieck.

PlaneIntersectionType XM_CALLCONV Intersects( FXMVECTOR-Ebene) noexcept

Testen Sie das BoundingBox-Steuerelement auf Schnittmenge mit einer Ebene.

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

Testen Sie das BoundingBox-Element auf Schnittmenge mit einem Strahl.

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

Testet, ob das BoundingBox-Element im angegebenen Frustum enthalten ist.

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

Erstellt ein BoundingBox-Objekt, das groß genug ist, um zwei angegebene BoundBox-Instanzen zu enthalten.

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

Erstellt ein BoundingBox-Objekt, das groß genug ist, um den angegebenen BoundingSphere-Wert zu enthalten.

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

Erstellt ein BoundingBox-Element aus zwei Punkten.

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

Erstellt ein BoundingBox-Element aus einer Liste von Punkten.

Hinweise

Plattformanforderungen

Microsoft Visual Studio 2010 oder Microsoft Visual Studio 2012 mit dem Windows SDK für Windows 8. Unterstützt für Win32-Desktop-Apps, Windows Store-Apps und Windows Phone 8-Apps.

Verwenden Sie DirectX.

Anforderungen

   
Kopfzeile directxcollision.h

Weitere Informationen

DirectXMath-Bibliotheksklassen