मैं MKMapView
में स्थानों के बीच मध्यबिंदु निर्धारित करने का प्रयास कर रहा हूं। मैं here (और here) के रूप में उल्लिखित विधि का पालन कर रहा हूं और इसे उद्देश्य-सी में फिर से लिखता हूं, लेकिन मानचित्र को बाफिन द्वीप के पूर्वोत्तर में केंद्रित किया जा रहा है, जो कि दो बिंदुओं के नजदीक नहीं है।2 कोरिडिनेनेट्स के बीच मिडपॉइंट निर्धारित करना
मेरे विधि ऊपर लिंक जावा पद्धति पर आधारित:
+(CLLocationCoordinate2D)findCenterPoint:(CLLocationCoordinate2D)_lo1 :(CLLocationCoordinate2D)_loc2 {
CLLocationCoordinate2D center;
double lon1 = _lo1.longitude * M_PI/180;
double lon2 = _loc2.longitude * M_PI/100;
double lat1 = _lo1.latitude * M_PI/180;
double lat2 = _loc2.latitude * M_PI/100;
double dLon = lon2 - lon1;
double x = cos(lat2) * cos(dLon);
double y = cos(lat2) * sin(dLon);
double lat3 = atan2(sin(lat1) + sin(lat2), sqrt((cos(lat1) + x) * (cos(lat1) + x) + y * y));
double lon3 = lon1 + atan2(y, cos(lat1) + x);
center.latitude = lat3 * 180/M_PI;
center.longitude = lon3 * 180/M_PI;
return center;
}
2 मापदंडों निम्न डेटा है:
_loc1:
latitude = 45.4959839
longitude = -73.67826455
_loc2:
latitude = 45.482889
longitude = -73.57522299
ऊपर सही ढंग से नक्शे पर जगह कर रहे हैं (में मॉन्ट्रियल के आसपास) । मैं अपने विधि निम्नलिखित लौट 2 के बीच मध्य में नक्शे को केंद्रित करने के लिए कोशिश कर रहा हूँ, फिर भी:
latitude = 65.29055
longitude = -82.55425
जो आर्कटिक, में कहीं जब यह दक्षिण लगभग 500 मील की दूरी पर होना चाहिए।
हाँ ... यह होगा। –