Reputation: 4209
NSMutableArray *sumPositionArray;
sumPositionArray = [[NSMutableArray alloc] init];
for (int i = 0; i < 10; i++)
{
b2Body *currentBody = (b2Body*)[[bodies objectAtIndex:i] pointerValue];
b2Vec2 innerPosition=innerCircleBody->GetPosition();
float theta = deltaAngle*i;
float x = radius*cosf(theta);
float y = radius*sinf(theta);
b2Vec2 circlePosition = b2Vec2(x/PTM_RATIO, y/PTM_RATIO);
b2Vec2 sumPosition=innerPosition+circlePosition;
b2Vec2 impulse = b2Vec2(0,0);
b2Vec2 sumposition=innerPosition+circlePosition;
[sumPositionArray addObject:[NSValue valueWithPointer:sumPosition]];
}
I get an error saying: no viable conversion from b2vec2 to 'const void *'
Upvotes: 1
Views: 728
Reputation: 4209
it's working. Thank you @Shailesh
for (int i = 0; i < 10; i++)
{
CGPoint currentBo =[[sumPositionArray objectAtIndex:i] CGPointValue]; // get CGPoint into Array
}
Upvotes: 0
Reputation: 3118
Convert the B2Vec2 coordinates to CGPoint then, you can insert them into the array by making use on NSValue.
NSArray *points = [NSArray arrayWithObjects:
[NSValue valueWithCGPoint:CGPointMake(5.5, 6.6)],
[NSValue valueWithCGPoint:CGPointMake(7.7, 8.8)],
nil];
Upvotes: 2