1{ Parsed from SceneKit.framework SCNPhysicsWorld.h } 2 3 4{$ifdef TYPES} 5type 6 SCNPhysicsWorldPtr = ^SCNPhysicsWorld; 7 SCNPhysicsContactDelegateProtocolPtr = ^SCNPhysicsContactDelegateProtocol; 8{$endif} 9 10{$ifdef EXTERNAL_SYMBOLS} 11var 12 SCNPhysicsTestCollisionBitMaskKey: NSString; cvar; external; 13 SCNPhysicsTestSearchModeKey: NSString; cvar; external; 14 SCNPhysicsTestBackfaceCullingKey: NSString; cvar; external; 15 SCNPhysicsTestSearchModeAny: NSString; cvar; external; 16 SCNPhysicsTestSearchModeClosest: NSString; cvar; external; 17 SCNPhysicsTestSearchModeAll: NSString; cvar; external; 18{$endif} 19 20{$ifdef PROTOCOLS} 21 22type 23 SCNPhysicsContactDelegateProtocol = objcprotocol external name 'SCNPhysicsContactDelegate' (NSObjectProtocol) 24 optional 25 procedure physicsWorld_didBeginContact (world: SCNPhysicsWorld; contact: SCNPhysicsContact); message 'physicsWorld:didBeginContact:'; 26 procedure physicsWorld_didUpdateContact (world: SCNPhysicsWorld; contact: SCNPhysicsContact); message 'physicsWorld:didUpdateContact:'; 27 procedure physicsWorld_didEndContact (world: SCNPhysicsWorld; contact: SCNPhysicsContact); message 'physicsWorld:didEndContact:'; 28 end; 29{$endif} 30 31{$ifdef CLASSES} 32 33type 34 SCNPhysicsWorld = objcclass external (NSObject, NSSecureCodingProtocol) 35 private 36 _reserved: id; 37 public 38 procedure setGravity(newValue: SCNVector3); message 'setGravity:'; 39 function gravity: SCNVector3; message 'gravity'; 40 procedure setSpeed(newValue: CGFloat); message 'setSpeed:'; 41 function speed: CGFloat; message 'speed'; 42 procedure setTimeStep(newValue: NSTimeInterval); message 'setTimeStep:'; 43 function timeStep: NSTimeInterval; message 'timeStep'; 44 procedure setContactDelegate(newValue: SCNPhysicsContactDelegateProtocol); message 'setContactDelegate:'; 45 function contactDelegate: SCNPhysicsContactDelegateProtocol; message 'contactDelegate'; 46 procedure addBehavior (behavior: SCNPhysicsBehavior); message 'addBehavior:'; 47 procedure removeBehavior (behavior: SCNPhysicsBehavior); message 'removeBehavior:'; 48 procedure removeAllBehaviors; message 'removeAllBehaviors'; 49 function allBehaviors: NSArray; message 'allBehaviors'; 50 function rayTestWithSegmentFromPoint_toPoint_options (origin: SCNVector3; dest: SCNVector3; options: NSDictionary): NSArray; message 'rayTestWithSegmentFromPoint:toPoint:options:'; 51 function contactTestBetweenBody_andBody_options (bodyA: SCNPhysicsBody; bodyB: SCNPhysicsBody; options: NSDictionary): NSArray; message 'contactTestBetweenBody:andBody:options:'; 52 function contactTestWithBody_options (body: SCNPhysicsBody; options: NSDictionary): NSArray; message 'contactTestWithBody:options:'; 53 function convexSweepTestWithShape_fromTransform_toTransform_options (shape: SCNPhysicsShape; from: SCNMatrix4; to_: SCNMatrix4; options: NSDictionary): NSArray; message 'convexSweepTestWithShape:fromTransform:toTransform:options:'; 54 procedure updateCollisionPairs; message 'updateCollisionPairs'; 55 56 { Adopted protocols } 57 procedure encodeWithCoder (aCoder: NSCoder); message 'encodeWithCoder:'; 58 function initWithCoder (aDecoder: NSCoder): id; message 'initWithCoder:'; 59 class function supportsSecureCoding: ObjCBOOL; message 'supportsSecureCoding'; 60 end; 61{$endif} 62 63