witam!
Mam pewien problem z obsługą markerów na mapie google maps.
W bazie danych mam zapisane wiadomosci o punktach x y z mapy google maps. Jest to kilka miejsc w moim miescie.
Punktow jest na tyle duzo, ze umieszczanie tego recznie nie ma sensu, dodatkowo pisany jest cms, ktory umozliwia dodanie punktow.
<?php
<script type='text/javascript'>
var mapa;
var polilinie = {};
var punktCentralny = new GLatLng(53.432037584693376,14.54813003540039)
function mapaStart()
{
if(GBrowserIsCompatible())
{
mapa = new GMap2(document.getElementById('mapka'));
mapa.setCenter(punktCentralny,15,G_SATELLITE_MAP);
mapa.setMapType(G_NORMAL_MAP);
mapa.addControl(new GSmallMapControl());
mapa.addControl(new GScaleControl());
var ikona1 = new GIcon();
ikona1.image = "http://maps.google.com/mapfiles/kml/pal2/icon38.png";
ikona1.shadow = "http://maps.google.com/mapfiles/kml/pal2/icon38s.png";
ikona1.iconSize = new GSize(32, 32);
ikona1.infoWindowAnchor = new GPoint(16,16);
ikona1.iconAnchor = new GPoint(16,16);
ikona1.shadowSize = new GSize(59, 32);
!!!! tutaj dodaje marker !!!!
dodajMarker(53.429378437118814,14.549846649169922, {title: 'Jestem tylko zwykłym markerem',draggable: true, icon: ikona1});
dodajMarker2(53.426923,14.547615051269531,'<div class="dymek"><h4>Nazwa markera</h4><p><img src="http://www.twojewczasy.info/thumbnail2.php?fileName=obrazy/aparthotel-lux-grecja_101004_pella_nowe.jpg" height="51" width="71" alt="obraz" />Opis, składający się z kilku zdań. </p></div>');
!!!! tutaj dodaje marker !!!!
var poli = okrag(punktCentralny,200,'#ff0000',4,0.8,'#ffffff',0.2,55);
mapa.addOverlay(poli);
}
}
function dodajMarker(lat,lon,txt)
{
var marker = new GMarker(new GLatLng(lat,lon));
marker.txt=txt;
mapa.addOverlay(marker);
GEvent.addListener(marker,"click",function() {
window.location.href="http://www.wp.pl";
});
return marker;
}
function dodajMarker2(lat,lon,txt)
{
var marker2 = new GMarker(new GLatLng(lat,lon));
marker2.txt=txt;
mapa.addOverlay(marker2);
GEvent.addListener(marker2,"mouseover",function() {
marker2.openInfoWindowHtml(marker2.txt);
});
return marker2;
}
function okrag(srodek,promien)
{
if(!srodek || !promien)
return;
var wyp_kolor = '#0000ff';
var wyp_alfa = 0.10;
var obr_kolor = '#0000ff';
var obr_grubosc = 7;
var obr_alfa = 0.65;
var dokladnosc = 34;
switch(arguments.length)
{
case 8: dokladnosc = arguments[7];
case 7: wyp_alfa = arguments[6];
case 6: wyp_kolor = arguments[5];
case 5: obr_alfa = arguments[4];
case 4: obr_grubosc = arguments[3];
case 3: obr_kolor = arguments[2];
}
var punkty=[];
for(i=0;i<dokladnosc;i++)
{
var kat=360*i/dokladnosc;
kat = Math.PI*kat/180;
var srodekXY = mapa.fromLatLngToDivPixel(srodek);
var nowyPunktXY = new GPoint(srodekXY.x+parseFloat(promien)*Math.cos(kat),srodekXY.y+parseFloat(promien)*Math.sin(kat));
punkty.push(mapa.fromDivPixelToLatLng(nowyPunktXY));
}
punkty.push(punkty[0]);
if(arguments.length>5)
var poli = new GPolygon(punkty,obr_kolor,obr_grubosc,obr_alfa,wyp_kolor,wyp_alfa);
else
var poli = new GPolyline(punkty,obr_kolor,obr_grubosc,obr_alfa);
return poli;
}
</script>
?>
teraz pytanie, jak to wszystko mozna zgrac z bazą, mając punkty, opis markera itd..
bede wdzięczny za sugestie