Autor | Zpráva | ||
---|---|---|---|
Radicz Profil * |
#1 · Zasláno: 26. 8. 2010, 15:30:57
Dobrý den,
Prosím o radu. Snažím se udělat kruhový polygon do Gmapy. Po kliknutí na mark se objeví kruhový polygon kolem marku na který bylo kliknuto. Bohužel nevím jak udělat, aby když se klikne znovu na mark který už má zobrazený polygon aby se polygon znovu nekreslil, protože když se na bod klikne několikrát kruh začne tmavnout a vypadá to strašně. Potřeboval bych aby se polygon vykreslil jednou a vícekrát už ne. Děkuji Vám za prípadné rady. Ukázka jak to mam teď je ZDE Zdrojový kod var PoleBodu = [ ['Spartakiádní', 50.68504754096478, 13.990276157855988, 4, '<div id="tabs">'+'<ol>'+'<li><a href="#tab-1"><span>Informace</span></a></li>'+'<li><a href="#tab-2"><span>Aktuální stav</span></a></li>'+'<li><a href="#tab-3"><span>Fotografie</span></a></li>'+'</ol>'+'<div id="tab-1">'+'<span>Jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna jedna</span>'+'</div>'+'<div id="tab-2">'+'<span>Prvni Tab 2</span>'+'</div>'+'<div id="tab-3">'+'<span>Prvni Tab 3</span>'+'</div>'+'</div>', '/images/ico.png', '', null], ['Dukelských hrdinů', 50.683881737055, 13.998518586158752, 5, '<div id="tabs">'+'<ol>'+'<li><a href="#tab-1"><span>Informace</span></a></li>'+'<li><a href="#tab-2"><span>Aktuální stav</span></a></li>'+'<li><a href="#tab-3"><span>Fotografie</span></a></li>'+'</ol>'+'<div id="tab-1">'+'<span>Dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva dva </span>'+'</div>'+'<div id="tab-2">'+'<span>Druhej Tab 2</span>'+'</div>'+'<div id="tab-3">'+'<span>Druhej Tab 3</span>'+'</div>'+'</div>', '/images/ico.png','', null] ]; function initialize() { var Nastaveni = { zoom: 12, center: new google.maps.LatLng(50.68681982238762, 14.000144215759285), mapTypeId: google.maps.MapTypeId.ROADMAP } map = new google.maps.Map(document.getElementById("mapa"), Nastaveni); InfoOkno = new google.maps.InfoWindow({maxWidth:350}); for (var i = 0; i < PoleBodu.length; i++) { VytvorBody(PoleBodu[i]); } } function VytvorBody(PoleBod) { var icona = new google.maps.MarkerImage(PoleBod[5], new google.maps.Size(39, 47), new google.maps.Point(0,0), new google.maps.Point(0, 33)); var stin = new google.maps.MarkerImage(PoleBod[6], new google.maps.Size(35, 35), new google.maps.Point(0,0), new google.maps.Point(-5, 27)); var klikarena = {coord: [0,0,40,40],type: 'rect'}; var pozice = new google.maps.LatLng(PoleBod[1], PoleBod[2]); var bod = new google.maps.Marker({ position: pozice, map: map, name: PoleBod[0], shadow: stin, /*icon: icona, */ shape: klikarena, zIndex: PoleBod[3] }); PoleBod[7] = bod; google.maps.event.addListener(bod, 'click', function() { InfoOkno.close(); VytvorInfoOkno(InfoOkno, map, this, PoleBod); OzariProstor(2000, map, bod); //Volam funkci pro polygon $("#tabs").tabs(); }); var tooltip = new Tooltip({map: map}); tooltip.bindTo('position', bod, 'position'); tooltip.bindTo('text', bod, 'name'); google.maps.event.addListener(bod, "mouseover", function() { tooltip.onAdd(); }); google.maps.event.addListener(bod, "mouseout", function() { tooltip.onRemove(); }) } function OzariProstor(radius, map, bod) //funkce tvorici polygon { var circle = new google.maps.Circle({ map: map, radius: radius }); circle.bindTo('center', bod, 'position'); } function VytvorInfoOkno(InfoOkno, where, which, PoleBod) { if (PoleBod[7] == which ) { InfoOkno.setContent(PoleBod[4]); InfoOkno.open(where, which); } } |
||
Radicz Profil * |
#2 · Zasláno: 26. 8. 2010, 15:33:38
Omlouvám se ukázak je ZDE
|
||
Radicz Profil * |
#3 · Zasláno: 26. 8. 2010, 15:39:14
Tak naposled, ukázka je ZDE - > doufam že se se ještě neztrapnil natolik aby mi někdo odpověděl :-D
|
||
fireball_ Profil |
#4 · Zasláno: 26. 8. 2010, 19:05:10
Zdravím,
upravil bych tu funkci pro ozáření prostoru function OzariProstor(radius, map, bod) //funkce tvorici polygon { if(!bod.highlighted){ bod.highlighted = true; var circle = new google.maps.Circle({ map: map, radius: radius }); circle.bindTo('center', bod, 'position'); } } |
||
Radicz Profil * |
#5 · Zasláno: 26. 8. 2010, 21:10:49
Děkuji mockrát
|
||
Časová prodleva: 14 let
|
0