SCNCone
SCNCone
геометрия моделирует прямой круговой конус или frustum.
Конус определяет поверхность тела, основа которого является кругом и чья боковая поверхность заостряется к точке, центрируемой выше ее основы. frustum также имеет круговую основу и заострился стороны, но имеет круговую вершину, подобную конусу, отключенному ниже его вершины.
Определите размер основы конуса в x-и размерностях оси z ее пространства локальной координаты с ее bottomRadius
свойство и его степень в размерности оси y с его height
свойство. Создайте конус, заостряющийся к точке путем установки topRadius
свойство для обнуления, или frustum, заостряющийся (или расширяющийся) к круговой вершине путем установки topRadius
свойство к различному значению.
Чтобы расположить и ориентировать конус в сцене, присоедините его к geometry
свойство SCNNode
объект.
Управляйте уровнем детализации с radialSegmentCount
и heightSegmentCount
свойства. Более высокое радиальное количество сегмента создает более гладкую кривую для круговых сторон конуса. Более высокое количество сегмента или в направлении производит больше вершин, которые могут повысить качество рендеринга для определенных моделей распространения света или пользовательских эффектов программы построения теней, но по стоимости для рендеринга производительности.
Коническая геометрия может содержать два или три SCNGeometryElement
объекты, соответствуя ее наружной поверхности, ее основе и ее вершине (или основе только или вершине только, если topRadius
или bottomRadius
свойство является нулем). SceneKit может представить каждый элемент с помощью различного материала. Для получения дополнительной информации посмотрите materials
свойство в Ссылке класса SCNGeometry.
Соответствует
Оператор импорта
Swift
import SceneKit
Objective C
@import SceneKit;
Доступность
Доступный в OS X v10.8 и позже.
-
Создает коническую геометрию с данным главным радиусом, радиусом закругления дна канавки записи и высотой.
Объявление
Swift
convenience init(topRadius
topRadius
: CGFloat, bottomRadiusbottomRadius
: CGFloat, heightheight
: CGFloat)Параметры
topRadius
Радиус вершины конуса, формируя круг в x-и размерностях оси z ее пространства локальной координаты.
bottomRadius
Радиус основы конуса, формируя круг в x-и размерностях оси z ее пространства локальной координаты.
height
Высота конуса вдоль оси y его пространства локальной координаты.
Возвращаемое значение
Новая коническая геометрия.
Обсуждение
Конус центрируется в его системе локальной координаты. Например, при создании конуса, радиус закругления дна канавки записи которого
5.0
, главный радиус0.0
, и высота10.0
, его вершина в точке{0, 5.0, 0}
, и его основа находится в плоскости, y-координата которой-5.0
, расширение от-5.0
к5.0
и вдоль x-и вдоль осей z.Нуль передачи для
topRadius
илиbottomRadius
или параметр для создания конуса, стороны которого заостряются к единственной точке или различному значению для создания frustum с круговой вершиной.Оператор импорта
Objective C
@import SceneKit;
Swift
import SceneKit
Доступность
Доступный в OS X v10.8 и позже.
-
Радиус круговой вершины конуса. Animatable.
Обсуждение
Конус центрируется в его системе локальной координаты. Например, верхняя поверхность конуса, главный радиус которого
5.0
расширяется от-5.0
к5.0
вдоль x-и осей z.Если или главный или радиус закругления дна канавки записи является нулем, геометрия формирует конус, заостряющийся к точке вершины в том конце. Если оба верхних и нижних радиуса являются ненулевыми, геометрия формирует frustum, заостряющийся (или расширяющийся) от круговой основы до круговой вершины. Если оба верхних и нижних радиуса являются нулем или меньше, или или если главный или радиус закругления дна канавки записи является меньше, чем нуль, геометрия пуста. Главный радиус по умолчанию
0.0
.Можно анимировать изменения в значении этого свойства. Посмотрите Анимацию Содержание SceneKit.
Оператор импорта
Objective C
@import SceneKit;
Swift
import SceneKit
Доступность
Доступный в OS X v10.8 и позже.
См. также
-
bottomRadius bottomRadius
СвойствоРадиус круговой основы конуса. Animatable.
Обсуждение
Конус центрируется в его системе локальной координаты. Например, основа конуса, радиус закругления дна канавки записи которого
5.0
расширяется от-5.0
к5.0
вдоль x-и осей z.Если или главный или радиус закругления дна канавки записи является нулем, геометрия формирует конус, заостряющийся к точке вершины в том конце. Если оба верхних и нижних радиуса являются ненулевыми, геометрия формирует frustum, заостряющийся (или расширяющийся) от круговой основы до круговой вершины. Если оба верхних и нижних радиуса являются нулем или меньше, или или если главный или радиус закругления дна канавки записи является меньше, чем нуль, геометрия пуста. Радиус закругления дна канавки записи по умолчанию
0.5
.Можно анимировать изменения в значении этого свойства. Посмотрите Анимацию Содержание SceneKit.
Оператор импорта
Objective C
@import SceneKit;
Swift
import SceneKit
Доступность
Доступный в OS X v10.8 и позже.
-
Степень цилиндра вдоль его оси y. Animatable.
Обсуждение
Конус центрируется в его системе локальной координаты. Например, если конус имеет высоту
10.0
, его основа находится в плоскости, y-координата которой-5.0
и его вершина имеет y-координату5.0
. Высота по умолчанию1.0
. Высота нуля или меньше создает пустую геометрию.Можно анимировать изменения в значении этого свойства. Посмотрите Анимацию Содержание SceneKit.
Оператор импорта
Objective C
@import SceneKit;
Swift
import SceneKit
Доступность
Доступный в OS X v10.8 и позже.
См. также
-
radialSegmentCount radialSegmentCount
СвойствоЧисло подразделений вокруг окружности конуса. Animatable.
Объявление
Swift
var radialSegmentCount: Int
Objective C
@property(nonatomic) NSInteger radialSegmentCount
Обсуждение
Большее число сегментов добавляет больше данных вершины к геометрии, создавая более гладкую кривую для кругового сечения конуса в стоимости для рендеринга производительности.
Количество сегмента по умолчанию
48
. Установка значения этого свойства к числу меньше, чем3
результаты в неопределенном поведении.Можно анимировать изменения в значении этого свойства. Посмотрите Анимацию Содержание SceneKit.
Оператор импорта
Objective C
@import SceneKit;
Swift
import SceneKit
Доступность
Доступный в OS X v10.8 и позже.
См. также
-
heightSegmentCount heightSegmentCount
СвойствоЧисло подразделений в сторонах конуса вдоль его оси y. Animatable.
Объявление
Swift
var heightSegmentCount: Int
Objective C
@property(nonatomic) NSInteger heightSegmentCount
Обсуждение
Большее число сегментов добавляет больше данных вершины к геометрии. Несмотря на то, что стороны конуса являются плоскими, дополнительные вершины могут быть полезны для освещения или пользовательских программ программы построения теней. Добавление стоимости рендеринга увеличений вершин, так используйте минимальное количество сегмента, производящее Ваш желаемый визуальный эффект.
Количество сегмента по умолчанию
1
. Установка значения этого свойства к числу меньше, чем1
результаты в неопределенном поведении.Можно анимировать изменения в значении этого свойства. Посмотрите Анимацию Содержание SceneKit.
Оператор импорта
Objective C
@import SceneKit;
Swift
import SceneKit
Доступность
Доступный в OS X v10.8 и позже.
См. также