Roads API কোনও রুট বরাবর সংগ্রহ করা ১০০টি পর্যন্ত জিপিএস পয়েন্ট নেয় এবং ডেটার একই ধরনের সেট রিটার্ন করে, সাথে পয়েন্টগুলি সেইসব সম্ভাব্য রোডে স্ন্যাপ করা হয় যেগুলি ধরে গাড়িটি যাচ্ছিল। ঐচ্ছিকভাবে, আপনি পয়েন্ট ইন্টারপোলেট করার অনুরোধ করতে পারেন, এর ফলে এমন একটি পাথ তৈরি হবে যা রাস্তার জিওমেট্রিকে মসৃণভাবে অনুসরণ করে।
অনুরোধ
আপনাকে নিম্নলিখিত ফর্মের মাধ্যমে HTTPS ব্যবহার করে Snap to Road-এ অনুরোধ পাঠাতে হবে:
https://roads.googleapis.com/v1/snapToRoads?parameters&key=YOUR_API_KEYপ্রয়োজনীয় প্যারামিটার
-
পাথ
যে পাথ স্ন্যাপ করতে হবে। পাথ প্যারামিটার অক্ষাংশ/দ্রাঘিমাংশ জোড়ার তালিকা গ্রহণ করে। অক্ষাংশ ও দ্রাঘিমাংশের মান কমা দিয়ে আলাদা করতে হবে। পাইপ চিহ্ন দিয়ে কোঅর্ডিনেট আলাদা করতে হবে: "|"। যেমন:
path=60.170880,24.942795|60.170879,24.942796|60.170877,24.942796.মনে রাখবেন: স্ন্যাপিং অ্যালগরিদম সেইসব পয়েন্টের জন্য সবচেয়ে ভালো কাজ করে যেগুলি খুব বেশি দূরে অবস্থিত নয়। আপনি যদি অদ্ভুত স্ন্যাপিং আচরণ লক্ষ্য করেন, তাহলে এমন পাথ তৈরি করার চেষ্টা করুন যেগুলিতে পয়েন্টগুলি একে অপরের কাছাকাছি থাকে। রাস্তায় স্ন্যাপ করার কোয়ালিটি সবচেয়ে ভালো করার জন্য, আপনাকে এমন পাথ প্রদান করতে হবে যেখানে পরপর দুটি পয়েন্টের মধ্যে দূরত্ব ৩০০ মিটারের মধ্যে থাকে। এছাড়াও, এটি জিপিএস সিগন্যাল হারিয়ে যাওয়া বা নয়েজের কারণে পরপর পয়েন্টের মধ্যে হওয়া কোনও বিচ্ছিন্ন, দীর্ঘ জাম্প ম্যানেজ করতে সাহায্য করবে।
ঐচ্ছিক প্যারামিটার
-
ইন্টারপোলেট করা
সম্পূর্ণ রাস্তার জ্যামিতি তৈরি করে এমন সব পয়েন্ট অন্তর্ভুক্ত করার জন্য কোনও পাথ ইন্টারপোলেট করা হবে কিনা। সত্য হলে, অতিরিক্ত ইন্টারপোলেটেড পয়েন্টও ফেরানো হবে, এর ফলে এমন একটি পাথ তৈরি হবে যা মসৃণভাবে রাস্তার জ্যামিতি অনুসরণ করে, এমনকি কোণে এবং টানেলের মধ্য দিয়েও। ইন্টারপোলেট করা পাথে সাধারণত মূল পাথের থেকে বেশি পয়েন্ট থাকে। ডিফল্ট হিসেবে
false।
উদাহরণ
নিম্নলিখিত অনুরোধটি রাস্তার জ্যামিতিতে নির্দিষ্ট পয়েন্ট স্ন্যাপ করে। এই
নির্দিষ্ট ডেটা সেট একটি বৃত্তাকার রাস্তা অনুসরণ করে; interpolate=true
সেট করলে রিটার্ন করা জ্যামিতি রাস্তার বক্রতার সাথে মিলে যায়। interpolate=false-এর সাহায্যে
স্ন্যাপ করা পাথ এখনও রাস্তা ফলো করে, কিন্তু
ফলাফল হিসেবে প্রাপ্ত পলিলাইন ততটা মসৃণ হয় না।
ইউআরএল
https://roads.googleapis.com/v1/snapToRoads ?interpolate=true &path=-35.27801%2C149.12958%7C-35.28032%2C149.12907%7C-35.28099%2C149.12929%7C-35.28144%2C149.12984%7C-35.28194%2C149.13003%7C-35.28282%2C149.12956%7C-35.28302%2C149.12881%7C-35.28473%2C149.12836 &key=YOUR_API_KEY
cURL
curl -L -X GET 'https://roads.googleapis.com/v1/snapToRoads?path=-35.27801%2C149.12958%7C-35.28032%2C149.12907%7C-35.28099%2C149.12929%7C-35.28144%2C149.12984%7C-35.28194%2C149.13003%7C-35.28282%2C149.12956%7C-35.28302%2C149.12881%7C-35.28473%2C149.12836&interpolate=true&key=YOUR_API_KEY'
প্রতিক্রিয়া
প্রতিটি সঠিক অনুরোধের জন্য, Roads API অনুরোধ URL-এর মধ্যে উল্লিখিত ফর্ম্যাটে উত্তর দেয়, যেমন নিম্নলিখিত JSON উত্তর।
{ "snappedPoints": [ { "location": { "latitude": -35.27800489993019, "longitude": 149.129531998742 }, "originalIndex": 0, "placeId": "ChIJr_xl0GdNFmsRsUtUbW7qABM", }, { "location": { "latitude": -35.2784195, "longitude": 149.12946589999999 }, "placeId": "ChIJr_xl0GdNFmsRsUtUbW7qABM", }, { "location": { "latitude": -35.2784195, "longitude": 149.12946589999999 }, "placeId": "ChIJ6aXGemhNFmsRZE_zHqhmrG4", }, { "location": { "latitude": -35.2792731, "longitude": 149.12933809999998 }, "placeId": "ChIJ6aXGemhNFmsRZE_zHqhmrG4", }, { "location": { "latitude": -35.2792731, "longitude": 149.12933809999998 }, "placeId": "ChIJTcTdZ2hNFmsRXokM4mWCWfk", }, { "location": { "latitude": -35.279557, "longitude": 149.1292973 }, "placeId": "ChIJTcTdZ2hNFmsRXokM4mWCWfk", }, { "location": { "latitude": -35.279557, "longitude": 149.1292973 }, "placeId": "ChIJiUfNQmhNFmsRSsAI-1m6y1g", }, { "location": { "latitude": -35.279610999999996, "longitude": 149.1292889 }, "placeId": "ChIJiUfNQmhNFmsRSsAI-1m6y1g", }, { "location": { "latitude": -35.2796484, "longitude": 149.1292791 }, "placeId": "ChIJiUfNQmhNFmsRSsAI-1m6y1g", }, { "location": { "latitude": -35.2796484, "longitude": 149.1292791 }, "placeId": "ChIJ_RyFQ2hNFmsRoHJAbW7qABM", }, { "location": { "latitude": -35.279947299999996, "longitude": 149.1291894 }, "placeId": "ChIJ_RyFQ2hNFmsRoHJAbW7qABM", }, { "location": { "latitude": -35.279947299999996, "longitude": 149.1291894 }, "placeId": "ChIJOyypT2hNFmsRZBtscGL0htw", }, { "location": { "latitude": -35.280323564795005, "longitude": 149.1290903128365 }, "originalIndex": 1, "placeId": "ChIJOyypT2hNFmsRZBtscGL0htw", }, { "location": { "latitude": -35.2803426, "longitude": 149.12908529999999 }, "placeId": "ChIJOyypT2hNFmsRZBtscGL0htw", }, { "location": { "latitude": -35.2803426, "longitude": 149.12908529999999 }, "placeId": "ChIJr8xRTGhNFmsRzMb-rxgjspc", }, { "location": { "latitude": -35.280409899999995, "longitude": 149.1290699 }, "placeId": "ChIJr8xRTGhNFmsRzMb-rxgjspc", }, { "location": { "latitude": -35.28048179999999, "longitude": 149.129062 }, "placeId": "ChIJr8xRTGhNFmsRzMb-rxgjspc", }, { "location": { "latitude": -35.2805541, "longitude": 149.1290623 }, "placeId": "ChIJr8xRTGhNFmsRzMb-rxgjspc", }, { "location": { "latitude": -35.280626, "longitude": 149.1290712 }, "placeId": "ChIJr8xRTGhNFmsRzMb-rxgjspc", }, { "location": { "latitude": -35.280626, "longitude": 149.1290712 }, "placeId": "ChIJv5r0smlNFmsR5nunau79Fv4", }, { "location": { "latitude": -35.280695099999996, "longitude": 149.12908489999998 }, "placeId": "ChIJv5r0smlNFmsR5nunau79Fv4", }, { "location": { "latitude": -35.2807629, "longitude": 149.1291046 }, "placeId": "ChIJv5r0smlNFmsR5nunau79Fv4", }, { "location": { "latitude": -35.2808294, "longitude": 149.1291306 }, "placeId": "ChIJv5r0smlNFmsR5nunau79Fv4", }, { "location": { "latitude": -35.2809064, "longitude": 149.1291693 }, "placeId": "ChIJv5r0smlNFmsR5nunau79Fv4", }, { "location": { "latitude": -35.280968200000004, "longitude": 149.129208 }, "placeId": "ChIJv5r0smlNFmsR5nunau79Fv4", }, { "location": { "latitude": -35.28101395754623, "longitude": 149.1292430025548 }, "originalIndex": 2, "placeId": "ChIJv5r0smlNFmsR5nunau79Fv4", }, { "location": { "latitude": -35.28103840000001, "longitude": 149.1292617 }, "placeId": "ChIJv5r0smlNFmsR5nunau79Fv4", }, { "location": { "latitude": -35.2810936, "longitude": 149.1293121 }, "placeId": "ChIJv5r0smlNFmsR5nunau79Fv4", }, { "location": { "latitude": -35.2810979, "longitude": 149.1293176 }, "placeId": "ChIJv5r0smlNFmsR5nunau79Fv4", }, { "location": { "latitude": -35.2810979, "longitude": 149.1293176 }, "placeId": "ChIJpYMSrmlNFmsRXkCoIkZxgBg", }, { "location": { "latitude": -35.281152399999996, "longitude": 149.1294256 }, "placeId": "ChIJpYMSrmlNFmsRXkCoIkZxgBg", }, { "location": { "latitude": -35.281152399999996, "longitude": 149.1294256 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.2811784, "longitude": 149.1294706 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.2812258, "longitude": 149.1295413 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.2812771, "longitude": 149.12960759999999 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.281332, "longitude": 149.1296695 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.2813904, "longitude": 149.12972670000002 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.281451700000005, "longitude": 149.1297788 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.28146506991143, "longitude": 149.12978858234607 }, "originalIndex": 3, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.28151580000001, "longitude": 149.1298257 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.28158259999999, "longitude": 149.129867 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.281666099999995, "longitude": 149.1299091 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.2817377, "longitude": 149.1299379 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.281810899999996, "longitude": 149.1299602 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.281884999999996, "longitude": 149.1299765 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.28194399606459, "longitude": 149.1299842294294 }, "originalIndex": 4, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.281959799999996, "longitude": 149.12998629999998 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.282035199999996, "longitude": 149.1299895 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.2821254, "longitude": 149.1299851 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.282199999999996, "longitude": 149.1299743 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.2822739, "longitude": 149.1299573 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.2823468, "longitude": 149.129934 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.2824178, "longitude": 149.1299043 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.2824379, "longitude": 149.1298945 }, "placeId": "ChIJ601MoWlNFmsR5mvkfPp2ovA", }, { "location": { "latitude": -35.2824379, "longitude": 149.1298945 }, "placeId": "ChIJe9LPnWlNFmsR7mJw8mYHwG0", }, { "location": { "latitude": -35.282472999999996, "longitude": 149.1298835 }, "placeId": "ChIJe9LPnWlNFmsR7mJw8mYHwG0", }, { "location": { "latitude": -35.2825375, "longitude": 149.1298525 }, "placeId": "ChIJe9LPnWlNFmsR7mJw8mYHwG0", }, { "location": { "latitude": -35.28257309999999, "longitude": 149.1298319 }, "placeId": "ChIJe9LPnWlNFmsR7mJw8mYHwG0", }, { "location": { "latitude": -35.28257309999999, "longitude": 149.1298319 }, "placeId": "ChIJaUpThGlNFmsRMHWxoH7EOsc", }, { "location": { "latitude": -35.282665400000006, "longitude": 149.12974459999998 }, "placeId": "ChIJaUpThGlNFmsRMHWxoH7EOsc", }, { "location": { "latitude": -35.28274030000001, "longitude": 149.1296645 }, "placeId": "ChIJaUpThGlNFmsRMHWxoH7EOsc", }, { "location": { "latitude": -35.282809799999995, "longitude": 149.12957799999998 }, "placeId": "ChIJaUpThGlNFmsRMHWxoH7EOsc", }, { "location": { "latitude": -35.28282136229385, "longitude": 149.12956142620385 }, "originalIndex": 5, "placeId": "ChIJaUpThGlNFmsRMHWxoH7EOsc", }, { "location": { "latitude": -35.2828744, "longitude": 149.1294854 }, "placeId": "ChIJaUpThGlNFmsRMHWxoH7EOsc", }, { "location": { "latitude": -35.282922299999996, "longitude": 149.1294044 }, "placeId": "ChIJaUpThGlNFmsRMHWxoH7EOsc", }, { "location": { "latitude": -35.282931500000004, "longitude": 149.1293876 }, "placeId": "ChIJaUpThGlNFmsRMHWxoH7EOsc", }, { "location": { "latitude": -35.2830263, "longitude": 149.1291788 }, "placeId": "ChIJaUpThGlNFmsRMHWxoH7EOsc", }, { "location": { "latitude": -35.2830263, "longitude": 149.1291788 }, "placeId": "ChIJyd3JiWlNFmsR9RUq2ySTTZQ", }, { "location": { "latitude": -35.283054, "longitude": 149.1290996 }, "placeId": "ChIJyd3JiWlNFmsR9RUq2ySTTZQ", }, { "location": { "latitude": -35.2830794, "longitude": 149.1290094 }, "placeId": "ChIJyd3JiWlNFmsR9RUq2ySTTZQ", }, { "location": { "latitude": -35.2830794, "longitude": 149.1290094 }, "placeId": "ChIJWSb8ImpNFmsRp_4JAxJFE1A", }, { "location": { "latitude": -35.28313383700836, "longitude": 149.12893500604946 }, "originalIndex": 6, "placeId": "ChIJWSb8ImpNFmsRp_4JAxJFE1A", }, { "location": { "latitude": -35.283134499999996, "longitude": 149.12893409999998 }, "placeId": "ChIJWSb8ImpNFmsRp_4JAxJFE1A", }, { "location": { "latitude": -35.283190399999995, "longitude": 149.1288668 }, "placeId": "ChIJWSb8ImpNFmsRp_4JAxJFE1A", }, { "location": { "latitude": -35.2832503, "longitude": 149.1288041 }, "placeId": "ChIJWSb8ImpNFmsRp_4JAxJFE1A", }, { "location": { "latitude": -35.2833133, "longitude": 149.1287463 }, "placeId": "ChIJWSb8ImpNFmsRp_4JAxJFE1A", }, { "location": { "latitude": -35.2833794, "longitude": 149.128694 }, "placeId": "ChIJWSb8ImpNFmsRp_4JAxJFE1A", }, { "location": { "latitude": -35.283448299999996, "longitude": 149.128647 }, "placeId": "ChIJWSb8ImpNFmsRp_4JAxJFE1A", }, { "location": { "latitude": -35.2835199, "longitude": 149.1286054 }, "placeId": "ChIJWSb8ImpNFmsRp_4JAxJFE1A", }, { "location": { "latitude": -35.2835934, "longitude": 149.1285699 }, "placeId": "ChIJWSb8ImpNFmsRp_4JAxJFE1A", }, { "location": { "latitude": -35.283668899999995, "longitude": 149.12854059999998 }, "placeId": "ChIJWSb8ImpNFmsRp_4JAxJFE1A", }, { "location": { "latitude": -35.28372649999999, "longitude": 149.1285237 }, "placeId": "ChIJWSb8ImpNFmsRp_4JAxJFE1A", }, { "location": { "latitude": -35.28386179999999, "longitude": 149.12849319999998 }, "placeId": "ChIJWSb8ImpNFmsRp_4JAxJFE1A", }, { "location": { "latitude": -35.2839978, "longitude": 149.1284682 }, "placeId": "ChIJWSb8ImpNFmsRp_4JAxJFE1A", }, { "location": { "latitude": -35.2840205, "longitude": 149.12846779999998 }, "placeId": "ChIJWSb8ImpNFmsRp_4JAxJFE1A", }, { "location": { "latitude": -35.2840205, "longitude": 149.12846779999998 }, "placeId": "ChIJZe8tFWpNFmsR4brZ1vldk2E", }, { "location": { "latitude": -35.2840524, "longitude": 149.12845969999998 }, "placeId": "ChIJZe8tFWpNFmsR4brZ1vldk2E", }, { "location": { "latitude": -35.284341500000004, "longitude": 149.1284124 }, "placeId": "ChIJZe8tFWpNFmsR4brZ1vldk2E", }, { "location": { "latitude": -35.2843875, "longitude": 149.1284034 }, "placeId": "ChIJZe8tFWpNFmsR4brZ1vldk2E", }, { "location": { "latitude": -35.2843875, "longitude": 149.1284034 }, "placeId": "ChIJVx7Ta2pNFmsRx9OI9CnN5tI", }, { "location": { "latitude": -35.2845916, "longitude": 149.1283726 }, "placeId": "ChIJVx7Ta2pNFmsRx9OI9CnN5tI", }, { "location": { "latitude": -35.2845916, "longitude": 149.1283726 }, "placeId": "ChIJtWxAZmpNFmsRlbUCkc6VtnA", }, { "location": { "latitude": -35.28459730000001, "longitude": 149.1283703 }, "placeId": "ChIJtWxAZmpNFmsRlbUCkc6VtnA", }, { "location": { "latitude": -35.284728747199374, "longitude": 149.12834860726772 }, "originalIndex": 7, "placeId": "ChIJtWxAZmpNFmsRlbUCkc6VtnA", }, ], }
উত্তরে নিম্নলিখিত স্কিমা ব্যবহার করা হয়েছে।
SnapToRoadsResponse
| ফিল্ড | প্রয়োজনীয় | ধরন | বিবরণ |
|---|---|---|---|
|
ঐচ্ছিক | Array<SnappedPoint> |
স্ন্যাপ করা পয়েন্টের অ্যারে। আরও তথ্যের জন্য SnappedPoint দেখুন। |
|
ঐচ্ছিক | স্ট্রিং |
ব্যবহারকারীর কাছে দৃশ্যমান সতর্কতার মেসেজ সহ স্ট্রিং। |
SnappedPoint
| ফিল্ড | প্রয়োজনীয় | ধরন | বিবরণ |
|---|---|---|---|
|
প্রয়োজনীয় | LatitudeLongitudeLiteral | আরও তথ্যের জন্য LatitudeLongitudeLiteral দেখুন। |
|
প্রয়োজনীয় | স্ট্রিং |
কোনও জায়গার জন্য অনন্য শনাক্তকারী। Roads API-এর মাধ্যমে ফেরত পাঠানো সব জায়গার আইডি রাস্তার সেগমেন্টের সাথে সম্পর্কিত। |
|
ঐচ্ছিক | নম্বর |
একটি পূর্ণসংখ্যা যা মূল
অনুরোধে সংশ্লিষ্ট মান নির্দেশ করে। অনুরোধের প্রতিটি ভ্যালু উত্তরের স্ন্যাপ করা ভ্যালুর সাথে
ম্যাপ করা উচিত। তবে, আপনি interpolate=true সেট করে থাকলে অথবা
নিকটবর্তী রাস্তা ব্যবহার করলে, অনুরোধের চেয়ে বেশি স্থানাঙ্ক উত্তরে থাকতে পারে। ইন্টারপোলেটেড ভ্যালুতে
|
LatitudeLongitudeLiteral
দশমিক ডিগ্রিতে অক্ষাংশ এবং দ্রাঘিমাংশ সহ একটি নির্দিষ্ট অবস্থান বর্ণনা করে এমন একটি অবজেক্ট।
| ফিল্ড | প্রয়োজনীয় | ধরন | বিবরণ |
|---|---|---|---|
|
প্রয়োজনীয় | নম্বর |
দশমিক ডিগ্রিতে অক্ষাংশ |
|
প্রয়োজনীয় | নম্বর |
দশমিক ডিগ্রিতে দ্রাঘিমাংশ |