다음을 통해 공유


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의 범위입니다.

void BoundingBox() noexcept

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를 변환합니다.

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

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

BoundingSphere와 교집합할 수 있는 BoundingBox를 테스트합니다.

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

평면과의 교집합에 대해 BoundingBox를 테스트합니다.

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

BoundingBox가 지정된 frustum에 포함되어 있는지 여부를 테스트합니다.

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

지정된 두 개의 BoundBox 인스턴스를 포함할 수 있을 만큼 큰 BoundingBox를 만듭니다.

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

지정된 BoundingSphere를 포함할 수 있을 만큼 큰 BoundingBox를 만듭니다.

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

두 지점에서 BoundingBox를 만듭니다.

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

점 목록에서 BoundingBox를 만듭니다.

설명

플랫폼 요구 사항

Windows 8 Windows SDK를 사용하는 Microsoft Visual Studio 2010 또는 Microsoft Visual Studio 2012. Win32 데스크톱 앱, Windows 스토어 앱 및 Windows Phone 8개 앱에서 지원됩니다.

DirectX를 사용합니다.

요구 사항

   
머리글 directxcollision.h

추가 정보

DirectXMath 라이브러리 클래스