keskiviikkona, helmikuuta 28, 2007

Reaaliaikaista karttatietoa

Googlen oma karttasivu sai neljännen layerin. [Traffic] -painike tuo kartalle liikennevalomarkkerit USA:n isoimpien kaupunkien kohdalle. Lähemmäksi zoomattaessa näkyy pääväylien ruuhkatilanne värikoodeilla.

Sama palvelu julkaistiin myös Google Maps Mobilessa, jonne se ensisijaisesti lienee suunnattukin. Mobile on alkanut tarjota myös joillekin GPS:llä varustetuille puhelimille sijaintinäyttöä samalla kartalla. Vielä en ole havainnut oikealla nettiselaimella ja GPS:llä varustettuja mobiililaiteitteita, joiden GPS olisi pelkällä JavaScriptillä luettavissa.

Google Mapsin haku tuntuu myös tunnistavan jo suomalaisia katuja, mutta ei vielä kerro niiden sijaintia. Jos kirjoittaa tahallaan vähän väärin 'Mannerheiminti', saa vastauksen: Did you mean 'Mannerheimintie'. Pidemmälle se ei johda mutta kyseiselle kadulle sijoittuvia mainoksia saattaa tietyssä tilanteessa nähdä toistaiseksi ilman nuppineuloja.

torstaina, helmikuuta 22, 2007

Tilattu .setImage() saapui

Julkaisin edellisen postin menetelmäselostuksen ja esimerkkisivut viime yönä myös api-foorumilla. Aamulla oli kiva lukea Googlen Pamelan innostunut vastaanotto:

Cool! I love the "visited" state, I don't know if I've seen that on
maps before. And you're using spreadsheet feed, fantastic. Please add
these examples in the pages somewhere so I can reference them later.

Päivän mittaan oli Mike Williams kirjoittanut: Loistava idea, vain hieman epäonninen ajoitus. Google julkaisi juuri äsken api-version 2.75, jossa on .changeIcon() -metodi. Sillä voidaan vaihtaa markkerin ikoni.

Edellisen postin ensimmäinen lause ei siis pidä enää paikkaansa.

En sanoisi tapahtunutta epäonniseksi ajoitukseksi. Googlen koodaajat vain näyttivät nopeutensa.

Väriä vaihtavat nuppineulat

API ei anna mahdollisuutta vaihtaa nuppineulan ikonia jälkikäteen. Moni on haaveillut ominaisuudesta. Sillä voitaisiin parantaa käyttöliityntää monin tavoin.

Koska nuppineula on yleensä linkki, sen tulisi mielestäni käyttäytyä kuten ihmiset ovat tottuneet linkin käyttäytyvän. Värin tulisi vaihtua kun linkin päälle mennään. Se auttaa ruuhkaisissa paikoissa varmistamaan minne ollaan lähdössä. Jo käydyt linkit pitäisi erottaa väristä.

Hide() ja show() -metodit ovat käytettävissä. Eri värisiä markkereita voi läjätä päällekkäin mutta ongelmana on, että päällimmäinen kerää kaikki klikit ja mouseoverit.

Ongelmaan löytyi ratkaisu. Markkerista saa riisuttua kaikki klikkejä keräävät kerrokset vieläpä helposti. Näitä passivisia eri värisiä zombiemarkkereita voi kerrostaa varsinaisen markkerin päälle huolettomasti. Koe.

Yhdessä z-indeksin vaihdon kanssa ollaan taas astetta lähempänä ultimaattia ratkaisua ongelmaan nimeltä 'nuppineulat liian sumpussa'.

maanantaina, helmikuuta 19, 2007

KML-haku

Google julkaisi viime kuussa tiedon, että KML-tiedostoja aletaan indeksoida ja neuvoi sisällyttämään ne sitemap-tiedostoihin. Nyt Google Earth osaa etsiä KML-tiedostoja. Osoitehakukenttään voi kirjoittaa mitä tahansa hakusanoja ja Earth hakee KML-tiedostoja kuvan alueelta.

Asiasta kertovassa API-blogin postissa luvataan, että KML-haku toimii pian myös Google Mapsissa. Toivottavasti myös API:n kautta.

Googlella on selvästi suuria suunnitelmia KML-tiedostomuodon käytölle. Se ei ole panostanut lainkaan yksinkertaisempiin geotag-menetelmiin. Jos puuhaa XML-tiedostojen käyttöä Maps apin yhteydessä, kannattaa noudattaa KML-muotoa.

Jossain vaiheessa on myös ilmestynyt Earth COM API, jolla saa oman softan seurustelemaan Earthin kanssa.

keskiviikkona, helmikuuta 07, 2007

Koordinaatit helposti

Maps.google.com näyttää kohteen koordinaatit verkko-osoitteen parametreinä. Sieltä monet kopsaavat koordinaattinsa. Nyt löytyi kätevämpi tapa. Kun olet maps.google.com-sivulla ja löytänyt oikean sijainnin kartan keskelle, kirjoita selaimen osoitekenttään:

javascript:void(prompt('lat, lng', gApplication.getMap().getCenter()));

Ei kovin kätevää mutta tee siitä kirjanmerkki!

Kyseinen neronleimaus toimii vain Googlen omalla karttasivulla. API-sivuilla vastaava temppu vaatii karttaolion muuttujanimen aavistamisen. 95% karttasivun tekijöistä käyttää luovasti "map". Tämän blogin sivupalkin kartan nimi on valtavirrasta poiketen "kartta".

javascript:void(prompt('lat, lng', kartta.getCenter().toUrlValue()));

Vihdoin sivupalkin kartasta tuli hyötyesine. Nyt siihen pitänee lisätä geokoodaus.

Googlen oma karttasivu ei käytä apia. Sen JavaScript muistuttaa paljossa apia, mutta se sisältää lukuisia lisäominaisuuksia. Perusrakenteessa on eroja, joilla haitataan 'laittomien fuusausten' tekemistä. getMap()-metodi ei kuulu apiin.

Huomasin, että tehtaan vakioasetuksissa oleva IE7 pyytää lupaa promptin näyttämiseen! Luvan voi antaa täysin turvallisesti.

maanantaina, helmikuuta 05, 2007

Perusdiagrammi

Mainittu dynaaminen piirakka - eli kello on täällä. En ole muilta toimiltani vielä ehtinyt kokeilla palkkikaavioita tai histogrammeja.