A google maps újabb verziói ismét szolgálnak néhány hasznos aprósággal.
Ezek közül kettőt emelnék ki, amik nekem igen hiányoztak pl. a
futótérkép építése közben.
Az egyik ilyen új függvény arra szolgál, hogy lekérdezhessük egy adott pontról, hogy benne van-e az adott tartományban vagy sem. Természetesen koordináták egyszerű vizsgálatával eddig sem volt ördöngősség kideríteni, de mégiscsak egyszerűbb meghívni a
bounds.containsLatLng(center)
metódust, mint koordinátákat hasonlítgatni. A függvény a 2.88-as verziótól elérhető.
A másik hasznos és egyben csinos újítás a 2.147-ben került be:
Igen, ez a pontosan azt csinálja amire a neve utal, vagyis beállítja az alapértelmezett kinézetet egyetlen függvényhívással olyanra, mint a "nagy" Google Maps.
Összeütöttem egy kis példát a két újdonság felhasználásával. A térkép alatti üzenet jelzi, ha mozgatás után a marker kilóg a térképről.
Íme a kód lényeges része:
var map;
var center = new GLatLng(47.173378, 19.539185);
$(document).ready(function()
{
if (GBrowserIsCompatible())
{
map = new GMap2($("#GoogleMap_Div")[0]);
map.setUIToDefault();
map.setCenter(center, 10);
GEvent.addListener(map, "moveend", checkIsInView);
var myMarker = new GMarker(center);
map.addOverlay(myMarker);
checkIsInView();
}
});
function checkIsInView()
{
var bounds = map.getBounds();
var message = ";
if (bounds.containsLatLng(center))
{
message += "green;\">Benne van";
}
else
{
message += "red;\">Nincs benne";
}
message += "";
$("#message")[0].innerHTML = message;
}