Chipmunk2D Pro API Reference  6.2.1
 All Classes Functions Variables Typedefs Properties Groups Pages
ChipmunkBody.h
1 // Copyright 2013 Howling Moon Software. All rights reserved.
2 // See http://chipmunk2d.net/legal.php for more information.
3 
4 @class ChipmunkShape;
5 @class ChipmunkConstraint;
6 
11 @interface ChipmunkBody : NSObject <ChipmunkBaseObject> {
12 @private
13  cpBody _body;
14  id data;
15 }
16 
19 +(ChipmunkBody *)bodyFromCPBody:(cpBody *)body;
20 
25 + (id)bodyWithMass:(cpFloat)mass andMoment:(cpFloat)moment;
26 
31 + (id)staticBody;
32 
37 - (id)initWithMass:(cpFloat)mass andMoment:(cpFloat)moment;
38 
43 - (id)initStaticBody;
44 
46 @property(nonatomic, assign) cpFloat mass;
47 
49 @property(nonatomic, assign) cpFloat moment;
50 
52 @property(nonatomic, assign) cpVect pos;
53 
55 @property(nonatomic, assign) cpVect vel;
56 
58 @property(nonatomic, assign) cpVect force;
59 
61 @property(nonatomic, assign) cpFloat angle;
62 
64 @property(nonatomic, assign) cpFloat angVel;
65 
67 @property(nonatomic, assign) cpFloat torque;
68 
70 @property(nonatomic, readonly) cpVect rot;
71 
73 @property(nonatomic, readonly) cpBody *body;
74 
79 @property(nonatomic, assign) id data;
80 
82 @property(nonatomic, assign) cpFloat velLimit;
83 
85 @property(nonatomic, assign) cpFloat angVelLimit;
86 
88 @property(nonatomic, readonly) bool isSleeping;
89 
91 @property(nonatomic, readonly) bool isRogue;
92 
94 @property(nonatomic, readonly) bool isStatic;
95 
97 @property(nonatomic, readonly) cpFloat kineticEnergy;
98 
100 @property(nonatomic, readonly) ChipmunkSpace *space;
101 
106 - (cpVect)local2world:(cpVect)v;
107 
112 - (cpVect)world2local:(cpVect)v;
113 
118 - (cpVect)velocityAtLocalPoint:(cpVect)p;
119 
124 - (cpVect)velocityAtWorldPoint:(cpVect)p;
125 
130 - (void)resetForces;
131 
137 - (void)applyForce:(cpVect)force offset:(cpVect)offset;
138 
144 - (void)applyImpulse:(cpVect)impulse offset:(cpVect)offset;
145 
147 - (void)activate;
148 
150 - (void)activateStatic:(ChipmunkShape *)filter;
151 
158 - (void)sleepWithGroup:(ChipmunkBody *)group;
159 
163 - (void)sleep;
164 
166 - (NSArray *)shapes;
167 
169 - (NSArray *)constraints;
170 
172 typedef void (^ChipmunkBodyArbiterIteratorBlock)(cpArbiter *arbiter);
173 
175 - (void)eachArbiter:(ChipmunkBodyArbiterIteratorBlock)block;
176 
178 - (void)addToSpace:(ChipmunkSpace *)space;
180 - (void)removeFromSpace:(ChipmunkSpace *)space;
181 
184 -(void)updateVelocity:(cpFloat)dt gravity:(cpVect)gravity damping:(cpFloat)damping;
185 
188 -(void)updatePosition:(cpFloat)dt;
189 
190 @end