/** * @fileoverview This demo is used for MarkerClusterer. It will show 100 markers * using MarkerClusterer and count the time to show the difference between using * MarkerClusterer and without MarkerClusterer. * @author Luke Mahe (v2 author: Xiaoxi Wu) */ function $(element) { return document.getElementById(element); } function ir() { var geocoder; var moco; var longi; var lati; geocoder = new google.maps.Geocoder(); var address = document.getElementById("lugar").value; geocoder.geocode( { 'address': address}, function(results, status) { if (status == google.maps.GeocoderStatus.OK) { longi=(results[0].geometry.location.lng()); lati=(results[0].geometry.location.lat()); speedTest.init(results[0].geometry.location.lat(), results[0].geometry.location.lng(), 15); } }); } var speedTest = {}; speedTest.pics = null; speedTest.ico = null; speedTest.map = null; speedTest.markerClusterer = null; speedTest.markers = []; speedTest.infoWindow = null; speedTest.init = function(lat,lon, zoom) { var latlng = new google.maps.LatLng(lat,lon); var options = { 'zoom': 9, 'center': latlng, 'mapTypeId': google.maps.MapTypeId.ROADMAP }; var mapOptions = { zoom: 9, center: latlng, mapTypeId: google.maps.MapTypeId.ROADMAP, streetViewControl: true, mapTypeControl: false, styles: [{"featureType":"landscape.man_made","elementType":"geometry.fill","stylers":[{"visibility":"on"},{"saturation":"-100"}]},{"featureType":"landscape.man_made","elementType":"geometry.stroke","stylers":[{"saturation":"-100"}]},{"featureType":"poi","elementType":"geometry.fill","stylers":[{"saturation":"-100"},{"lightness":"33"}]},{"featureType":"poi","elementType":"labels.text","stylers":[{"visibility":"off"}]},{"featureType":"poi","elementType":"labels.icon","stylers":[{"visibility":"off"}]},{"featureType":"road.highway","elementType":"geometry.fill","stylers":[{"color":"#6a9b47"},{"lightness":"0"},{"gamma":"3"}]},{"featureType":"road.highway","elementType":"geometry.stroke","stylers":[{"color":"#6a9b47"},{"gamma":"1.69"}]},{"featureType":"road.highway","elementType":"labels.icon","stylers":[{"visibility":"off"}]},{"featureType":"road.arterial","elementType":"geometry.fill","stylers":[{"visibility":"on"}]},{"featureType":"road.local","elementType":"geometry.fill","stylers":[{"visibility":"on"}]}] }; speedTest.map = new google.maps.Map($('map'), mapOptions); speedTest.pics = data.coches; speedTest.infoWindow = new google.maps.InfoWindow(); speedTest.showMarkers(); }; speedTest.showMarkers = function() { speedTest.markers = []; var type = 0; if (speedTest.markerClusterer) { speedTest.markerClusterer.clearMarkers(); } ; var numMarkers = 14; for (var i = 0; i < numMarkers; i++) { var titleText = speedTest.pics[i].titulo_item; var iconito = speedTest.pics[i].ico; if (titleText == '') { titleText = 'No title'; } var item = document.createElement('DIV'); var title = document.createElement('A'); title.href = '#'; title.className = 'title'; title.innerHTML = titleText; item.appendChild(title); var latLng = new google.maps.LatLng(speedTest.pics[i].latitude, speedTest.pics[i].longitude); var imageUrl = 'https://www.sagarrak.org/inc/images/4.png'; var markerImage = new google.maps.MarkerImage(imageUrl, new google.maps.Size(24, 35)); var marker = new google.maps.Marker({ 'position': latLng, 'icon': markerImage }); var fn = speedTest.markerClickFunction(speedTest.pics[i], latLng); google.maps.event.addListener(marker, 'click', fn); google.maps.event.addDomListener(title, 'click', fn); speedTest.markers.push(marker); } window.setTimeout(speedTest.time, 0); }; speedTest.markerClickFunction = function(ficha, latlng) { return function(e) { // alert(ficha.denuncia_id); var l = document.getElementById('denuncia'+ficha.denuncia_id); l.click(); e.cancelBubble = true; e.returnValue = false; if (e.stopPropagation) { e.stopPropagation(); e.preventDefault(); } var title = ficha.titulo_item; var url = ficha.ver_mas; var fileurl = ficha.foto_mini; var tipo_ficha = ficha.ico; var miembros = ficha.miembros; var coches = ficha.coches; var infoHtml = '

' + title + '

' + '
' + '
Ver más
'; speedTest.infoWindow.setContent(infoHtml); speedTest.infoWindow.setPosition(latlng); // speedTest.infoWindow.open(speedTest.map); no abro la infowindow }; }; speedTest.clear = function() { $('timetaken').innerHTML = 'cleaning...'; for (var i = 0, marker; marker = speedTest.markers[i]; i++) { marker.setMap(null); } }; speedTest.change = function() { speedTest.clear(); speedTest.showMarkers(); }; speedTest.time = function() { var start = new Date(); speedTest.markerClusterer = new MarkerClusterer(speedTest.map, speedTest.markers); var end = new Date(); };