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 から値をコピーします。
BoundingFrustum のインスタンスを作成します。
void BoundingFrustum( CXMMATRIX Projection, bool rhcoords) noexcept
左利きの射影行列から BoundingFrustum のインスタンスを作成します。詳細については、「 BoundingFrustum::CreateFromMatrix」を参照してください。
void XM_CALLCONV Transform( BoundingFrustum & Out, FXMMATRIX M) noexcept
BoundingFrustum を指定した変換行列で変換します。
指定したスケール、回転、および平行移動ベクトルを使用して 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 をテストします。
BoundingFrustum が指定された錐台に含まれているかどうかをテストします。
BoundingFrustum を構成する平面を取得します。
指定したパースペクティブ投影マトリックスから BoundingFrustum を作成します。
注釈
プラットフォームの要件
Microsoft Visual Studio 2010 または Microsoft Visual Studio 2012 と Windows SDK for Windows 8。 Win32 デスクトップ アプリ、Windows ストア アプリ、Windows Phone 8 アプリでサポートされます。要件
Header | directxcollision.h |