atan2 с CGPoint Iterator - PullRequest
       31

atan2 с CGPoint Iterator

1 голос
/ 06 января 2012
vector<CGPoint>::iterator i;
vector<CGPoint>* bp = bicyclePad.bikePathPoints;
for(i = bp->begin(); i != bp->end()-3; i++){
    angle = atan2((*i).y/(*i).x) * 180/ PI;
}

Я думаю, atan2 можно использовать только с числами с плавающей запятой и с двойными числами. но я пытаюсь сделать это с помощью итератора. Как бы я поступил так же?

Ответы [ 2 ]

4 голосов
/ 06 января 2012

atan2 принимает два аргумента:

angle = std::atan2(i->y, i->x) * 180 / PI;

должно работать нормально.Будет выбрана правильная перегрузка (в зависимости от того, что CGFloat typedefs).

Обратите внимание, что i->x и i->y (которые строго эквивалентны (*i).x и (*i).y) являются числами (извведите CGFloat), а не итераторы.

2 голосов
/ 06 января 2012

Это должно работать atan2(i->y, i->x) * 180 / PI

...