Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека разработчика Mac

Разработчик

Ссылка платформы SceneKit ссылка на протокол SCNBoundingVolume

Опции
Развертывание Target:

На этой странице
Язык:

SCNBoundingVolume

SCNBoundingVolume протокол определяет интерфейс для описания объектов, занимающих объем в пространстве, принятом SCNNode и SCNGeometry классы. Его методы измеряют расположение и размер объекта в пространстве локальной координаты объекта, выраженном или как поле или как сфера.

Ограничительная рамка является самым маленьким объемом, в форме прямоугольника, выровненного к осям пространства локальной координаты, полностью содержащего объект. Набор сцены определяет ограничительную рамку с помощью двух точек: минимальный и максимальный угол. Точно так же сфера ограничения является самой маленькой сферой, содержащей объект.

По умолчанию Набор Сцены автоматически определяет минимальные ограничивающие объемы для конфигураций на основе их позиций вершины в пространстве модели. Ограничивающий объем узла с присоединенной геометрией является ограничивающим объемом геометрии, выраженной в локальном пространстве узла. Ограничивающий объем узла, содержащего дочерние узлы, является минимальным объемом, включающим ограничивающие объемы дочерних элементов узла.

Используйте методы, перечисленные в Измерении Ограничивающего объема Объекта для получения информации об ограничительной рамке или сфере объекта. Набор сцены использует эти методы при определении, как представить сцену. Например, SCNCamera возразите использует ограничительные рамки видимых элементов в сцене для определения ее пределов глубины.

Можно переопределить автоматически решительный ограничивающий объем объекта с помощью setBoundingBoxMin:max: метод. Например, Вы могли бы использовать этот метод для обработки частей геометрии как несущественных к рендерингу.

Наследование


Не применимый

Соответствует


Оператор импорта


Swift

import SceneKit

Objective C

@import SceneKit;

Доступность


Доступный в OS X v10.8 и позже.
  • Получает минимальные и максимальные угловые точки ограничительной рамки объекта. (требуемый)

    Объявление

    Swift

    func getBoundingBoxMin(_ min: UnsafeMutablePointer<SCNVector3>, max max: UnsafeMutablePointer<SCNVector3>) -> Bool

    Objective C

    - (BOOL)getBoundingBoxMin:(SCNVector3 *)min max:(SCNVector3 *)max

    Параметры

    min

    На выводе, минимальных координатах ограничительной рамки.

    max

    На выводе, максимальных координатах ограничительной рамки.

    Возвращаемое значение

    YEStrue если объект имеет ненулевой объем; иначе, NOfalse.

    Обсуждение

    Набор сцены определяет ограничительную рамку в пространстве локальной координаты с помощью двух точек, идентифицирующих его углы, неявно определяющие шесть выровненных осью плоскостей, отмечающих его пределы. Например, если ограничительная рамка геометрии имеет минимальный угол {-1, 0, 2} и максимальный угол {3, 4, 5}, все точки в данных вершины геометрии имеют значение x-координаты между -1.0 и 3.0, включительно.

    Координаты, предоставленные этим методом, допустимы, только если объект имеет объем, который будет измерен. Если обращено геометрия, содержащая данные вершины или узел, содержащий геометрию (и чьи дочерние узлы, если таковые имеются, не содержат геометрии), этот метод возвраты нет, указывая, что значения *min и *max не определены.

    Оператор импорта

    Objective C

    @import SceneKit;

    Swift

    import SceneKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Получает центральную точку и радиус сферы ограничения объекта. (требуемый)

    Объявление

    Swift

    func getBoundingSphereCenter(_ center: UnsafeMutablePointer<SCNVector3>, radius radius: UnsafeMutablePointer<CGFloat>) -> Bool

    Objective C

    - (BOOL)getBoundingSphereCenter:(SCNVector3 *)center radius:(CGFloat *)radius

    Параметры

    center

    На выводе, центральной точке сферы ограничения.

    radius

    На выводе, радиусе сферы ограничения.

    Возвращаемое значение

    YEStrue если объект имеет ненулевой объем; иначе, NOfalse.

    Обсуждение

    Набор сцены определяет сферу ограничения в пространстве локальной координаты с помощью центральной точки и радиуса. Например, если сфера ограничения узла имеет центральную точку {3, 1, 4} и радиус 2.0, все точки в данных вершины геометрии узла (и любой геометрии, присоединенной к ее дочерним узлам), лежат в 2.0 модули центральной точки.

    Координаты, предоставленные этим методом, допустимы, только если объект имеет объем, который будет измерен. Если обращено геометрия, содержащая данные вершины или узел, содержащий геометрию (и чьи дочерние узлы, если таковые имеются, не содержат геометрии), этот метод возвраты нет, указывая, что значения *center и *radius не определены.

    Оператор импорта

    Objective C

    @import SceneKit;

    Swift

    import SceneKit

    Доступность

    Доступный в OS X v10.8 и позже.

  • Устанавливает пользовательскую ограничительную рамку для объекта. (требуемый)

    Объявление

    Swift

    func setBoundingBoxMin(_ min: UnsafeMutablePointer<SCNVector3>, max max: UnsafeMutablePointer<SCNVector3>)

    Objective C

    - (void)setBoundingBoxMin:(SCNVector3 *)min max:(SCNVector3 *)max

    Параметры

    min

    Указатель на минимальные координаты ограничительной рамки.

    max

    Указатель на максимальные координаты ограничительной рамки.

    Обсуждение

    Вы определяете ограничительную рамку в пространстве локальной координаты с помощью двух точек, идентифицирующих его углы, неявно определяющие шесть выровненных осью плоскостей, отмечающих его пределы. x-, y-, и значения z-координаты любой точки в объеме - каждый больше, чем те min точка и меньше, чем те max точка.

    По умолчанию Набор Сцены автоматически вычисляет ограничивающие объемы узлов и конфигураций и использует эту информацию для помощи в рендеринге. Вы используете этот метод для переопределения ограничительной рамки по умолчанию.

    Оператор импорта

    Objective C

    @import SceneKit;

    Swift

    import SceneKit

    Доступность

    Доступный в OS X v10.9 и позже.