2016-01-08 6 views
6

मैं दो स्थानों के बीच पथ दिखाने के लिए कोशिश कर रहा हूँ, लेकिन यह सही नहीं है।गूगल मानचित्र एसडीके - पथ नहीं सही

enter image description here

आप देख सकते हैं, ब्लू लाइन (पथ) गंतव्य पर जाने नहीं करता:

if(center.latitude != 0 && center.longitude != 0) 
      { 
      NSString *urlString = [NSString stringWithFormat: 
            @"%@?origin=%f,%f&destination=%f,%f&sensor=true&key=%@", 
            @"https://maps.googleapis.com/maps/api/directions/json", 
            center.latitude, 
            center.longitude, 
            center1.latitude, 
            center1.longitude, 
            KGoogleMapServerKey]; 

      NSError *error; 
       NSDictionary *json =[NSJSONSerialization JSONObjectWithData:[NSData dataWithContentsOfURL:[NSURL URLWithString:urlString] options:NSDataReadingUncached error:&error] options:NSJSONReadingMutableContainers error:&error]; 
      if(json[@"routes"] != nil && [json[@"routes"] count] > 0) 
      { 
       GMSPath *path =[GMSPath pathFromEncodedPath:json[@"routes"][0][@"overview_polyline"][@"points"]]; 
       GMSPolyline *singleLine = [GMSPolyline polylineWithPath:path]; 
       singleLine.strokeWidth = 7; 
       singleLine.strokeColor = [UIColor colorWithRed:56.0/255.0 green:163.0/255.0 blue:249.0/255.0 alpha:1.0]; 
       singleLine.map = mapViewGoogle; 
      } 

इस पथ मैं हो रही है।
यह कैसे तय करने के लिए?

+0

मुझे लगता है कि Google को पता नहीं है कि गंतव्य तक कैसे पहुंचे, क्योंकि कोई रास्ता नहीं है, या निजी क्षेत्र में ऐसा कुछ है। – wf9a5m75

उत्तर

5

आपका मार्ग बहुत लंबा है। अंक की Google दिशा-निर्देश API संख्या से प्रत्येक प्रतिक्रिया में सीमित है। आपके उदाहरण में आपको एन अंक प्राप्त हुए, उनके साथ मार्ग खींचा और ज़ूम किए गए मानचित्र को क्षेत्र में देखें, जहां केवल चार अंक स्थित हैं।
हमेशा सही मार्ग प्रदर्शित करने के लिए आप जूमिंग फिर से कैलकुलेट मार्ग प्रत्येक नक्शे के बाद करना चाहिए (मध्य बिन्दुओं मार्ग एक ही रखने के लिए भी शामिल है)।
उदाहरण के लिए, अपनी स्क्रीन पर पूर्ण मार्ग 50 अंक है। आप मानचित्र को ज़ूम कर रहे हैं, इसलिए केवल 4 अंक प्रदर्शित होते हैं (आपका स्क्रीनशॉट)। अब शुरू, # 5 खत्म और # 2 # 3 # 4 मध्य बिन्दुओं के रूप में के रूप में के रूप में # 1 लेने के लिए और इन बातों के लिए मार्ग खोजने के लिए नया अनुरोध भेजें। आपको नए 50 अंक प्राप्त होंगे, और उनके साथ आप मार्ग के इस हिस्से को अधिक सटीक रूप से आकर्षित कर सकते हैं।

enter image description here

+0

यह उचित लगता है। धन्यवाद – Nitish

1

इस का मुद्दा यह है कि गंतव्य के लिए कोई मार्ग है कि वहाँ, जैसा कि आप यहाँ देख सकते हैं है: Gmap of your Example

मुझे लगता है कि आपका सर्वश्रेष्ठ दांव एक ही दृष्टिकोण है कि Gmaps पहले से ही उपयोग का उपयोग यह है कि, मैं बिंदीदार का उपयोग कर मतलब/आखिरी बिंदु से धराशायी पॉलीलाइन आपको वास्तविक बिंदु पर दिशानिर्देश मिलती है।

आप पॉलीलाइन के तेरा प्रकार लागू करने के लिए बाहर की यहाँ कुछ उदाहरण पता कर सकते हैं:

Creating a dashed using IOS SDK

+0

यदि यह सच है तो Google मानचित्र [** वेब **] पर सही तरीके से पथ क्यों दिखाते हैं (https://www.google.co.in/maps/dir/Vju+AS,+Skreddermoen+35,+4513 + मंडल + नॉर्वे/स्टोरगता + 2, + 0155 + ओस्लो, + नॉर्वे/@ 59.9082978,10.7358573,13z/डेटा = 4m14 4m13 1m5 1m1 1s0x46378e55431b5435:!!!! 0x306f6da1490b5f7b 2m2 1d7.4111312 2d58.0184825!! ! 1m5 1m1 1s0x46416e627216c757:!! 0xd7785d6e9ecf2c43 2m2 1d10.7483587 2d59.9127025 3e0 hl = hi)? – Nitish

संबंधित मुद्दे