Google Maps Api V2 ve Javascript ile haritadaki yeri bulma

Merhaba,
Bugün Google Maps Api V2 ve Javascript ile haritadaki yeri bulma hakkında bilgi vereceğim.

 

gmajs.PNG

Resimde görüldüğü gibi bir noktaya tıklayıp oranın bilgilerini form elemanlarına yazdırma işlemi yaptım. Burada önemli olan husus javascript’i vegoogle.maps.api versiyonun nasıl kullanıldığı olmasıdır. V2 ve V3 arasında farklar vardır bunlara https://developers.google.com/maps/ sitesinden detaylı şekilde bakabiliriz. Burada html ,css ve javascript anlatmak gibi bir yazı yazmayacağım , sadece google.maps.api ile neler yapabileceğimiz hakkında ufak bir uygulama ile fikir oluşturmak istiyorum.

Kısaca;

  • place = response.Placemark[0];
    point = new GLatLng(place.Point.coordinates[1],
    place.Point.coordinates[0]); – ile eventin alacağı bilgileri gösterme ve onları point değerlerine atama işlemini gerçekleştirdik.
  •  geocoder = new GClientGeocoder(); – ile geocoder nesnesi oluşturup verilen enlem-boylam koordinatlarında yer alan adresi öğrenebildiğimiz bir yapıya sahip olduk.
  • map = new GMap2(document.getElementById(“map_canvas”));
    map.setCenter(new GLatLng(41.091255,29.002876), 13); – ile haritamızı ve merkez koordinatlarımızı belirledik.
  • GEvent.addListener(map, “click”, getAddress); – ile haritamıza bir event ekledik.”click” seçtik ama seçenek çok örneğin “dblclick” gibi.
  • marker = new GMarker(point,Icon); – ile haritamıza point ve bir işaretçi ekledik.
  • marker.openInfoWindowHtml – ile haritamıza bilgi mesajı veren bir pencere ekledik ve içine yazması gereken bilgileri yazdık.

Kodlarımız : 

[html]

http://www.w3.org/TR/html4/loose.dtd”>;



Ahmet Map
http://maps.google.com/maps?file=api&v=2&sensor=false&key=ABQIAAAAzr2EBOXUKnm_jVnk0OJI7xSosDVG8KKPE1-m51RBrvYughuyMxQ-i1QfUnH94QxWIa6N4U6MouMmBA

var map;
var geocoder;
var address;
var address2;

function initialize() {
map = new GMap2(document.getElementById(“map_canvas”));
map.setCenter(new GLatLng(41.091255,29.002876), 13);
map.setUIToDefault();
GEvent.addListener(map, “click”, getAddress);
geocoder = new GClientGeocoder();
}
function getAddress(overlay, latlng) {
if (latlng != null) {
address = latlng;
geocoder.getLocations(latlng, showAddress);
}
}

function showAddress(response) {
map.clearOverlays();
place = response.Placemark[0];
point = new GLatLng(place.Point.coordinates[1],
place.Point.coordinates[0]);

var Icon = new GIcon();
Icon.image = “http://maps.google.com/mapfiles/kml/paddle/red-circle.png”;;
Icon.iconSize = new GSize(32, 20);
Icon.shadowSize = new GSize(32, 20);
Icon.iconAnchor = new GPoint(16, 20);
Icon.infoWindowAnchor = new GPoint(5, 1);
marker = new GMarker(point,Icon);
map.addOverlay(marker);
marker.openInfoWindowHtml(
Enlem ve Boylam : ‘ + place.Point.coordinates[1] + “,” + place.Point.coordinates[0] + ‘
‘ +
Adres : ‘ + place.address + ‘
‘ +
Ülke Kodu : ‘ + place.AddressDetails.Country.CountryNameCode);
document.getElementById(‘lat1’).value=place.Point.coordinates[1];
document.getElementById(‘lng1’).value=place.Point.coordinates[0];
document.getElementById(‘address1’).value=place.address;
}








Enlem :













Enlem :
Boylam :
Adres :




[/html]

şeklindedir.

Google Maps Api v2 kullanımını basitçe anlatmak istedim umarım yararlı olur.

NOT : Programın çalışması için tüm tırnak işaretlerini kodu kopyaladıktan sonra düzenlemeniz gerekmektedir. Bilginize.
İyi çalışmalar.

Hakkında Ali Demirci

Ben Ali Demirci... 1991 Ankara doğumluyum. Ankara da yaşıyorum. Fırsat buldukça öğrendiklerimi burada paylaşıyorum. Java ile haşır neşirim. Android'den asla vazgeçemem. Öğrenmeye bayılırım. Yeni şeyler öğrendiğimde, geçmişteki projelerimde keşke böyle yapsaydım diye çok üzülmüşümdür. O yüzden öğrenmekten korkmayın. Takıldığınız yerleri mutlaka sorun. Biliyorsam yanıt veririm. Bilmiyorsam yol gösteririm. Teşekkürler :)

Kontrol Et

İşletim Sistemlerine Giriş

İşletim sistemleri, bilgisayar donanımları ve kullanıcılar arasında iletişim sağlamak amacıyla yazılmış olan programlardır. Bilgisayar Nedir? …

Bir Yorum

  1. Doğan

    Çalışmıyor bir işe yaramaz

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.