atan2(y, x) มีความไม่ต่อเนื่องที่ 180 °ซึ่งจะเปลี่ยนเป็น -180 ° ..0 °ไปตามเข็มนาฬิกา
ฉันจะจับคู่ช่วงของค่าเป็น 0 ° ..360 °ได้อย่างไร
นี่คือรหัสของฉัน:
CGSize deltaPoint = CGSizeMake(endPoint.x - startPoint.x, endPoint.y - startPoint.y);
float swipeBearing = atan2f(deltaPoint.height, deltaPoint.width);
ฉันกำลังคำนวณทิศทางของเหตุการณ์การสัมผัสที่ปัดตามstartPointและendPointโครงสร้างจุด XY ทั้งสอง รหัสนี้ใช้สำหรับ iPhone แต่ภาษาใดก็ได้ที่รองรับatan2f()จะทำ