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

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

Разработчик

Ссылка платформы SpriteKit ссылка класса SKShapeNode

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

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

SKShapeNode

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


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


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


Swift

import SpriteKit

Objective C

@import SpriteKit;

Доступность


Доступный в iOS 7.0 и позже.

SKShapeNode объект рисует форму, определенную Базовым Графическим контуром.

Графический контур является набором прямых линий и кривых, которые могут определить или открытые или закрытые подпути. Можно указать отдельное поведение рендеринга для заполненной и перечеркиваемой части пути. Каждая часть может быть представлена с помощью или сплошного цвета или текстуры; если необходимо представить более сложные эффекты, можно также использовать пользовательскую программу построения теней.

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

Создание узла формы от пути показывает пример того, как создать узел формы. Пример создает круг с синей внутренней частью и белой схемой. Путь создается и присоединяется к узлу формы path свойство.

Перечисление 1Creating узел формы от пути
  • SKShapeNode *ball = [[SKShapeNode alloc] init];
  • CGMutablePathRef myPath = CGPathCreateMutable();
  • CGPathAddArc(myPath, NULL, 0,0, 15, 0, M_PI*2, YES);
  • ball.path = myPath;
  • ball.lineWidth = 1.0;
  • ball.fillColor = [SKColor blueColor];
  • ball.strokeColor = [SKColor whiteColor];
  • ball.glowWidth = 0.5;

Вы видите от кода, что форма имеет три существенных элемента:

  • Внутренняя часть формы заполнена. fillColor свойство указывает, что цвет раньше заполнял внутреннюю часть.

  • Схема формы представляется как строка. strokeColor и lineWidth свойства определяют, как перечеркивается строка.

  • Свечение расширяется от схемы. glowWidth и strokeColor свойства определяют свечение.

Можно отключить любой из этих элементов путем выбирания его цвета к [SKColor clearColor].

Узел формы обеспечивает свойства, позволяющие Вам управлять, как форма смешивается в кадровый буфер. Вы используете эти свойства тот же путь в качестве свойств SKSpriteNode класс. Посмотрите Смешивание Sprite в Кадровый буфер.

  • Создает узел формы из Базового Графического контура.

    Объявление

    Swift

    convenience init(path path: CGPath!)

    Objective C

    + (instancetype)shapeNodeWithPath:(CGPathRef)path

    Параметры

    path

    Базовый Графический контур для использования. Путь относительно источника узла.

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

    Новый узел формы.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Создает узел формы из Базового Графического контура.

    Объявление

    Swift

    convenience init(path path: CGPath!, centered centered: Bool)

    Objective C

    + (instancetype)shapeNodeWithPath:(CGPathRef)path centered:(BOOL)centered

    Параметры

    path

    Базовый Графический контур для использования.

    centered

    Если YEStrue, путь переводится так, чтобы центр ограничительной рамки пути был в источнике узла; иначе путь относительно источника узла.

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

    Новый узел формы.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Создает узел формы с прямоугольным контуром.

    Объявление

    Swift

    convenience init(rect rect: CGRect)

    Objective C

    + (instancetype)shapeNodeWithRect:(CGRect)rect

    Параметры

    rect

    Прямоугольник, относительно источника узла.

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

    Новый узел формы.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Создает узел формы с прямоугольным контуром, центрируемым на источнике узла.

    Объявление

    Swift

    convenience init(rectOfSize size: CGSize)

    Objective C

    + (instancetype)shapeNodeWithRectOfSize:(CGSize)size

    Параметры

    size

    Размер прямоугольника.

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

    Новый узел формы.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Создает форму с прямоугольным контуром со скругленными углами.

    Объявление

    Swift

    convenience init(rect rect: CGRect, cornerRadius cornerRadius: CGFloat)

    Objective C

    + (instancetype)shapeNodeWithRect:(CGRect)rect cornerRadius:(CGFloat)cornerRadius

    Параметры

    rect

    Прямоугольник, относительно источника узла.

    cornerRadius

    Радиус скругленных углов. Радиус не должен быть отрицательным числом. Значение должно быть не больше, чем половина ширины или высоты прямоугольника, какой бы ни меньше.

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

    Новый узел формы.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Создает форму с прямоугольным контуром со скругленными углами, центрируемыми на источнике узла.

    Объявление

    Swift

    convenience init(rectOfSize size: CGSize, cornerRadius cornerRadius: CGFloat)

    Objective C

    + (instancetype)shapeNodeWithRectOfSize:(CGSize)size cornerRadius:(CGFloat)cornerRadius

    Параметры

    size

    Размер прямоугольника.

    cornerRadius

    Радиус скругленных углов. Радиус не должен быть отрицательным числом. Значение должно быть не больше, чем половина ширины или высоты прямоугольника, какой бы ни меньше.

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

    Новый узел формы.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Создает узел формы с круговым путем, центрируемым на источнике узла.

    Объявление

    Swift

    convenience init(circleOfRadius radius: CGFloat)

    Objective C

    + (instancetype)shapeNodeWithCircleOfRadius:(CGFloat)radius

    Параметры

    radius

    Радиус круга.

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

    Новый узел формы.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Создает узел формы с эллиптическим путем, центрируемым на источнике узла.

    Объявление

    Swift

    convenience init(ellipseOfSize size: CGSize)

    Objective C

    + (instancetype)shapeNodeWithEllipseOfSize:(CGSize)size

    Параметры

    size

    Высота и ширина эллипса.

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

    Новый узел формы.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Создает узел формы с эллиптическим путем, заполняющим указанный прямоугольник.

    Объявление

    Swift

    convenience init(ellipseInRect rect: CGRect)

    Objective C

    + (instancetype)shapeNodeWithEllipseInRect:(CGRect)rect

    Параметры

    rect

    Прямоугольник, относительно источника узла.

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

    Новый узел формы.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Создает узел формы из серии точек.

    Объявление

    Swift

    convenience init(points points: UnsafeMutablePointer<CGPoint>, count numPoints: Int)

    Objective C

    + (instancetype)shapeNodeWithPoints:(CGPoint *)points count:(size_t)numPoints

    Параметры

    points

    Массив Базовых Графических точек. Точки относительно источника узла.

    numPoints

    Число очков в массиве.

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

    Новый узел формы. Узел создается с путем, запускающимся в первой точке в массиве, присоединяясь к каждой смежной паре точек с линейным сегментом.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • Создает узел формы из серии точек шлица.

    Объявление

    Swift

    convenience init(splinePoints points: UnsafeMutablePointer<CGPoint>, count numPoints: Int)

    Objective C

    + (instancetype)shapeNodeWithSplinePoints:(CGPoint *)points count:(size_t)numPoints

    Параметры

    points

    Массив Базовых Графических точек.

    numPoints

    Число очков в массиве.

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

    Создается новый узел формы. Узел создается с путем, запускающимся в первой точке в массиве, присоединяясь к каждой паре точек с квадратичной кривой. Контрольные точки вычисляются автоматически на основе предыдущих точек в массиве.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • path Свойство

    Путь, определяющий форму.

    Объявление

    Swift

    var path: CGPath!

    Objective C

    @property(nonatomic) CGPathRef path

    Обсуждение

    Путь определяется в координатном пространстве узла.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 7.0 и позже.

  • fillColor Свойство

    Цвет раньше заполнял форму.

    Объявление

    Swift

    var fillColor: UIColor

    Objective C

    @property(nonatomic, retain) UIColor *fillColor

    Обсуждение

    Цвет заливки по умолчанию [SKColor clearColor], что означает, что форма не заполнена.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 7.0 и позже.

  • fillTexture Свойство

    Текстура раньше заполняла форму.

    Объявление

    Swift

    var fillTexture: SKTexture?

    Objective C

    @property(nonatomic, retain) SKTexture *fillTexture

    Обсуждение

    Значение по умолчанию nil. Если текстура заливки указана, fillColor свойство проигнорировано, и заполненная часть узла формы представляется с помощью текстуры вместо этого.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • fillShader Свойство

    Пользовательская программа построения теней раньше определяла цвет заполненной части узла формы.

    Объявление

    Swift

    var fillShader: SKShader?

    Objective C

    @property(nonatomic, retain) SKShader *fillShader

    Обсуждение

    Значение по умолчанию nil. Если программа построения теней заливки указана, когда узел формы нарисован, программа построения теней используется для определения цветов вывода для любой части узла формы, который заполнен.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • lineWidth Свойство

    Ширина раньше перечеркивала путь.

    Объявление

    Swift

    var lineWidth: CGFloat

    Objective C

    @property(nonatomic) CGFloat lineWidth

    Обсуждение

    Ширина строки, больше, чем 2.0 может вызвать артефакты рендеринга в представленном изображении финала. Значение по умолчанию 1.0.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 7.0 и позже.

  • glowWidth Свойство

    Свечение, расширяющееся исходящий от перечеркиваемой строки.

    Объявление

    Swift

    var glowWidth: CGFloat

    Objective C

    @property(nonatomic) CGFloat glowWidth

    Обсуждение

    Значение по умолчанию 0.0, что означает, что не добавляется никакое свечение.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 7.0 и позже.

  • antialiased Свойство

    Булево значение, определяющее, сглаживается ли перечеркиваемый путь, когда нарисовано.

    Объявление

    Swift

    var antialiased: Bool

    Objective C

    @property(nonatomic, getter=isAntialiased) BOOL antialiased

    Обсуждение

    Значение по умолчанию YEStrue.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 7.0 и позже.

  • strokeColor Свойство

    Цвет раньше перечеркивал форму.

    Объявление

    Swift

    var strokeColor: UIColor

    Objective C

    @property(nonatomic, retain) UIColor *strokeColor

    Обсуждение

    Цвет обводки по умолчанию [SKColor whiteColor]. Если Вы не хотите перечеркивать форму, использовать [SKColor clearColor].

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 7.0 и позже.

  • strokeTexture Свойство

    Текстура раньше перечеркивала форму.

    Объявление

    Swift

    var strokeTexture: SKTexture?

    Objective C

    @property(nonatomic, retain) SKTexture *strokeTexture

    Обсуждение

    Значение по умолчанию nil. Если штриховая текстура указана, strokeColor свойство проигнорировано, и перечеркиваемая часть узла формы представляется с помощью текстуры вместо этого.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • strokeShader Свойство

    Пользовательская программа построения теней раньше определяла цвет перечеркиваемой части узла формы.

    Объявление

    Swift

    var strokeShader: SKShader?

    Objective C

    @property(nonatomic, retain) SKShader *strokeShader

    Обсуждение

    Значение по умолчанию nil. Если штриховая программа построения теней указана, когда узел формы нарисован, программа построения теней используется для определения цветов вывода для любой части перечеркивающегося узла формы.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • lineCap Свойство

    Стиль раньше представлял конечные точки перечеркиваемой части узла формы.

    Объявление

    Swift

    var lineCap: CGLineCap

    Objective C

    @property(nonatomic) CGLineCap lineCap

    Обсуждение

    Значение по умолчанию kCGLineCapButt. Посмотрите CGLineCap.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

  • lineJoin Свойство

    Когда перечеркиваемая часть узла формы представляется, узловой тип использовал.

    Объявление

    Swift

    var lineJoin: CGLineJoin

    Objective C

    @property(nonatomic) CGLineJoin lineJoin

    Обсуждение

    Значение по умолчанию kCGLineJoinBevel. Посмотрите CGLineJoin.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

    См. также

    miterLimit

  • miterLimit Свойство

    Предельный угол стыка для использования, когда строка перечеркивается с помощью стиля соединения среза.

    Объявление

    Swift

    var miterLimit: CGFloat

    Objective C

    @property(nonatomic) CGFloat miterLimit

    Обсуждение

    Если стиль соединения строки установлен в kCGLineJoinMiter, Набор Sprite использует предельный угол стыка, чтобы определить, нужно ли к строкам присоединиться со скосом вместо среза. Набор Sprite делит длину среза шириной строки. Если результат больше, чем предельный угол стыка, Набор Sprite преобразовывает стиль в скос.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.

    См. также

    lineJoin

  • blendMode Свойство

    Режим смешивания раньше смешивал форму в кадровый буфер родителя.

    Объявление

    Swift

    var blendMode: SKBlendMode

    Objective C

    @property(nonatomic) SKBlendMode blendMode

    Обсуждение

    Значение по умолчанию SKBlendModeAlpha.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 7.0 и позже.

  • lineLength Свойство

    Длина строки определяется узлом формы. (только для чтения)

    Объявление

    Swift

    var lineLength: CGFloat { get }

    Objective C

    @property(nonatomic, readonly) CGFloat lineLength

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

    Доступный в iOS 8.0 и позже.