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

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

Разработчик

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

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

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

SKPhysicsWorld

SKPhysicsWorld объект моделирует коллизии и другие физические свойства. Вы не создаете SKPhysicsWorld объекты непосредственно; вместо этого, читайте physicsWorld свойство SKScene объект.

Объект мира физики позволяет Вам выполнять следующие задачи:

  • Глобальные свойства набора для моделирования, такие как сила тяжести

  • Создайте соединения между двумя организациями физики в сцене

  • Установите делегата для получения уведомлений, когда две организации физики будут в контакте друг с другом

  • Определите, какие организации физики в сцене пересекаются с точками, прямоугольниками или лучами

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


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


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


Swift

import SpriteKit

Objective C

@import SpriteKit;

Доступность


Доступный в OS X v10.9 и позже.
  • Вектор, указывающий гравитационное ускорение, применился к организациям физики в мире физики.

    Объявление

    Swift

    var gravity: CGVector

    Objective C

    @property(nonatomic) CGVector gravity

    Обсуждение

    Компоненты этого свойства измеряются в метрах в секунду. Значение по умолчанию (0.0,-9.8), какая сила тяжести Земли перенастоящего.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

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

  • Уровень, на котором выполняется моделирование.

    Объявление

    Swift

    var speed: CGFloat

    Objective C

    @property(nonatomic) CGFloat speed

    Обсуждение

    Значение по умолчанию 1.0, что означает выполнения моделирования в нормальной скорости. Значение кроме значения по умолчанию изменяет уровень, на котором время передает на моделировании физики. Например, значение скорости 2.0 указывает то время в передачах моделирования физики дважды с такой скоростью, как время моделирования сцены. Значение 0.0 приостанавливает моделирование физики.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

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

  • Добавляет соединение к миру физики.

    Объявление

    Swift

    func addJoint(_ joint: SKPhysicsJoint)

    Objective C

    - (void)addJoint:(SKPhysicsJoint *)joint

    Параметры

    joint

    Соединение для добавления.

    Обсуждение

    Для соединения для вступления в силу это должно быть добавлено к миру физики.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

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

  • Удаляет все соединения из мира физики.

    Объявление

    Swift

    func removeAllJoints()

    Objective C

    - (void)removeAllJoints

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

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

  • Удаляет определенное соединение из мира физики.

    Объявление

    Swift

    func removeJoint(_ joint: SKPhysicsJoint)

    Objective C

    - (void)removeJoint:(SKPhysicsJoint *)joint

    Параметры

    joint

    Соединение для удаления.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

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

  • contactDelegate contactDelegate Свойство

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

    Объявление

    Swift

    unowned(unsafe) var contactDelegate: SKPhysicsContactDelegate!

    Objective C

    @property(nonatomic, assign) id< SKPhysicsContactDelegate > contactDelegate

    Обсуждение

    Когда два перекрытия организаций физики и одна из организаций физики имеют a, контакт создается contactTestBitMask свойство, накладывающееся с другой организацией categoryBitMask свойство.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

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

  • Поиски первой организации физики, пересекающей луч.

    Объявление

    Swift

    func bodyAlongRayStart(_ start: CGPoint, end end: CGPoint) -> SKPhysicsBody?

    Objective C

    - (SKPhysicsBody *)bodyAlongRayStart:(CGPoint)start end:(CGPoint)end

    Параметры

    start

    Начальная точка для луча в координатах сцены.

    end

    Конечная точка для луча в координатах сцены.

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

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

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

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

  • Поиски первой организации физики, содержащей точку.

    Объявление

    Swift

    func bodyAtPoint(_ point: CGPoint) -> SKPhysicsBody?

    Objective C

    - (SKPhysicsBody *)bodyAtPoint:(CGPoint)point

    Параметры

    point

    Точка в координатах сцены.

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

    Первая организация физики обнаружила, что это содержит точку. Если никакая организация не содержит точку, этот метод возвраты nil.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

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

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

    Объявление

    Swift

    func bodyInRect(_ rect: CGRect) -> SKPhysicsBody?

    Objective C

    - (SKPhysicsBody *)bodyInRect:(CGRect)rect

    Параметры

    rect

    Прямоугольник в координатах сцены.

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

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

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

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

  • Перечисляет все организации физики в сцене, пересекающие луч.

    Объявление

    Swift

    func enumerateBodiesAlongRayStart(_ start: CGPoint, end end: CGPoint, usingBlock block: ((SKPhysicsBody!, CGPoint, CGVector, UnsafeMutablePointer<ObjCBool>) -> Void)!)

    Objective C

    - (void)enumerateBodiesAlongRayStart:(CGPoint)start end:(CGPoint)end usingBlock:(void (^)(SKPhysicsBody *body, CGPoint point, CGVector normal, BOOL *stop))block

    Параметры

    start

    Начальная точка для луча в координатах сцены.

    end

    Конечная точка для луча в координатах сцены.

    block

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

    body

    Организация физики, которую пересек луч.

    point

    Точка в сцене координирует, где луч связался с организацией физики.

    normal

    Вектор нормали для организации физики при контакте.

    stop

    Указатель на Логическую переменную. Ваш блок может установить это в YEStrue завершать перечисление.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

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

  • Перечисляет все организации физики в сцене, содержащие точку.

    Объявление

    Swift

    func enumerateBodiesAtPoint(_ point: CGPoint, usingBlock block: ((SKPhysicsBody!, UnsafeMutablePointer<ObjCBool>) -> Void)!)

    Objective C

    - (void)enumerateBodiesAtPoint:(CGPoint)point usingBlock:(void (^)(SKPhysicsBody *body, BOOL *stop))block

    Параметры

    point

    Точка в координатах сцены.

    block

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

    body

    Организация физики, которую пересек луч.

    stop

    Указатель на Логическую переменную. Ваш блок может установить это в YEStrue завершать перечисление.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

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

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

    Объявление

    Swift

    func enumerateBodiesInRect(_ rect: CGRect, usingBlock block: ((SKPhysicsBody!, UnsafeMutablePointer<ObjCBool>) -> Void)!)

    Objective C

    - (void)enumerateBodiesInRect:(CGRect)rect usingBlock:(void (^)(SKPhysicsBody *body, BOOL *stop))block

    Параметры

    rect

    Прямоугольник в координатах сцены.

    block

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

    body

    Организация физики, пересекшая прямоугольник.

    stop

    Указатель на Логическую переменную. Ваш блок может установить это в YEStrue завершать перечисление.

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

    Objective C

    @import SpriteKit;

    Swift

    import SpriteKit

    Доступность

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

  • Выборки все полевые узлы в сцене и возвратах суммирование их сил в той точке.

    Объявление

    Objective C

    - (vector_float3)sampleFieldsAt:(vector_float3)position

    Параметры

    position

    Позиция в координатах сцены.

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

    Суммирование сил проявлено на той точке.

    Обсуждение

    Выборка вычисляется, как будто организация физики размещается в ту позицию в сцене. Организация, как предполагается, имеет массу 1.0, без заряда или скорости. Организация затронута всеми полевыми узлами.

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

    Objective C

    @import SpriteKit;

    Доступность

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