SKConstraint
SKConstraint
объект описывает математическое ограничение на позицию узла или ориентацию. Ограничения присоединены к узлам; после того, как сцена обрабатывает любые действия и взаимодействия физики, она применяет ограничения, присоединенные к узлам в ее дереве узла. Используйте ограничения, чтобы гарантировать, что определенные отношения являются истиной, прежде чем будет представлена сцена.
Например, Вы могли бы использовать ограничение для:
Измените узел
zRotation
свойство так, чтобы это всегда указывало на другой узел или позицию в сцене.Сохраните узел в указанном расстоянии другого узла или точки в сцене.
Сохраните узел в указанном прямоугольнике.
Ограничьте
zRotation
свойство узла так, чтобы это имело более ограниченный диапазон вращения движения.
Для использования ограничений создайте NSArray
объект, содержащий один или несколько ограничительных объектов и присваивающий массив узлу constraints
свойство. Когда сцена оценена, ограничения на узел выполняются в порядке, они появляются в constraints
массив.
После того, как создаваемый, ограничение не может быть изменено. Однако можно выборочно отключить или включить ограничение путем установки enabled
свойство. Можно также использовать referenceNode
свойство для преобразования позиций в систему координат, на которую ссылаются, прежде, чем применить ограничение.
Соответствует
-
AnyObject
-
CVarArgType
-
Сопоставимый
-
Hashable
-
NSCoding
-
NSCopying
-
NSObjectProtocol
-
Печатаемый
-
NSCoding
-
NSCopying
-
NSObject
Оператор импорта
Swift
import SpriteKit
Objective C
@import SpriteKit;
Доступность
Доступный в OS X v10.10 и позже.
-
Создает ограничение, ограничивающее x координату позиции узла.
Объявление
Swift
class func positionX(_
range
: SKRange) -> Self!Objective C
+ (instancetype)positionX:(SKRange *)
range
Параметры
range
Диапазон для ограничения координаты.
Возвращаемое значение
Новое ограничение.
Обсуждение
Каждый ограничения времени применяется, x координата узла
position
свойство фиксируется так, чтобы оно нашлось в указанном диапазоне.Оператор импорта
Objective C
@import SpriteKit;
Swift
import SpriteKit
Доступность
Доступный в OS X v10.10 и позже.
-
Создает ограничение, ограничивающее y координату позиции узла.
Объявление
Swift
class func positionY(_
range
: SKRange) -> Self!Objective C
+ (instancetype)positionY:(SKRange *)
range
Параметры
range
Диапазон для ограничения координаты.
Возвращаемое значение
Новое ограничение.
Обсуждение
Каждый раз, когда ограничения применяются, y координата узла
position
свойство фиксируется так, чтобы оно нашлось в указанном диапазоне.Оператор импорта
Objective C
@import SpriteKit;
Swift
import SpriteKit
Доступность
Доступный в OS X v10.10 и позже.
-
Создает ограничение, ограничивающее обе координаты позиции узла.
Объявление
Параметры
xRange
Диапазон для ограничения x координирует к.
yRange
Диапазон для ограничения y координирует к.
Возвращаемое значение
Новое ограничение.
Обсуждение
Каждый ограничения времени применяется, узел
position
свойство фиксируется так, чтобы обе координаты легли в указанных диапазонах.Оператор импорта
Objective C
@import SpriteKit;
Swift
import SpriteKit
Доступность
Доступный в OS X v10.10 и позже.
-
Создает ограничение, вынуждающее узел вращаться на основе позиции другого узла.
Объявление
Параметры
node
Узел, который должен использоваться для ориентации узла, к которому присоединено это ограничение.
radians
Смещение, добавляющееся к
zRotation
значение после того, как это вычисляется.Возвращаемое значение
Новое ограничение.
Обсуждение
Каждый раз, когда ограничения применяются, новый угол, вычисляется так, чтобы строка, спроектированная под этим углом, указала бы на источник другого узла. Этот угол добавляется к значениям, указанным в
radians
свойство для создания нового диапазона. Наконец, узелzRotation
значение фиксируется для адаптации в этом диапазоне.Оператор импорта
Objective C
@import SpriteKit;
Swift
import SpriteKit
Доступность
Доступный в OS X v10.10 и позже.
-
Создает ограничение, вынуждающее узел вращаться для направления к фиксированной точке.
Объявление
Параметры
point
Точка в системе координат родителя узла.
radians
Смещение, добавляющееся к
zRotation
значение после того, как это вычисляется.Возвращаемое значение
Новое ограничение.
Обсуждение
Каждый раз, когда ограничения применяются, новый угол, вычисляется так, чтобы строка, спроектированная под этим углом, указала бы на целевую точку. Этот угол добавляется к значениям, указанным в
radians
свойство для создания нового диапазона. Наконец, узелzRotation
значение фиксируется для адаптации в этом диапазоне.Оператор импорта
Objective C
@import SpriteKit;
Swift
import SpriteKit
Доступность
Доступный в OS X v10.10 и позже.
См. также
-
Создает ограничение, вынуждающее узел вращаться для направления к точке в системе координат другого узла.
Объявление
Параметры
point
Точка в
node
система координат параметра.node
Узел, система координат которого точка указана в.
radians
Смещение, добавляющееся к
zRotation
значение после того, как это вычисляется.Возвращаемое значение
Новое ограничение.
Обсуждение
Каждый раз, когда ограничения применяются, новый угол, вычисляется так, чтобы строка, спроектированная под этим углом, указала бы на целевую точку. Этот угол добавляется к значениям, указанным в
radians
свойство для создания нового диапазона. Наконец, узелzRotation
значение фиксируется для адаптации в этом диапазоне.Оператор импорта
Objective C
@import SpriteKit;
Swift
import SpriteKit
Доступность
Доступный в OS X v10.10 и позже.
-
Создает ограничение, ограничивающее ориентацию узла.
Объявление
Swift
class func zRotation(_
zRange
: SKRange) -> Self!Objective C
+ (instancetype)zRotation:(SKRange *)
zRange
Параметры
zRange
Значение диапазона, указывающее минимальные и максимальные значения узла
zRotation
свойство.Возвращаемое значение
Новое ограничение.
Обсуждение
Каждый раз, когда ограничения применяются, узел
zRotation
свойство фиксируется так, чтобы это было в указанном диапазоне.Оператор импорта
Objective C
@import SpriteKit;
Swift
import SpriteKit
Доступность
Доступный в OS X v10.10 и позже.
-
Создает ограничение, сохраняющее узел в определенном расстоянии другого узла.
Объявление
Параметры
range
Диапазон позволенных расстояний между этими двумя узлами.
node
Целевой узел раньше вычислял расстояние.
Возвращаемое значение
Новое ограничение.
Обсуждение
Каждый раз, когда ограничения применяются, строка, спроектирован между позицией узла и позицией целевого узла. Расстояние между двумя точками вычисляется, и если оно находится вне указанного диапазона, узел продвигают или вытягивают вдоль этой строки, пока оно не находится в диапазоне.
Оператор импорта
Objective C
@import SpriteKit;
Swift
import SpriteKit
Доступность
Доступный в OS X v10.10 и позже.
-
Создает ограничение, сохраняющее узел в определенном расстоянии точки.
Объявление
Параметры
range
Диапазон позволенных расстояний между узлом и точкой.
point
Точка в системе координат родителя узла, использующегося для вычисления расстояния.
Возвращаемое значение
Новое ограничение.
Обсуждение
Каждый раз, когда ограничения применяются, строка, спроектирован между позицией узла и целевой точкой. Расстояние между двумя точками вычисляется, и если оно находится вне указанного диапазона, узел продвигают или вытягивают вдоль этой строки, пока оно не находится в диапазоне.
Оператор импорта
Objective C
@import SpriteKit;
Swift
import SpriteKit
Доступность
Доступный в OS X v10.10 и позже.
См. также
-
Создает ограничение, сохраняющее узел в определенном расстоянии точки в системе координат другого узла.
Объявление
Параметры
range
Диапазон позволенных расстояний.
point
Точка для использования в качестве целевой точки.
node
Узел, система координат которого точка указана в.
Возвращаемое значение
Новое ограничение.
Обсуждение
Каждый раз, когда ограничения применяются, строка, спроектирован между позицией узла и целевой точкой. Расстояние между двумя точками вычисляется, и если оно находится вне указанного диапазона, узел продвигают или вытягивают вдоль этой строки, пока оно не находится в диапазоне.
Оператор импорта
Objective C
@import SpriteKit;
Swift
import SpriteKit
Доступность
Доступный в OS X v10.10 и позже.
-
referenceNode referenceNode
СвойствоУзел, система координат которого должна использоваться для применения ограничения.
Обсуждение
Значение по умолчанию
nil
, подразумевать, что система координат родителя узла используется для применения ограничения. Если другой узел указан, все позиции преобразовываются в систему координат этого узла, прежде чем будет применено ограничение.Оператор импорта
Objective C
@import SpriteKit;
Swift
import SpriteKit
Доступность
Доступный в OS X v10.10 и позже.
-
включенный включенный
СвойствоБулево значение, указывающее, применяется ли ограничение.
Объявление
Swift
var enabled: Bool
Objective C
@property BOOL enabled
Оператор импорта
Objective C
@import SpriteKit;
Swift
import SpriteKit
Доступность
Доступный в OS X v10.10 и позже.