atan2(y, x)
memiliki diskontinuitas pada 180 ° di mana ia beralih ke -180 ° ..0 ° searah jarum jam.
Bagaimana cara memetakan rentang nilai ke 0 ° ..360 °?
ini kode saya:
CGSize deltaPoint = CGSizeMake(endPoint.x - startPoint.x, endPoint.y - startPoint.y);
float swipeBearing = atan2f(deltaPoint.height, deltaPoint.width);
Saya sedang menghitung arah acara sentuh menggesek yang diberikan startPoint
dan endPoint
, kedua struktur titik XY. Kode untuk iPhone tetapi bahasa apa pun yang mendukung atan2f()
akan dilakukan.