Man sanāk diezgan bieži lietot Google Maps lai atrastu labākos maršrutus pa Angliju, un vienkārši lai iepētītu kas-kur-kā. Vienmēr kaitināja tas, cik ilgi lādējas karte uz lēnāka pieslēguma.
Sākumam, drusku matemātikas. Google Maps darbības pamatprincips samērā vienkāršs - karte sadalīta daudzos 256×256 pixeļu kvadrātos, kas tiek pēc vajadzības ielādēti .png formā. Katram kartes “zoom” līmenim ir cits šo kvadrātu komplekts. Uz aci uzmetot (zinu - “acumērs - s*damērs”, bet lai nu būtu šoreiz, nav raķešzinātne) katrs 256×256 px PNG ir vidēji 16 KB liels.Uz mana šībrīža ekrāna, Google Maps karte aizņem 1280×530 pixeļus. Perfektā situācijā 1280/256 = 5, bet ja karte ir kaut mazliet nobīdīta, sanāk 6 kvadrāti pa horizontāli. Plus 3 pa vertikāli. Sanāk 6*3 = 18 .png kvadrāti tikai laiparādītu vienu kartes atvērumu, jeb ~288 kilobaiti. Un katru reizi iezoomojot pa levelu dziļāk, tiek ielādēts jauns .png komplekts, ar lielāku izšķirtspēju.
Tagad padomāsim - cik daudz informācijas ir iekļauts vienā šādā attēlā?
Dotais png ir 22,389 bitus smags, teiksim visi 23 kilobaiti. Un kas tur ir iekļauts? Ir pāris pilsētu nosaukumi, robežas, lielākie ceļi. Informācija ko varētu ietilpināt aptuveni vienā kilobaitā (vektorgrafika + pilsētu nosaukumi).
Attiecīgi jau sen domāju - būtu tākā laiks Googles tantei pāriet uz kaut ko modernāku, piemēram Flash/whatever aplikāciju, kas saņem informāciju par ceļiem, robežām, pilsētām, utt formātā/markupā kas vairāk līdzinās vektorgrafikai, nekā bitmapiem. Plusi - mazāks trafiks un ātrāk ielādējas, un zoomojot dziļāk neparādās briesmīgi milzīgi pikseļi pirms nākamais līmenis ir paspējis ielādēties, bet gan līdzena vektorgrafika, kuras informācija noprecizējas brīdī kad atnāk jaunāka, precīzāka informācija par attiecīgo zoom līmeni.
Un tagad.. Jauna (beta) versija Microsoft Bing Maps (vajag vai nu FireFox vai IExplore, + Silverlight, ja vēl nav)! Iemēģināju, un secināju ka viss notiek salīdzinoši krietni ātrāk un plūstošāk. Pa cik tā ir atsevišķa Silverlight aplikācija, es jau sacerējos ka kartes tiek ģenerētas no markupa, un bildītes sūtītas tikai tad kad vajag uzrenderēt satelītattēlus vai ko tādu. Papētīju http trafiku… Ne vella. Ceļi un pilsētu nosaukumi gan tiek sūtīti atsevišķos attēlos, un attiecīgi uzrenderēti pa virsu zemes ģeometrijai (ezeri, upes, zeme, utt), bet tas arī viss. Solis pareizajā virzienā, bet dikti maziņš. Varu turpināt gaidīt saprātīgu risinājumu online kartēm.


2 Comments, Comment or Ping
Čau, Lūsēna jaunskungs. Sen neredzēts/nedzirdēts.
December 8th, 2009
Pirms pēdējā paragrāfa jau domāju, ka tu sāksi MS aktīvi reklamēt…

turpini gaidīt- mēs esam ar tevi!
December 8th, 2009
Reply to “Google Maps un Bing Maps”