다음을 통해 공유


BoundingFrustum 구조체(directxcollision.h)

경계 frustum 개체입니다.

구문

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의 instance 만듭니다.

void BoundingFrustum( const BoundingFrustum & unnamedParam1)

BoundingFrustum의 instance 만듭니다.

BoundingFrustum & operator=( const BoundingFrustum & unnamedParam1)

다른 BoundingFrustum에서 값을 복사합니다.

void BoundingFrustum( BoundingFrustum && unnamedParam1)

BoundingFrustum의 instance 만듭니다.

BoundingFrustum & operator=( BoundingFrustum && unnamedParam1)

다른 BoundingFrustum에서 값을 복사합니다.

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

BoundingFrustum의 instance 만듭니다.

void BoundingFrustum( CXMMATRIX Projection, bool rhcoords) noexcept

왼손 프로젝션 행렬에서 BoundingFrustum의 instance 만듭니다. 자세한 내용은 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

BoundingSphere와의 교집합에 대해 BoundingFrustum을 테스트합니다.

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 Plane) 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이 지정된 frustum에 포함되어 있는지 여부를 테스트합니다.

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 을 만듭니다.

설명

플랫폼 요구 사항

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

요구 사항

   
머리글 directxcollision.h

추가 정보

DirectXMath 라이브러리 클래스