1

我想用力和从左到右的方向在接触结束的方法上抛出一个对象。我创建了世界和身体对象并计算了滑动距离、角度和力,但它不能正常工作。这是我的代码--

- (void)ccTouchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
    NSLog(@"tocuehs began");

    UITouch *touch=[touches anyObject];
    point1 = [touch locationInView:[touch view]];
}

- (void)ccTouchesEnded:(NSSet *)touches withEvent:(UIEvent *)event {
    UITouch *touch=[touches anyObject];
    point2 = [touch locationInView:[touch view]];

    float distance = ccpDistance(point1, point2);
    int maxDistance = 50;
    CGFloat strength = distance / maxDistance;
    CGFloat angle = atan2f(point2.y - point1.y, point2.x - point1.x);
    angle = - 1 * CC_DEGREES_TO_RADIANS(angle);
    //  int force = strength * maxForce;
    _body->ApplyLinearImpulse(b2Vec2(10.0f+cos(angle)*25.0f,10.0f+sin(angle)*25.0f), _body->GetPosition());
}

请帮忙!

4

0 回答 0