BoundingFrustum-Struktur (directxcollision.h)

Ein umgebendes Frustum-Objekt.

Syntax

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

Member

CORNER_COUNT

Die Anzahl der Ecken, die das BoundingFrustum definieren.

Origin

Der Ursprung des BoundingFrustums.

Orientation

Die Ausrichtung des als Quaternion dargestellten Begrenzungsfrustums .

RightSlope

Die Steigung der rechten Seite des Begrenzungsfrustums.

LeftSlope

Die Steigung der linken Seite des Begrenzungsfrustums.

TopSlope

Die Steigung der Spitze des Begrenzungsfrustums.

BottomSlope

Die Steigung des Bodens des Begrenzungsfrustums.

Near

Der Abstand der nahen Ebene des Begrenzungsfrustums von seinem Ursprung.

Far

Der Abstand der fernen Ebene vom Ursprung des Begrenzungsfrustums.

void BoundingFrustum() noexcept

Erstellt eine instance von BoundingFrustum.

void BoundingFrustum( const BoundingFrustum & unnamedParam1)

Erstellt eine instance von BoundingFrustum.

BoundingFrustum & operator=( const BoundingFrustum & unnamedParam1)

Kopiert Werte aus einem anderen BoundingFrustum.

void BoundingFrustum( BoundingFrustum && unnamedParam1)

Erstellt eine instance von BoundingFrustum.

BoundingFrustum & operator=( BoundingFrustum && unnamedParam1)

Kopiert Werte aus einem anderen BoundingFrustum.

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

Erstellt eine instance von BoundingFrustum.

void BoundingFrustum( CXMMATRIX Projection, bool rhcoords) noexcept

Erstellt eine instance von BoundingFrustum aus einer linkshändigen Projektionsmatrix. Weitere Informationen finden Sie unter BoundingFrustum::CreateFromMatrix.

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

Transformiert das BoundingFrustum durch die angegebene Transformationsmatrix.

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

Transformiert das BoundingFrustum mithilfe der angegebenen Skalierungs-, Drehungs- und Übersetzungsvektoren.

void GetCorners( XMFLOAT3 *Ecken) noexcept

Ruft die Ecken ab, aus der das BoundingFrustum besteht.

ContainmentType XM_CALLCONV Contains( FXMVECTOR Point) noexcept

Testet, ob das BoundingFrustum den angegebenen Punkt enthält.

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

Testet, ob das BoundingFrustum das angegebene Dreieck enthält.

ContainmentType Contains( const BoundingSphere & sp) noexcept

Testet, ob das BoundingFrustum die angegebene BoundingSphere enthält.

ContainmentType Contains( const BoundingBox & Box) noexcept

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

ContainmentType Contains( const BoundingOrientedBox & Feld) noexcept

Testet, ob das BoundingFrustum das angegebene BoundingOrientedBox enthält.

ContainmentType Contains( const BoundingFrustum & fr) noexcept

Testet, ob das BoundingFrustum das angegebene BoundingFrustum enthält.

bool Intersects( const BoundingSphere & sh) noexcept

Testen Sie das BoundingFrustum auf Schnittmenge mit einem BoundingSphere-Objekt.

bool Intersects( const BoundingBox & Box) noexcept

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

bool Intersects( const BoundingOrientedBox & Box) noexcept

Testen Sie das BoundingFrustum auf Schnittmenge mit einem BoundingOrientedBox-Objekt.

bool Intersects( const BoundingFrustum & fr) noexcept

Testen Sie das BoundingFrustum auf Schnittmenge mit einem anderen BoundingFrustum.

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

Testen Sie das BoundingFrustum auf Schnittmenge mit einem Dreieck.

PlaneIntersectionType XM_CALLCONV Intersects( FXMVECTOR-Ebene) noexcept

Testen Sie das BoundingFrustum auf Schnittmenge mit einer Ebene.

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

Testen Sie das BoundingFrustum 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 BoundingFrustum im angegebenen Frustum enthalten ist.

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

Ruft die Ebenen ab, aus der das BoundingFrustum besteht.

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

Erstellt ein BoundingFrustum aus der angegebenen perspektivischen Projektionsmatrix.

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.

Anforderungen

   
Kopfzeile directxcollision.h

Weitere Informationen

DirectXMath-Bibliotheksklassen