Поделиться через


Структура BoundingSphere (directxcollision.h)

Ограничивающий объект сферы.

Синтаксис

struct BoundingSphere {
  XMFLOAT3                          Center;
  float                             Radius;
  void                              BoundingSphere() noexcept;
  void                              BoundingSphere(
    const BoundingSphere & unnamedParam1
  );
  BoundingSphere &                  operator=(
    const BoundingSphere & unnamedParam1
  );
  void                              BoundingSphere(
    BoundingSphere && unnamedParam1
  );
  BoundingSphere &                  operator=(
    BoundingSphere && unnamedParam1
  );
  void                              BoundingSphere(
    const XMFLOAT3 & center,
    float            radius
  ) noexcept;
  void XM_CALLCONV                  Transform(
    BoundingSphere & Out,
    FXMMATRIX        M
  ) noexcept;
  void XM_CALLCONV                  Transform(
    BoundingSphere & Out,
    float            Scale,
    FXMVECTOR        Rotation,
    FXMVECTOR        Translation
  ) 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(
    BoundingSphere &       Out,
    const BoundingSphere & S1,
    const BoundingSphere & S2
  ) noexcept;
  void                              CreateFromBoundingBox(
    BoundingSphere &    Out,
    const BoundingBox & box
  ) noexcept;
  void                              CreateFromBoundingBox(
    BoundingSphere &            Out,
    const BoundingOrientedBox & box
  ) noexcept;
  void                              CreateFromPoints(
    BoundingSphere & Out,
    size_t           Count,
    const XMFLOAT3   *pPoints,
    size_t           Stride
  ) noexcept;
  void                              CreateFromFrustum(
    BoundingSphere &        Out,
    const BoundingFrustum & fr
  ) noexcept;
};

Члены

Center

Центр BoundingSphere.

Radius

Радиус Объекта BoundingSphere.

void BoundingSphere() noexcept

Создает экземпляр класса BoundingSphere .

void BoundingSphere( const BoundingSphere & unnamedParam1)

Создает экземпляр класса BoundingSphere.

BoundingSphere & operator=( const BoundingSphere & unnamedParam1)

Инициализирует BoundingSphere значениями из указанного BoundingSphere.

void BoundingSphere( BoundingSphere && unnamedParam1)

BoundingSphere & operator=( BoundingSphere && unnamedParam1)

Инициализирует BoundingSphere значениями из указанного BoundingSphere.

void BoundingSphere( const XMFLOAT3 & center, float radius) noexcept

Создает экземпляр класса BoundingSphere.

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

Преобразует BoundingSphere.

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

Преобразует BoundingSphere, используя указанные векторы масштабирования, поворота и преобразования.

ContainmentType XM_CALLCONV Contains( FXMVECTOR Point) noexcept

Проверяет, содержит ли BoundingSphere указанную точку.

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

Проверяет, содержит ли BoundingSphere указанный треугольник.

ContainmentType Contains( const BoundingSphere & sh) noexcept

Проверяет, содержит ли BoundingSphere указанный Объект BoundingSphere.

ContainmentType Contains( const BoundingBox & box) noexcept

Проверяет, содержит ли BoundingSphere указанный Элемент BoundingBox.

ContainmentType Contains( const BoundingOrientedBox & box) noexcept

Проверяет, содержит ли BoundingSphere указанный Объект BoundingOrientedBox.

ContainmentType Contains( const BoundingFrustum & fr) noexcept

Проверяет, содержит ли BoundingSphere указанный Объект BoundingFrustum.

bool Intersects( const BoundingSphere & sh) noexcept

Проверяет BoundingSphere на пересечение с BoundingSphere.

bool Intersects( const BoundingBox & box) noexcept

Проверяет BoundingSphere на пересечение с BoundingBox.

bool Intersects( const BoundingOrientedBox & box) noexcept

Проверьте BoundingSphere на пересечение с BoundingOrientedBox.

bool Intersects( const BoundingFrustum & fr) noexcept

Проверьте BoundingSphere на пересечение с BoundingFrustum.

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

Проверяет BoundingSphere на пересечение с треугольником.

PlaneIntersectionType XM_CALLCONV Intersects( FXMVECTOR Plane) noexcept

Проверяет BoundingSphere на пересечение с плоскостью.

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

Проверяет BoundingSphere на пересечение с лучом.

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

Проверяет, содержится ли BoundingSphere в указанном frustum.

void CreateMerged( BoundingSphere & Out, const BoundingSphere & S1, const BoundingSphere & S2) noexcept

Создает Объект BoundingSphere, содержащий два указанных объекта BoundingSphere.

void CreateFromBoundingBox( BoundingSphere & Out, const BoundingBox & box) noexcept

Создает Объект BoundingSphere, содержащий указанный Элемент BoundingBox.

void CreateFromBoundingBox( BoundingSphere & Out, const BoundingOrientedBox & box) noexcept

Создает Объект BoundingSphere, содержащий указанный Элемент BoundingBox.

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

Создает объект BoundingSphere из списка точек.

void CreateFromFrustum( BoundingSphere & Out, const BoundingFrustum & fr) noexcept

Комментарии

Требования к платформе

Microsoft Visual Studio 2010 или Microsoft Visual Studio 2012 с windows SDK для Windows 8. Поддерживается для классических приложений Win32, приложений Магазина Windows и приложений Windows Phone 8.

Требования

   
Верхняя часть directxcollision.h

См. также раздел

Классы библиотек DirectXMath