मेरे कोड में मुझे अक्षांश/लंबे मानों के जोड़े के बीच बहुत दूरी की गणना करना है।दूरी गणना फ़ंक्शन का अनुकूलन
कोड इस तरह दिखता है:
double result = Math.Acos(Math.Sin(lat2rad) * Math.Sin(lat1rad)
+ Math.Cos(lat2rad) * Math.Cos(lat1rad) * Math.Cos(lon2rad - lon1rad));
(lat2rad जैसे अक्षांश रेडियंस में बदल जाती है)।
मैंने इस फ़ंक्शन को मेरे एप्लिकेशन की प्रदर्शन बाधा के रूप में पहचाना है। क्या इसे सुधारने का कोई तरीका है?
(निर्देशांक अलग-अलग होने के बाद से मैं लुक-अप टेबल का उपयोग नहीं कर सकता)। मैंने this question पर भी देखा है जहां एक ग्रिड की तरह एक लुकअप योजना सुझाई जाती है, जो एक संभावना हो सकती है।
आपके समय के लिए धन्यवाद! ;-)
आप जानते हैं कि इस एल्गोरिथ्म केवल सही है हो सकता है अगर आप को लगता है कि पृथ्वी एक आदर्श क्षेत्र और सन्निकटन और वास्तविक जवाब सीए के बीच मतभेद है एन काफी महत्वपूर्ण हो (कम से कम मेरी दुनिया में)। http://en.wikipedia.org/wiki/WGS84 –
यह सच है। आपको वास्तव में महान सर्कल मार्गों की गणना करने की आवश्यकता हो सकती है। –
हाँ मुझे पता है, लेकिन मेरे मामले के लिए अनुमान ठीक है। जहां तक मुझे पता है कि पृथ्वी घूर्णन के कारण भूमध्य रेखा के चारों ओर विचलन सबसे बड़ा है। – puls200