Есть ли способ получить основные направления (Север, Запад, Восток и т. Д.) Из Google Directions API? - PullRequest
1 голос
/ 26 сентября 2019

Я уже давно пользуюсь API-интерфейсом Google.Я разрабатываю алгоритм, который извлекает маршрут между двумя точками и обеспечивает основные направления.Например, если автомобиль едет в адресную точку, я должен знать, что в данный момент он движется на север, запад, восток или юг.Направления API предоставляет только такую ​​информацию, как продолжительность, расстояние, маршруты и инструкции на дороге.Но ничего, что касается предмета.Любая идея, где и как получить основные направления при навигации к точке адреса?Ниже я приложил результат запроса к API-адресам Google в формате JSON.

Примечание. Я не занимаюсь разработкой приложения для Android или веб-сайта.Только чистый алгоритм.

{
   "geocoded_waypoints" : [
      {
         "geocoder_status" : "OK",
         "place_id" : "ChIJa147K9HX3IAR-lwiGIQv9i4",
         "types" : [ "amusement_park", "establishment", "point_of_interest" ]
      },
      {
         "geocoder_status" : "OK",
         "place_id" : "ChIJzzgyJU--woARcZqceSdQ3dM",
         "types" : [ "amusement_park", "establishment", "point_of_interest" ]
      }
   ],
   "routes" : [
      {
         "bounds" : {
            "northeast" : {
               "lat" : 34.1358593,
               "lng" : -117.922066
            },
            "southwest" : {
               "lat" : 33.815582,
               "lng" : -118.3517026
            }
         },
         "copyrights" : "Map data ©2019 Google",
         "legs" : [
            {
               "distance" : {
                  "text" : "35.3 mi",
                  "value" : 56746
               },
               "duration" : {
                  "text" : "48 mins",
                  "value" : 2853
               },
               "end_address" : "100 Universal City Plaza, Universal City, CA 91608, USA",
               "end_location" : {
                  "lat" : 34.1358593,
                  "lng" : -118.3511633
               },
               "start_address" : "1313 Disneyland Dr, Anaheim, CA 92802, USA",
               "start_location" : {
                  "lat" : 33.8160897,
                  "lng" : -117.9225225
               },
               "steps" : [
                  {
                     "distance" : {
                        "text" : "10 ft",
                        "value" : 3
                     },
                     "duration" : {
                        "text" : "1 min",
                        "value" : 0
                     },
                     "end_location" : {
                        "lat" : 33.8160679,
                        "lng" : -117.9225314
                     },
                     "html_instructions" : "Head \u003cb\u003esouthwest\u003c/b\u003e",
                     "polyline" : {
                        "points" : "qukmEvvvnUB@"
                     },
                     "start_location" : {
                        "lat" : 33.8160897,
                        "lng" : -117.9225225
                     },
                     "travel_mode" : "DRIVING"
                  },
                  {
                     "distance" : {
                        "text" : "0.1 mi",
                        "value" : 164
                     },
                     "duration" : {
                        "text" : "1 min",
                        "value" : 15
                     },
                     "end_location" : {
                        "lat" : 33.815582,
                        "lng" : -117.9240573
                     },
                     "html_instructions" : "Keep \u003cb\u003eright\u003c/b\u003e",
                     "maneuver" : "keep-right",
                     "polyline" : {
                        "points" : "mukmExvvnUZPLJLLBBFJFLHPBPBL@N?L?J@l@?|A"
                     },
                     "start_location" : {
                        "lat" : 33.8160679,
                        "lng" : -117.9225314
                     },
                     "travel_mode" : "DRIVING"
                  },
                  {
                     "distance" : {
                        "text" : "289 ft",
                        "value" : 88
                     },
                     "duration" : {
                        "text" : "1 min",
                        "value" : 32
                     },
                     "end_location" : {
                        "lat" : 33.816278,
                        "lng" : -117.9242395
                     },
                     "html_instructions" : "Slight \u003cb\u003eright\u003c/b\u003e\u003cdiv style=\"font-size:0.9em\"\u003eRestricted usage road\u003c/div\u003e",
                     "maneuver" : "turn-slight-right",
                     "polyline" : {
                        "points" : "krkmEj`wnUOF?F?DABABCBC?C@E?eB?"
                     },
                     "start_location" : {
                        "lat" : 33.815582,
                        "lng" : -117.9240573
                     },
                     "travel_mode" : "DRIVING"
                  },
                  {
                     "distance" : {
                        "text" : "358 ft",
                        "value" : 109
                     },
                     "duration" : {
                        "text" : "1 min",
                        "value" : 28
                     },
                     "end_location" : {
                        "lat" : 33.8162692,
                        "lng" : -117.9254181
                     },
                     "html_instructions" : "Turn \u003cb\u003eleft\u003c/b\u003e\u003cdiv style=\"font-size:0.9em\"\u003eRestricted usage road\u003c/div\u003e",
                     "maneuver" : "turn-left",
                     "polyline" : {
                        "points" : "wvkmEnawnU@jF"
                     },
                     "start_location" : {
                        "lat" : 33.816278,
                        "lng" : -117.9242395
                     },
                     "travel_mode" : "DRIVING"
                  },
                  {
                     "distance" : {
                        "text" : "92 ft",
                        "value" : 28
                     },
                     "duration" : {
                        "text" : "1 min",
                        "value" : 6
                     },
                     "end_location" : {
                        "lat" : 33.8165219,
                        "lng" : -117.9253712
                     },
                     "html_instructions" : "Turn \u003cb\u003eright\u003c/b\u003e toward \u003cb\u003eSouthwest Pl\u003c/b\u003e/\u003cb\u003eWest Pl\u003c/b\u003e\u003cdiv style=\"font-size:0.9em\"\u003eRestricted usage road\u003c/div\u003e",
                     "maneuver" : "turn-right",
                     "polyline" : {
                        "points" : "uvkmEzhwnUUE[C"
                     },
                     "start_location" : {
                        "lat" : 33.8162692,
                        "lng" : -117.9254181
                     },
                     "travel_mode" : "DRIVING"
                  },
                  {
                     "distance" : {
                        "text" : "394 ft",
                        "value" : 120
                     },
                     "duration" : {
                        "text" : "1 min",
                        "value" : 27
                     },
                     "end_location" : {
                        "lat" : 33.8165324,
                        "lng" : -117.924072
                     },
                     "html_instructions" : "Turn \u003cb\u003eright\u003c/b\u003e toward \u003cb\u003eSouthwest Pl\u003c/b\u003e/\u003cb\u003eWest Pl\u003c/b\u003e\u003cdiv style=\"font-size:0.9em\"\u003eRestricted usage road\u003c/div\u003e",
                     "maneuver" : "turn-right",
                     "polyline" : {
                        "points" : "gxkmEphwnUAcG"
                     },
                     "start_location" : {
                        "lat" : 33.8165219,
                        "lng" : -117.9253712
                     },
                     "travel_mode" : "DRIVING"
                  },
                  {
                     "distance" : {
                        "text" : "0.1 mi",
                        "value" : 164
                     },
                     "duration" : {
                        "text" : "1 min",
                        "value" : 67
                     },
                     "end_location" : {
                        "lat" : 33.8179984,
                        "lng" : -117.9240946
                     },
                     "html_instructions" : "Turn \u003cb\u003eleft\u003c/b\u003e onto \u003cb\u003eSouthwest Pl\u003c/b\u003e/\u003cb\u003eWest Pl\u003c/b\u003e\u003cdiv style=\"font-size:0.9em\"\u003ePartial restricted usage road\u003c/div\u003e",
                     "maneuver" : "turn-left",
                     "polyline" : {
                        "points" : "ixkmEl`wnUI?C?MEY?c@@E?G?EBKDk@?Q?_@?mAA"
                     },
                     "start_location" : {
                        "lat" : 33.8165324,
                        "lng" : -117.924072
                     },
                     "travel_mode" : "DRIVING"
                  },
                  {
                     "distance" : {
                        "text" : "0.1 mi",
                        "value" : 163
                     },
                     "duration" : {
                        "text" : "1 min",
                        "value" : 56
                     },
                     "end_location" : {
                        "lat" : 33.8179846,
                        "lng" : -117.9223305
                     },
                     "html_instructions" : "Turn \u003cb\u003eright\u003c/b\u003e onto \u003cb\u003eW Ball Rd\u003c/b\u003e\u003cdiv style=\"font-size:0.9em\"\u003ePass by Staybridge Suites Anaheim At The Park (on the right)\u003c/div\u003e",
                     "maneuver" : "turn-right",
                     "polyline" : {
                        "points" : "oalmEp`wnU?iB?k@@iA@_C"
                     },
                     "start_location" : {
                        "lat" : 33.8179984,
                        "lng" : -117.9240946
                     },
                     "travel_mode" : "DRIVING"
                  },
                  {
                     "distance" : {
                        "text" : "0.2 mi",
                        "value" : 343
                     },
                     "duration" : {
                        "text" : "1 min",
                        "value" : 62
                     },
                     "end_location" : {
                        "lat" : 33.8206848,
                        "lng" : -117.9230995
                     },
                     "html_instructions" : "Turn \u003cb\u003eleft\u003c/b\u003e onto \u003cb\u003eDisneyland Dr\u003c/b\u003e",
                     "maneuver" : "turn-left",
                     "polyline" : {
                        "points" : "kalmEpuvnUAs@_@Bk@HA?UFKBa@JiDx@i@LIBk@TA@A@GRC?SFEBsA`@"
                     },
                     "start_location" : {
                        "lat" : 33.8179846,
                        "lng" : -117.9223305
                     },
                     "travel_mode" : "DRIVING"
                  },
                  {
                     "distance" : {
                        "text" : "22.3 mi",
                        "value" : 35894
                     },
                     "duration" : {
                        "text" : "25 mins",
                        "value" : 1482
                     },
                     "end_location" : {
                        "lat" : 34.0256221,
                        "lng" : -118.2059515
                     },
                     "html_instructions" : "Slight \u003cb\u003eright\u003c/b\u003e to merge onto \u003cb\u003eI-5 N\u003c/b\u003e toward \u003cb\u003eLos Angeles\u003c/b\u003e",
                     "polyline" : {
                        "points" : "grlmEjzvnUu@MKCIAWIcA]{@[C?SGSGMEQEKCSAEAMAU?]@C?E@E?MBE@I@IBKBA@UJE@EBIDGDKF}ArAs@l@y@r@y@r@}@v@WTs@l@qAjA_@\\]p@}ApAg@b@iAdA}BbCSTYXw@z@uC|CsAxAOP[^cBlBw@x@qBtB}@~@_AbA{@|@s@x@KLEBEDSPGF_BhCa@r@Wh@Wf@Sf@c@jAOb@K^ITW`AMd@_@xAWnAU`Bm@jEi@`Eu@hFOv@GXWlAMh@e@|AM`@M^KX{@vBiB`EaGrMkE|JaEjJgB|DoApCyCzGuBxEy@lBu@~AWl@Q^Uf@_@t@a@r@a@r@A@Yd@y@zA}@|AQZYd@[h@U`@QZ[l@c@|@_@v@{@rBUn@s@hB_BjE_BtDSd@uCfHk@zAu@hB[t@aChGQf@{CjHyAjDiAhCoAxCmDhIkApCkAdCEFoA|B_@j@Yf@gA~Aa@l@g@p@W^a@j@GHgAtAu@dAeGlIe@z@?@A@IPKRA@?@GJSd@_@~@Qh@Qh@WdAADIb@YrAe@~BGREVSbAU~@gAdECF_AzE?@g@zBADWbAOn@}@hCQh@k@~AcB~DYp@Wh@qAjCc@x@QZgBzC_BpC[f@y@tAKPgChFQ^{@jBSf@c@`AyHhQsAbDmAjCKV]v@uBxESd@aBpDoBnEsAnCABGHGNINEJCJGJGRc@`A[t@c@`AoAlCmBjEMZ]t@_@z@w@bBe@|@c@r@OTOTU\\CBc@r@a@h@g@n@e@j@Y^QRi@l@_@b@MPA?_@f@GFw@`AiBjCe@r@S^a@t@Ub@g@fACDq@xAm@tAqAxCiBbEg@lAcAzBYl@Wn@GJIRaBxDuCvGCFSb@oDfIMZ_ArB{@lBm@tA}@rBcAzBg@hAiAjCkBdEqA|CiAtB_BxCaAfBuAhCS`@s@xAo@xAw@rBa@fAIVq@xAcA|BGLgBfDYh@GJGLMVGNsA`Dc@bASj@y@rBa@~@aA|B_B~Da@bAsAhD?@uCbHSd@O`@i@nAm@vAsA`DmB`FIPwC~GiF|Ky@`BGJmBvD{AzCqDjHiBnDkCpFeGlMmCzFkAhCcArCcBxDGLoBjEaAhBmAzBa@t@a@t@mAlBmAlBaB~BW\\qAdBi@p@m@r@mBtBaChCmChCEBwBpBeBfBeAdAKLmBlBgBbBsAnAeAdAQVi@n@kA~A{@dA_@h@e@z@Yf@[l@IN[n@sAvCw@|AIPm@vAq@|AiAfCcAhBq@hAg@p@gBnCcBzB_ApA{D`EkAbAeAx@QJYVYVgDzBw@f@w@d@{CnBmAx@IDwA~@OJQJEBQJCB]NqD|BiBhAwEzCWN}IrFyEtC]T{D`C{D|BwA|@{BvAg@Xg@Ze@XcBlAsE~CkD`CgA|@eDlBoG`EcAn@SLm@^wAz@a@Ve@ZiEdCqAt@?@wBlAGBoBjA}BrAKFGDu@b@k@Xi@XWNcB`Aa@VoDvBwCbBcAn@}@h@yBlAeAj@[RMF_@Ru@b@GDm@\\yAz@SJc@VeAn@q@`@}A|@sBjA{A~@cDjBkAp@cAl@gAn@wCdB_@T_@T_Ap@y@n@g@b@iAfAa@`@UXmAvAa@j@QVwAvBk@|@}A`CeA`B{BhDeA~A_@l@iAfB}@rAeEpGo@bAMPSZCBuAvByBhD_B`C_AxAaJhNuEhHSXSZg@n@MPEDe@j@_@^[\\kAdAe@\\UNOLs@d@CB}@j@sAr@e@TC@MD[Lq@Vs@R_B`@iE|@WFqDr@sAZs@NWDcB^ODc@HcB\\a@JaAP}A\\c@Jg@JgAZi@Nu@XiAd@gAh@eAl@MHKFe@TGDSL{@h@i@^s@j@cAr@}B~A[PeAr@SNyB|A_@\\cAz@qAnAoApA_A|@{A|AYX_A~@}@|@eAbAs@t@uBtBoBpBmAlA{AzAeBdBkAhAeAhAg@f@KLOPs@|@a@n@QXq@fA{@vAy@tA]l@[b@w@pA[b@a@d@]^[\\w@v@YT?@CBKJA?ON]\\kClCmAlA}@t@{@v@A@wEjEoJbJeJ|IQNoBlB]Zc@^ED]Zo@n@q@l@MNc@\\o@d@m@`@y@d@IDaAh@q@Xq@Zq@^i@ZC@k@\\cAt@}@t@CBoBjByCpCkB`B}AzA_CvB}AvAu@r@cA`AoAtAiI~JaCtCwAbBa@r@[d@i@|@S`@Ud@aAnBo@fASZQVcAnAeAnAi@h@UTs@l@mD|C_@\\MJYVg@f@g@j@e@p@[f@W^k@dAy@lBeAxCYr@w@zBCH}@jCkAbDoElMcA|CYfAW~A}@nECRk@~B]`Ae@hAg@dAq@pAOXIPA@A@Ud@MXGNGNCFAB[t@ADADi@~ASl@Of@Wt@cAbDaAnCkCrHa@hAA@GNq@lBe@vAYbAK`@WbACLMt@m@vDOrAKrAGjAEdBCxB?H@|J@zM?lB?nE?rEAbD?@Ct@EhAA`@C`@It@MrAE^Ih@Mz@QfAKh@Mf@Qt@Of@W|@Sp@wBpGiAfD{@jCsA~DuBlGAFaB|E_E~L_@fAMb@_@rA[lAELI\\M`@"
                     },
                     "start_location" : {
                        "lat" : 33.8206848,
                        "lng" : -117.9230995
                     },
                     "travel_mode" : "DRIVING"
                  },
                  {
                     "distance" : {
                        "text" : "11.7 mi",
                        "value" : 18809
                     },
                     "duration" : {
                        "text" : "17 mins",
                        "value" : 1003
                     },
                     "end_location" : {
                        "lat" : 34.1294658,
                        "lng" : -118.3475583
                     },
                     "html_instructions" : "Keep \u003cb\u003eleft\u003c/b\u003e at the fork to continue on \u003cb\u003eUS-101 N\u003c/b\u003e, follow signs for \u003cb\u003eLos Angeles N\u003c/b\u003e/\u003cb\u003eCivic Center\u003c/b\u003e",
                     "maneuver" : "fork-left",
                     "polyline" : {
                        "points" : "cstnEdbnpU@d@?@?@?@CJELg@xBW`AMf@Od@Ut@cArCe@xAq@lB?@A@s@tBkD|Jq@nBc@rASh@KXY|@Yx@Wp@q@rB]bAm@`BUj@a@jAWp@w@hBOZS`@[p@INCFGJOVOX]j@]h@MTg@r@W\\UZe@j@KLGDABC@C@SHiAhAA?EDw@x@[Zs@h@m@`@]TKDQLQF[NEBSJE@KDMDiAXC@]JWDg@FOB]Dy@Du@@u@As@EoBWy@Gu@Ek@?MAQ?_@@[BmAFy@Fa@@U@a@?W?a@Aa@CC?]C]Cm@KWCKCmASyC]}CU]Ak@Ae@?wA@iB@oC@k@?}AFi@@uAJk@Di@Hm@Fm@JyAXi@LcBd@_A\\c@PsAh@UHeAh@_@L]Nc@Pc@Pe@R}@\\{An@WNUNOL_@XMNIJQRQVGJAB[j@[z@A??BEJOd@CLAHCJAHCP?HCNAPARAb@Er@?HAF?DAJ?DADG^AJC^AFATCJAPOnAU~BKhAEZC`@CNMrAKpAQzBMtASnCInAK|ACRAT?TCv@ARCVEZIdAGbA?BCZEbACj@CdAAz@@\\@NBb@Br@@T?X@VAT?RAPAZAVCTEZCNGZG\\I^GPCJUl@Wn@GNIPOZOVa@v@_@n@{@~AYh@[j@Yf@]n@mA|Bk@fA_@p@k@dAS`@o@jA]n@QZ]n@_@p@KNs@lAMRKP]h@w@pAk@v@[`@Y^_BtBST_@`@i@h@g@d@g@b@URUPUPo@h@gA|@gA|@k@d@eBvAEBi@b@EDc@\\UPWTe@`@YVSRQNY\\QTY^UZW^g@x@]h@GHq@dASXW`@[`@S\\e@p@aA|A{@rAm@|@eA`Ba@p@OXg@`AMXk@nAO\\Wr@Wp@c@rAELMd@K^_@tA?B[nAi@tB[nAiAnEw@~CQp@e@lBCDg@pBg@pBMf@Mf@g@pBa@tAq@vBi@|Ai@zAc@nAc@nAc@pAq@pBa@lAm@jBaA|Ca@pAABCHCJIViApDk@|AIRu@jBg@lAc@fAi@bBm@nBa@|AYdAKb@Mj@ETu@vDa@zB]~Au@~Dq@rDS|@Y|ACHAJMn@I`@I`@If@YjBm@bE?@Kr@?Dc@`Dg@jDYpB[pBc@fDMjAShBO~AQtAIj@Mx@[hBId@Ot@c@hBKf@Wz@c@lAKZYp@k@pAYr@k@jAMZeAbCuAhD}@dC}@`Cm@dBQd@Up@wB~FSh@g@rAEHSb@_@x@?Ba@t@KRSb@Wd@CD]n@c@x@o@bAiAjB_@l@ILILABMTKPMPqBfD{AbCu@hAOVmAjB[b@g@l@g@n@i@f@k@j@k@d@e@^m@b@_@V_@VC@ABSPQHUL{Av@iExB_@RyAt@u@`@k@XUN[P]To@d@URc@`@g@h@WVe@l@QTOVMR_@l@q@lAAB[l@q@lA_AdB_@r@}@`Bc@v@_A|As@hAKNMPg@n@c@h@QPEF_@`@_@^e@b@YTq@j@YPaAt@eAj@IFq@\\kB|@gKfFa@Pe@Re@Vs@\\s@b@[R_@X[Vg@f@[Zc@h@UXQRU\\g@~@i@dA]|@Y|@]tASbAMx@E`@E\\Ix@Cn@E~@?^Ah@AvAAv@?d@A|@Ap@?@C`@Ab@I~@ALCPE^G\\CTGZGZK^Kb@Oj@k@zAO^Yl@Wh@]l@u@vAu@vAOZEFU`@]p@Uf@s@vAqDnHu@zAyBhEQXkA`Cg@|@Ud@]l@KN]j@Y\\iAvAKLQNCD]XMJg@`@[Re@Zu@`@q@XQJQFQF[JQDKBGBu@PaAT_@Js@Ne@LiDv@m@T?@oDr@iB^sATw@NQBKBiANaB^gAVc@PyAh@kCjAa@ToAt@qBlAqC~BkAjAgBlBYXCFEDEFCB?@KLGFKJq@x@a@h@i@n@QXSVSVcAlAY^Y\\[^UXWZc@f@g@f@ONg@b@KHMJk@^A@}@j@eB`AWL[RYRWPQNQLa@\\ONQPi@h@iBjBEFMJWVMNYVUV_@^uAvAo@p@"
                     },
                     "start_location" : {
                        "lat" : 34.0256221,
                        "lng" : -118.2059515
                     },
                     "travel_mode" : "DRIVING"
                  },
                  {
                     "distance" : {
                        "text" : "0.1 mi",
                        "value" : 180
                     },
                     "duration" : {
                        "text" : "1 min",
                        "value" : 11
                     },
                     "end_location" : {
                        "lat" : 34.1307998,
                        "lng" : -118.3485738
                     },
                     "html_instructions" : "Take exit \u003cb\u003e11B\u003c/b\u003e toward \u003cb\u003eUniversal Studios Blvd\u003c/b\u003e",
                     "maneuver" : "ramp-right",
                     "polyline" : {
                        "points" : "e|hoEfwiqUAACAA?A?C?E?A@C@MHURYXA?IHa@^WV[VKJEDGFIFIFKHCBA?A?A@A?A?C?CA"
                     },
                     "start_location" : {
                        "lat" : 34.1294658,
                        "lng" : -118.3475583
                     },
                     "travel_mode" : "DRIVING"
                  },
                  {
                     "distance" : {
                        "text" : "0.3 mi",
                        "value" : 447
                     },
                     "duration" : {
                        "text" : "1 min",
                        "value" : 32
                     },
                     "end_location" : {
                        "lat" : 34.1338819,
                        "lng" : -118.3515888
                     },
                     "html_instructions" : "Merge onto \u003cb\u003eW.C. Fields Dr\u003c/b\u003e",
                     "maneuver" : "merge",
                     "polyline" : {
                        "points" : "odioEp}iqUMNQJYRGBWNe@Zk@^}@j@SJk@^EBKJIHMLKLUTU\\Q\\Ub@GJKPGJGHCFEDCBCBCBC@EDEBEBC@EDCBEBEBCDCBC@CBEFCBCDEDEFINUd@"
                     },
                     "start_location" : {
                        "lat" : 34.1307998,
                        "lng" : -118.3485738
                     },
                     "travel_mode" : "DRIVING"
                  },
                  {
                     "distance" : {
                        "text" : "0.1 mi",
                        "value" : 234
                     },
                     "duration" : {
                        "text" : "1 min",
                        "value" : 32
                     },
                     "end_location" : {
                        "lat" : 34.1358593,
                        "lng" : -118.3511633
                     },
                     "html_instructions" : "Turn \u003cb\u003eright\u003c/b\u003e onto \u003cb\u003eUniversal Studios Blvd\u003c/b\u003e\u003cdiv style=\"font-size:0.9em\"\u003eDestination will be on the right\u003c/div\u003e",
                     "maneuver" : "turn-right",
                     "polyline" : {
                        "points" : "wwioElpjqUQNA@A@A?A@C?C?A?A?A?C?CAA?CAAAA??AA?CAEAC?A?A?A?A?A?A?OQCAAAECUMGCGCECGCGCICICICGAECKACAGAIAGAGAG?IAQAWAIAI?K?I@O@IA"
                     },
                     "start_location" : {
                        "lat" : 34.1338819,
                        "lng" : -118.3515888
                     },
                     "travel_mode" : "DRIVING"
                  }
               ],
               "traffic_speed_entry" : [],
               "via_waypoint" : []
            }
         ],
         "overview_polyline" : {
            "points" : "qukmEvvvnUz@l@\\n@H|@@x@?|AOF?LCFQDeB?@jFUE[CAcGM?qACeAHq@?mAA?iB@uB?sDcBTaGvAy@\\KRYJsA`@u@MUE{CcA{Be@aBJkAf@{KlJqBhB]p@}ApAqBhBqCxC{HlIgExEwJhK[XaC|DgBdE}@zC{ApH}CnTsAnFcBrEyV~j@aR`b@mGfLoElIeFxMuH~QeFpMoKzVkIhRqEpHoO~SgAtBwAxD}@bEgAnFaDhNaAfEkCbIgFfL}FbKiFxJeCtFqVzj@{Ox]cCpFiB|CyEnGyDtEeEtGsBjEoKfVwOh^{Ol^aI`OoDhIaDvHqCjFeGzNqMx[yGjPaDpHcH~NcKjSiSjb@{FdNqDtHoBpD_HpKaEhFcKlKoHlHoJfJcElF{BzDqDtHsDnIeGtJcDlEgGdGkCtBsRdM_QrKyd@dYyE|C_K`HmFjDuK~GiJtFsMvH}^`Twd@dXyDlCiDfDyErGkIjMeOlU_]nh@oAbBmDnDkAz@iEhCsAj@eBj@iH~AqIfBoDt@eHxA}DbA_C~@mCvAgAl@qM|IqFfE}H|HeQfQsItIwBdCmIbNmEzEoKbKsb@ha@eC~BoCtBiIhEqDlCsMzLwIdIsRnUwGrLeE`FwG~FoAjAaCdDeBrD_BlEeEtLsGjRq@fDaAbFiA`EoCzFMTuA`DmDzKqIdV}@hDoAnIS~CI~EBbZAtTKbDa@jEu@vEgAbEqGvR{Prh@y@zC@h@}BzIoLb]_FxN}BjGwBxE_C`EuCrDqFzEqDrBkEbA}CPsGg@aCGcETqBBeBIoBWgFq@{DWsG@cIJyEb@uGxAuJ|DcFrB}AfA{@fAaAvBc@bBSrDuAbN_BhSa@|GUhDOpFLbF[vD]zA_A~BmFxJeIjOgEjHyCjE}DvEqIfHyGpFeB|A{AnB_FpH}IlNqBhEyAfEeFdS_FxR{B~H{CxIoGzRcCrHkCtGsCvJuA|G{E`W_C`OgEt[y@zGyAnHsAlEkCbGgFnMsC~HyDfKuAvCwF|JoEnHoFpIuChDqFjEqOfI{BpAqCdC_BrBaBrCcKvQ}DvEkCvBcEfC{PjIiDlB_CtBaBtBqAdCw@zBeAtFYfEExEUjH}@`FeBtEaDfG{JbS_GbL}AnCaCrCwAlAiDjBqAf@wG~AwElAoDt@gGhA_GjAkH|CaEbC}EjEkCtC}BrCwFdHyBdCqAhA_HdE}AlAuDvD_FbFw@l@M@gCzByAnAQ?iFjDkCvBeBzCg@`@e@^}@xAc@TUEQEYQcC_A}AMcA?"
         },
         "summary" : "I-5 N and US-101 N",
         "warnings" : [],
         "waypoint_order" : []
      }
   ],
   "status" : "OK"
}
...