BoundingBox 構造体 (directxcollision.h)
境界軸揃えオブジェクト。
構文
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;
};
メンバー
CORNER_COUNT
BoundingBox を定義するポイントの数。
Center
BoundingBox の中心。
Extents
BoundingBox のエクステント。
BoundingBox
クラスのインスタンスを作成します。
void BoundingBox( const BoundingBox & unnamedParam1)
BoundingBox
クラスのインスタンスを作成します。
BoundingBox & operator=( const BoundingBox & unnamedParam1)
別の BoundingBox から値をコピーします。
void BoundingBox( BoundingBox && unnamedParam1)
BoundingBox
クラスのインスタンスを作成します。
BoundingBox & operator=( BoundingBox && unnamedParam1)
void BoundingBox( const XMFLOAT3 & center, const XMFLOAT3 & extents) noexcept
BoundingBox
クラスのインスタンスを作成します。
void XM_CALLCONV Transform( BoundingBox & Out, FXMMATRIX M) noexcept
BoundingBox を変換します。
BoundingBox を変換します。
void GetCorners( XMFLOAT3 *Corners) noexcept
BoundingBox の角を取得します。
ContainmentType XM_CALLCONV Contains( FXMVECTOR Point) noexcept
BoundingBox に指定したポイントが含まれているかどうかをテストします。
ContainmentType XM_CALLCONV Contains( FXMVECTOR V0, FXMVECTOR V1, FXMVECTOR V2) noexcept
BoundingBox に指定した三角形が含まれているかどうかをテストします。
ContainmentType Contains( const BoundingSphere & sh) noexcept
BoundingBox に指定された BoundingSphere が含まれているかどうかをテストします。
ContainmentType Contains( const BoundingBox & box) noexcept
BoundingBox に別の BoundingBox が含まれているかどうかをテストします。
ContainmentType Contains( const BoundingOrientedBox & box) noexcept
BoundingBox に指定された BoundingOrientedBox が含まれているかどうかをテストします。
ContainmentType Contains( const BoundingFrustum & fr) noexcept
BoundingBox に指定された BoundingFrustum が含まれているかどうかをテストします。
bool Intersects( const BoundingSphere & sh) noexcept
BoundingBox と BoundingSphere の交差部分をテストします。
bool Intersects( const BoundingBox & box) noexcept
BoundingBox で、別の BoundingBox との交差をテストします。
bool Intersects( const BoundingOrientedBox & box) noexcept
BoundingOrientedBox との交差部分について BoundingBox をテストします。
bool Intersects( const BoundingFrustum & fr) noexcept
BoundingFrustum との交差部分について BoundingBox をテストします。
bool XM_CALLCONV Intersects( FXMVECTOR V0, FXMVECTOR V1, FXMVECTOR V2) noexcept
BoundingBox と三角形の交差部分をテストします。
PlaneIntersectionType XM_CALLCONV Intersects( FXMVECTOR Plane) noexcept
境界ボックスで平面との交差をテストします。
bool XM_CALLCONV Intersects( FXMVECTOR Origin, FXMVECTOR Direction, float & Dist) noexcept
境界ボックスでレイとの交差をテストします。
BoundingBox が指定した錐台に含まれているかどうかをテストします。
void CreateMerged( BoundingBox & Out, const BoundingBox & b1, const BoundingBox & b2) noexcept
指定した 2 つの BoundBox インスタンスを格納するのに十分な大きさの BoundingBox を作成します。
void CreateFromSphere( BoundingBox & Out, const BoundingSphere & sh) noexcept
指定した BoundingSphere を格納するのに十分な大きさの BoundingBox を作成します。
void XM_CALLCONV CreateFromPoints( BoundingBox & Out, FXMVECTOR pt1, FXMVECTOR pt2) noexcept
2 つのポイントから BoundingBox を作成します。
ポイントのリストから BoundingBox を作成します。
注釈
プラットフォームの要件
Microsoft Visual Studio 2010 または Microsoft Visual Studio 2012 と Windows SDK for Windows 8。 Win32 デスクトップ アプリ、Windows ストア アプリ、Windows Phone 8 アプリでサポートされます。DirectX を使用します。
要件
Header | directxcollision.h |