2009-06-30 18 views
8

मैं दो एक गूगल मानचित्र पर दो बिंदु के बीच दूरी की गणना करने के लिए काम कर रहे कार्यों पाने के लिए प्रबंधित किया है। एक जिसे मैंने वेब पर विभिन्न स्थानों से (चुरा लिया) और दूसरा Google मानचित्र API में GLatLng.distance विधि से उपयोग किया है।क्या Google मानचित्र गलत दूरी की गणना कर रहा है?

कारण मैं दो कार्यों का उपयोग कर रहा है, क्योंकि मैं कुछ परिणाम मैं प्रपत्र गूगल हो रही थी, उदाहरण के लिए, भूमि के बीच की दूरी को समाप्त और ब्रिटेन में जॉन ओ दलिया दिया जाता है के बारे में अजीब देखा के रूप में

    इस प्रकार है
  • मेरे फंक्शन: 985km
  • गूगल: 986km
  • विकिपीडिया: 970km

विकिपीडिया परिणाम से 15/16 किलोमीटर का अंतर क्योंकि गूगल एक स्थान resu लौट रहा है वास्तविक जॉन ओ ग्रोट्स से लगभग 15 किमी दूर लेफ्टिनेंट। तो यह सही है।

तो फिर मैं लंदन और मिलान के बीच की दूरी का परीक्षण किया और मिल गया

  • मेरे फंक्शन: 1232km
  • गूगल: 1234km
  • Wolfram Alpha: 958.5km

तो कोई अधिक है 250 किमी से अधिक। तब मैं न्यूयॉर्क के लिए लंदन की कोशिश की

  • मेरे फंक्शन: 8244km
  • गूगल: 8254km
  • Wolfram Alpha: 5581km

आम तौर पर, लंदन और न्यूयॉर्क के बीच की दूरी के आसपास माना जाता है 5560km। लेकिन अब मेरा काम और Google फ़ंक्शन दोनों निशान से बाहर निकलते प्रतीत होते हैं।

फ़ंक्शन मैं can be found here का उपयोग कर रहा हूं। मूल साइट से लिंक न करने के लिए लेखक से मेरी माफ़ी, लेकिन लेआउट वास्तव में भ्रमित है। मैं distHaversine समारोह का उपयोग कर रहा हूँ।

मुझे स्वीकार करना होगा, गणित मेरे आराम स्तर से परे है, लेकिन मुझे समझ मिलती है, और जैसा कि मैं इसे समझता हूं, Google भी हावरसिन विधि का उपयोग करता है। मैं यह भी समझता हूं कि यह लगभग 0.3% तक बंद हो सकता है, लेकिन यह उन अंतरों के लिए जिम्मेदार नहीं होगा जो मैं देख रहा हूं। और मैं इस तथ्य से और उलझन में हूं कि कभी-कभी सही होता है, और कभी-कभी स्थानों के बीच आमतौर पर बताई गई दूरी से दूर होता है। यह दूरी जितना अधिक दिखाई देता है, उतना ही अधिक है।

तो जो गलत है। Google और मैं जिस फ़ंक्शन का उपयोग कर रहा हूं, या हर कोई?

+3

जब मैं मैन्युअल रूप से स्रोत साइट (http://www.movable-type.co.uk/scripts/latlong.html) पर लंदन और न्यूयॉर्क के लिए अक्षांश/लंबे समन्वय दर्ज करता हूं तो यह आसपास की सही दूरी देता है 5560 किमी, क्या आप इस्तेमाल किए जा रहे निर्देशांक की पुष्टि कर सकते हैं? – Peter

+0

लंदन lat1: -0.1262362, lon1: 51.5001524 न्यूयॉर्क lat2: -73.986951, lon2: 40.756054 – gargantuan

+1

ओह प्रिय। ऐसा प्रतीत होता है कि मुझे अपना अक्षांश और लंबे समय तक मिश्रित किया जा रहा है। पीटर, चूंकि आपने स्पष्ट समाधान की ओर इशारा किया है, जो इसे मूवबल टाइप टूल के साथ परीक्षण करने के लिए होता, तो सवालों के जवाब देने में संकोच न करें और मैं जवाब स्वीकार करूंगा। – gargantuan

उत्तर

3

यह पता चला है के रूप में, मैं अक्षांश और देशांतर मानकों था (हवा, पानी,?)।

1

जब तक मैं इस गलतफहमी हूँ:

विसंगति तथ्य यह है कि गूगल मैप्स दूरी है कि आप ड्राइव और नहीं 'के रूप में कौवा मक्खियों' की गणना से निर्गत होना सकते हैं?

+0

मूल प्रश्न पर गर्गंतुन की टिप्पणी देखें। समस्या हल हो गई है, लेकिन किसी ने भी 'जवाब' नहीं दिया –

3

गूगल मैप्स कम से कम सीधे दूरी की गणना नहीं करता है - यह सड़कों से चला जाता है और गलत चारों ओर जिस तरह से