Scribble Maps Blog
← All posts

Scribble Maps Blog

Vores største udgivelse hidtil, mobil og API.

Vi er super begejstrede (og en smule lettede) over endelig at have vores nye version af Scribble Maps ude. Der er meget at tale om. Vi har udrullet en ny basiseditor samt et komplet API.

Fra Flash til HTML5/Javascript

Selvom mange af vores brugere måske ikke forstår teknologiskiftet, er konsekvenserne af dette meget store. At flytte fra flash til HTML5/Javascript var ikke noget, der var særlig nemt, især fordi vi ønsker at holde oplevelsen så tæt som muligt på det, der gjorde det oprindelige Scribble Maps så populært.

Vi ønskede at gøre oplevelsen af den nye version så ensartet, at folk ikke engang ville vide, at vi i bund og grund har genopbygget alt helt fra bunden. Ting så enkle som tilpassede markører var en udfordring, fordi vi ønskede at bevare kompatibilitet på tværs af browsere. Så den nye version fungerer helt tilbage til IE7.

Efter Google meddelte, at de ikke længere ville understøtte flash-versionen af deres Maps API, besluttede vi os for et par kerne-ting, vi ville opnå, da vi alligevel skulle lave en komplet genopbygning.


  1. Vi ønskede, at webapplikationen skulle fungere i både et desktop- og et mobilmiljø.
  2. Vi ønskede at bygge vores egen renderingsmotor, så vi, hvis det blev nødvendigt, kunne skifte til andre API-udbydere.
  3. Vi ønskede ikke at overtræde servicevilkårene for nogen udbyder af kort-API'er.
  4. Vi ønskede, at genopbygningen skulle være API-centreret, så udviklere kunne bruge vores kortværktøjer i deres egne applikationer.

Scribble Maps på mobilen

En af de største efterspørgsler, vi fik, var muligheden for at bruge Scribble Maps i et mobilmiljø og især på tablets. Da vi benyttede javascript, ville applikationen kunne køre på tablet-enheder.

Men at have en kortapplikation kørende er noget andet end at den er brugbar. I desktop-versionen af Scribble Maps har man for eksempel hover-effekter (roll overs), det har tablets ikke.
Dette førte til, at vi tilpassede brugeroplevelsen baseret på, om du var på en berøringsenhed. Dette sker automatisk uden behov for at ændre nogen form for kode.

Scribble Maps API

Der findes omkring et halvt dusin rigtig populære kort-API'er, så vi ønskede specifikt at fokusere på redigering og interaktivitet, og overlade den øvrige visualisering og fliserendering til de andre API'er. Da vi skulle beslutte, hvordan vi ville strukturere API'et, besluttede vi, at en af de bedste stilarter for Javascript-programmering derude var JQuery.  Så det er muligt at oprette overlejringer og interaktivitet på én enkelt linje.

ScribbleMap.draw.line([[lat, lng], [lat2, lng2]], { lineColor: "#0000FF" }).click(function() { alert("Jeg er blevet klikket på") });


At tegne i Scribble Maps fungerer ligesom canvas, så du kan angive en stil på forhånd og tegne flere linjer, som alle overtager den stil. Dette gælder ikke kun for former, det gælder også for ting som markører (Markers). Så det er muligt at gøre ting som

Forholdet, en bruger har til kortet, defineres gennem værktøjer, og ved at ændre værktøjerne ændrer du, hvordan brugeren interagerer med kortet.


Dynamisk Billed-API

En af de primære ting, Scribble Maps bruges til, er at generere billeder. Dette udgjorde ikke kun et stort problem for os, men også en ny mulighed, da vi bevægede os væk fra flash. Med andre kort-API'er er der mulighed for at oprette et "statisk billede". Problemet med disse statiske billed-API'er er, at de næsten alle har begrænsninger på, hvor meget data der kan være på det renderede billede.

Med Scribble Maps er der derimod ingen begrænsning. Når et kort er gemt, kan der anmodes om et billede af det kort, uanset hvor meget data der er på det. Desuden bliver billedet ugyldiggjort, når et kort gemmes, og næste gang der anmodes om det, bliver det renderet igen. Dette giver dig reelt mulighed for at oprette billedlinks, der opdateres, når du ændrer kortet.
Nedenfor er et eksempel på et sådant billede.



Ny Widget

Også med 2.0 har vi introduceret en widget, der har flere brugerflade-kontroller. Dette er vores første version, og vi vil forbedre den i løbet af de næste par uger.
 

Links

Scribble Maps API
Scribble Maps API-gruppe

← All posts