Commit 42bae254fd9a969a9da8c69e190b93c3636499d1

Authored by Edmar Moretti
1 parent 4774e05c

Inclusao de parametros para inicializar a ferramenta TME e abrir o resultado (kml em 3d) no Cesium

classesphp/pega_variaveis.php
@@ -4,23 +4,23 @@ Title: pega_variaveis.php @@ -4,23 +4,23 @@ Title: pega_variaveis.php
4 4
5 Processa os arrays $_GET e $_POST, transformando-os em variáveis conforme as chaves. 5 Processa os arrays $_GET e $_POST, transformando-os em variáveis conforme as chaves.
6 6
7 -Deve ser incluído sempre no início dos programas em PHP utilizados pelo i3Geo, evitando que o parâmetro "REGISTER_GLOBALS" 7 +Deve ser incluído sempre no início dos programas em PHP utilizados pelo i3Geo, evitando que o parâmetro "REGISTER_GLOBALS"
8 do PHP precise ser definido como "On". 8 do PHP precise ser definido como "On".
9 9
10 No caso do uso de POST do lado cliente com a biblioteca CPAINT, é feito o processamento 10 No caso do uso de POST do lado cliente com a biblioteca CPAINT, é feito o processamento
11 dos argumentos definidos na chamada call. Para fazer a chamada utilizando-se POST, deve-se seguir o exemplo abaixo: 11 dos argumentos definidos na chamada call. Para fazer a chamada utilizando-se POST, deve-se seguir o exemplo abaixo:
12 12
13 var cp = new cpaint(); 13 var cp = new cpaint();
14 - 14 +
15 cp.set_response_type("JSON"); 15 cp.set_response_type("JSON");
16 - 16 +
17 cp.set_transfer_mode("POST"); 17 cp.set_transfer_mode("POST");
18 - 18 +
19 var p = g_locaplic+"/classesphp/mapa_controle.php?g_sid="+g_sid; 19 var p = g_locaplic+"/classesphp/mapa_controle.php?g_sid="+g_sid;
20 - 20 +
21 cp.call(p,"criaSHPvazio",ativanovotema,"funcao=criashpvazio,tema=teste"); 21 cp.call(p,"criaSHPvazio",ativanovotema,"funcao=criashpvazio,tema=teste");
22 -  
23 - 22 +
  23 +
24 O parâmetro "funcao=criashpvazio,tema=teste" será transformado em variáveis, ou seja, 24 O parâmetro "funcao=criashpvazio,tema=teste" será transformado em variáveis, ou seja,
25 25
26 $funcao = "v"; 26 $funcao = "v";
@@ -44,7 +44,7 @@ Este programa é distribuído na expectativa de que seja útil @@ -44,7 +44,7 @@ Este programa é distribuído na expectativa de que seja útil
44 porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita 44 porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita
45 de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. 45 de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA.
46 Consulte a Licença Pública Geral do GNU para mais detalhes. 46 Consulte a Licença Pública Geral do GNU para mais detalhes.
47 -Você deve ter recebido uma cópia da Licença Pública Geral do 47 +Você deve ter recebido uma c�pia da Licença Pública Geral do
48 GNU junto com este programa; se não, escreva para a 48 GNU junto com este programa; se não, escreva para a
49 Free Software Foundation, Inc., no endereço 49 Free Software Foundation, Inc., no endereço
50 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. 50 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
@@ -78,7 +78,7 @@ if (isset($_POST)) @@ -78,7 +78,7 @@ if (isset($_POST))
78 $_POST[$k] = str_ireplace(array("delete","drop","update","insert","exec","system",";"),"",$_POST[$k]); 78 $_POST[$k] = str_ireplace(array("delete","drop","update","insert","exec","system",";"),"",$_POST[$k]);
79 if (($_POST[$k] != "''")) 79 if (($_POST[$k] != "''"))
80 eval("\$".$k."='".(strip_tags(trim($_POST[$k])))."';"); 80 eval("\$".$k."='".(strip_tags(trim($_POST[$k])))."';");
81 - 81 +
82 if (($_POST[$k] != "''") && ($k == "cpaint_argument")) 82 if (($_POST[$k] != "''") && ($k == "cpaint_argument"))
83 { 83 {
84 foreach($_POST["cpaint_argument"] as $argumento_) 84 foreach($_POST["cpaint_argument"] as $argumento_)
@@ -91,19 +91,19 @@ if (isset($_POST)) @@ -91,19 +91,19 @@ if (isset($_POST))
91 $argumento_ = implode("&",$argumento_); 91 $argumento_ = implode("&",$argumento_);
92 $parametros_ = explode("&",$argumento_); 92 $parametros_ = explode("&",$argumento_);
93 foreach($parametros_ as $parametro_) 93 foreach($parametros_ as $parametro_)
94 - { 94 + {
95 $p_ = explode("=",$parametro_); 95 $p_ = explode("=",$parametro_);
96 $parametro = $p_[0]; 96 $parametro = $p_[0];
97 $p_ = array_slice($p_, 1, count($p_)); 97 $p_ = array_slice($p_, 1, count($p_));
98 $valor_ = implode("=",$p_); 98 $valor_ = implode("=",$p_);
99 - 99 +
100 if($parametro != ""){ 100 if($parametro != ""){
101 $valor_ = str_replace("'","*#*",$valor_); 101 $valor_ = str_replace("'","*#*",$valor_);
102 eval("\$".$parametro."='".(trim($valor_))."';"); 102 eval("\$".$parametro."='".(trim($valor_))."';");
103 eval("\$".$parametro."=str_replace('*#*','\'',\$".$parametro.");"); 103 eval("\$".$parametro."=str_replace('*#*','\'',\$".$parametro.");");
104 - } 104 + }
105 } 105 }
106 - } 106 + }
107 } 107 }
108 } 108 }
109 } 109 }
ferramentas/cesium/kml3d.php 0 → 100755
@@ -0,0 +1,50 @@ @@ -0,0 +1,50 @@
  1 +<?php
  2 +include("../../classesphp/pega_variaveis.php");
  3 +?>
  4 +<!DOCTYPE html>
  5 +<html lang="en">
  6 + <head>
  7 + <title>Hello World!</title>
  8 + <script src="../../pacotes/cesium/Build/Cesium/Cesium.js"></script>
  9 + <style>
  10 + @import url(../../pacotes/cesium/Build/Cesium/Widgets/widgets.css);
  11 + #cesiumContainer {
  12 + position: absolute;
  13 + top: 0;
  14 + left: 0;
  15 + height: 100%;
  16 + width: 100%;
  17 + margin: 0;
  18 + overflow: hidden;
  19 + padding: 0;
  20 + font-family: sans-serif;
  21 + }
  22 +
  23 + html {
  24 + height: 100%;
  25 + }
  26 +
  27 + body {
  28 + padding: 0;
  29 + margin: 0;
  30 + overflow: hidden;
  31 + height: 100%;
  32 + }
  33 + </style>
  34 + </head>
  35 +<body>
  36 + <div id="cesiumContainer"></div>
  37 + <script>
  38 + var viewer = new Cesium.Viewer(
  39 + 'cesiumContainer',
  40 + {
  41 + timeline : false
  42 + }
  43 + );
  44 + // Add a WMS imagery layer
  45 +
  46 + var imageryLayers = viewer.imageryLayers;
  47 + viewer.dataSources.add(Cesium.KmlDataSource.load('<?php echo $kmlurl;?>'))
  48 + </script>
  49 +</body>
  50 +</html>
ferramentas/tme/dicionario.js
@@ -46,7 +46,12 @@ i3GEOF.tme.dicionario = { @@ -46,7 +46,12 @@ i3GEOF.tme.dicionario = {
46 es : "" 46 es : ""
47 } ], 47 } ],
48 'abreNoI3geo' : [ { 48 'abreNoI3geo' : [ {
49 - pt : "Ou clique para abrir no i3Geo:", 49 + pt : "Clique para abrir com GoogleEarth:",
  50 + en : "",
  51 + es : ""
  52 + } ],
  53 + 'abreNoCesium' : [ {
  54 + pt : "Clique para abrir com Cesium:",
50 en : "", 55 en : "",
51 es : "" 56 es : ""
52 } ], 57 } ],
ferramentas/tme/index.js
@@ -30,268 +30,322 @@ Voc&amp;ecirc; deve ter recebido uma c&amp;oacute;pia da Licen&amp;ccedil;a P&amp;uacute;blica G @@ -30,268 +30,322 @@ Voc&amp;ecirc; deve ter recebido uma c&amp;oacute;pia da Licen&amp;ccedil;a P&amp;uacute;blica G
30 GNU junto com este programa; se n&atilde;o, escreva para a 30 GNU junto com este programa; se n&atilde;o, escreva para a
31 Free Software Foundation, Inc., no endere&ccedil;o 31 Free Software Foundation, Inc., no endere&ccedil;o
32 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. 32 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
33 -*/  
34 -if(typeof(i3GEOF) === 'undefined'){ 33 + */
  34 +if (typeof (i3GEOF) === 'undefined') {
35 var i3GEOF = {}; 35 var i3GEOF = {};
36 } 36 }
37 37
38 /* 38 /*
39 -Classe: i3GEOF.tme  
40 -*/  
41 -i3GEOF.tme = {  
42 - //opcional - nome do item da tabela de atributos que contem os nomes dos elementos  
43 - //utilizado para definir o valor do combo i3GEOTMEregioes  
44 - ITEMNOMEREGIOES: "",  
45 - //opcional - nome do item da tabela de atributos que contem os dados dos elementos  
46 - //utilizado para definir item que iniciara marcado na lista de itens que indica a coluna que contem os dados  
47 - ITEMDADOS: "",  
48 - /*  
49 - Variavel: tema  
50 -  
51 - Tema que ser&aacute; utilizado  
52 -  
53 - Type:  
54 - {string}  
55 - */  
56 - tema: i3GEO.temaAtivo,  
57 - /*  
58 - Variavel: aguarde  
59 -  
60 - Estilo do objeto DOM com a imagem de aguarde existente no cabe&ccedil;alho da janela.  
61 - */  
62 - aguarde: "",  
63 - /*  
64 - Para efeitos de compatibilidade antes da vers&atilde;o 4.7 que n&atilde;o tinha dicion&aacute;rio  
65 - */  
66 - criaJanelaFlutuante: function(){  
67 - i3GEOF.tme.iniciaDicionario();  
68 - },  
69 - /**  
70 - * Template no formato mustache. E preenchido na carga do javascript com o programa dependencias.php  
71 - */  
72 - MUSTACHE : "",  
73 - /**  
74 - * Susbtitutos para o template  
75 - */  
76 - mustacheHash : function() {  
77 - var dicionario = i3GEO.idioma.objetoIdioma(i3GEOF.tme.dicionario);  
78 - return dicionario;  
79 - },  
80 - /*  
81 - Function: iniciaDicionario  
82 -  
83 - Carrega o dicion&aacute;rio e chama a fun&ccedil;&atilde;o que inicia a ferramenta  
84 -  
85 - O Javascript &eacute; carregado com o id i3GEOF.nomedaferramenta.dicionario_script  
86 - */  
87 - iniciaDicionario: function(){  
88 - if(typeof(i3GEOF.tme.dicionario) === 'undefined'){  
89 - i3GEO.util.scriptTag(  
90 - i3GEO.configura.locaplic+"/ferramentas/tme/dicionario.js",  
91 - "i3GEOF.tme.iniciaJanelaFlutuante()",  
92 - "i3GEOF.tme.dicionario_script"  
93 - );  
94 - }  
95 - else{  
96 - i3GEOF.tme.iniciaJanelaFlutuante();  
97 - }  
98 - },  
99 - /*  
100 - Function: inicia  
101 -  
102 - Inicia a ferramenta. &Eacute; chamado por criaJanelaFlutuante  
103 -  
104 - Parametro:  
105 -  
106 - iddiv {String} - id do div que receber&aacute; o conteudo HTML da ferramenta  
107 - */  
108 - inicia: function(iddiv){  
109 - i3GEO.janela.comboCabecalhoTemas("i3GEOFtmeComboCabeca","i3GEOFtmeComboCabecaSel","tme","ligadosComTabela");  
110 - if(i3GEO.temaAtivo === ""){  
111 - $i(iddiv).innerHTML = "";//'<img src="../imagens/opcoes.gif" ><p style="position: relative; top: -35px; width: 180px; font-size: 15px; text-align: left; left: 35px;">Escolha um tema da lista</p>';  
112 - return;  
113 - }  
114 - try{  
115 - $i(iddiv).innerHTML += i3GEOF.tme.html();  
116 - YAHOO.i3GEO.janela.manager.find("i3GEOF.tme").setFooter(  
117 - '<input class="paragrafo" id="i3GEOtmebotao1" type="button" value="'+$trad('geraKml',i3GEOF.tme.dicionario)+'" style="cursor:pointer;color:blue"/>'  
118 - );  
119 - var b = new YAHOO.widget.Button(  
120 - "i3GEOtmebotao1",  
121 - {onclick:{fn: i3GEOF.tme.ativa}}  
122 - );  
123 - b.addClass("rodar");  
124 - $i("i3GEOtmebotao1-button").style.width = "350px";  
125 - i3GEO.util.comboItens(  
126 - "i3GEOTMEregioes",  
127 - i3GEOF.tme.tema,  
128 - function(retorno){  
129 - if($i("i3GEOTMEregioeslista"))  
130 - {$i("i3GEOTMEregioeslista").innerHTML = retorno.dados;}  
131 - if(i3GEOF.tme.ITEMNOMEREGIOES != ""){ 39 + * Classe: i3GEOF.tme
  40 + *
  41 + * Camadas podem ter as definicoes default de parametros armazenadas no metadata TME Esse metadata e mantido no objeto
  42 + * i3GEO.arvoreDeCamadas.CAMADAS
  43 + */
  44 +i3GEOF.tme =
  45 + {
  46 + // opcional - nome do item da tabela de atributos que contem os nomes dos elementos
  47 + // utilizado para definir o valor do combo i3GEOTMEregioes
  48 + ITEMNOMEREGIOES : "",
  49 + // opcional - nome do item da tabela de atributos que contem os dados dos elementos
  50 + // utilizado para definir item que iniciara marcado na lista de itens que indica a coluna que contem os dados
  51 + ITEMDADOS : "",
  52 + TITULO : "",
  53 + LMAX : 5000,
  54 + AMAX : 2000000,
  55 + /*
  56 + * Variavel: tema
  57 + *
  58 + * Tema que ser&aacute; utilizado
  59 + *
  60 + * Type: {string}
  61 + */
  62 + tema : i3GEO.temaAtivo,
  63 + /*
  64 + * Variavel: aguarde
  65 + *
  66 + * Estilo do objeto DOM com a imagem de aguarde existente no cabe&ccedil;alho da janela.
  67 + */
  68 + aguarde : "",
  69 + /*
  70 + * Para efeitos de compatibilidade antes da vers&atilde;o 4.7 que n&atilde;o tinha dicion&aacute;rio
  71 + */
  72 + criaJanelaFlutuante : function() {
  73 + i3GEOF.tme.iniciaDicionario();
  74 + },
  75 + /**
  76 + * Template no formato mustache. E preenchido na carga do javascript com o programa dependencias.php
  77 + */
  78 + MUSTACHE : "",
  79 + /**
  80 + * Susbtitutos para o template
  81 + */
  82 + mustacheHash : function() {
  83 + var dicionario = i3GEO.idioma.objetoIdioma(i3GEOF.tme.dicionario);
  84 + return dicionario;
  85 + },
  86 + /*
  87 + * Function: iniciaDicionario
  88 + *
  89 + * Carrega o dicion&aacute;rio e chama a fun&ccedil;&atilde;o que inicia a ferramenta
  90 + *
  91 + * O Javascript &eacute; carregado com o id i3GEOF.nomedaferramenta.dicionario_script
  92 + */
  93 + iniciaDicionario : function() {
  94 + if (typeof (i3GEOF.tme.dicionario) === 'undefined') {
  95 + i3GEO.util.scriptTag(i3GEO.configura.locaplic + "/ferramentas/tme/dicionario.js", "i3GEOF.tme.iniciaJanelaFlutuante()",
  96 + "i3GEOF.tme.dicionario_script");
  97 + } else {
  98 + i3GEOF.tme.iniciaJanelaFlutuante();
  99 + }
  100 + },
  101 + /*
  102 + * Function: inicia
  103 + *
  104 + * Inicia a ferramenta. &Eacute; chamado por criaJanelaFlutuante
  105 + *
  106 + * Parametro:
  107 + *
  108 + * iddiv {String} - id do div que receber&aacute; o conteudo HTML da ferramenta
  109 + */
  110 + inicia : function(iddiv) {
  111 + i3GEO.janela.comboCabecalhoTemas("i3GEOFtmeComboCabeca", "i3GEOFtmeComboCabecaSel", "tme", "ligadosComTabela");
  112 + if (i3GEO.temaAtivo === "") {
  113 + $i(iddiv).innerHTML = "";// '<img src="../imagens/opcoes.gif" ><p style="position: relative; top: -35px; width: 180px;
  114 + // font-size: 15px; text-align: left; left: 35px;">Escolha um tema da lista</p>';
  115 + return;
  116 + }
  117 + try {
  118 + $i(iddiv).innerHTML += i3GEOF.tme.html();
  119 + YAHOO.i3GEO.janela.manager.find("i3GEOF.tme").setFooter(
  120 + '<input class="paragrafo" id="i3GEOtmebotao1" type="button" value="' + $trad('geraKml', i3GEOF.tme.dicionario)
  121 + + '" style="cursor:pointer;color:blue"/>');
  122 + var camada = "", b = new YAHOO.widget.Button("i3GEOtmebotao1", {
  123 + onclick : {
  124 + fn : i3GEOF.tme.ativa
  125 + }
  126 + });
  127 + b.addClass("rodar");
  128 + $i("i3GEOtmebotao1-button").style.width = "350px";
  129 + //
  130 + // verifica se a camada possui definicao dos parametros
  131 + //
  132 + if (i3GEO.arvoreDeCamadas) {
  133 + camada = i3GEO.arvoreDeCamadas.pegaTema(i3GEOF.tme.tema);
  134 + if (camada != "" && camada.ferramentas.tme) {
  135 + i3GEOF.tme.ITEMNOMEREGIOES = camada.ferramentas.tme.colnome;
  136 + i3GEOF.tme.AMAX = camada.ferramentas.tme.amax;
  137 + i3GEOF.tme.LMAX = camada.ferramentas.tme.lmax;
  138 + i3GEOF.tme.ITEMDADOS = camada.ferramentas.tme.colsdata.join(",");
  139 + i3GEOF.tme.TITULO = camada.ferramentas.tme.titulo;
  140 + } else if (camada != "") {
  141 + i3GEOF.tme.TITULO = camada.tema;
  142 + }
  143 + }
  144 + $i("i3GEOTMEbarSize").value = i3GEOF.tme.AMAX;
  145 + $i("i3GEOTMEmaxHeight").value = i3GEOF.tme.LMAX;
  146 + $i("i3GEOTMEtitulo").value = i3GEOF.tme.TITULO;
  147 + i3GEO.util.comboItens("i3GEOTMEregioes", i3GEOF.tme.tema, function(retorno) {
  148 + if ($i("i3GEOTMEregioeslista")) {
  149 + $i("i3GEOTMEregioeslista").innerHTML = retorno.dados;
  150 + }
  151 + if (i3GEOF.tme.ITEMNOMEREGIOES != "") {
132 $i("i3GEOTMEregioes").value = i3GEOF.tme.ITEMNOMEREGIOES; 152 $i("i3GEOTMEregioes").value = i3GEOF.tme.ITEMNOMEREGIOES;
133 } 153 }
134 - },  
135 - "i3GEOTMEregioeslista"  
136 - );  
137 - i3GEO.util.mensagemAjuda("i3GEOtmemen1",$i("i3GEOtmemen1").innerHTML);  
138 - i3GEOF.tme.ativaFoco();  
139 - if(i3GEO.arvoreDeCamadas){  
140 - $i("i3GEOTMEtitulo").value = i3GEO.arvoreDeCamadas.pegaTema(i3GEO.temaAtivo).tema; 154 + }, "i3GEOTMEregioeslista");
  155 + i3GEO.util.mensagemAjuda("i3GEOtmemen1", $i("i3GEOtmemen1").innerHTML);
  156 + i3GEO.php.listaItensTema(i3GEOF.tme.montaListaItens, i3GEOF.tme.tema);
  157 + i3GEOF.tme.ativaFoco();
  158 + } catch (erro) {
  159 + i3GEO.janela.tempoMsg(erro);
141 } 160 }
142 - }  
143 - catch(erro){i3GEO.janela.tempoMsg(erro);}  
144 - },  
145 - /*  
146 - Function: html  
147 -  
148 - Gera o c&oacute;digo html para apresenta&ccedil;&atilde;o das op&ccedil;&otilde;es da ferramenta  
149 -  
150 - Retorno:  
151 -  
152 - String com o c&oacute;digo html  
153 - */  
154 - html: function() {  
155 - var ins = Mustache.render(i3GEOF.tme.MUSTACHE, i3GEOF.tme.mustacheHash());  
156 - return ins;  
157 - },  
158 - /*  
159 - Function: iniciaJanelaFlutuante  
160 -  
161 - Cria a janela flutuante para controle da ferramenta.  
162 - */  
163 - iniciaJanelaFlutuante: function(){  
164 - var minimiza,cabecalho,janela,divid,temp,titulo;  
165 - if($i("i3GEOF.tme")){  
166 - i3GEOF.tme.inicia("i3GEOF.tme_corpo");  
167 - return;  
168 - }  
169 - cabecalho = function(){  
170 - i3GEOF.tme.ativaFoco();  
171 - };  
172 - minimiza = function(){  
173 - i3GEO.janela.minimiza("i3GEOF.tme");  
174 - };  
175 - //cria a janela flutuante  
176 - titulo = "<span class='i3GEOiconeFerramenta i3GEOiconeTme'></span>"  
177 - + "<div id='i3GEOFtmeComboCabeca' class='comboTemasCabecalho'> ------</div>"  
178 - + "<div class='i3GeoTituloJanela'>tme </span><a class=ajuda_usuario target=_blank href='" + i3GEO.configura.locaplic + "/ajuda_usuario.php?idcategoria=5&idajuda=108' ><b> </b></a></div>";  
179 - janela = i3GEO.janela.cria(  
180 - "380px",  
181 - "320px",  
182 - "",  
183 - "",  
184 - "",  
185 - titulo,  
186 - "i3GEOF.tme",  
187 - false,  
188 - "hd",  
189 - cabecalho,  
190 - minimiza,  
191 - "",  
192 - true  
193 - );  
194 - divid = janela[2].id;  
195 - i3GEOF.tme.aguarde = $i("i3GEOF.tme_imagemCabecalho").style;  
196 - $i("i3GEOF.tme_corpo").style.backgroundColor = "white";  
197 - i3GEOF.tme.inicia(divid);  
198 - temp = function(){  
199 - i3GEO.eventos.removeEventos("ATUALIZAARVORECAMADAS",['i3GEO.janela.comboCabecalhoTemas("i3GEOFtmeComboCabeca","i3GEOFtmeComboCabecaSel","tme","ligadosComTabela")']);  
200 - };  
201 - YAHOO.util.Event.addListener(janela[0].close, "click", temp);  
202 - },  
203 - /*  
204 - Function: ativaFoco  
205 -  
206 - Refaz a interface da ferramenta quando a janela flutuante tem seu foco ativado  
207 - */  
208 - ativaFoco: function(){  
209 - i3GEO.php.listaItensTema(i3GEOF.tme.montaListaItens,i3GEOF.tme.tema);  
210 - var i = $i("i3GEOF.tme_c").style;  
211 - i3GEO.janela.ULTIMOZINDEX++;  
212 - i.zIndex = 21000 + i3GEO.janela.ULTIMOZINDEX;  
213 - },  
214 - /*  
215 - Function: montaListaItens  
216 -  
217 - Monta a lista de itens que poder&atilde;o ser escolhidos para compor o mapa.  
218 -  
219 - A lista &eacute; inserida no elemento html com id "i3GEOtmelistai"  
220 - */  
221 - montaListaItens: function(retorno){  
222 - var ins,i,n,item;  
223 - try{  
224 - ins = [];  
225 - ins.push("<table class=lista >");  
226 - n = retorno.data.valores.length;  
227 - for (i=0;i<n; i++){  
228 - item = retorno.data.valores[i].item;  
229 - ins.push("<tr><td><input size=2 style='cursor:pointer' type=checkbox id=i3GEOtme"+item+" /></td>");  
230 - ins.push("<td>&nbsp;"+item+"</td>"); 161 + },
  162 + /*
  163 + * Function: html
  164 + *
  165 + * Gera o c&oacute;digo html para apresenta&ccedil;&atilde;o das op&ccedil;&otilde;es da ferramenta
  166 + *
  167 + * Retorno:
  168 + *
  169 + * String com o c&oacute;digo html
  170 + */
  171 + html : function() {
  172 + var ins = Mustache.render(i3GEOF.tme.MUSTACHE, i3GEOF.tme.mustacheHash());
  173 + return ins;
  174 + },
  175 + /*
  176 + * Function: iniciaJanelaFlutuante
  177 + *
  178 + * Cria a janela flutuante para controle da ferramenta.
  179 + */
  180 + iniciaJanelaFlutuante : function() {
  181 + var minimiza, cabecalho, janela, divid, temp, titulo;
  182 + if ($i("i3GEOF.tme")) {
  183 + i3GEOF.tme.inicia("i3GEOF.tme_corpo");
  184 + return;
231 } 185 }
232 - $i("i3GEOtmelistai").innerHTML = ins.join("");  
233 - ins.push("</table>");  
234 - if(i3GEOF.tme.ITEMDADOS != "" && $i("i3GEOtme"+i3GEOF.tme.ITEMDADOS)){  
235 - $i("i3GEOtme"+i3GEOF.tme.ITEMDADOS).checked = true; 186 + cabecalho = function() {
  187 + i3GEOF.tme.ativaFoco();
  188 + };
  189 + minimiza = function() {
  190 + i3GEO.janela.minimiza("i3GEOF.tme");
  191 + };
  192 + // cria a janela flutuante
  193 + titulo =
  194 + "<span class='i3GEOiconeFerramenta i3GEOiconeTme'></span>" + "<div id='i3GEOFtmeComboCabeca' class='comboTemasCabecalho'> ------</div>"
  195 + + "<div class='i3GeoTituloJanela'>tme </span><a class=ajuda_usuario target=_blank href='"
  196 + + i3GEO.configura.locaplic
  197 + + "/ajuda_usuario.php?idcategoria=5&idajuda=108' ><b> </b></a></div>";
  198 + janela = i3GEO.janela.cria("380px", "320px", "", "", "", titulo, "i3GEOF.tme", false, "hd", cabecalho, minimiza, "", true);
  199 + divid = janela[2].id;
  200 + i3GEOF.tme.aguarde = $i("i3GEOF.tme_imagemCabecalho").style;
  201 + $i("i3GEOF.tme_corpo").style.backgroundColor = "white";
  202 + i3GEOF.tme.inicia(divid);
  203 + temp = function() {
  204 + i3GEO.eventos.removeEventos("ATUALIZAARVORECAMADAS", [
  205 + 'i3GEO.janela.comboCabecalhoTemas("i3GEOFtmeComboCabeca","i3GEOFtmeComboCabecaSel","tme","ligadosComTabela")'
  206 + ]);
  207 + };
  208 + YAHOO.util.Event.addListener(janela[0].close, "click", temp);
  209 + },
  210 + /*
  211 + * Function: ativaFoco
  212 + *
  213 + * Refaz a interface da ferramenta quando a janela flutuante tem seu foco ativado
  214 + */
  215 + ativaFoco : function() {
  216 + // i3GEO.php.listaItensTema(i3GEOF.tme.montaListaItens,i3GEOF.tme.tema);
  217 + var i = $i("i3GEOF.tme_c").style;
  218 + i3GEO.janela.ULTIMOZINDEX++;
  219 + i.zIndex = 21000 + i3GEO.janela.ULTIMOZINDEX;
  220 + },
  221 + /*
  222 + * Function: montaListaItens
  223 + *
  224 + * Monta a lista de itens que poder&atilde;o ser escolhidos para compor o mapa.
  225 + *
  226 + * A lista &eacute; inserida no elemento html com id "i3GEOtmelistai"
  227 + */
  228 + montaListaItens : function(retorno) {
  229 + var ins, i, n, item, litens;
  230 + try {
  231 + ins = [];
  232 + ins.push("<table class=lista >");
  233 + n = retorno.data.valores.length;
  234 + for (i = 0; i < n; i++) {
  235 + item = retorno.data.valores[i].item;
  236 + ins.push("<tr><td><input size=2 style='cursor:pointer' type=checkbox id=i3GEOtme" + item + " /></td>");
  237 + ins.push("<td>&nbsp;" + item + "</td>");
  238 + }
  239 + $i("i3GEOtmelistai").innerHTML = ins.join("");
  240 + ins.push("</table>");
  241 + //
  242 + // marca as colunas default
  243 + //
  244 + litens = i3GEOF.tme.ITEMDADOS.split(",");
  245 + n = litens.length;
  246 + for (i = 0; i < n; i++) {
  247 + if ($i("i3GEOtme" + litens[i])) {
  248 + $i("i3GEOtme" + litens[i]).checked = true;
  249 + }
  250 + }
  251 + } catch (e) {
  252 + $i("i3GEOtmelistai").innerHTML = "<p style=color:red >Erro<br>" + e;
236 } 253 }
237 - }  
238 - catch(e)  
239 - {$i("i3GEOtmelistai").innerHTML = "<p style=color:red >Erro<br>"+e;}  
240 - },  
241 - /*  
242 - Function: pegaItensMarcados  
243 -  
244 - Recupera os itens que foram marcados e monta uma lista para enviar como parametro para a fun&ccedil;&atilde;o de gera&ccedil;&atilde;o dos gr&aacute;ficos  
245 - */  
246 - pegaItensMarcados: function(){  
247 - var listadeitens = [],  
248 - inputs = $i("i3GEOtmelistai").getElementsByTagName("input"),  
249 - i,  
250 - it,  
251 - n;  
252 - n = inputs.length;  
253 - for (i=0;i<n; i++){  
254 - if (inputs[i].checked === true){  
255 - it = inputs[i].id;  
256 - listadeitens.push(it.replace("i3GEOtme","")); 254 + },
  255 + /*
  256 + * Function: pegaItensMarcados
  257 + *
  258 + * Recupera os itens que foram marcados e monta uma lista para enviar como parametro para a fun&ccedil;&atilde;o de
  259 + * gera&ccedil;&atilde;o dos gr&aacute;ficos
  260 + */
  261 + pegaItensMarcados : function() {
  262 + var listadeitens = [], inputs = $i("i3GEOtmelistai").getElementsByTagName("input"), i, it, n;
  263 + n = inputs.length;
  264 + for (i = 0; i < n; i++) {
  265 + if (inputs[i].checked === true) {
  266 + it = inputs[i].id;
  267 + listadeitens.push(it.replace("i3GEOtme", ""));
  268 + }
257 } 269 }
258 - }  
259 - return(listadeitens);  
260 - },  
261 - /*  
262 - Function: ativa  
263 -  
264 - Cria o arquivo KML com os itens marcados 270 + return (listadeitens);
  271 + },
  272 + /*
  273 + * Function: ativa
  274 + *
  275 + * Cria o arquivo KML com os itens marcados
  276 + *
  277 + * Veja:
  278 + *
  279 + * <ATIVAtme>
  280 + */
  281 + ativa : function() {
  282 + try {
  283 + if (i3GEOF.tme.aguarde.visibility === "visible") {
  284 + return;
  285 + }
  286 + var lista = i3GEOF.tme.pegaItensMarcados(), cp = new cpaint(), temp, p, colunanomeregiao = $i("i3GEOTMEregioes").value;
  287 + if (lista.length === 0) {
  288 + i3GEO.janela.tempoMsg("selecione um item");
  289 + return;
  290 + }
  291 + if (colunanomeregiao === 0) {
  292 + i3GEO.janela.tempoMsg($trad('selecionaItemRegiao', i3GEOF.tme.dicionario));
  293 + return;
  294 + }
  295 + i3GEOF.tme.aguarde.visibility = "visible";
  296 + temp =
  297 + function(retorno) {
  298 + i3GEOF.tme.aguarde.visibility = "hidden";
  299 + var url, ins =
  300 + "<p class=paragrafo >" + $trad('arquivoDownload', i3GEOF.tme.dicionario)
  301 + + "<br><a href='"
  302 + + retorno.data.url
  303 + + "' target=new >"
  304 + + retorno.data.url
  305 + + "</a><br>";
  306 + url = i3GEO.configura.locaplic + "/ms_criamapa.php?interface=googleearth.phtml&kmlurl=" + retorno.data.url;
  307 + ins +=
  308 + "<br>" + $trad('abreNoI3geo', i3GEOF.tme.dicionario)
  309 + + "<br><a href='"
  310 + + url
  311 + + "' target='new' >"
  312 + + url
  313 + + "</a><br>";
  314 + url = i3GEO.configura.locaplic + "/ferramentas/cesium/kml3d.php?kmlurl=" + retorno.data.url;
  315 + ins +=
  316 + "<br>" + $trad('abreNoCesium', i3GEOF.tme.dicionario)
  317 + + "<br><a href='"
  318 + + url
  319 + + "' target='new' >"
  320 + + url
  321 + + "</a><br>";
265 322
266 - Veja: 323 + $i("i3GEOTMEresultado").innerHTML = ins;
  324 + $i("i3GEOTMEresultado").scrollIntoView(true);
267 325
268 - <ATIVAtme>  
269 - */  
270 - ativa: function(){  
271 - try{  
272 - if(i3GEOF.tme.aguarde.visibility === "visible")  
273 - {return;}  
274 - var lista = i3GEOF.tme.pegaItensMarcados(),  
275 - cp = new cpaint(),  
276 - temp,  
277 - p,  
278 - colunanomeregiao = $i("i3GEOTMEregioes").value;  
279 - if(lista.length === 0)  
280 - {i3GEO.janela.tempoMsg("selecione um item");return;}  
281 - if(colunanomeregiao === 0)  
282 - {i3GEO.janela.tempoMsg($trad('selecionaItemRegiao',i3GEOF.tme.dicionario));return;}  
283 - i3GEOF.tme.aguarde.visibility = "visible";  
284 - temp = function(retorno){ 326 + };
  327 + p =
  328 + i3GEO.configura.locaplic + "/pacotes/tme/TME_i3geo.php?maxHeight="
  329 + + $i("i3GEOTMEbarSize").value
  330 + + "&barSize="
  331 + + $i("i3GEOTMEmaxHeight").value
  332 + + "&sid="
  333 + + i3GEO.configura.sid
  334 + + "&nomelayer="
  335 + + i3GEO.temaAtivo
  336 + + "&colunasvalor="
  337 + + lista.toString(",")
  338 + + "&colunanomeregiao="
  339 + + colunanomeregiao
  340 + + "&titulo="
  341 + + $i("i3GEOTMEtitulo").value
  342 + + "&descricao="
  343 + + $i("i3GEOTMEdesc").value;
  344 + cp.set_response_type("JSON");
  345 + cp.call(p, "tme", temp);
  346 + } catch (e) {
  347 + i3GEO.janela.tempoMsg("Erro: " + e);
285 i3GEOF.tme.aguarde.visibility = "hidden"; 348 i3GEOF.tme.aguarde.visibility = "hidden";
286 - var ins = "<p class=paragrafo >" + $trad('arquivoDownload',i3GEOF.tme.dicionario) +"<br><a href='"+retorno.data.url+"' target=new >"+retorno.data.url+"</a><br>";  
287 - ins += "<br>" + $trad('abreNoI3geo',i3GEOF.tme.dicionario) +"<br><a href='"+i3GEO.configura.locaplic+"/ms_criamapa.php?interface=googleearth.phtml&kmlurl="+retorno.data.url+"' target='new' >interface Google Earth</a><br>";  
288 - $i("i3GEOTMEresultado").innerHTML = ins;  
289 - $i("i3GEOTMEresultado").scrollIntoView(true);  
290 -  
291 - };  
292 - p = i3GEO.configura.locaplic+"/pacotes/tme/TME_i3geo.php?maxHeight="+$i("i3GEOTMEmaxHeight").value+"&barSize="+$i("i3GEOTMEbarSize").value+"&sid="+i3GEO.configura.sid+"&nomelayer="+i3GEO.temaAtivo+"&colunasvalor="+lista.toString(",")+"&colunanomeregiao="+colunanomeregiao+"&titulo="+$i("i3GEOTMEtitulo").value+"&descricao="+$i("i3GEOTMEdesc").value;  
293 - cp.set_response_type("JSON");  
294 - cp.call(p,"tme",temp);  
295 - }catch(e){i3GEO.janela.tempoMsg("Erro: "+e);i3GEOF.tme.aguarde.visibility = "hidden";}  
296 - }  
297 -};  
298 \ No newline at end of file 349 \ No newline at end of file
  350 + }
  351 + }
  352 + };
299 \ No newline at end of file 353 \ No newline at end of file
temas/_lteste3d.map
@@ -8,11 +8,11 @@ MAP @@ -8,11 +8,11 @@ MAP
8 "ITENS" "FIPS_CNTRY,GMI_CNTRY,LONG_NAME,CNTRY_NAME" #itens que serao mostrados na opcao de identificacao 8 "ITENS" "FIPS_CNTRY,GMI_CNTRY,LONG_NAME,CNTRY_NAME" #itens que serao mostrados na opcao de identificacao
9 "ITENSDESC" "FIPS,GMI,Nome,Wikipedia" #descricao dos nomes dos itens 9 "ITENSDESC" "FIPS,GMI,Nome,Wikipedia" #descricao dos nomes dos itens
10 "ITENSLINK" ",,,http://pt.wikipedia.org/wiki/[CNTRY_NAME]" 10 "ITENSLINK" ",,,http://pt.wikipedia.org/wiki/[CNTRY_NAME]"
11 - "TEMA" "Países do mundo" #nome que sera mostrado na legenda 11 + "TEMA" "Países do mundo 3d" #nome que sera mostrado na legenda
12 "TITULO" "Países do mundo" #nome alternativo que e mostrado nos combos para escolha do tema 12 "TITULO" "Países do mundo" #nome alternativo que e mostrado nos combos para escolha do tema
13 "TIP" "FIPS_CNTRY,GMI_CNTRY,CNTRY_NAME" 13 "TIP" "FIPS_CNTRY,GMI_CNTRY,CNTRY_NAME"
14 "itembuscarapida" "LONG_NAME" 14 "itembuscarapida" "LONG_NAME"
15 - "TME" '{"titulo":"População","colnome":"CNTRY_NAME","colsdata":["POP_CNTRY"],"hmax":"5000","wmax":"5000"}' 15 + "tme" '{"titulo":"População","colnome":"CNTRY_NAME","colsdata":["POP_CNTRY"],"lmax":"100000","amax":"2000000"}'
16 END 16 END
17 NAME "_lteste3d" 17 NAME "_lteste3d"
18 STATUS DEFAULT 18 STATUS DEFAULT