Olá pessoal,
Alguém aqui manja dessa conversão? não estou entendendo e não consegui fazer de nenhuma maneira a conversão da minha classe... alguém ai poderia ajudar este pobre mortal?
<script type='text/javascript'>
var map;
function load() {
if (GBrowserIsCompatible()) {
map = new GMap2(document.getElementById("mapa"));
// adicionando controle de zoom
map.addControl(new GSmallMapControl());
// adicionando controle de tipo
map.addControl(new GMapTypeControl());
//carregando pontos via xml
GDownloadUrl("<%=Support.getUrlApp()%><%=Support.getStaticPath()%>jsp/mapaGoogle/xmlGoogle.jsp?coddaf=" + document.dafForm.coddaf.value, criaMarcadoresRota);
//carregando ultimos sinais
carregarUltimosSinais()
}
}
function criaMarcadores(conteudo, httpResponseCode){
var xml = GXml.parse(conteudo);
var marcadores = xml.documentElement.getElementsByTagName("marcador");
for (var i = 0; i < marcadores.length; i++){
var ponto = new GLatLng(parseFloat(marcadores[i].getAttribute("lat")), parseFloat(marcadores[i].getAttribute("lng")));
//centralizando no ultimo ponto
if (i==0){
map.setCenter(new GLatLng(marcadores[0].getAttribute("lat"), marcadores[0].getAttribute("lng")), 16);
}
map.addOverlay(criaMarcador(ponto,marcadores[i]));
}
}
function criaMarcadoresRota(conteudo, httpResponseCode){
var xml = GXml.parse(conteudo);
var marcadores = xml.documentElement.getElementsByTagName("marcador");
var pontos = [];
var ponto;
var local;
var ultimoPonto = 'true';
for (var i = 0; i < marcadores.length; i++){
ponto = new GLatLng(parseFloat(marcadores[i].getAttribute("lat")), parseFloat(marcadores[i].getAttribute("lng")));
//centralizando no ultimo ponto
if (i==0){
map.setCenter(new GLatLng(marcadores[0].getAttribute("lat"), marcadores[0].getAttribute("lng")), 16);
}
pontos.push(ponto);
map.addOverlay(criaMarcador(ponto, marcadores[i], ultimoPonto));
ultimoPonto = 'false';
}
map.addOverlay(new GPolyline(pontos));
// map.addOverlay(new GPolyline(pontos,"#ff0000", 5)); <-- altera cor e espessura da linha de rota
}
function criaMarcador(ponto, informacoes, ultimoPonto){
// atribuindo imagem ao marcador
letteredIcon = criaImagemMarcador(informacoes, ultimoPonto);
markerOptions = { icon:letteredIcon };
// criando marcador
var marcador = new GMarker(ponto, markerOptions);
// atribuindo informacoes ao marcador
var html = "<p><b>Data:</b> " + informacoes.getAttribute("dataHora") + "<br>";
html += "<b>Veículo:</b> " + informacoes.getAttribute("placa") + " - " + informacoes.getAttribute("veiculo") + "<br>";
html += "<b>Velocidade:</b> " + informacoes.getAttribute("velocidade") + "Km/h<br>";
// html += "<b>Endereço:</b> " + informacoes.getAttribute("endereco") + "</p>";
// html += "<b>Cidade:</b> " + informacoes.getAttribute("cidade") + "</p>";
GEvent.addListener(marcador, "click",
function (){
marcador.openInfoWindowHtml(html);
});
return marcador;
}
function criaImagemMarcador(informacoes, ultimoPonto){
var angulo = informacoes.getAttribute("angulo");
var velocidade = informacoes.getAttribute("velocidade");
// selecionando imagem do marcador
var baseIcon = new GIcon();
baseIcon.iconSize = new GSize(24, 24);
baseIcon.iconAnchor = new GPoint(5, 18);
baseIcon.infoWindowAnchor = new GPoint(9, 2);
if(ultimoPonto=='false'){
// caso NAO SEJA o ultimo ponto, exibir marcador padrao
baseIcon.shadow = "http://labs.google.com/ridefinder/images/mm_20_red.png";
var letteredIcon = new GIcon(baseIcon);
}else{
// caso SEJA o ultimo ponto, exibir setas ou sinalizador de veiculo parado
baseIcon.shadow = "http://labs.google.com/ridefinder/images/mm_20_green.png";
var letteredIcon = new GIcon(baseIcon);
if(parseInt(velocidade) == 0){
// Veiculo Parado
letteredIcon.image = "<%=Support.getStaticPath()%>/images/VeiculoParado2.gif";
}else{
if(parseFloat(angulo) >= parseFloat('337.5') || parseFloat(angulo) < parseFloat('22.5')){
// Norte
letteredIcon.image = "<%=Support.getStaticPath()%>/images/SetaAcima.gif";
}else if(parseFloat(angulo) >= parseFloat('22.5') && parseFloat(angulo) < parseFloat('67.5')){
// Nordeste
letteredIcon.image = "<%=Support.getStaticPath()%>/images/SetaAcimaDireita.gif";
}else if(parseFloat(angulo) >= parseFloat('67.5') && parseFloat(angulo) < parseFloat('112.5')){
// Leste
letteredIcon.image = "<%=Support.getStaticPath()%>/images/SetaDireita.gif";
}else if(parseFloat(angulo) >= parseFloat('112.5') && parseFloat(angulo) < parseFloat('157.5')){
// Sudeste
letteredIcon.image = "<%=Support.getStaticPath()%>/images/SetaAbaixoDireita.gif";
}else if(parseFloat(angulo) >= parseFloat('157.5') && parseFloat(angulo) < parseFloat('202.5')){
// Sul
letteredIcon.image = "<%=Support.getStaticPath()%>/images/SetaAbaixo.gif";
}else if(parseFloat(angulo) >= parseFloat('202.5') && parseFloat(angulo) < parseFloat('247.5')){
// Sudoeste
letteredIcon.image = "<%=Support.getStaticPath()%>/images/SetaAbaixoEsquerda.gif";
}else if(parseFloat(angulo) >= parseFloat('247.5') && parseFloat(angulo) < parseFloat('292.5')){
// Oeste
letteredIcon.image = "<%=Support.getStaticPath()%>/images/SetaEsquerda.gif";
}else if(parseFloat(angulo) >= parseFloat('292.5') && parseFloat(angulo) < parseFloat('337.5')){
// Noroeste
letteredIcon.image = "<%=Support.getStaticPath()%>/images/SetaAcimaEsquerda.gif";
}
}
}
//retornando imagem do marcador
return letteredIcon;
}
function carregarUltimosSinais(){
obterObjeto("listaSinaisAjax").innerHTML="Aguarde... atualizando sinais...";
popularTable("mapa.do?submit=UltimosSinaisDAF", obterObjeto("listaSinaisAjax"));
//atualizando ultimos sinais
//setTimeout("carregarUltimosSinais()", 60000);
}
function carregarMapa(codigoDAF){
document.dafForm.action="<%=Support.getStaticPath()%>mapaGoogle.do";
document.dafForm.coddaf.value=codigoDAF;
document.dafForm.submit();
}
function voltar(){
document.dafForm.action="<%=Support.getStaticPath()%>home.do";
document.dafForm.submit();
}
</script>