SKPhysicsWorld
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSCoding -
NSObjectProtocol -
Печатаемый -
NSCoding -
NSObject
Оператор импорта
Swift
import SpriteKit
Objective C
@import SpriteKit;
Доступность
Доступный в iOS 7.0 и позже.
SKPhysicsWorld объект моделирует коллизии и другие физические свойства. Вы не создаете SKPhysicsWorld объекты непосредственно; вместо этого, читайте physicsWorld свойство SKScene объект.
Объект мира физики позволяет Вам выполнять следующие задачи:
Глобальные свойства набора для моделирования, такие как сила тяжести
Создайте соединения между двумя организациями физики в сцене
Установите делегата для получения уведомлений, когда две организации физики будут в контакте друг с другом
Определите, какие организации физики в сцене пересекаются с точками, прямоугольниками или лучами
-
gravityСвойствоВектор, указывающий гравитационное ускорение, применился к организациям физики в мире физики.
Обсуждение
Компоненты этого свойства измеряются в метрах в секунду. Значение по умолчанию
(0.0,-9.8), какая сила тяжести Земли перенастоящего.Оператор импорта
Objective C
@import SpriteKit;Swift
import SpriteKitДоступность
Доступный в iOS 7.0 и позже.
-
speedСвойствоУровень, на котором выполняется моделирование.
Обсуждение
Значение по умолчанию
1.0, что означает выполнения моделирования в нормальной скорости. Значение кроме значения по умолчанию изменяет уровень, на котором время передает на моделировании физики. Например, значение скорости2.0указывает то время в передачах моделирования физики дважды с такой скоростью, как время моделирования сцены. Значение0.0приостанавливает моделирование физики.Оператор импорта
Objective C
@import SpriteKit;Swift
import SpriteKitДоступность
Доступный в iOS 7.0 и позже.
-
Добавляет соединение к миру физики.
Объявление
Swift
func addJoint(_joint: SKPhysicsJoint)Objective C
- (void)addJoint:(SKPhysicsJoint *)jointПараметры
jointСоединение для добавления.
Обсуждение
Для соединения для вступления в силу это должно быть добавлено к миру физики.
Оператор импорта
Objective C
@import SpriteKit;Swift
import SpriteKitДоступность
Доступный в iOS 7.0 и позже.
-
Удаляет все соединения из мира физики.
Объявление
Swift
func removeAllJoints()Objective C
- (void)removeAllJointsОператор импорта
Objective C
@import SpriteKit;Swift
import SpriteKitДоступность
Доступный в iOS 7.0 и позже.
-
Удаляет определенное соединение из мира физики.
Объявление
Swift
func removeJoint(_joint: SKPhysicsJoint)Objective C
- (void)removeJoint:(SKPhysicsJoint *)jointПараметры
jointСоединение для удаления.
Оператор импорта
Objective C
@import SpriteKit;Swift
import SpriteKitДоступность
Доступный в iOS 7.0 и позже.
-
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Доступность
Доступный в iOS 7.0 и позже.
-
Поиски первой организации физики, пересекающей луч.
Объявление
Swift
func bodyAlongRayStart(_start: CGPoint, endend: CGPoint) -> SKPhysicsBody?Objective C
- (SKPhysicsBody *)bodyAlongRayStart:(CGPoint)startend:(CGPoint)endПараметры
startНачальная точка для луча в координатах сцены.
endКонечная точка для луча в координатах сцены.
Возвращаемое значение
Первая организация физики обнаружила, что это пересекает луч. Это может быть любой организацией вдоль луча; это, как гарантируют, не будет самой близкой организацией физики. Если никакая организация не пересекает луч, этот метод возвраты
nil.Оператор импорта
Objective C
@import SpriteKit;Swift
import SpriteKitДоступность
Доступный в iOS 7.0 и позже.
-
Поиски первой организации физики, содержащей точку.
Объявление
Swift
func bodyAtPoint(_point: CGPoint) -> SKPhysicsBody?Objective C
- (SKPhysicsBody *)bodyAtPoint:(CGPoint)pointПараметры
pointТочка в координатах сцены.
Возвращаемое значение
Первая организация физики обнаружила, что это содержит точку. Если никакая организация не содержит точку, этот метод возвраты
nil.Оператор импорта
Objective C
@import SpriteKit;Swift
import SpriteKitДоступность
Доступный в iOS 7.0 и позже.
-
Поиски первой организации физики, пересекающей указанный прямоугольник.
Объявление
Swift
func bodyInRect(_rect: CGRect) -> SKPhysicsBody?Objective C
- (SKPhysicsBody *)bodyInRect:(CGRect)rectПараметры
rectПрямоугольник в координатах сцены.
Возвращаемое значение
Первая организация физики обнаружила, что это пересекает прямоугольник. Если никакая организация не пересекает прямоугольник, этот метод возвраты
nil.Оператор импорта
Objective C
@import SpriteKit;Swift
import SpriteKitДоступность
Доступный в iOS 7.0 и позже.
-
Перечисляет все организации физики в сцене, пересекающие луч.
Объявление
Swift
func enumerateBodiesAlongRayStart(_start: CGPoint, endend: CGPoint, usingBlockblock: ((SKPhysicsBody!, CGPoint, CGVector, UnsafeMutablePointer<ObjCBool>) -> Void)!)Objective C
- (void)enumerateBodiesAlongRayStart:(CGPoint)startend:(CGPoint)endusingBlock:(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Доступность
Доступный в iOS 7.0 и позже.
-
Перечисляет все организации физики в сцене, содержащие точку.
Объявление
Swift
func enumerateBodiesAtPoint(_point: CGPoint, usingBlockblock: ((SKPhysicsBody!, UnsafeMutablePointer<ObjCBool>) -> Void)!)Objective C
- (void)enumerateBodiesAtPoint:(CGPoint)pointusingBlock:(void (^)(SKPhysicsBody *body, BOOL *stop))blockПараметры
pointТочка в координатах сцены.
blockБлок, который вызовут для каждой организации физики, содержащей точку. Блок берет следующие параметры:
bodyОрганизация физики, которую пересек луч.
stopУказатель на Логическую переменную. Ваш блок может установить это в
YEStrueзавершать перечисление.Оператор импорта
Objective C
@import SpriteKit;Swift
import SpriteKitДоступность
Доступный в iOS 7.0 и позже.
-
Перечисляет все организации физики в сцене, пересекающие указанный прямоугольник.
Объявление
Swift
func enumerateBodiesInRect(_rect: CGRect, usingBlockblock: ((SKPhysicsBody!, UnsafeMutablePointer<ObjCBool>) -> Void)!)Objective C
- (void)enumerateBodiesInRect:(CGRect)rectusingBlock:(void (^)(SKPhysicsBody *body, BOOL *stop))blockПараметры
rectПрямоугольник в координатах сцены.
blockБлок, который вызовут для каждой организации физики, содержащей точку. Блок берет следующие параметры:
bodyОрганизация физики, пересекшая прямоугольник.
stopУказатель на Логическую переменную. Ваш блок может установить это в
YEStrueзавершать перечисление.Оператор импорта
Objective C
@import SpriteKit;Swift
import SpriteKitДоступность
Доступный в iOS 7.0 и позже.
-
Выборки все полевые узлы в сцене и возвратах суммирование их сил в той точке.
Объявление
Objective C
- (vector_float3)sampleFieldsAt:(vector_float3)positionПараметры
positionПозиция в координатах сцены.
Возвращаемое значение
Суммирование сил проявлено на той точке.
Обсуждение
Выборка вычисляется, как будто организация физики размещается в ту позицию в сцене. Организация, как предполагается, имеет массу
1.0, без заряда или скорости. Организация затронута всеми полевыми узлами.Оператор импорта
Objective C
@import SpriteKit;Доступность
Доступный в iOS 8.0 и позже.
