Google Maps’e erişim sorunu çözüldü

Dün itibari ile Google tarafından bu adresten yayınlanan yazıda da görüleceği üzere artık Google Maps’e erişim sorununun giderildiğinden bahsetmekte.

Sözde YouTube yasağı bahane edilerek Google diş geçirme çabaları arasında araya kaynayan Google Maps erişimi ile gerek özel gerekse kamu sektöründe sıkça kullanılan Google Maps API kullanımı tekrar düşünülmeye başlamıştı. Neyse ki bu kadar sık güncellenen harita verileri ve uydu görüntüleri üzerine sistemlerini kuran firma ve kamu kuruluşları bir nebze de olsa rahatlamış olacaklar.

Ama gene de alternatifler üzerinde de çalışmak gerektiğini düşünmekteyim. Malum burası Türkiye, ne zaman ne olacağını kestiremiyoruz 😀

Google Maps JS API V3 – Olaylar (Events)

http://code.google.com/apis/maps/documentation/v3/events.html

JavaScript de diğer programlama dillerinde olduğu gibi çeşitli olaylar içererek bunlara cevap verip kullanıcı ya da program içerisindeki diğer modüllere ulaşır. Bu olaylar sayesinde programın işleyişi şekillenmektedir. Örneğin haritanın merkezi değiştiğinde şunu yap, ya da şu yaklaşma seviyesinin altına inme gibi şeyleri olaylar yardımıyla yapabilirsiniz.

Yeni versiyonda da V2’deki gibi bir olay sistemi mevcut. Bu versiyonda 2 tip olay bulunmakta :

Kullanıcı Olayları (kullanıcının haritaya tıklaması ya da yaklaşması gibi)
MVC Yapısındaki durum değişiklikleri ile ilgili olaylar

Buradaki MVC (Model-View-Controller) yapısı daha önceki yapıda bahsettiğim Nesne Yönelimli Yapı ile ilgili bir terim. Bunun için biraz Google’dan makale okuyabilirsiniz.

İlgili olayları “google.maps.event” alan adı aldındaki metodlar ile yapabilirsiniz. Bununla ilgili detaylı örneği birazdan vermiş olacağım.

Kullanıcı Olayları :

‘click’ –> ekrana tıklayınca ortaya çıkar.
‘dblclick’ –> ekrana çift tıklayınca ortaya çıkar.
‘mouseover’ –> bir obje üzerine gelince ortaya çıkar.

MVC Durum Değişiklikleri :

Bu tipde haritanın bir özelliği değiştiğinde ortaya çıkabilir. Örneğin haritanın üstünde bir uzaklaşma/yakınlaşma olması durumunda “zoom_changed” olayı ortaya çıkmaktadır.

Harita Olayları :

Harita ile ilgili olayları addListener() metodu ile ekliyoruz. Bu metot 3 parametre almaktadır : sırası ile takip edilecek obje, objenin olayı ve olay sonrası çalışacak fonksiyon/metot. Aşağıdaki örnekte haritanın yaklaşma seviyesinin değişmesi durumunda ne yapacağımızı göreceksiniz.

[code lang=”javascript”]

[/code]

Olaylarda Parametreler :

Bazı olaylar sonucunda ortaya bazı parametrelerde çıkar. Örneğin haritaya tıklanma olayında çalışacak fonksiyona tıklanılan noktanın koordinat bilgileri de gitmektedir. Böylelikle daha interaktif bir geliştirme ortamı sunulmuş olmaktadır. Aşağıdaki örnekte haritayı takibe alıp tıklanıldığında tıklanılan noktanın koordinatları ekranda göstereceğiz.

[code lang=”javascript”]

[/code]

Olaylar sırasında kullanılabilecek farklı teknikler bulunmakla beraber, bunların en önemlisi kapatma (closure) olarak isimlendirilen JavaScript’te özel (private) kullanımını sağlayan bir yaklaşımdır. Fakat bunu sonraki yazılarımızda daha detaylı olarak işleyeceğiz.

Google Maps JS API V3 – Giriş

http://code.google.com/apis/maps/documentation/v3/introduction.html

Bu kısımda da Google Maps JS API V3’ün yukarıdaki eğitsel dökümanını takip edeceğiz. Bu dökümanda da örnekle başladığı gibi ben de örnekle başlayacağım.

[code lang=”html4strict”]

[/code]

Örnekte yaptıklarımızın üstünden adım adım gidersek :

a) Öncelikle sayfamıza Google Maps JS API’yi eklememiz gerek. Ayrıca bu kısımda mobil cihazlar için daha önceki yazımızda bahsedilen “meta” etiketler ile ayarlarımızı tamamlıyoruz. API’yi kullanırken ileride kullanacağımız GPS için “sensor=true” diyoruz. Ayrıca dil olarak Türkçe kullanacağımızı “language=tr” diyerek tamamlıyoruz.

[code lang=”html4strict”]