BoundingFrustum 構造体 (directxcollision.h)

境界視錐台オブジェクト。

構文

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

メンバー

CORNER_COUNT

BoundingFrustum を定義するコーナーの数。

Origin

BoundingFrustum の原点。

Orientation

四元数として表される BoundingFrustum の向き。

RightSlope

BoundingFrustum の右側の傾き。

LeftSlope

BoundingFrustum の左側の傾き。

TopSlope

BoundingFrustum の上端の傾き。

BottomSlope

BoundingFrustum の下部の傾き。

Near

BoundingFrustum の原点からの近接平面の距離。

Far

BoundingFrustum の原点からの遠方平面の距離。

void BoundingFrustum() noexcept

BoundingFrustum のインスタンスを作成します。

void BoundingFrustum( const BoundingFrustum & unnamedParam1)

BoundingFrustum のインスタンスを作成します。

BoundingFrustum & operator=( const BoundingFrustum & unnamedParam1)

別の BoundingFrustum から値をコピーします。

void BoundingFrustum( BoundingFrustum && unnamedParam1)

BoundingFrustum のインスタンスを作成します。

BoundingFrustum & operator=( BoundingFrustum && unnamedParam1)

別の BoundingFrustum から値をコピーします。

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

BoundingFrustum のインスタンスを作成します。

void BoundingFrustum( CXMMATRIX Projection, bool rhcoords) noexcept

左利きの射影行列から BoundingFrustum のインスタンスを作成します。詳細については、「 BoundingFrustum::CreateFromMatrix」を参照してください。

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

BoundingFrustum を指定した変換行列で変換します。

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

指定したスケール、回転、および平行移動ベクトルを使用して BoundingFrustum を変換します。

void GetCorners( XMFLOAT3 *Corners) noexcept

BoundingFrustum を構成する角を取得します。

ContainmentType XM_CALLCONV Contains( FXMVECTOR Point) noexcept

BoundingFrustum に指定したポイントが含まれているかどうかをテストします。

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

BoundingFrustum に指定された三角形が含まれているかどうかをテストします。

ContainmentType Contains( const BoundingSphere & sp) noexcept

BoundingFrustum に指定された BoundingSphere が含まれているかどうかをテストします。

ContainmentType Contains( const BoundingBox & box) noexcept

BoundingFrustum に指定された BoundingBox が含まれているかどうかをテストします。

ContainmentType Contains( const BoundingOrientedBox & box) noexcept

BoundingFrustum に指定された BoundingOrientedBox が含まれているかどうかをテストします。

ContainmentType Contains( const BoundingFrustum & fr) noexcept

BoundingFrustum に指定された BoundingFrustum が含まれているかどうかをテストします。

bool Intersects( const BoundingSphere & sh) noexcept

BoundingFrustum で BoundingSphere との交差テストします。

bool Intersects( const BoundingBox & box) noexcept

BoundingBox との交差について BoundingFrustumをテストします

bool Intersects( const BoundingOrientedBox & box) noexcept

BoundingOrientedBox との交差について BoundingFrustum をテストします。

bool Intersects( const BoundingFrustum & fr) noexcept

BoundingFrustum で別の BoundingFrustum との交差をテストします。

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

三角形との交差について BoundingFrustum をテストします。

PlaneIntersectionType XM_CALLCONV Intersects( FXMVECTOR 平面) noexcept

平面との交差について BoundingFrustum をテストします。

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

線との交差について BoundingFrustum をテストします。

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

BoundingFrustum が指定された錐台に含まれているかどうかをテストします。

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

BoundingFrustum を構成する平面を取得します。

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

指定したパースペクティブ投影マトリックスから BoundingFrustum を作成します。

注釈

プラットフォームの要件

Microsoft Visual Studio 2010 または Microsoft Visual Studio 2012 と Windows SDK for Windows 8。 Win32 デスクトップ アプリ、Windows ストア アプリ、Windows Phone 8 アプリでサポートされます。

要件

   
Header directxcollision.h

こちらもご覧ください

DirectXMath ライブラリ クラス