Boa tarde galera, preciso de um HELP:
COMO POSSO FAZER ALGO QUE FAÇA ISSO…
<script type="text/javascript">
var locations = {};
var map;
function load( lat, log, zoon, idVeiPos ) {
map = new google.maps.Map(document.getElementById("mapa"));
map.setUIToDefault();
map.enableRotation();
map.setCenter(new GLatLng(lat,log), zoon);
locations = {};
url = "/monisat/retornaxml2?id=<%=((TsClienteResp) JsfHelper.getSessionAttribute("usuario"))
.getIdCliente()%>";
if( idVeiPos > 0 ) {
url += "&idVeiPos="+ idVeiPos;
}
GDownloadUrl( url, function(data) {
var xml = GXml.parse(data);
var markers = xml.documentElement.getElementsByTagName("marker");
for (var i = 0; i < markers.length; i++) {
var id = markers[i].getAttribute("id");
var placa = markers[i].getAttribute("placa");
var dhpos = markers[i].getAttribute("dhpos");
var loc = markers[i].getAttribute("loc");
var vel = markers[i].getAttribute("vel");
var latlng = new GLatLng(parseFloat(markers[i].getAttribute("lat")),
parseFloat(markers[i].getAttribute("lng")));
var store = {id: id, placa: placa, dhpos: dhpos, latlng: latlng, vel:vel};
var latlngHash = (latlng.lat().toFixed(6) + "" + latlng.lng().toFixed(6));
latlngHash = latlngHash.replace(".","").replace(".", "").replace("-","");
if (locations[latlngHash] == null) {
locations[latlngHash] = []
}
locations[latlngHash].push(store);
}
for (var latlngHash in locations) {
var stores = locations[latlngHash];
if (stores.length > 1) {
map.addOverlay(createClusteredMarker(stores));
} else {
map.addOverlay(createMarker(stores));
}
}
});
}
function createMarker(stores) {
var store = stores[0];
var newIcon = new GIcon(G_DEFAULT_ICON, "../themes/img/icone/caminhao.png");
newIcon.iconSize = new GSize(32, 32);
var marker = new GMarker(store.latlng, {icon: newIcon});
var html = "<b>ID: </b>" + store.id + " <b>Placa: </b> "+store.placa +"<br/>"+
"<b>Atualizado em: </b> "+store.dhpos+"<br/>"+
"<b>Velocidade: </b> "+store.vel+" Km/h.<br/>";
var hint = "ID...: <b>"+ store.id + "</b><br/>"+
"Placa: <b>"+ store.placa + "</b>";
GEvent.addListener(marker, 'click', function() {
marker.openInfoWindowHtml(html);
});
GEvent.addListener (marker, 'mouseover', function() {
marker.openInfoWindowHtml(hint);
});
GEvent.addListener(marker, 'mouseout', function() {
marker.closeInfoWindow();
});
return marker;
}
function createClusteredMarker(stores) {
var store = stores[0];
var newIcon = new GIcon(G_DEFAULT_ICON, "../themes/img/icone/caminhao.png");
newIcon.iconSize = new GSize(32, 32);
var marker = new GMarker(stores[0].latlng, {icon: newIcon});
var html = "";
var hint = "";
for (var i = 0; i < stores.length; i++) {
html += "<b>ID: </b>" + store.id + " <b>Placa: </b> "+store.placa +"<br/>"+
"<b>Atualizado em: </b> "+store.dhpos+"<br/>"+
"<b>Velocidade: </b> "+store.vel+" Km/h.<br/>";
hint += "ID...: <b>"+ store.id + "</b><br/>"+
"Placa: <b>"+ store.placa + "</b>";
}
GEvent.addListener(marker, 'click', function() {
marker.openInfoWindowHtml(html);
});
GEvent.addListener (marker, 'mouseover', function() {
marker.openInfoWindowHtml(hint);
});
GEvent.addListener(marker, 'mouseout', function() {
marker.closeInfoWindow();
});
return marker;
}
</script>
DENTRO DISSO…
<script>
var directionsDisplay;
var directionsService = new google.maps.DirectionsService();
var map;
function initialize() {
directionsDisplay = new google.maps.DirectionsRenderer();
var mapa = new google.maps.LatLng(-16.693026, -49.288331);
var mapOptions = {
zoom : 5,
mapTypeId : google.maps.MapTypeId.ROADMAP,
center : mapa
}
map = new google.maps.Map(document.getElementById('mapa'),
mapOptions);
directionsDisplay.setMap(map);
}
function calcRoute() {
var start = document.getElementById('form:start').value;
var end = document.getElementById('form:end').value;
var waypts = [];
var checkboxArray = document.getElementById('form:waypoints');
for ( var i = 0; i < checkboxArray.length; i++) {
if (checkboxArray.options[i].selected == true) {
waypts.push({
location : checkboxArray[i].value,
stopover : true
});
}
}
var request = {
origin : start,
destination : end,
waypoints : waypts,
optimizeWaypoints : true,
travelMode : google.maps.TravelMode.DRIVING
};
directionsService.route(request, function(response, status) {
if (status == google.maps.DirectionsStatus.OK) {
directionsDisplay.setDirections(response);
}
});
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
Será que alguém pode me ajudar? Estou quebrando cabeça já fazem alguns dias.
Desde já agradeço.
Att.
Diego Silva