/* Title: Editor de legenda Define a forma de representação de um tema, modificando o tipo de classificação e os símbolos utilizados em cada classe Veja: Arquivo: i3geo/ferramentas/legenda/index.js.php Licenca: GPL2 i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo sob os termos da Licença Pública Geral GNU conforme publicada pela Free Software Foundation; Este programa é distribuído na expectativa de que seja útil, porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença Pública Geral do GNU para mais detalhes. Você deve ter recebido uma cópia da Licença Pública Geral do GNU junto com este programa; se não, escreva para a Free Software Foundation, Inc., no endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. */ if (typeof (i3GEOF) === 'undefined') { var i3GEOF = {}; } /* * Classe: i3GEOF.legenda */ // incuir opcao para inserir o nome de uma imagem da legenda i3GEOF.legenda = { /* * Variavel: parDefault * * Parametros padrão utilizados para formatar os labels */ parDefault : "&position=MS_UR&partials=1&offsetx=0&offsety=0&minfeaturesize=auto&mindistance=auto&force=0&shadowsizex=1&shadowsizey=1&cor=0 0 0&sombray=1&sombrax=1&angulo=0&tamanho=8&fonte=bitmap&fundo=off&sombra=off&outlinecolor=off&shadowcolor=off&wrap=", /* * Variavel: aviso * * Indica que uma alteração ainda não foi salva * * Type: {boolean} */ aviso : false, /* * Variavel: tema * * Tema que será utilizado * * Type: {string} */ tema : i3GEO.temaAtivo, /* * Variavel: dadosGrafico * * Dados utilizados no gráfico no formato da ferramenta graficointerativo */ dadosGrafico : "", /* * Variavel: aguarde * * Estilo do objeto DOM com a imagem de aguarde existente no cabeçalho da janela. */ aguarde : "", /* * Variavel: estilos * * Estilos existentes em um símbolo de uma classe */ estilos : "", /* * Variavel: estilo * * Ultimo estilo selecionado */ estilo : "", /* * Variavel: classe * * Ultima classe selecionado */ classe : "", /** * Template no formato mustache. E preenchido na carga do javascript com o programa dependencias.php */ MUSTACHE : "", /** * Funcao do usuario que e executada apos iniciar a ferramenta */ aposIniciar : function(){ }, /** * Susbtitutos para o template */ mustacheHash : function() { var dicionario = i3GEO.idioma.objetoIdioma(i3GEOF.legenda.dicionario); dicionario["locaplic"] = i3GEO.configura.locaplic; dicionario["asp"] = '"'; dicionario["aplicar"] = $trad("p14"); return dicionario; }, /* * Function: inicia * * Inicia a ferramenta. É chamado por criaJanelaFlutuante * * Parametro: * * iddiv {String} - id do div que receberá o conteudo HTML da ferramenta */ inicia : function(iddiv) { i3GEO.janela.comboCabecalhoTemas("i3GEOFlegendaComboCabeca", "i3GEOFlegendaComboCabecaSel", "legenda", "ligados"); if (i3GEO.temaAtivo === "") { $i(iddiv).innerHTML = "";// '

'+$trad("x33")+'

'; return; } try { $i(iddiv).innerHTML += i3GEOF.legenda.html(); i3GEO.guias.mostraGuiaFerramenta("i3GEOlegendaguia1", "i3GEOlegendaguia"); // eventos das guias $i("i3GEOlegendaguia7").onclick = function() { i3GEOF.legenda.ativaAplicar("none"); i3GEO.guias.mostraGuiaFerramenta("i3GEOlegendaguia7", "i3GEOlegendaguia"); }; $i("i3GEOlegendaguia6").onclick = function() { i3GEOF.legenda.ativaAplicar("none"); i3GEO.guias.mostraGuiaFerramenta("i3GEOlegendaguia6", "i3GEOlegendaguia"); }; $i("i3GEOlegendaguia1").onclick = function() { i3GEOF.legenda.ativaAplicar("none"); i3GEOF.legenda.mostralegenda(); i3GEO.guias.mostraGuiaFerramenta("i3GEOlegendaguia1", "i3GEOlegendaguia"); }; $i("i3GEOlegendaguia2").onclick = function() { i3GEOF.legenda.ativaAplicar("none"); i3GEO.guias.mostraGuiaFerramenta("i3GEOlegendaguia2", "i3GEOlegendaguia"); }; $i("i3GEOlegendaguia3").onclick = function() { i3GEO.janela.tempoMsg($trad('ajuda', i3GEOF.legenda.dicionario)); }; $i("i3GEOlegendaguia4").onclick = function() { i3GEOF.legenda.ativaAplicar("none"); i3GEOF.legenda.mostraGrafico(); }; $i("i3GEOlegendaguia5").onclick = function() { i3GEOF.legenda.ativaAplicar("none"); i3GEO.guias.mostraGuiaFerramenta("i3GEOlegendaguia5", "i3GEOlegendaguia"); }; var b = new YAHOO.widget.Button("i3GEOlegendabotaoAplicarCluster", { onclick : { fn : i3GEOF.legenda.aplicarCluster } }); b.addClass("rodar"); var b = new YAHOO.widget.Button("i3GEOlegendabotaoRemoverCluster", { onclick : { fn : i3GEOF.legenda.removerCluster } }); b.addClass("rodar"); var b = new YAHOO.widget.Button("i3GEOlegendabotao1", { onclick : { fn : i3GEOF.legenda.mudaLegenda } }); b.addClass("rodar150"); b = new YAHOO.widget.Button("i3GEOlegendabotao2", { onclick : { fn : i3GEOF.legenda.adicionaClasse } }); b.addClass("rodar150"); b = new YAHOO.widget.Button("i3GEOlegendabotao3", { onclick : { fn : i3GEOF.legenda.adicionaConta } }); b.addClass("rodar"); b = new YAHOO.widget.Button("i3GEOlegendabotao15", { onclick : { fn : i3GEOF.legenda.adicionaOpacidade } }); b.addClass("rodar"); b = new YAHOO.widget.Button("i3GEOlegendabotaoRamp", { onclick : { fn : function() { var tabela = $i("i3GEOlegendalegenda"); var trs = tabela.getElementsByTagName("tr"); var ncores = trs.length - 1; // $i("i3geo_janelaCorRampComboCabecaSel").value = i3GEOF.legenda.tema; i3GEO.util.abreColourRamp("", "listaColourRamp", ncores, i3GEOF.legenda.tema); } } }); b.addClass("rodar"); b = new YAHOO.widget.Button("i3GEOlegendabotao4", { onclick : { fn : i3GEOF.legenda.paleta } }); b.addClass("rodar100"); b = new YAHOO.widget.Button("i3GEOlegendabotao5", { onclick : { fn : i3GEOF.legenda.simbU } }); b.addClass("rodar"); b = new YAHOO.widget.Button("i3GEOlegendabotao6", { onclick : { fn : i3GEOF.legenda.valorU } }); b.addClass("rodar"); b = new YAHOO.widget.Button("i3GEOlegendabotaoMetade", { onclick : { fn : i3GEOF.legenda.metade } }); b.addClass("rodar"); b = new YAHOO.widget.Button("i3GEOlegendabotaoMedia", { onclick : { fn : i3GEOF.legenda.media } }); b.addClass("rodar"); b = new YAHOO.widget.Button("i3GEOlegendabotao7", { onclick : { fn : i3GEOF.legenda.representacao } }); b.addClass("rodar"); b = new YAHOO.widget.Button("i3GEOlegendabotao8", { onclick : { fn : i3GEOF.legenda.valorC } }); b.addClass("rodar"); b = new YAHOO.widget.Button("i3GEOlegendabotao9", { onclick : { fn : i3GEOF.legenda.valorQ } }); b.addClass("rodar"); b = new YAHOO.widget.Button("i3GEOlegendabotaoQuantil", { onclick : { fn : i3GEOF.legenda.valorQu } }); b.addClass("rodar"); b = new YAHOO.widget.Button("i3GEOlegendabotaoQN", { onclick : { fn : i3GEOF.legenda.valorQN } }); b.addClass("rodar"); b = new YAHOO.widget.Button("i3GEOlegendabotao17", { onclick : { fn : i3GEOF.legenda.alteraGeometriaTema } }); b.addClass("rodar"); b = new YAHOO.widget.Button("i3GEOlegendabotaoSLDe", { onclick : { fn : function() { window.open(i3GEO.configura.locaplic + "/ferramentas/legenda/exec.php?funcao=tema2sld&tema=" + i3GEOF.legenda.tema + "&g_sid=" + i3GEO.configura.sid); } } }); b.addClass("rodar"); b = new YAHOO.widget.Button("i3GEOlegendabotaoSLDi", { onclick : { fn : function() { i3GEO.tema.dialogo.aplicarsld(i3GEOF.legenda.tema); } } }); b.addClass("rodar"); b = new YAHOO.widget.Button("i3GEOlegendabotaoIncluirLabel", { onclick : { fn : function() { var par, p, temp, cp; try { par = i3GEOF.proplabel.pegaPar(); i3GEOF.legenda.parDefault = par; } catch (e) { par = i3GEOF.legenda.parDefault; } i3GEOF.legenda.aguarde.visibility = "visible"; temp = function() { i3GEOF.legenda.aguarde.visibility = "hidden"; i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; }; p = i3GEO.configura.locaplic + "/ferramentas/legenda/exec.php?g_sid=" + i3GEO.configura.sid + "&funcao=adicionaLabelClasse&tema=" + i3GEOF.legenda.tema + "&classe=" + i3GEOF.legenda.classe + par; p += "&item=" + $i("i3GEOlegendaSelItemLabel").value; cp = new cpaint(); cp.set_response_type("JSON"); cp.call(p, "foo", temp); } } }); b.addClass("rodar100"); b = new YAHOO.widget.Button("i3GEOlegendabotaoExcluirLabel", { onclick : { fn : function() { var p, temp, cp; i3GEOF.legenda.aguarde.visibility = "visible"; temp = function() { i3GEOF.legenda.aguarde.visibility = "hidden"; i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; }; p = i3GEO.configura.locaplic + "/ferramentas/legenda/exec.php?g_sid=" + i3GEO.configura.sid + "&funcao=removeLabelClasse&tema=" + i3GEOF.legenda.tema + "&classe=" + i3GEOF.legenda.classe; cp = new cpaint(); cp.set_response_type("JSON"); cp.call(p, "foo", temp); } } }); b.addClass("rodar100"); b = new YAHOO.widget.Button("i3GEOlegendabotaoPropriedadeLabel", { onclick : { fn : function() { i3GEO.util.scriptTag( i3GEO.configura.locaplic + "/ferramentas/opcoes_label/index.js", "i3GEOF.proplabel.criaJanelaFlutuante(false)", "i3GEOFproplabel", false); } } }); b.addClass("abrir100"); i3GEOF.legenda.ativaFoco(); i3GEOF.legenda.mostralegenda(); i3GEO.util.comboItens("", i3GEOF.legenda.tema, function(retorno) { if ($i("i3GEOlegendaitensValorUnico")) { $i("i3GEOlegendaitensValorUnico").innerHTML = retorno.dados; } if ($i("i3GEOlegendaClassesValorUnico")) { $i("i3GEOlegendaClassesValorUnico").innerHTML = retorno.dados; } if ($i("i3GEOlegendaitensMetade")) { $i("i3GEOlegendaitensMetade").innerHTML = retorno.dados; } if ($i("i3GEOlegendaitensMetadeId")) { $i("i3GEOlegendaitensMetadeId").innerHTML = retorno.dados; } if ($i("i3GEOlegendaitensMedia")) { $i("i3GEOlegendaitensMedia").innerHTML = retorno.dados; } if ($i("i3GEOlegendaitensValorClass")) { $i("i3GEOlegendaitensValorClass").innerHTML = retorno.dados; } if ($i("i3GEOlegendaitensCluster")) { $i("i3GEOlegendaitensCluster").innerHTML = retorno.dados; } if ($i("i3GEOlegendaitensValorQuartil")) { $i("i3GEOlegendaitensValorQuartil").innerHTML = retorno.dados; } }); if (i3GEO.arvoreDeCamadas.pegaTema(i3GEOF.legenda.tema).classe && i3GEO.arvoreDeCamadas.pegaTema(i3GEOF.legenda.tema).classe .toLowerCase() == "nao") { $i("i3GEOFlegendamostra").checked = false; } $i("i3GEOFlegendamostra").onclick = function() { i3GEO.tema.invertestatuslegenda(i3GEOF.legenda.tema); }; i3GEO.util.aplicaAquarela("i3GEOF.legenda_corpo"); i3GEOF.legenda.aposIniciar.call(); } catch (erro) { i3GEO.janela.tempoMsg(erro); i3GEOF.legenda.aposIniciar = function(){}; } i3GEO.guias.ajustaGuiaFerramenta("i3GEOF.legenda", "i3GEOlegenda"); }, /* * Function: html * * Gera o código html para apresentação das opções da ferramenta * * Retorno: * * String com o código html */ html : function() { var ins = Mustache.render(i3GEOF.legenda.MUSTACHE, i3GEOF.legenda.mustacheHash()); return ins; }, /* * Function: iniciaJanelaFlutuante * * Cria a janela flutuante para controle da ferramenta. */ iniciaJanelaFlutuante : function() { var minimiza, cabecalho, janela, divid, temp, titulo; if ($i("i3GEOF.legenda")) { i3GEOF.legenda.tema = i3GEO.temaAtivo; i3GEOF.legenda.inicia("i3GEOF.legenda_corpo"); return; } cabecalho = function() { i3GEOF.legenda.ativaFoco(); }; minimiza = function() { i3GEO.janela.iconiza("i3GEOF.legenda",120,"i3GEOFlegendaCabecalhoI"); i3GEOF.legenda.ativaAplicar("none"); }; // cria a janela flutuante titulo = "" + "
" + "
------
" + "
" + $trad("t33") + "
"; janela = i3GEO.janela.cria("490px", "340px", "", "", "", titulo, "i3GEOF.legenda", false, "hd", cabecalho, minimiza, function() { i3GEO.guias.ajustaGuiaFerramenta("i3GEOF.legenda", "i3GEOlegenda"); }, true, "", "", "nao"); divid = janela[2].id; i3GEOF.legenda.aguarde = $i("i3GEOF.legenda_imagemCabecalho").style; $i("i3GEOF.legenda_corpo").style.backgroundColor = "white"; i3GEOF.legenda.inicia(divid); temp = function() { if (i3GEO.eventos.ATUALIZAARVORECAMADAS.toString().search( 'i3GEO.janela.comboCabecalhoTemas("i3GEOFlegendaComboCabeca","i3GEOFlegendaComboCabecaSel","legenda","ligados")') > 0) { i3GEO.eventos.ATUALIZAARVORECAMADAS .remove('i3GEO.janela.comboCabecalhoTemas("i3GEOFlegendaComboCabeca","i3GEOFlegendaComboCabecaSel","legenda","ligados")'); } }; YAHOO.util.Event.addListener(janela[0].close, "click", temp); }, /* * Function: ativaFoco * * Refaz a interface da ferramenta quando a janela flutuante tem seu foco ativado */ ativaFoco : function() { if (i3GEOF.legenda.tema !== "" && i3GEO.arvoreDeCamadas.pegaTema(i3GEOF.legenda.tema) === "") { i3GEO.janela.tempoMsg($trad('temaInexistente', i3GEOF.legenda.dicionario)); } var i = $i("i3GEOF.legenda_c").style; i.zIndex = i3GEO.janela.ULTIMOZINDEX; i3GEO.janela.ULTIMOZINDEX++; }, ativaAplicar : function(tipo) { var b = $i("i3GEOlegendabotao10"); if (b) { b.style.display = tipo; } else { YAHOO.i3GEO.janela.manager.find("i3GEOF.legenda").setFooter( ''); b = new YAHOO.widget.Button("i3GEOlegendabotao10", { onclick : { fn : i3GEOF.legenda.aplicaEstilo } }); b.addClass("rodar"); $i("i3GEOlegendabotao10-button").style.width = "100%"; $i("i3GEOlegendabotao10").style.width = "100%"; $i("i3GEOlegendabotao10").style.display = tipo; } }, /* * Function: aposAlterarLegenda * * Função executada após ocorrer alguma alteração efetiva da legenda do mapa */ aposAlterarLegenda : function() { i3GEO.atualiza(); i3GEO.Interface.atualizaTema("", i3GEOF.legenda.tema); i3GEO.arvoreDeCamadas.atualizaLegenda(i3GEOF.legenda.tema); i3GEO.mapa.legendaHTML.atualiza(); }, /* * Function: mostralegenda * * Pega os dados da legenda do mapa atual e mostra na tela * * Veja: * * */ mostralegenda : function() { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var p, cp; p = i3GEO.configura.locaplic + "/ferramentas/legenda/exec.php?g_sid=" + i3GEO.configura.sid + "&funcao=editalegenda&opcao=edita&tema=" + i3GEOF.legenda.tema; cp = new cpaint(); cp.set_response_type("JSON"); cp.call(p, "tabelaLegenda", i3GEOF.legenda.montaLegenda); }, /* * Function: montaLegenda * * Formata a tabela de edição da legenda * * Parametro: * * retorno - objeto contendo os dados para formatação da legenda */ montaLegenda : function(retorno) { i3GEOF.legenda.aviso = false; try { if (retorno.data != undefined) { var b, ins, i, ajuda, id, re, exp, n, filtro; // se nao for do tipo raster if (retorno.data[0].proc === "") { ins = [ "" + "" + "" + "" + "" + "" + "" + "" + "" + "" ]; n = retorno.data.length; for (i = 0; i < n; i++) { id = retorno.data[i].tema + "-" + retorno.data[i].idclasse; // layer+indice da classe re = new RegExp("'", "g"); exp = (retorno.data[i].expressao).replace(re, '"'); ins.push(""); ins.push(""); ins.push(""); ins.push(""); ins.push(""); filtro = ""; ins.push(""); ins.push(""); ins.push(""); ins.push(""); if (n > 1) { ins.push(""); ins.push(""); } ins.push(""); } ins.push("
" + "" + "nomeexpressãominScalemaxScale
 
" + $inputText( "", "", "i3GEOlegendaid_" + id, $trad('digitaNovoNome', i3GEOF.legenda.dicionario), 20, retorno.data[i].nomeclasse, "nome", "javascript:i3GEOF.legenda.aviso()") + "" + $inputText("", "", "i3GEOlegendaid_exp" + id, $trad( 'digitaNovaExpressao', i3GEOF.legenda.dicionario), 25, exp, "expressao", "javascript:i3GEOF.legenda.aviso()") + "" + filtro + "" + $inputText( "", "", "i3GEOlegendaid_" + id, $trad('minScale', i3GEOF.legenda.dicionario), 10, retorno.data[i].minScale, "minScale", "javascript:i3GEOF.legenda.aviso()") + "" + $inputText( "", "", "i3GEOlegendaid_" + id, $trad('maxScale', i3GEOF.legenda.dicionario), 10, retorno.data[i].maxScale, "maxScale", "javascript:i3GEOF.legenda.aviso()") + "

"); $i("i3GEOlegendaresultado").innerHTML = ins.join(""); } else { ajuda = "

" + $trad('ajudaEscalaCores', i3GEOF.legenda.dicionario) + "

" + $trad('msgEscalaCoresAuto', i3GEOF.legenda.dicionario) + "

" + $trad('msgEscalaCoresIndividual', i3GEOF.legenda.dicionario) + "

" + $trad('msgBandas', i3GEOF.legenda.dicionario) + "

" + $trad('msgReamostragem', i3GEOF.legenda.dicionario); ins = "

" + $trad('adicionaProcesso', i3GEOF.legenda.dicionario) + ":" + "
" + '

'; if (retorno.data[0].proc == "") { ins += "

"; } else { ins += "
"; for (i = 0; i < retorno.data[0].proc.length; i++) { ins += "
" + $inputText("", "", "", "", 50, retorno.data[0].proc[i]); } ins += "
"; } $i("i3GEOlegendaresultado").innerHTML = ins + ajuda; b = new YAHOO.widget.Button("i3GEOlegendabotao16", { onclick : { fn : i3GEOF.legenda.aplicaProcessos } }); b.addClass("rodar"); } } else { $i("i3GEOlegendaresultado").innerHTML = "

Erro
"; } i3GEOF.legenda.aguarde.visibility = "hidden"; } catch (e) { i3GEO.janela.tempoMsg($trad('msgNaoEditaLegenda', i3GEOF.legenda.dicionario)); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, filtro : function(idRetorno) { i3GEO.tema.dialogo.filtro(i3GEOF.legenda.tema, true, idRetorno); }, /* * Function: aviso * * Mostra um i3GEO.janela.tempoMsga ao usuário quando um campo da tabela que contém os dados da legenda é * alterado * * O aviso é mostrado apenas uma vez */ aviso : function() { if (i3GEOF.legenda.aviso == true) { i3GEO.janela.tempoMsg($trad('msgAplicaAlteracao', i3GEOF.legenda.dicionario)); i3GEOF.legenda.aviso == false; } }, /* * Function: aplicaColourRamp * * Aplica nas classes da legenda as cores escolhidas no seletor de cores */ aplicaColourRamp : function() { if ($i("listaColourRamp").value != "") { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var cores = $i("listaColourRamp").value, ext = i3GEO.util.extOSM2Geo(i3GEO.parametros.mapexten), temp = function() { i3GEOF.legenda.aguarde.visibility = "hidden"; i3GEOF.legenda.mostralegenda(); i3GEOF.legenda.aposAlterarLegenda(); }, p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=alteraclasse&opcao=aplicacoresrgb&ext=" + ext + "&tema=" + i3GEOF.legenda.tema, cp = new cpaint(); cp.set_transfer_mode('POST'); cp.set_response_type("JSON"); cp.call(p, "foo", temp, "cores=" + cores); } }, /* * Function: corj * * Abre a janela para o usuário selecionar uma cor interativamente */ corj : function(obj) { i3GEO.util.abreCor("", obj); }, /* * Function: modificaCor * * Modifica a cor de uma classe */ modificaCor : function(id) { var obj = $i("tempCorLegenda"); if (!obj) { var obj = document.createElement("input"); obj.id = "tempCorLegenda"; obj.style.display = "none"; obj.type = "text"; obj.value = ""; document.body.appendChild(obj); obj.onchange = function() { i3GEOF.legenda.aplicaNovaCor($i("tempCorLegenda").name); }; } obj.name = id; i3GEO.util.abreCor("", "tempCorLegenda"); }, aplicaNovaCor : function(id) { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var retorna = function() { i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; i3GEOF.legenda.mostralegenda(); }; i3GEO.php.aplicaCorClasseTema(retorna, i3GEOF.legenda.tema, id, $i("tempCorLegenda").value); }, /* * Function: mudaLegenda * * Altera a legenda conforme os valores existentes na tabela de propriedades (expressão e nome da classe) * * Veja: * * */ mudaLegenda : function() { i3GEOF.legenda.aviso = false; if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; try { var tabela = $i("i3GEOlegendalegenda"), trs = tabela.getElementsByTagName("tr"), minScales = [], maxScales = [], nomes = [], exps = [], ids = [], t, nn, n, p, cp, temp; // expn, // re = new RegExp('"', "g"); for (t = 0; t < trs.length; t++) { if (trs[t].childNodes) { nn = trs[t].childNodes; for (n = 0; n < nn.length; n++) { if (nn[n].childNodes) { var isn = nn[n].getElementsByTagName("input"); if (isn[0] != undefined) { if (isn[0].name == "nome") { nomes.push(isn[0].value); temp = (isn[0].id).split("i3GEOlegendaid_"); ids.push(temp[1]); } if (isn[0].name == "expressao") { exps.push(isn[0].value); } if (isn[0].name == "minScale") { minScales.push(parseInt(isn[0].value, 10)); } if (isn[0].name == "maxScale") { maxScales.push(parseInt(isn[0].value, 10)); } } } } } } ids = ids.join(";"); nomes = nomes.join(";"); exps = exps.join(";"); minScales = minScales.join(";"); maxScales = maxScales.join(";"); temp = function() { i3GEOF.legenda.aguarde.visibility = "hidden"; i3GEOF.legenda.mostralegenda(); i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; }; var ext = i3GEO.util.extOSM2Geo(i3GEO.parametros.mapexten); p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?" + "base64=sim" + "&g_sid=" + i3GEO.configura.sid + "&funcao=alteraclasse" + "&opcao=alteraclasses" + "&ext=" + ext; cp = new cpaint(); cp.set_transfer_mode('POST'); cp.set_response_type("JSON"); cp.call(p, "alteraclassesPost", temp, "ids=" + i3GEO.util.base64encode(ids) + "&nomes=" + i3GEO.util.base64encode(nomes) + "&exps=" + i3GEO.util.base64encode(exps) + "&minScales=" + minScales + "&maxScales=" + maxScales); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: alteraGeometria * * Altera o tipo de representação geométrica dos elementos de um layer * * Veja: * * */ alteraGeometriaTema : function() { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var retorna = function() { i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; i3GEOF.legenda.mostralegenda(); }; var p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=alteraclasse&opcao=alterageometria&tema=" + i3GEOF.legenda.tema + "&tipo=" + $i("i3GEOlegentaTipoGeo").value, cp = new cpaint(); cp.set_response_type("JSON"); cp.call(p, "", retorna); }, /* * Function: adicionaConta * * Adiciona ao nome de cada classe o número de ocorrências em cada uma * * Veja: * * */ adicionaConta : function() { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var p = i3GEO.configura.locaplic + "/ferramentas/legenda/exec.php?g_sid=" + i3GEO.configura.sid + "&funcao=contagemclasse" + "&tema=" + i3GEOF.legenda.tema, cp = new cpaint(); cp.set_response_type("JSON"); cp.call(p, "contagemclasse", i3GEOF.legenda.montaLegenda); i3GEO.janela.tempoMsg($trad('consideraElementosVisiveis', i3GEOF.legenda.dicionario)); }, /* * Function: adicionaClasse * * Adiciona uma nova classe ao tema * * Veja: * * */ adicionaClasse : function() { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } var ext = i3GEO.util.extOSM2Geo(i3GEO.parametros.mapexten); var p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=alteraclasse&opcao=adicionaclasse" + "&tema=" + i3GEOF.legenda.tema + "&ext=" + ext, cp = new cpaint(); cp.set_response_type("JSON"); cp.call(p, "alteraclasse", i3GEOF.legenda.mostralegenda); }, /* * Function: adicionaOpacidade * * Adiciona opacidade variável em cada classe * * Veja: * * */ adicionaOpacidade : function() { var retorna = function() { i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; i3GEOF.legenda.mostralegenda(); }; if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } var ext = i3GEO.util.extOSM2Geo(i3GEO.parametros.mapexten); var p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=alteraclasse&opcao=adicionaopacidade" + "&tema=" + i3GEOF.legenda.tema + "&ext=" + ext, cp = new cpaint(); cp.set_response_type("JSON"); cp.call(p, "alteraclasse", retorna); }, /* * Function: paleta * * Gera as cores para as classes considerando um RGB inicial e um final * * Veja: * * */ paleta : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var retornapaleta = function() { i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; i3GEOF.legenda.mostralegenda(); }, ci = $i("i3GEOlegendaacori").value, cf = $i("i3GEOlegendaacorf").value, cp = new cpaint(), p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=alteraCoresClasses&tema=" + i3GEOF.legenda.tema + "&cori=" + ci + "&corf=" + cf; cp.set_response_type("JSON"); cp.call(p, "alteraCoresClasses", retornapaleta); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: inverteCores * * Inverte as cores utilizadas nos símbolos das classes * * Veja: * * */ inverteCores : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var retornapaleta = function() { i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; i3GEOF.legenda.mostralegenda(); }, cp = new cpaint(), p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=inverteCoresClasses&tema=" + i3GEOF.legenda.tema; cp.set_response_type("JSON"); cp.call(p, "alteraCoresClasses", retornapaleta); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: calculaTamanho * * Muda o símbolo de cada classe aplicando tamanhos diferentes e lineares * * Veja: * * */ calculaTamanho : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var retornapaleta = function() { i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; i3GEOF.legenda.mostralegenda(); }, cp = new cpaint(), p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=calculaTamanhoClasses&tema=" + i3GEOF.legenda.tema; cp.set_response_type("JSON"); cp.call(p, "calculaTamanhoClasses", retornapaleta); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: ordenaClasses * * Ordena as classes pelo nome * */ ordenaClasses : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var retornapaleta = function() { i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; i3GEOF.legenda.mostralegenda(); }, cp = new cpaint(), p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=ordenaClasses&tema=" + i3GEOF.legenda.tema; cp.set_response_type("JSON"); cp.call(p, "foo", retornapaleta); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: excluilinhaf * * Exclui uma linha da tabela de edição de classes da legendda */ excluilinhaf : function(celula) { var p = celula.parentNode.parentNode; do { p.removeChild(p.childNodes[0]); } while (p.childNodes.length > 0); p.parentNode.removeChild(p); i3GEOF.legenda.mudaLegenda(); }, /* * Function: sobelinhaf * * Sobe uma linha na tabela de edição de classes da legendda */ sobelinhaf : function(idclasse) { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=ALTERACLASSE&opcao=sobeclasse&tema=" + i3GEOF.legenda.tema + "&idclasse=" + idclasse, cp = new cpaint(), temp = function() { i3GEOF.legenda.aguarde.visibility = "hidden"; i3GEOF.legenda.mostralegenda(); }; cp.set_response_type("JSON"); cp.call(p, "foo", temp); }, /* * Function: descelinhaf * * Desce uma linha na tabela de edição de classes da legendda */ descelinhaf : function(idclasse) { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=ALTERACLASSE&opcao=desceclasse&tema=" + i3GEOF.legenda.tema + "&idclasse=" + idclasse, cp = new cpaint(), temp = function() { i3GEOF.legenda.aguarde.visibility = "hidden"; i3GEOF.legenda.mostralegenda(); }; ; cp.set_response_type("JSON"); cp.call(p, "foo", temp); }, /* * Function: editaSimbolo * * Abre o editor de símbolos * * Veja: * * */ editaSimbolo : function(id) { try { $i("i3GEOlegendaguia1obj").style.display = "none"; $i("i3GEOlegendaguia3obj").style.display = "block"; i3GEOF.legenda.ativaAplicar("block"); id = id.split("-"); i3GEOF.legenda.classe = id[1]; i3GEOF.legenda.estilo = 0; i3GEOF.legenda.formEditorSimbolo(); i3GEOF.legenda.aguarde.visibility = "hidden"; } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, formEditorSimbolo : function() { var p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=editasimbolo&opcao=pegaparametros&tema=" + i3GEOF.legenda.tema + "&classe=" + i3GEOF.legenda.classe, cp = new cpaint(); cp.set_response_type("JSON"); cp.call(p, "pegaParametrosMapa", i3GEOF.legenda.montaEditor); }, /* * Function: simbU * * Altera a leganda do tema para o tipo símbolo único * * Veja: * * */ simbU : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var ext = i3GEO.util.extOSM2Geo(i3GEO.parametros.mapexten); var p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=alteraclasse&tema=" + i3GEOF.legenda.tema + "&opcao=simbolounico&ext=" + ext, cp = new cpaint(), fim = function() { i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; }; cp.set_response_type("JSON"); cp.call(p, "alteraclasse", fim); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: valorU * * Altera a leganda do tema para o tipo valor único * * Veja: * * */ valorU : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } var item = $i("i3GEOlegendaitensValorUnico").getElementsByTagName("select")[0].value, itemNome = $i("i3GEOlegendaClassesValorUnico").getElementsByTagName("select")[0].value, p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=alteraclasse&tema=" + i3GEOF.legenda.tema + "&item=" + item + "&itemNome=" + itemNome + "&opcao=valorunico" + "&ignorar=" + $i("i3GEOlegendaignorar").value, cp = new cpaint(), fim = function() { i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; }; if ($i("i3GEOFlegendaaplicaextent").checked === true) { p += "&ext=" + i3GEO.util.extOSM2Geo(i3GEO.parametros.mapexten); } else { p += "&ext=" + i3GEO.util.extOSM2Geo(i3GEO.parametros.extentTotal); } if (item == "") { i3GEO.janela.tempoMsg($trad('selecionaUmItem', i3GEOF.legenda.dicionario)); return; } i3GEOF.legenda.aguarde.visibility = "visible"; cp.set_response_type("JSON"); cp.call(p, "alteraclasse", fim); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: valorC * * Altera a leganda do tema com um número específico de classes * * Veja: * * */ valorC : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } var item = $i("i3GEOlegendaitensValorClass").getElementsByTagName("select")[0].value, nclasses = $i("i3GEOlegendanclasses").value, ext = i3GEO.util.extOSM2Geo(i3GEO.parametros.mapexten), p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=alteraclasse&nclasses=" + nclasses + "&tema=" + i3GEOF.legenda.tema + "&item=" + item + "&opcao=intervalosiguais&ignorar=" + $i("i3GEOlegendaignorar").value + "&ext=" + ext, cp = new cpaint(), fim = function() { i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; }; if (item == "") { i3GEO.janela.tempoMsg("Selecione um item!"); return; } if ($i("i3GEOFlegendaaplicaextent").checked === true) { p += "&ext=" + i3GEO.util.extOSM2Geo(i3GEO.parametros.mapexten); } else { p += "&ext=" + i3GEO.util.extOSM2Geo(i3GEO.parametros.extentTotal); } i3GEOF.legenda.aguarde.visibility = "visible"; cp.set_response_type("JSON"); cp.call(p, "alteraclasse", fim); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: metade * * Duas classes concentrando a soma das metades * * Veja: * * */ metade : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } var item = $i("i3GEOlegendaitensMetade").getElementsByTagName("select")[0].value, itemid = $i("i3GEOlegendaitensMetadeId").getElementsByTagName("select")[0].value, p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=alteraclasse" + "&tema=" + i3GEOF.legenda.tema + "&item=" + item + "&itemid=" + itemid + "&opcao=metade&ignorar=" + $i("i3GEOlegendaignorar").value, cp = new cpaint(), fim = function() { i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; }; if (item == "") { i3GEO.janela.tempoMsg("Selecione um item!"); return; } if (itemid == "") { i3GEO.janela.tempoMsg("Selecione um item!"); return; } if ($i("i3GEOFlegendaaplicaextent").checked === true) { p += "&ext=" + i3GEO.util.extOSM2Geo(i3GEO.parametros.mapexten); } else { p += "&ext=" + i3GEO.util.extOSM2Geo(i3GEO.parametros.extentTotal); } i3GEOF.legenda.aguarde.visibility = "visible"; cp.set_response_type("JSON"); cp.call(p, "alteraclasse", fim); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: media * * Duas classes considerando a media * * Veja: * * */ media : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } var item = $i("i3GEOlegendaitensMedia").getElementsByTagName("select")[0].value, p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=alteraclasse" + "&tema=" + i3GEOF.legenda.tema + "&item=" + item + "&opcao=media&ignorar=" + $i("i3GEOlegendaignorar").value, cp = new cpaint(), fim = function() { i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; }; if (item == "") { i3GEO.janela.tempoMsg("Selecione um item!"); return; } if ($i("i3GEOFlegendaaplicaextent").checked === true) { p += "&ext=" + i3GEO.util.extOSM2Geo(i3GEO.parametros.mapexten); } else { p += "&ext=" + i3GEO.util.extOSM2Geo(i3GEO.parametros.extentTotal); } i3GEOF.legenda.aguarde.visibility = "visible"; cp.set_response_type("JSON"); cp.call(p, "alteraclasse", fim); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: valorQ * * Altera a leganda do tema claculando as classes pelo método quartil * * Veja: * * */ valorQ : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } var item = $i("i3GEOlegendaitensValorQuartil").getElementsByTagName("select")[0].value, ext = i3GEO.util.extOSM2Geo(i3GEO.parametros.mapexten), p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=alteraclasse&tema=" + i3GEOF.legenda.tema + "&item=" + item + "&opcao=quartis&ignorar=" + $i("i3GEOlegendaignorar").value + "&ext=" + ext + "&tipoLegenda=" + $i("estiloClassesQuartis").value, cp = new cpaint(), fim = function() { i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; }; if (item == "") { i3GEO.janela.tempoMsg($trad('selecionaUmItem', i3GEOF.legenda.dicionario)); return; } i3GEOF.legenda.aguarde.visibility = "visible"; cp.set_response_type("JSON"); cp.call(p, "alteraclasse", fim); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: valorQu * * Altera a leganda do tema por meio do calculo de quantis * * Veja: * * */ valorQu : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } var item = $i("i3GEOlegendaitensValorClass").getElementsByTagName("select")[0].value, nclasses = $i("i3GEOlegendanclasses").value, ext = i3GEO.util.extOSM2Geo(i3GEO.parametros.mapexten), p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=alteraclasse&nclasses=" + nclasses + "&tema=" + i3GEOF.legenda.tema + "&item=" + item + "&opcao=quantil&ignorar=" + $i("i3GEOlegendaignorar").value + "&ext=" + ext, cp = new cpaint(), fim = function() { i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; }; if (item == "") { i3GEO.janela.tempoMsg($trad('selecionaUmItem', i3GEOF.legenda.dicionario)); return; } i3GEOF.legenda.aguarde.visibility = "visible"; cp.set_response_type("JSON"); cp.call(p, "alteraclasse", fim); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: valorQN * * Altera a legenda do tema por meio do calculo de quebras naturais * * Veja: * * */ valorQN : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } var item = $i("i3GEOlegendaitensValorClass").getElementsByTagName("select")[0].value, nclasses = $i("i3GEOlegendanclasses").value, ext = i3GEO.util.extOSM2Geo(i3GEO.parametros.mapexten), p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=alteraclasse&nclasses=" + nclasses + "&tema=" + i3GEOF.legenda.tema + "&item=" + item + "&opcao=quebrasnaturais&ignorar=" + $i("i3GEOlegendaignorar").value + "&ext=" + ext, cp = new cpaint(), fim = function() { i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; }; if (item == "") { i3GEO.janela.tempoMsg($trad('selecionaUmItem', i3GEOF.legenda.dicionario)); return; } i3GEOF.legenda.aguarde.visibility = "visible"; cp.set_response_type("JSON"); cp.call(p, "alteraclasse", fim); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: representacao * * Altera o tipo de representação do tema (linear ou poligonoal) * * Veja: * * * */ representacao : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } var p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=alterarepresentacao&tema=" + i3GEOF.legenda.tema, cp = new cpaint(), fim = function() { i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; }; i3GEOF.legenda.aguarde.visibility = "visible"; cp.set_response_type("JSON"); cp.call(p, "alteraRepresentacao", fim); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: montaEditor * * Monta o editor de símbolos quando o usuário clica em um símbolo na legenda */ montaEditor : function(retorno) { try { i3GEO.util.comboItens("i3GEOlegendaSelItemLabel", i3GEOF.legenda.tema, function(retorno) { if ($i("i3GEOlegendaitensLabel")) { $i("i3GEOlegendaitensLabel").innerHTML = retorno.dados; } }, "i3GEOlegendaitensLabel"); if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; if (retorno.data != undefined) { var b, l, i, sct, combo, n; retorno = retorno.data; i3GEOF.legenda.estilos = retorno.split("|"); combo = "

"; $i("i3GEOlegendacomboestilos").innerHTML = "
" + $trad('estiloEdicao', i3GEOF.legenda.dicionario) + ":" + combo + "
 (após adicionar ou excluir, aplique a alteração)
"; b = new YAHOO.widget.Button("i3GEOlegendabotao11", { onclick : { fn : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=editasimbolo&opcao=excluiestilo&tema=" + i3GEOF.legenda.tema + "&classe=" + i3GEOF.legenda.classe + "&estilo=" + i3GEOF.legenda.estilo, cp = new cpaint(); cp.set_response_type("JSON"); cp.call(p, "editasimbolo", i3GEOF.legenda.reMontaEditor); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } } } }); b.addClass("rodar100"); b = new YAHOO.widget.Button("i3GEOlegendabotao12", { onclick : { fn : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=editasimbolo&opcao=adicionaestilo&tema=" + i3GEOF.legenda.tema + "&classe=" + i3GEOF.legenda.classe + "&estilo=" + i3GEOF.legenda.estilo, cp = new cpaint(); cp.set_response_type("JSON"); cp.call(p, "editasimbolo", i3GEOF.legenda.reMontaEditor); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } } } }); b.addClass("rodar100"); b = new YAHOO.widget.Button("i3GEOlegendabotao13", { onclick : { fn : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=editasimbolo&opcao=sobeestilo&tema=" + i3GEOF.legenda.tema + "&classe=" + i3GEOF.legenda.classe + "&estilo=" + i3GEOF.legenda.estilo, cp = new cpaint(); cp.set_response_type("JSON"); cp.call(p, "editasimbolo", i3GEOF.legenda.reMontaEditor); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } } } }); b.addClass("rodar100"); b = new YAHOO.widget.Button("i3GEOlegendabotao14", { onclick : { fn : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=editasimbolo&opcao=desceestilo&tema=" + i3GEOF.legenda.tema + "&classe=" + i3GEOF.legenda.classe + "&estilo=" + i3GEOF.legenda.estilo, cp = new cpaint(); cp.set_response_type("JSON"); cp.call(p, "editasimbolo", i3GEOF.legenda.reMontaEditor); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } } } }); b.addClass("rodar100"); i3GEOF.legenda.aguarde.visibility = "hidden"; i3GEOF.legenda.mostraEstilo(0); } else { $i("i3GEOlegendacomboestilos").innerHTML = "

Erro
"; i3GEOF.legenda.aguarde.visibility = "hidden"; } } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: mostraEstilo * * Mostra as propriedades de um estilo de um símbolo */ mostraEstilo : function(e) { i3GEOF.legenda.aguarde.visibility = "visible"; try { var linha, tipoLayer, d, p, cp; i3GEOF.legenda.estilo = e; // esta e uma variavel global linha = i3GEOF.legenda.estilos[i3GEOF.legenda.estilo]; linha = linha.split("#"); tipoLayer = linha[0]; d = "" + "

Cor do contorno:

" + "
" + "
" + "" + "
" + "
" + "

" + $trad('corFrente', i3GEOF.legenda.dicionario) + ":

" + "
" + "
" + "" + "
" + "
" + "

" + $trad('corFundo', i3GEOF.legenda.dicionario) + ":

" + "
" + "
" + "" + "
" + "
" + "

" + $trad('tamanhoEspacamento', i3GEOF.legenda.dicionario) + ":

" + "
" + "
" + "" + "
" + "
" + "

" + $trad('espessura', i3GEOF.legenda.dicionario) + ":

" + "

" + "
" + "" + "
" + "
" + "

" + $trad('padraoRepeticao', i3GEOF.legenda.dicionario) + ":

" + "
" + "
" + "" + "
" + "
" + "

" + $trad('opacidade', i3GEOF.legenda.dicionario) + ":

" + "
" + "
" + "" + "
" + "
" + "

" + $trad('angulo', i3GEOF.legenda.dicionario) + ":

" + "
" + "
" + "" + "
" + "
" + "

" + $trad('symbolscale', i3GEOF.legenda.dicionario) + ":

" + "
" + "
" + "" + "
" + "
" + "

" + $trad('minsize', i3GEOF.legenda.dicionario) + ":

" + "
" + "
" + "" + "
" + "
" + "

" + $trad('maxsize', i3GEOF.legenda.dicionario) + ":

" + "
" + "
" + "" + "
" + "
" + "

" + $trad('offsetx', i3GEOF.legenda.dicionario) + ":

" + "
" + "
" + "" + "
" + "
" + "

" + $trad('offsety', i3GEOF.legenda.dicionario) + ":

" + "
" + "
" + "" + "
" + "
" + "

" + $trad('simbolo', i3GEOF.legenda.dicionario) + ":

" + "
" + "
" + "" + "
"; $i("i3GEOlegendaParametrosEstilos").innerHTML = d; i3GEO.util.aplicaAquarela("i3GEOlegendaParametrosEstilos"); p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=editasimbolo&tipo=" + tipoLayer + "&opcao=listaSimbolos&onclick=i3GEOF.legenda.aplicaSimbolo(this)"; cp = new cpaint(); cp.set_response_type("JSON"); cp.call(p, "editasimbolo", i3GEOF.legenda.listaSimbolos); i3GEOF.legenda.aguarde.visibility = "hidden"; } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: listaSimbolos * * Monta a lista de símbolos com imagem */ listaSimbolos : function(retorno) { i3GEOF.legenda.aguarde.visibility = "visible"; try { if (retorno.data != undefined) { retorno = retorno.data; $i("i3GEOlegendasimbolos").innerHTML = "
" + $trad('listaSimbolo', i3GEOF.legenda.dicionario) + ":

" + retorno; } else { $i("i3GEOlegendasimbolos").innerHTML = "

Erro
"; } i3GEOF.legenda.aguarde.visibility = "hidden"; } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: aplicaSimbolo * * Muda o valor do campo com o código do símbolo escolhido */ aplicaSimbolo : function(s) { $i("i3GEOlegendasymbolname").value = s.title; }, /* * Function: aplicaEstilo * * Aplica ao estilo as propriedades definidas * * Veja: * * */ aplicaEstilo : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var i, p, cp, fim, outlinecolor = $i("i3GEOlegendaoutlinecolor").value, backgroundcolor = $i("i3GEOlegendabackgroundcolor").value, color = $i("i3GEOlegendacolor").value, symbolname = $i("i3GEOlegendasymbolname").value, simbolos = $i("i3GEOlegendasimbolos").getElementsByTagName("img"), valido = "nao", n = simbolos.length, size = $i("i3GEOlegendasizes").value, width = $i("i3GEOlegendawidth").value, pattern = $i("i3GEOlegendapattern").value, opacidade = $i("i3GEOlegendaopacidade").value, angle = $i("i3GEOlegendaangulo").value, symbolscale = $i("i3GEOlegendasymbolscale").value, minsize = $i("i3GEOlegendaminsize").value, maxsize = $i("i3GEOlegendamaxsize").value, offsetx = $i("i3GEOlegendaoffsetx").value, offsety = $i("i3GEOlegendaoffsety").value; if (symbolscale != "") { symbolscale = parseInt(symbolscale, 10); } else { symbolscale = -1; } for (i = 0; i < n; i++) { if (simbolos[i].title == symbolname || symbolname == i) { valido = "sim"; } } if (valido === "nao") { // i3GEO.janela.tempoMsg("Nome do simbolo nao encontrado"); // i3GEOF.legenda.aguarde.visibility = "hidden"; // return; } p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=editasimbolo&opcao=aplica&tema=" + i3GEOF.legenda.tema + "&classe=" + i3GEOF.legenda.classe + "&estilo=" + i3GEOF.legenda.estilo + "&outlinecolor=" + outlinecolor + "&backgroundcolor=" + backgroundcolor + "&color=" + color + "&symbolname=" + symbolname + "&width=" + width + "&pattern=" + pattern + "&size=" + size + "&opacidade=" + opacidade + "&angle=" + angle + "&symbolscale=" + symbolscale + "&minsize=" + minsize + "&maxsize=" + maxsize + "&offsetx=" + offsetx + "&offsety=" + offsety; cp = new cpaint(); fim = function() { i3GEOF.legenda.aposAlterarLegenda(); i3GEOF.legenda.aguarde.visibility = "hidden"; i3GEOF.legenda.reMontaEditor(); }; // cp.set_debug(2) cp.set_response_type("JSON"); cp.call(p, "editasimbolo", fim); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: reMontaEditor * * Gera novamente o editor de símbolo após ter sido feita alguma alteração nos estilos */ reMontaEditor : function() { var id = i3GEOF.legenda.tema + "-" + i3GEOF.legenda.classe; i3GEOF.legenda.editaSimbolo(id); }, /* * Function: mostraGrafico * * Mostra um gráfico com a contegem de elementos em caada classe * * Veja: * * */ mostraGrafico : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var monta = function(retorno) { if (retorno.data && retorno.data[0].proc == "") { var b, ins = [], i, re, t; ins.push("

"); ins.push("

" + $trad('numeroOcorrenciasClasses', i3GEOF.legenda.dicionario) + "

"); ins.push(""); i3GEOF.legenda.dadosGrafico = [ "n;x" ]; if (retorno.data.length < 2) { i3GEO.janela.tempoMsg($trad('msgNumeroClasses', i3GEOF.legenda.dicionario)); i3GEOF.legenda.aguarde.visibility = "hidden"; return; } else { i3GEO.guias.mostraGuiaFerramenta("i3GEOlegendaguia4", "i3GEOlegendaguia"); } for (i = 0; i < retorno.data.length; i++) { id = retorno.data[i].tema + "-" + retorno.data[i].idclasse; // layer+indice da classe re = new RegExp("'", "g"); exp = (retorno.data[i].expressao).replace(re, '"'); ins.push(""); t = (retorno.data[i].nreg * 100) / retorno.data[i].totalreg; ins.push(""); i3GEOF.legenda.dadosGrafico.push(retorno.data[i].nomeclasse + ";" + retorno.data[i].nreg); } ins.push("
" + retorno.data[i].nomeclasse + "

"); $i("i3GEOlegendaguia4obj").innerHTML = ins.join(""); } else { $i("i3GEOlegendaguia4obj").innerHTML = "

Erro
"; return; } i3GEOF.legenda.aguarde.visibility = "hidden"; b = new YAHOO.widget.Button("i3GEOlegendaGraficoPizza", { onclick : { fn : function() { var js = i3GEO.configura.locaplic + "/ferramentas/graficointerativo1/dependencias.php"; i3GEO.util.scriptTag(js, "i3GEOF.legenda.iniciaGraficoPizza()", "i3GEOF.graficointerativo1_script"); } } }); b.addClass("abrir"); }, p = i3GEO.configura.locaplic + "/ferramentas/legenda/exec.php?g_sid=" + i3GEO.configura.sid + "&funcao=contagemclasse&tema=" + i3GEOF.legenda.tema, cp = new cpaint(); // cp.set_debug(2) cp.set_response_type("JSON"); cp.call(p, "cocontagemclasse", monta); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, iniciaGraficoPizza : function() { var dados = { "attributes" : { "id" : "" }, "data" : { "dados" : i3GEOF.legenda.dadosGrafico } }; i3GEOF.graficointerativo1.tipo = "pizza_1"; i3GEOF.graficointerativo1.iniciaJanelaFlutuante(dados); }, /* * Function: aplicaProcessos * * Aplica processos de ajuste em imagens de satélite * * Veja: * * */ aplicaProcessos : function() { try { if (i3GEOF.legenda.aguarde.visibility === "visible") { return; } i3GEOF.legenda.aguarde.visibility = "visible"; var lista = [], ipt, i, p, cp, temp; if ($i("i3GEOlegendaprocessos").innerHTML != "") { ipt = $i("i3GEOlegendaprocessos").getElementsByTagName("input"); for (i = 0; i < ipt.length; i++) { if (ipt[i].value != "") { lista.push(ipt[i].value); } } } lista = lista.join("|"); temp = function() { i3GEOF.legenda.aguarde.visibility = "hidden"; i3GEOF.legenda.mostralegenda(); i3GEOF.legenda.aposAlterarLegenda(); }; p = i3GEO.configura.locaplic + "/classesphp/mapa_controle.php?g_sid=" + i3GEO.configura.sid + "&funcao=aplicaProcessos&lista=" + lista + "&tema=" + i3GEOF.legenda.tema; cp = new cpaint(); cp.set_response_type("JSON"); cp.call(p, "aplicaProcessos", temp); } catch (e) { i3GEO.janela.tempoMsg("Erro: " + e); i3GEOF.legenda.aguarde.visibility = "hidden"; } }, /* * Function: adicionaProcesso * * Adiciona um novo processo na lista de processos */ adicionaProcesso : function(s) { $i("i3GEOlegendaprocessos").innerHTML += $inputText("", "", "", "", 50, s.value); }, aplicaTodasClasses : function(parametro, id) { var valor = $i(id).value; i3GEO.janela.confirma("Aplica " + parametro + " = " + valor + " ?", 300, $trad("x14"), "", function() { var temp = function() { // i3GEOF.legenda.mostralegenda(); i3GEOF.legenda.aposAlterarLegenda(); }, p, cp; p = i3GEO.configura.locaplic + "/ferramentas/legenda/exec.php?g_sid=" + i3GEO.configura.sid + "&funcao=aplicaTodasClasses" + "¶metro=" + parametro + "&valor=" + valor + "&tema=" + i3GEOF.legenda.tema; cp = new cpaint(); cp.set_response_type("JSON"); cp.call(p, "foo", temp); }); }, aplicarCluster : function(){ var temp = function() { // i3GEOF.legenda.mostralegenda(); i3GEOF.legenda.aposAlterarLegenda(); }, p, cp; p = i3GEO.configura.locaplic + "/ferramentas/legenda/exec.php?g_sid=" + i3GEO.configura.sid + "&funcao=aplicarCluster" + "&maxdistance=" + $i("i3GEOlegendaClusterMaxdistance").value + "&buffer=" + $i("i3GEOlegendaClusterBuffer").value + "&filter=" + i3GEO.util.base64encode($i("i3GEOlegendaClusterFilter").value) + "®ion=" + $i("i3GEOlegendaClusterRegion").value + "&group=" + $i("i3GEOlegendaitensCluster").getElementsByTagName("select")[0].value + "&tema=" + i3GEOF.legenda.tema; cp = new cpaint(); cp.set_response_type("JSON"); cp.call(p, "foo", temp); }, removerCluster : function(){ var temp = function() { // i3GEOF.legenda.mostralegenda(); i3GEOF.legenda.aposAlterarLegenda(); }, p, cp; p = i3GEO.configura.locaplic + "/ferramentas/legenda/exec.php?g_sid=" + i3GEO.configura.sid + "&funcao=removerCluster" + "&tema=" + i3GEOF.legenda.tema; cp = new cpaint(); cp.set_response_type("JSON"); cp.call(p, "foo", temp); } };