Commit 254be226ad4178a5f9ed12104165cc489f327fde

Authored by Edmar Moretti
1 parent e3f0c75c

Inclusão de plugin que permite adicionar camadas com parâmetros de substituição …

…de string no item data do mapfile
admin/admin.db
No preview for this file type
aplicmap/dados/biomas.dbf
No preview for this file type
classesjs/classe_plugini3geo.js
1 1 /**
2 2 * Title: PluginI3Geo
3   - *
  3 + *
4 4 * i3GEO.pluginI3geo
5   - *
6   - * Implementa os plugins do i3Geo que adicionam camadas especiais ao mapa, normalmente dados vetoriais processados no navegador Web.
7   - *
  5 + *
  6 + * Implementa os plugins do i3Geo que adicionam camadas especiais ao mapa,
  7 + * normalmente dados vetoriais processados no navegador Web.
  8 + *
8 9 * Arquivo:
9   - *
  10 + *
10 11 * i3geo/classesjs/classe_plugini3geo.js
11   - *
  12 + *
12 13 * Licença:
13   - *
  14 + *
14 15 * GPL2
15   - *
  16 + *
16 17 * i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet
17   - *
18   - * Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com
19   - *
20   - * Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo sob os termos da Licença
21   - * Pública Geral GNU conforme publicada pela Free Software Foundation;
22   - *
23   - * Este programa é distribuído na expectativa de que seja útil, porém, SEM NENHUMA GARANTIA; nem mesmo a
24   - * garantia implícita de COMERCIABILIDADE OU ADEQUACÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença
25   - * Pública Geral do GNU para mais detalhes. Você deve ter recebido uma cópia da Licença Pública Geral do
26   - * GNU junto com este programa; se não, escreva para a Free Software Foundation, Inc., no endereço 59 Temple Street, Suite
27   - * 330, Boston, MA 02111-1307 USA.
  18 + *
  19 + * Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente
  20 + * Brasil Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com
  21 + *
  22 + * Este programa é software livre; você pode redistribuí-lo
  23 + * e/ou modificá-lo sob os termos da Licença Pública Geral
  24 + * GNU conforme publicada pela Free Software Foundation;
  25 + *
  26 + * Este programa é distribuído na expectativa de que seja
  27 + * útil, porém, SEM NENHUMA GARANTIA; nem mesmo a garantia
  28 + * implícita de COMERCIABILIDADE OU ADEQUACÃO A UMA FINALIDADE
  29 + * ESPECÍFICA. Consulte a Licença Pública Geral do GNU para
  30 + * mais detalhes. Você deve ter recebido uma cópia da
  31 + * Licença Pública Geral do GNU junto com este programa; se
  32 + * não, escreva para a Free Software Foundation, Inc., no endereço
  33 + * 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
28 34 */
29 35 if (typeof (i3GEO) === 'undefined') {
30 36 var i3GEO = {};
... ... @@ -34,7 +40,7 @@ i3GEO.pluginI3geo =
34 40 OBJETOS : {},
35 41 /**
36 42 * Lista de plugins
37   - *
  43 + *
38 44 * Utilizado no editor de mapfiles do sistema de administracao
39 45 */
40 46 PLUGINS : [
... ... @@ -53,21 +59,30 @@ i3GEO.pluginI3geo =
53 59 "classe" : "layerkml",
54 60 "nome" : "Camada Kml",
55 61 "editor" : true
  62 + },
  63 + {
  64 + "classe" : "parametrossql",
  65 + "nome" : "SQL parametrizado",
  66 + "editor" : true
56 67 }
57 68 ],
58 69 /**
59 70 * Inicia a execucao de um plugin
60   - *
61   - * Camada e um objeto gerado pelo i3Geo quando uma camada e adicionada ao mapa O objeto i3GEO.arvoreDeCamadas.CAMADAS guarda todas
62   - * as camadas adicionadas ao mapa Ao adicionar uma camada pelo catalogo, o i3Geo verifica se a camada possui plugin e direciona para
63   - * ca Os plugins sao definidos como metadados em cada mapfile de cada tema
64   - *
  71 + *
  72 + * Camada e um objeto gerado pelo i3Geo quando uma camada e adicionada
  73 + * ao mapa O objeto i3GEO.arvoreDeCamadas.CAMADAS guarda todas as
  74 + * camadas adicionadas ao mapa Ao adicionar uma camada pelo catalogo, o
  75 + * i3Geo verifica se a camada possui plugin e direciona para ca Os
  76 + * plugins sao definidos como metadados em cada mapfile de cada tema
  77 + *
65 78 * Veja em i3geo/classesphp/classe_mapa.php funcao parametrostemas
66 79 */
67 80 inicia : function(camada) {
68 81 if (i3GEO.janela) {
69 82 i3GEO.janela.AGUARDEMODAL = true;
70   - i3GEO.janela.abreAguarde("aguardePlugin", "Plugin...");
  83 + i3GEO.janela.abreAguarde(
  84 + "aguardePlugin",
  85 + "Plugin...");
71 86 i3GEO.janela.AGUARDEMODAL = false;
72 87 }
73 88 // chama a funcao conforme o tipo de plugin e a interface atual
... ... @@ -86,21 +101,24 @@ i3GEO.pluginI3geo =
86 101 return i3GEO.pluginI3geo[plugin].linkAjuda();
87 102 },
88 103 ligaCamada : function(nomecamada) {
89   - if (i3GEO.pluginI3geo.OBJETOS[nomecamada] && i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada) {
  104 + if (i3GEO.pluginI3geo.OBJETOS[nomecamada]
  105 + && i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada) {
90 106 i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada();
91 107 return true;
92 108 }
93 109 return false;
94 110 },
95 111 desligaCamada : function(nomecamada) {
96   - if (i3GEO.pluginI3geo.OBJETOS[nomecamada] && i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada) {
  112 + if (i3GEO.pluginI3geo.OBJETOS[nomecamada]
  113 + && i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada) {
97 114 i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada();
98 115 return true;
99 116 }
100 117 return false;
101 118 },
102 119 removeCamada : function(nomecamada) {
103   - if (i3GEO.pluginI3geo.OBJETOS[nomecamada] && i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada) {
  120 + if (i3GEO.pluginI3geo.OBJETOS[nomecamada]
  121 + && i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada) {
104 122 i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada();
105 123 delete (i3GEO.pluginI3geo.OBJETOS[nomecamada]);
106 124 return true;
... ... @@ -108,64 +126,76 @@ i3GEO.pluginI3geo =
108 126 return false;
109 127 },
110 128 atualizaCamada : function(nomecamada) {
111   - if (i3GEO.pluginI3geo.OBJETOS[nomecamada] && i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada) {
  129 + if (i3GEO.pluginI3geo.OBJETOS[nomecamada]
  130 + && i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada) {
112 131 i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada();
113 132 return true;
114 133 }
115 134 return false;
116 135 },
117 136 existeObjeto : function(nomecamada) {
118   - if (i3GEO.pluginI3geo.OBJETOS[nomecamada] && i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada) {
  137 + if (i3GEO.pluginI3geo.OBJETOS[nomecamada]
  138 + && i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada) {
119 139 return true;
120 140 }
121 141 return false;
122 142 },
123 143 /**
124 144 * Aplica as propriedades em um objeto do tipo tema
125   - *
126   - * tema e fornecido por i3GEO.arvoreDeCamadas o ajuste das propriedades e necessario para que as propriedades aparecam de forma
127   - * correta na arvore de camadas
  145 + *
  146 + * tema e fornecido por i3GEO.arvoreDeCamadas o ajuste das propriedades
  147 + * e necessario para que as propriedades aparecam de forma correta na
  148 + * arvore de camadas
128 149 */
129 150 aplicaPropriedades : function(camada) {
130   - if (camada.plugini3geo && camada.plugini3geo != "") {
  151 + if (camada.plugini3geo
  152 + && camada.plugini3geo != "") {
131 153 camada = i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].aplicaPropriedades(camada);
132 154 }
133 155 return camada;
134 156 },
135 157 /**
136 158 * Function: heatmap
137   - *
  159 + *
138 160 * Mapa de calor
139   - *
  161 + *
140 162 * Gera um layer do tipo mapa de calor e adiciona ao mapa
141   - *
142   - * As dependências em javascript sao carregadas via script tag por meio de ferramentas/heatmap
143   - *
144   - * Esse programa também obtém os dados necessários ao plugin
145   - *
146   - * O layer existente no mapfile deve conter um metadata chamado PLUGINI3GEO
147   - *
148   - * Esse matadado deve conter uma string que será transformada em um objeto javascript para uso no plugin
149   - *
  163 + *
  164 + * As dependências em javascript sao carregadas via script tag por
  165 + * meio de ferramentas/heatmap
  166 + *
  167 + * Esse programa também obtém os dados necessários
  168 + * ao plugin
  169 + *
  170 + * O layer existente no mapfile deve conter um metadata chamado
  171 + * PLUGINI3GEO
  172 + *
  173 + * Esse matadado deve conter uma string que será transformada em
  174 + * um objeto javascript para uso no plugin
  175 + *
150 176 * Exemplo:
151   - *
152   - * "PLUGINI3GEO" '{"plugin":"heatmap","parametros":{"tipoGradiente": "default","coluna":"teste","max":"10","radius":"15"}}'
153   - *
154   - * Coluna é a que contém os dados numéricos que definem a quantidade de uma medida em cada ponto e é
155   - * usada para gerar a representação. Se for vazia, considera-se o valor como 1
156   - *
157   - * As cores das classes existentes no LAYER serão utilizadas para calcular as cores do mapa de calor. Se tipoGradiente for
158   - * igual a "default" será utilizado o gradiente padrão.
159   - *
  177 + *
  178 + * "PLUGINI3GEO" '{"plugin":"heatmap","parametros":{"tipoGradiente":
  179 + * "default","coluna":"teste","max":"10","radius":"15"}}'
  180 + *
  181 + * Coluna é a que contém os dados numéricos que
  182 + * definem a quantidade de uma medida em cada ponto e é usada
  183 + * para gerar a representação. Se for vazia, considera-se
  184 + * o valor como 1
  185 + *
  186 + * As cores das classes existentes no LAYER serão utilizadas para
  187 + * calcular as cores do mapa de calor. Se tipoGradiente for igual a
  188 + * "default" será utilizado o gradiente padrão.
  189 + *
160 190 */
161 191 heatmap : {
162 192 linkAjuda : function() {
163   - return i3GEO.configura.locaplic + "/ajuda_usuario.php?idcategoria=3&idajuda=121";
  193 + return i3GEO.configura.locaplic
  194 + + "/ajuda_usuario.php?idcategoria=3&idajuda=121";
164 195 },
165 196 formAdmin : function(config) {
166 197 // {"plugin":"heatmap","parametros":{"coluna":"","radius":15,"max":10}}
167   - var parametros, ins = "", configDefault =
168   - '{"plugin":"heatmap","parametros":{"tipoGradiente": "default","valorPonto":1,"coluna":"","radius":15}}';
  198 + var parametros, ins = "", configDefault = '{"plugin":"heatmap","parametros":{"tipoGradiente": "default","valorPonto":1,"coluna":"","radius":15}}';
169 199 if (config === "") {
170 200 config = configDefault;
171 201 }
... ... @@ -174,31 +204,30 @@ i3GEO.pluginI3geo =
174 204 config = YAHOO.lang.JSON.parse(configDefault);
175 205 }
176 206 parametros = config.parametros;
177   - ins +=
178   - ""
179   - + "<p>Coluna que cont&eacute;m os dados:"
180   - + "<br><input name='coluna' type='text' value='"
181   - + parametros.coluna
182   - + "' size='30'></p>"
183   - + "<p>Ou valor num&eacute;rico para cada ponto:"
184   - + "<br><input name='valorPonto' type='text' value='"
185   - + parametros.valorPonto
186   - + "' size='30'></p>"
187   - + "<p>Raio de cada ponto em pixels:"
188   - + "<br><input name='radius' type='text' value='"
189   - + parametros.radius
190   - + "' size='30'></p>"
191   - // + "<p>Valor m&aacute;ximo em cada ponto:"
192   - // + "<br><input name='max' type='text' value='"
193   - // + parametros.max
194   - // + "' size='30'></p>"
195   - + "<p>Tipo de gradiente (deixe vazio para utilizar as classes definidas no Layer ou escreva 'default' para usar o normal):"
196   - + "<br><input name='tipoGradiente' type='text' value='"
197   - + parametros.tipoGradiente
198   - + "' size='30'></p>"
199   - + "<p>Para definir os cortes no gradiente de cores utilize valores entre 0 e 1."
200   - + " As cores s&atilde;o definidas nas classes do LAYER, sendo que o nome define o valor superior do gradiente e COLOR define a cor."
201   - + " Veja o exemplo utilizado no tema _lmapadecalor.map</p>";
  207 + ins += ""
  208 + + "<p>Coluna que cont&eacute;m os dados:"
  209 + + "<br><input name='coluna' type='text' value='"
  210 + + parametros.coluna
  211 + + "' size='30'></p>"
  212 + + "<p>Ou valor num&eacute;rico para cada ponto:"
  213 + + "<br><input name='valorPonto' type='text' value='"
  214 + + parametros.valorPonto
  215 + + "' size='30'></p>"
  216 + + "<p>Raio de cada ponto em pixels:"
  217 + + "<br><input name='radius' type='text' value='"
  218 + + parametros.radius
  219 + + "' size='30'></p>"
  220 + // + "<p>Valor m&aacute;ximo em cada ponto:"
  221 + // + "<br><input name='max' type='text' value='"
  222 + // + parametros.max
  223 + // + "' size='30'></p>"
  224 + + "<p>Tipo de gradiente (deixe vazio para utilizar as classes definidas no Layer ou escreva 'default' para usar o normal):"
  225 + + "<br><input name='tipoGradiente' type='text' value='"
  226 + + parametros.tipoGradiente
  227 + + "' size='30'></p>"
  228 + + "<p>Para definir os cortes no gradiente de cores utilize valores entre 0 e 1."
  229 + + " As cores s&atilde;o definidas nas classes do LAYER, sendo que o nome define o valor superior do gradiente e COLOR define a cor."
  230 + + " Veja o exemplo utilizado no tema _lmapadecalor.map</p>";
202 231 return ins;
203 232 },
204 233 googlemaps : {
... ... @@ -219,25 +248,26 @@ i3GEO.pluginI3geo =
219 248 return camada;
220 249 },
221 250 inicia : function(camada) {
222   - var nomeScript = "heatmap_script", p = i3GEO.configura.locaplic + "/ferramentas/heatmap/googlemaps_js.php", carregaJs =
223   - "nao", criaLayer;
  251 + var nomeScript = "heatmap_script", p = i3GEO.configura.locaplic
  252 + + "/ferramentas/heatmap/googlemaps_js.php", carregaJs = "nao", criaLayer;
224 253 criaLayer = function() {
225 254 var heatmap, pontos;
226 255  
227   - heatmap = new HeatmapOverlay(i3GeoMap, camada.name, {
228   - "radius" : camada.plugini3geo.parametros.radius,
229   - "visible" : true,
230   - "opacity" : camada.transparency,
231   - "gradient" : heatmap_config.gradient,
232   - "legend" : {
233   - "title" : camada.tema,
234   - "position" : "bl",
235   - "offset" : [
236   - 5,
237   - 50
238   - ]
239   - }
240   - });
  256 + heatmap = new HeatmapOverlay(
  257 + i3GeoMap, camada.name, {
  258 + "radius" : camada.plugini3geo.parametros.radius,
  259 + "visible" : true,
  260 + "opacity" : camada.transparency,
  261 + "gradient" : heatmap_config.gradient,
  262 + "legend" : {
  263 + "title" : camada.tema,
  264 + "position" : "bl",
  265 + "offset" : [
  266 + 5,
  267 + 50
  268 + ]
  269 + }
  270 + });
241 271 // i3GeoMap.overlayMapTypes.insertAt(0, heatmap);
242 272 pontos = {
243 273 max : camada.plugini3geo.parametros.max,
... ... @@ -267,17 +297,28 @@ i3GEO.pluginI3geo =
267 297 } else {
268 298 nomeScript = "";
269 299 }
270   - p +=
271   - "?carregajs=" + carregaJs + "&layer=" + camada.name + "&coluna=" + camada.plugini3geo.parametros.coluna
272   - + "&tipoGradiente=" + camada.plugini3geo.parametros.tipoGradiente + "&g_sid=" + i3GEO.configura.sid
273   - + "&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";
274   - i3GEO.util.scriptTag(p, criaLayer, nomeScript);
  300 + p += "?carregajs="
  301 + + carregaJs
  302 + + "&layer="
  303 + + camada.name
  304 + + "&coluna="
  305 + + camada.plugini3geo.parametros.coluna
  306 + + "&tipoGradiente="
  307 + + camada.plugini3geo.parametros.tipoGradiente
  308 + + "&g_sid="
  309 + + i3GEO.configura.sid
  310 + + "&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";
  311 + i3GEO.util.scriptTag(
  312 + p,
  313 + criaLayer,
  314 + nomeScript);
275 315 }
276 316 },
277 317 //
278 318 // O script que adiciona a camada
279 319 // define os eventos visibilitychanged, moveend e removed
280   - // A camada e adicionada como um objeto layer, permitindo que as funcoes
  320 + // A camada e adicionada como um objeto layer, permitindo que as
  321 + // funcoes
281 322 // do i3Geo operem normalmente, sem muitas modificacoes
282 323 //
283 324 openlayers : {
... ... @@ -298,8 +339,8 @@ i3GEO.pluginI3geo =
298 339 return camada;
299 340 },
300 341 inicia : function(camada, objMapa) {
301   - var nomeScript = "heatmap_script", p = i3GEO.configura.locaplic + "/ferramentas/heatmap/openlayers_js.php", carregaJs =
302   - "nao", criaLayer;
  342 + var nomeScript = "heatmap_script", p = i3GEO.configura.locaplic
  343 + + "/ferramentas/heatmap/openlayers_js.php", carregaJs = "nao", criaLayer;
303 344 criaLayer = function() {
304 345 var temp, heatmap, transformedTestData = {
305 346 max : 1,
... ... @@ -319,32 +360,37 @@ i3GEO.pluginI3geo =
319 360 while (datalen--) {
320 361 temp = heatmap_dados[datalen].count;
321 362 nudata.push({
322   - lonlat : new OpenLayers.LonLat(data[datalen].lng, heatmap_dados[datalen].lat),
  363 + lonlat : new OpenLayers.LonLat(
  364 + data[datalen].lng, heatmap_dados[datalen].lat),
323 365 count : temp
324 366 });
325   - max = Math.max(max, temp);
  367 + max = Math.max(
  368 + max,
  369 + temp);
326 370 }
327 371 transformedTestData.max = max;
328 372 transformedTestData.data = nudata;
329 373 // create our heatmap layer
330   - heatmap = new OpenLayers.Layer.Heatmap(camada.name, objMapa, objMapa.baseLayer, {
331   - "visible" : true,
332   - "opacity" : camada.transparency,
333   - "radius" : camada.plugini3geo.parametros.radius,
334   - "gradient" : heatmap_config.gradient,
335   - "legend" : {
336   - "title" : camada.tema,
337   - "position" : "bl",
338   - "offset" : [
339   - 5,
340   - 50
341   - ]
342   - }
343   - }, {
344   - isBaseLayer : false,
345   - projection : new OpenLayers.Projection("EPSG:4326"),
346   - displayInLayerSwitcher : true
347   - });
  374 + heatmap = new OpenLayers.Layer.Heatmap(
  375 + camada.name, objMapa, objMapa.baseLayer, {
  376 + "visible" : true,
  377 + "opacity" : camada.transparency,
  378 + "radius" : camada.plugini3geo.parametros.radius,
  379 + "gradient" : heatmap_config.gradient,
  380 + "legend" : {
  381 + "title" : camada.tema,
  382 + "position" : "bl",
  383 + "offset" : [
  384 + 5,
  385 + 50
  386 + ]
  387 + }
  388 + }, {
  389 + isBaseLayer : false,
  390 + projection : new OpenLayers.Projection(
  391 + "EPSG:4326"),
  392 + displayInLayerSwitcher : true
  393 + });
348 394 heatmap.ligaCamada = function() {
349 395 this.toggle();
350 396 this.updateLayer();
... ... @@ -375,14 +421,25 @@ i3GEO.pluginI3geo =
375 421 } else {
376 422 nomeScript = "";
377 423 }
378   - if (!i3GEO.configura || !i3GEO.configura.sid) {
  424 + if (!i3GEO.configura
  425 + || !i3GEO.configura.sid) {
379 426 i3GEO.configura.sid = "";
380 427 }
381   - p +=
382   - "?carregajs=" + carregaJs + "&layer=" + camada.name + "&coluna=" + camada.plugini3geo.parametros.coluna
383   - + "&tipoGradiente=" + camada.plugini3geo.parametros.tipoGradiente + "&g_sid=" + i3GEO.configura.sid
384   - + "&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";
385   - i3GEO.util.scriptTag(p, criaLayer, nomeScript);
  428 + p += "?carregajs="
  429 + + carregaJs
  430 + + "&layer="
  431 + + camada.name
  432 + + "&coluna="
  433 + + camada.plugini3geo.parametros.coluna
  434 + + "&tipoGradiente="
  435 + + camada.plugini3geo.parametros.tipoGradiente
  436 + + "&g_sid="
  437 + + i3GEO.configura.sid
  438 + + "&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";
  439 + i3GEO.util.scriptTag(
  440 + p,
  441 + criaLayer,
  442 + nomeScript);
386 443 }
387 444 },
388 445 googleearth : {
... ... @@ -393,34 +450,42 @@ i3GEO.pluginI3geo =
393 450 },
394 451 /**
395 452 * Function: markercluster
396   - *
  453 + *
397 454 * Markercluster
398   - *
399   - * Gera um layer que agrupa pontos conforme a dist&acirc;ncia entre eles e insere um contador adiciona ao mapa
400   - *
401   - * As depend&ecirc;ncias em javascript sao carregadas via script tag por meio de ferramentas/markercluster
402   - *
403   - * Esse programa tamb&eacute;m obt&eacute;m os dados necess&aacute;rios ao plugin
404   - *
405   - * O layer existente no mapfile deve conter um metadata chamado PLUGINI3GEO
406   - *
407   - * Esse matadado deve conter uma string que ser&aacute; transformada em um objeto javascript para uso no plugin
408   - *
  455 + *
  456 + * Gera um layer que agrupa pontos conforme a dist&acirc;ncia entre eles
  457 + * e insere um contador adiciona ao mapa
  458 + *
  459 + * As depend&ecirc;ncias em javascript sao carregadas via script tag por
  460 + * meio de ferramentas/markercluster
  461 + *
  462 + * Esse programa tamb&eacute;m obt&eacute;m os dados necess&aacute;rios
  463 + * ao plugin
  464 + *
  465 + * O layer existente no mapfile deve conter um metadata chamado
  466 + * PLUGINI3GEO
  467 + *
  468 + * Esse matadado deve conter uma string que ser&aacute; transformada em
  469 + * um objeto javascript para uso no plugin
  470 + *
409 471 * Exemplo:
410   - *
411   - * "PLUGINI3GEO" '{"plugin":"markercluster","parametros":{"coluna":"teste","gridSize":"50"}}'
412   - *
413   - * Coluna &eacute; a que cont&eacute;m os dados num&eacute;ricos que definem a quantidade de uma medida em cada ponto e &eacute;
414   - * usada para gerar a representa&ccedil;&atilde;o. Se for vazia, considera-se o valor como 1
415   - *
  472 + *
  473 + * "PLUGINI3GEO"
  474 + * '{"plugin":"markercluster","parametros":{"coluna":"teste","gridSize":"50"}}'
  475 + *
  476 + * Coluna &eacute; a que cont&eacute;m os dados num&eacute;ricos que
  477 + * definem a quantidade de uma medida em cada ponto e &eacute; usada
  478 + * para gerar a representa&ccedil;&atilde;o. Se for vazia, considera-se
  479 + * o valor como 1
  480 + *
416 481 */
417 482 markercluster : {
418 483 linkAjuda : function() {
419   - return i3GEO.configura.locaplic + "/ajuda_usuario.php?idcategoria=3&idajuda=121";
  484 + return i3GEO.configura.locaplic
  485 + + "/ajuda_usuario.php?idcategoria=3&idajuda=121";
420 486 },
421 487 formAdmin : function(config) {
422   - var parametros, ins = "", configDefault =
423   - '{"plugin":"markercluster","parametros":{"tipoEstilos": "default","gridSize":50}}';
  488 + var parametros, ins = "", configDefault = '{"plugin":"markercluster","parametros":{"tipoEstilos": "default","gridSize":50}}';
424 489 if (config === "") {
425 490 config = configDefault;
426 491 }
... ... @@ -429,16 +494,17 @@ i3GEO.pluginI3geo =
429 494 config = YAHOO.lang.JSON.parse(configDefault);
430 495 }
431 496 parametros = config.parametros;
432   - ins +=
433   - ""
434   - + "<p>Dist&acirc;ncia m&aacute;xima entre ponto em pixels:"
435   - + "<br><input name='gridSize' type='text' value='"
436   - + parametros.gridSize
437   - + "' size='30'></p>"
438   - + "<p>Tipo de estilos (deixe vazio para utilizar as classes definidas no Layer ou escreva 'default' para usar o normal):"
439   - + "<br><input name='tipoEstilos' type='text' value='" + parametros.tipoEstilos + "' size='30'></p>"
440   - + "<p>Os s&iacute;mbolos utilizados podem ser customizados alterando-se as classes do Mapfile</p>"
441   - + "<p>Veja o exemplo utilizado no tema _lmapadecluster.map</p>";
  497 + ins += ""
  498 + + "<p>Dist&acirc;ncia m&aacute;xima entre ponto em pixels:"
  499 + + "<br><input name='gridSize' type='text' value='"
  500 + + parametros.gridSize
  501 + + "' size='30'></p>"
  502 + + "<p>Tipo de estilos (deixe vazio para utilizar as classes definidas no Layer ou escreva 'default' para usar o normal):"
  503 + + "<br><input name='tipoEstilos' type='text' value='"
  504 + + parametros.tipoEstilos
  505 + + "' size='30'></p>"
  506 + + "<p>Os s&iacute;mbolos utilizados podem ser customizados alterando-se as classes do Mapfile</p>"
  507 + + "<p>Veja o exemplo utilizado no tema _lmapadecluster.map</p>";
442 508  
443 509 return ins;
444 510 },
... ... @@ -460,30 +526,36 @@ i3GEO.pluginI3geo =
460 526 return camada;
461 527 },
462 528 inicia : function(camada) {
463   - var nomeScript = "markercluster_script", p = i3GEO.configura.locaplic + "/ferramentas/markercluster/googlemaps_js.php", carregaJs =
464   - "nao", criaLayer;
  529 + var nomeScript = "markercluster_script", p = i3GEO.configura.locaplic
  530 + + "/ferramentas/markercluster/googlemaps_js.php", carregaJs = "nao", criaLayer;
465 531 criaLayer = function() {
466 532 var markercluster, marcas, latLng, marker, n, i;
467 533 n = markercluster_dados.length;
468 534 marcas = [];
469 535 for (i = 0; i < n; i++) {
470   - latLng = new google.maps.LatLng(markercluster_dados[i].lat, markercluster_dados[i].lng);
471   - marker = new google.maps.Marker({
472   - 'position' : latLng,
473   - icon : {
474   - url : markercluster_config.ponto.url,
475   - scaledSize : new google.maps.Size(markercluster_config.ponto.width, markercluster_config.ponto.height)
476   - }
477   - });
  536 + latLng = new google.maps.LatLng(
  537 + markercluster_dados[i].lat, markercluster_dados[i].lng);
  538 + marker = new google.maps.Marker(
  539 + {
  540 + 'position' : latLng,
  541 + icon : {
  542 + url : markercluster_config.ponto.url,
  543 + scaledSize : new google.maps.Size(
  544 + markercluster_config.ponto.width, markercluster_config.ponto.height)
  545 + }
  546 + });
478 547 marcas.push(marker);
479 548 }
480   - markercluster = new MarkerClusterer(i3GeoMap, marcas, {
481   - "gridSize" : parseInt(camada.plugini3geo.parametros.gridSize, 10),
482   - "visible" : true,
483   - "opacity" : camada.transparency,
484   - "name" : camada.name,
485   - "styles" : markercluster_config.estilos
486   - });
  549 + markercluster = new MarkerClusterer(
  550 + i3GeoMap, marcas, {
  551 + "gridSize" : parseInt(
  552 + camada.plugini3geo.parametros.gridSize,
  553 + 10),
  554 + "visible" : true,
  555 + "opacity" : camada.transparency,
  556 + "name" : camada.name,
  557 + "styles" : markercluster_config.estilos
  558 + });
487 559 i3GEO.janela.fechaAguarde("aguardePlugin");
488 560 i3GEO.eventos.cliquePerm.ativo = false;
489 561  
... ... @@ -516,11 +588,19 @@ i3GEO.pluginI3geo =
516 588 } else {
517 589 nomeScript = "";
518 590 }
519   - p +=
520   - "?carregajs=" + carregaJs + "&layer=" + camada.name + "&g_sid=" + i3GEO.configura.sid + "&tipoEstilos="
521   - + camada.plugini3geo.parametros.tipoEstilos
522   - + "&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config";
523   - i3GEO.util.scriptTag(p, criaLayer, nomeScript);
  591 + p += "?carregajs="
  592 + + carregaJs
  593 + + "&layer="
  594 + + camada.name
  595 + + "&g_sid="
  596 + + i3GEO.configura.sid
  597 + + "&tipoEstilos="
  598 + + camada.plugini3geo.parametros.tipoEstilos
  599 + + "&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config";
  600 + i3GEO.util.scriptTag(
  601 + p,
  602 + criaLayer,
  603 + nomeScript);
524 604 }
525 605 },
526 606 openlayers : {
... ... @@ -541,61 +621,70 @@ i3GEO.pluginI3geo =
541 621 return camada;
542 622 },
543 623 inicia : function(camada, objMapa) {
544   - var nomeScript = "markercluster_script", p = i3GEO.configura.locaplic + "/ferramentas/markercluster/openlayers_js.php", carregaJs =
545   - "nao", criaLayer;
546   - criaLayer =
547   - function() {
548   - var layerListeners, logMax, logMin, classes, min, max, markercluster, marcas, lonlat, n, i, style, nestilos, intervalo, regra, regras =
549   - [];
  624 + var nomeScript = "markercluster_script", p = i3GEO.configura.locaplic
  625 + + "/ferramentas/markercluster/openlayers_js.php", carregaJs = "nao", criaLayer;
  626 + criaLayer = function() {
  627 + var layerListeners, logMax, logMin, classes, min, max, markercluster, marcas, lonlat, n, i, style, nestilos, intervalo, regra, regras = [];
550 628  
551   - nestilos = markercluster_config.estilos.length;
552   - n = markercluster_dados.length;
  629 + nestilos = markercluster_config.estilos.length;
  630 + n = markercluster_dados.length;
553 631  
554   - classes = Array();
555   - logMax = Math.log(n) / Math.LN10; // max decimal logarithm (or base
556   - // 10)
557   - logMin = Math.log(1) / Math.LN10;
558   - intervalo = (logMax - logMin) / nestilos;
559   - // we compute log bounds
560   - for (i = 0; i < nestilos; i++) {
561   - if (i == 0) {
562   - classes[i] = logMin;
563   - } else {
564   - classes[i] = classes[i - 1] + intervalo;
565   - }
  632 + classes = Array();
  633 + logMax = Math.log(n)
  634 + / Math.LN10; // max decimal logarithm (or base
  635 + // 10)
  636 + logMin = Math.log(1)
  637 + / Math.LN10;
  638 + intervalo = (logMax - logMin)
  639 + / nestilos;
  640 + // we compute log bounds
  641 + for (i = 0; i < nestilos; i++) {
  642 + if (i == 0) {
  643 + classes[i] = logMin;
  644 + } else {
  645 + classes[i] = classes[i - 1]
  646 + + intervalo;
566 647 }
567   - // we compute antilog
568   - classes = classes.map(function(x) {
569   - return Math.pow(10, x);
570   - });
571   - // and we finally add max value
572   - classes.push(n);
  648 + }
  649 + // we compute antilog
  650 + classes = classes.map(function(x) {
  651 + return Math.pow(
  652 + 10,
  653 + x);
  654 + });
  655 + // and we finally add max value
  656 + classes.push(n);
573 657  
574   - // ponto sozinho
575   - regra = new OpenLayers.Rule({
576   - filter : new OpenLayers.Filter.Comparison({
577   - type : OpenLayers.Filter.Comparison.LESS_THAN,
578   - property : "count",
579   - value : 2
580   - }),
  658 + // ponto sozinho
  659 + regra = new OpenLayers.Rule(
  660 + {
  661 + filter : new OpenLayers.Filter.Comparison(
  662 + {
  663 + type : OpenLayers.Filter.Comparison.LESS_THAN,
  664 + property : "count",
  665 + value : 2
  666 + }),
581 667 symbolizer : {
582 668 externalGraphic : markercluster_config.ponto.url,
583 669 graphicWidth : markercluster_config.ponto.width,
584 670 graphicHeight : markercluster_config.ponto.height,
585   - graphicYOffset : (markercluster_config.ponto.height / 2) * -1
  671 + graphicYOffset : (markercluster_config.ponto.height / 2)
  672 + * -1
586 673 }
587 674 });
588   - regras.push(regra);
589   - min = 2;
590   - for (i = 0; i < nestilos; i++) {
591   - max = classes[i + 1];
592   - regra = new OpenLayers.Rule({
593   - filter : new OpenLayers.Filter.Comparison({
594   - type : OpenLayers.Filter.Comparison.BETWEEN,
595   - property : "count",
596   - lowerBoundary : min,
597   - upperBoundary : max
598   - }),
  675 + regras.push(regra);
  676 + min = 2;
  677 + for (i = 0; i < nestilos; i++) {
  678 + max = classes[i + 1];
  679 + regra = new OpenLayers.Rule(
  680 + {
  681 + filter : new OpenLayers.Filter.Comparison(
  682 + {
  683 + type : OpenLayers.Filter.Comparison.BETWEEN,
  684 + property : "count",
  685 + lowerBoundary : min,
  686 + upperBoundary : max
  687 + }),
599 688 symbolizer : {
600 689 externalGraphic : markercluster_config.estilos[i].url,
601 690 graphicWidth : markercluster_config.estilos[i].width,
... ... @@ -607,75 +696,92 @@ i3GEO.pluginI3geo =
607 696 fontSize : "12px"
608 697 }
609 698 });
610   - regras.push(regra);
611   - min = max;
612   - }
  699 + regras.push(regra);
  700 + min = max;
  701 + }
613 702  
614   - // Create a Style that uses the three previous rules
615   - style = new OpenLayers.Style(null, {
  703 + // Create a Style that uses the three previous rules
  704 + style = new OpenLayers.Style(
  705 + null, {
616 706 rules : regras
617 707 });
618   - // para uso com o mashup
619   - if (!objMapa) {
620   - objMapa = i3geoOL;
621   - }
  708 + // para uso com o mashup
  709 + if (!objMapa) {
  710 + objMapa = i3geoOL;
  711 + }
622 712  
623   - layerListeners = {
624   - featureclick : function(e) {
625   - if (e.feature.cluster.length > 1) {
626   - objMapa.setCenter([
  713 + layerListeners = {
  714 + featureclick : function(e) {
  715 + if (e.feature.cluster.length > 1) {
  716 + objMapa.setCenter(
  717 + [
627 718 e.feature.geometry.x,
628 719 e.feature.geometry.y
629   - ], objMapa.getZoom() + 1, false, false);
630   - // objMapa.zoomIn();
631   - }
632   - return false;
  720 + ],
  721 + objMapa.getZoom() + 1,
  722 + false,
  723 + false);
  724 + // objMapa.zoomIn();
633 725 }
634   - };
  726 + return false;
  727 + }
  728 + };
635 729  
636   - markercluster = new OpenLayers.Layer.Vector(camada.name, {
  730 + markercluster = new OpenLayers.Layer.Vector(
  731 + camada.name, {
637 732 renderers : [
638 733 'Canvas',
639 734 'SVG'
640 735 ],
641 736 strategies : [
642   - new OpenLayers.Strategy.AnimatedCluster({
643   - distance : parseInt(camada.plugini3geo.parametros.gridSize, 10)
644   - })
  737 + new OpenLayers.Strategy.AnimatedCluster(
  738 + {
  739 + distance : parseInt(
  740 + camada.plugini3geo.parametros.gridSize,
  741 + 10)
  742 + })
645 743 ],
646   - styleMap : new OpenLayers.StyleMap(style),
  744 + styleMap : new OpenLayers.StyleMap(
  745 + style),
647 746 eventListeners : layerListeners
648 747 });
649   - objMapa.addLayer(markercluster);
  748 + objMapa.addLayer(markercluster);
650 749  
651   - marcas = [];
652   - for (i = 0; i < n; i++) {
653   - lonlat = new OpenLayers.LonLat(markercluster_dados[i].lng, markercluster_dados[i].lat);
654   - if (i3GEO.Interface.openlayers.googleLike === true) {
655   - lonlat.transform(new OpenLayers.Projection("EPSG:4326"), new OpenLayers.Projection("EPSG:900913"));
656   - }
657   - marcas.push(new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(lonlat.lon, lonlat.lat)));
  750 + marcas = [];
  751 + for (i = 0; i < n; i++) {
  752 + lonlat = new OpenLayers.LonLat(
  753 + markercluster_dados[i].lng, markercluster_dados[i].lat);
  754 + if (i3GEO.Interface.openlayers.googleLike === true) {
  755 + lonlat.transform(
  756 + new OpenLayers.Projection(
  757 + "EPSG:4326"),
  758 + new OpenLayers.Projection(
  759 + "EPSG:900913"));
658 760 }
659   - markercluster.addFeatures(marcas);
  761 + marcas.push(new OpenLayers.Feature.Vector(
  762 + new OpenLayers.Geometry.Point(
  763 + lonlat.lon, lonlat.lat)));
  764 + }
  765 + markercluster.addFeatures(marcas);
660 766  
661   - i3GEO.janela.fechaAguarde("aguardePlugin");
662   - i3GEO.eventos.cliquePerm.ativo = false;
  767 + i3GEO.janela.fechaAguarde("aguardePlugin");
  768 + i3GEO.eventos.cliquePerm.ativo = false;
663 769  
664   - markercluster.ligaCamada = function() {
665   - i3GEO.eventos.cliquePerm.ativo = false;
666   - };
667   - markercluster.desLigaCamada = function() {
668   - i3GEO.eventos.cliquePerm.ativo = true;
669   - };
670   - markercluster.removeCamada = function() {
671   - i3GEO.eventos.cliquePerm.ativo = true;
672   - };
673   - markercluster.atualizaCamada = function() {
674   - i3GEO.eventos.cliquePerm.ativo = false;
675   - };
676   - i3GEO.pluginI3geo.OBJETOS[camada.name] = markercluster;
677   - markercluster_dados = null;
  770 + markercluster.ligaCamada = function() {
  771 + i3GEO.eventos.cliquePerm.ativo = false;
678 772 };
  773 + markercluster.desLigaCamada = function() {
  774 + i3GEO.eventos.cliquePerm.ativo = true;
  775 + };
  776 + markercluster.removeCamada = function() {
  777 + i3GEO.eventos.cliquePerm.ativo = true;
  778 + };
  779 + markercluster.atualizaCamada = function() {
  780 + i3GEO.eventos.cliquePerm.ativo = false;
  781 + };
  782 + i3GEO.pluginI3geo.OBJETOS[camada.name] = markercluster;
  783 + markercluster_dados = null;
  784 + };
679 785 // se o script nao existir carrega o codigo e os dados
680 786 // caso contrario, carrega apenas os dados no script
681 787 if (!$i(nomeScript)) {
... ... @@ -683,36 +789,48 @@ i3GEO.pluginI3geo =
683 789 } else {
684 790 nomeScript = "";
685 791 }
686   - p +=
687   - "?carregajs=" + carregaJs + "&layer=" + camada.name + "&g_sid=" + i3GEO.configura.sid + "&tipoEstilos="
688   - + camada.plugini3geo.parametros.tipoEstilos
689   - + "&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config";
690   - i3GEO.util.scriptTag(p, criaLayer, nomeScript);
  792 + p += "?carregajs="
  793 + + carregaJs
  794 + + "&layer="
  795 + + camada.name
  796 + + "&g_sid="
  797 + + i3GEO.configura.sid
  798 + + "&tipoEstilos="
  799 + + camada.plugini3geo.parametros.tipoEstilos
  800 + + "&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config";
  801 + i3GEO.util.scriptTag(
  802 + p,
  803 + criaLayer,
  804 + nomeScript);
691 805 }
692 806 }
693 807 },
694 808 /**
695 809 * Function: layerkml
696   - *
  810 + *
697 811 * Adiciona ao mapa uma camada vetorial baseada em um arquivo Kml
698   - *
699   - * As depend&ecirc;ncias em javascript sao carregadas via script tag por meio de ferramentas/markercluster
700   - *
701   - * Esse programa tamb&eacute;m obt&eacute;m os dados necess&aacute;rios ao plugin
702   - *
703   - * O layer existente no mapfile deve conter um metadata chamado PLUGINI3GEO
704   - *
705   - * Esse matadado deve conter uma string que ser&aacute; transformada em um objeto javascript para uso no plugin
706   - *
  812 + *
  813 + * As depend&ecirc;ncias em javascript sao carregadas via script tag por
  814 + * meio de ferramentas/markercluster
  815 + *
  816 + * Esse programa tamb&eacute;m obt&eacute;m os dados necess&aacute;rios
  817 + * ao plugin
  818 + *
  819 + * O layer existente no mapfile deve conter um metadata chamado
  820 + * PLUGINI3GEO
  821 + *
  822 + * Esse matadado deve conter uma string que ser&aacute; transformada em
  823 + * um objeto javascript para uso no plugin
  824 + *
707 825 * Exemplo:
708   - *
  826 + *
709 827 * "PLUGINI3GEO" '{"plugin":"layerkml","parametros":{"url":"teste"}}'
710   - *
  828 + *
711 829 */
712 830 layerkml : {
713 831 linkAjuda : function() {
714   - // TODO
715   - return i3GEO.configura.locaplic + "/ajuda_usuario.php?idcategoria=3&idajuda=121";
  832 + return i3GEO.configura.locaplic
  833 + + "/ajuda_usuario.php?idcategoria=3&idajuda=121";
716 834 // http://localhost/i3geo/aplicmap/dados/sundials.kml
717 835 // http://dev.openlayers.org/examples/kml/sundials.kml
718 836 },
... ... @@ -726,9 +844,10 @@ i3GEO.pluginI3geo =
726 844 config = YAHOO.lang.JSON.parse(configDefault);
727 845 }
728 846 parametros = config.parametros;
729   - ins +=
730   - "<p>Url do arquivo Kml:<br><input name='url' type='text' value='" + parametros.url + "'/></p>"
731   - + "<p>Veja o exemplo utilizado no tema _lmapakml.map</p>";
  847 + ins += "<p>Url do arquivo Kml:<br><input name='url' type='text' value='"
  848 + + parametros.url
  849 + + "'/></p>"
  850 + + "<p>Veja o exemplo utilizado no tema _lmapakml.map</p>";
732 851 return ins;
733 852 },
734 853 googlemaps : {
... ... @@ -749,11 +868,12 @@ i3GEO.pluginI3geo =
749 868 return camada;
750 869 },
751 870 inicia : function(camada) {
752   - var layerkml = new google.maps.KmlLayer(camada.plugini3geo.parametros.url, {
753   - map : i3GeoMap,
754   - preserveViewport : true,
755   - name : camada.name
756   - });
  871 + var layerkml = new google.maps.KmlLayer(
  872 + camada.plugini3geo.parametros.url, {
  873 + map : i3GeoMap,
  874 + preserveViewport : true,
  875 + name : camada.name
  876 + });
757 877 i3GEO.janela.fechaAguarde("aguardePlugin");
758 878 layerkml.ligaCamada = function() {
759 879 i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap);
... ... @@ -792,65 +912,67 @@ i3GEO.pluginI3geo =
792 912 },
793 913 inicia : function(camada, objMapa) {
794 914 var layerkml;
795   - url = i3GEO.configura.locaplic + "/classesphp/proxy.php?url=" + camada.plugini3geo.parametros.url;
796   - layerkml = new OpenLayers.Layer.Vector(camada.name, {
797   - displayOutsideMaxExtent : true,
798   - displayInLayerSwitcher : false,
799   - visibility : true,
800   - strategies : [
801   - new OpenLayers.Strategy.Fixed()
802   - ],
803   - protocol : new OpenLayers.Protocol.HTTP({
804   - url : url,
805   - format : new OpenLayers.Format.KML({
806   - extractStyles : true,
807   - extractAttributes : true,
808   - maxDepth : 5
809   - })
810   - })
811   - });
  915 + url = i3GEO.configura.locaplic
  916 + + "/classesphp/proxy.php?url="
  917 + + camada.plugini3geo.parametros.url;
  918 + layerkml = new OpenLayers.Layer.Vector(
  919 + camada.name, {
  920 + displayOutsideMaxExtent : true,
  921 + displayInLayerSwitcher : false,
  922 + visibility : true,
  923 + strategies : [
  924 + new OpenLayers.Strategy.Fixed()
  925 + ],
  926 + protocol : new OpenLayers.Protocol.HTTP(
  927 + {
  928 + url : url,
  929 + format : new OpenLayers.Format.KML(
  930 + {
  931 + extractStyles : true,
  932 + extractAttributes : true,
  933 + maxDepth : 5
  934 + })
  935 + })
  936 + });
812 937 i3geoOL.addLayer(layerkml);
813 938  
814 939 if (!objMapa) {
815 940 objMapa = i3geoOL;
816 941 }
817   - layerkml.div.onclick =
818   - function(e) {
819   - var targ = "", id, temp, features, n, i, j = "", html = "";
820   - if (!e) {
821   - e = window.event;
822   - }
823   - if (e.target) {
824   - targ = e.target;
825   - } else if (e.srcElement) {
826   - targ = e.srcElement;
827   - }
828   - if (targ.id) {
829   - temp = targ.id.split("_Point");
830   - if (temp[0] === "OpenLayers_Geometry") {
831   - id = targ.id;
832   - temp = i3geoOL.getLayer(this.id);
833   - features = temp.features;
834   - n = features.length;
835   - for (i = 0; i < n; i++) {
836   - if (features[i].geometry.id === id) {
837   - for (j in features[i].attributes) {
838   - html += j + ": " + features[i].attributes[j];
839   - }
840   - g = features[i].geometry;
841   - i3geoOL.addPopup(new OpenLayers.Popup.FramedCloud(
842   - "kml",
843   - new OpenLayers.LonLat(g.x, g.y),
844   - null,
845   - html,
846   - null,
847   - true));
848   -
  942 + layerkml.div.onclick = function(e) {
  943 + var targ = "", id, temp, features, n, i, j = "", html = "";
  944 + if (!e) {
  945 + e = window.event;
  946 + }
  947 + if (e.target) {
  948 + targ = e.target;
  949 + } else if (e.srcElement) {
  950 + targ = e.srcElement;
  951 + }
  952 + if (targ.id) {
  953 + temp = targ.id.split("_Point");
  954 + if (temp[0] === "OpenLayers_Geometry") {
  955 + id = targ.id;
  956 + temp = i3geoOL.getLayer(this.id);
  957 + features = temp.features;
  958 + n = features.length;
  959 + for (i = 0; i < n; i++) {
  960 + if (features[i].geometry.id === id) {
  961 + for (j in features[i].attributes) {
  962 + html += j
  963 + + ": "
  964 + + features[i].attributes[j];
849 965 }
  966 + g = features[i].geometry;
  967 + i3geoOL.addPopup(new OpenLayers.Popup.FramedCloud(
  968 + "kml", new OpenLayers.LonLat(
  969 + g.x, g.y), null, html, null, true));
  970 +
850 971 }
851 972 }
852 973 }
853   - };
  974 + }
  975 + };
854 976  
855 977 i3GEO.janela.fechaAguarde("aguardePlugin");
856 978 i3GEO.eventos.cliquePerm.ativo = false;
... ... @@ -868,7 +990,124 @@ i3GEO.pluginI3geo =
868 990 i3GEO.eventos.cliquePerm.ativo = false;
869 991 };
870 992 i3GEO.pluginI3geo.OBJETOS[camada.name] = layerkml;
871   -
  993 + }
  994 + }
  995 + },
  996 + /**
  997 + * Function: parametrossql
  998 + *
  999 + * Adiciona ao mapa uma camada vetorial baseada em um arquivo mapfile
  1000 + * normal por&eacute;m permite substituir par&acirc;metros no item DATA
  1001 + * do LAYER
  1002 + *
  1003 + * Com o plugin, o i3GEO ir&aacute; mostrar um formul&aacute;rio com
  1004 + * par&acirc;metros quando o usu&aacute;rio adicionar uma camada ao mapa
  1005 + *
  1006 + * O formul&aacute;rio colhe os valores que ser&atilde;o utilizados para
  1007 + * substituir chaves inseridas no SQL
  1008 + *
  1009 + * O layer existente no mapfile deve conter um metadata chamado
  1010 + * PLUGINI3GEO
  1011 + *
  1012 + * Esse matadado deve conter uma string que ser&aacute; transformada em
  1013 + * um objeto javascript para uso no plugin
  1014 + *
  1015 + * Exemplo:
  1016 + *
  1017 + * "PLUGINI3GEO"
  1018 + * '{"plugin":"parametrossql","parametros":{[{"titulo":"","tipo":"input|select","valores":[],"chave":""}]}}'
  1019 + *
  1020 + */
  1021 + parametrossql : {
  1022 + linkAjuda : function() {
  1023 + // TODO
  1024 + return i3GEO.configura.locaplic
  1025 + + "/ajuda_usuario.php?idcategoria=3&idajuda=121";
  1026 + },
  1027 + formAdmin : function(config) {
  1028 + var n, i, parametros, ins = "", configDefault =
  1029 + '{"plugin":"parametrossql","parametros":[{"titulo":"","tipo":"input","valores":[],"chave":""},{"titulo":"","tipo":"input","valores":[],"chave":""},{"titulo":"","tipo":"input","valores":[],"chave":""},{"titulo":"","tipo":"input","valores":[],"chave":""}]}';
  1030 + if (config === "") {
  1031 + config = configDefault;
  1032 + }
  1033 + config = YAHOO.lang.JSON.parse(config);
  1034 + if (config.plugin != "parametrossql") {
  1035 + config = YAHOO.lang.JSON.parse(configDefault);
  1036 + }
  1037 + parametros = config.parametros;
  1038 + n = parametros.length;
  1039 + ins += "<table><tr><td>T&iacute;tulo</td><td>Chave</td><td>Tipo (input ou select)</td><td>Valores</td></tr>";
  1040 + for (i = 0; i < n; i++) {
  1041 + ins += "<tr><td><input name='titulo' type=text size=20 value='"
  1042 + + parametros[i].titulo
  1043 + + "' /></td>"
  1044 + + "<td><input name='chave' type=text size=20 value='"
  1045 + + parametros[i].chave
  1046 + + "' /></td>"
  1047 + + "<td><input name='tipo' type=text size=20 value='"
  1048 + + parametros[i].tipo
  1049 + + "' /></td> "
  1050 + + "<td><input name='valores' type=text size=20 value='"
  1051 + + parametros[i].valores
  1052 + + "' /></td></tr>";
  1053 + }
  1054 + ins +=
  1055 + "</table>"
  1056 + + "<p class='paragrafo'>As chaves s&atilde;o palavras que devem existir no SQL definido em DATA."
  1057 + + "<br>O usu&aacute;rio ir&aacute; fornecer os valores que ser&atilde;o ent&atilde;o utilizados para substituir as chaves de forma din&acirc;mica"
  1058 + + "<br>Ser&aacute; mostrado ao usu&aacute;rio um formul&aacute;rio com op&ccedil;&otilde;es. Cada op&ccedil;&atilde;o conter&aacute; um t&iacute;tulo e um campo de formul&aacute;rio"
  1059 + + "<br>Cada campo de formul&aacute;rio pode ser dos tipos input (para digitar um valor) ou select (caixa de op&ccedil;&otilde;es)."
  1060 + + "<br>Em valores deve ser definida a lista ou o valor default que ser&aacute; mostrado. No caso de listas, utilize v&iacute;rgula para separar os valores.";
  1061 + return ins;
  1062 + },
  1063 + // pega os valores do formulario quando e aberto no sistema de
  1064 + // administracao
  1065 + // ver i3geo/admin/editormapfile.js funcao salvarDadosEditorPlugin
  1066 + parametrosFormAdmin : function(onde) {
  1067 + var campo = 0,nlinhas = 4, ncampos = 4, campos = onde.getElementsByTagName("input"), par = [], temp = [], i, j;
  1068 + for (j = 0; j < nlinhas; j++) {
  1069 + temp = [];
  1070 + for (i = 0; i < ncampos; i++) {
  1071 + if(campos[campo]){
  1072 + temp.push('"'+campos[campo].name
  1073 + + '" : "'
  1074 + + campos[campo].value
  1075 + + '"');
  1076 + }
  1077 + campo++;
  1078 + }
  1079 + par.push("{"
  1080 + + temp.join(",")
  1081 + + "}");
  1082 + }
  1083 + return '{"plugin":"parametrossql","parametros":['
  1084 + + par.join(",")
  1085 + + ']}';
  1086 + },
  1087 + inicia : function(camada) {
  1088 + i3GEO.janela.fechaAguarde("aguardePlugin");
  1089 + var iniciaform = function() {
  1090 + i3GEOF.parametrossql.iniciaJanelaFlutuante(camada);
  1091 + };
  1092 + i3GEO.util.scriptTag(
  1093 + (i3GEO.configura.locaplic + "/ferramentas/parametrossql/dependencias.php"),
  1094 + iniciaform,
  1095 + "parametrossql_script");
  1096 + },
  1097 + googlemaps : {
  1098 + inicia : function(camada) {
  1099 + i3GEO.pluginI3geo.parametrossql.inicia(camada);
  1100 + },
  1101 + aplicaPropriedades : function(camada) {
  1102 + return camada;
  1103 + }
  1104 + },
  1105 + openlayers : {
  1106 + inicia : function(camada) {
  1107 + i3GEO.pluginI3geo.parametrossql.inicia(camada);
  1108 + },
  1109 + aplicaPropriedades : function(camada) {
  1110 + return camada;
872 1111 }
873 1112 }
874 1113 }
... ...
classesjs/compactados/classe_plugini3geo_compacto.js
1   -if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.pluginI3geo={OBJETOS:{},PLUGINS:[{"classe":"heatmap","nome":"Mapa de calor","editor":true},{"classe":"markercluster","nome":"Agrupamento de pontos (cluster)","editor":true},{"classe":"layerkml","nome":"Camada Kml","editor":true}],inicia:function(camada){if(i3GEO.janela){i3GEO.janela.AGUARDEMODAL=true;i3GEO.janela.abreAguarde("aguardePlugin","Plugin...");i3GEO.janela.AGUARDEMODAL=false}i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].inicia(camada)},formAdmin:function(plugin,configString){return i3GEO.pluginI3geo[plugin].formAdmin(configString)},linkAjuda:function(plugin){return i3GEO.pluginI3geo[plugin].linkAjuda()},ligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada();return true}return false},desligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada();return true}return false},removeCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada();delete(i3GEO.pluginI3geo.OBJETOS[nomecamada]);return true}return false},atualizaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada();return true}return false},existeObjeto:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){return true}return false},aplicaPropriedades:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){camada=i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].aplicaPropriedades(camada)}return camada},heatmap:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"heatmap","parametros":{"tipoGradiente": "default","valorPonto":1,"coluna":"","radius":15}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="heatmap"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+=""+"<p>Coluna que cont&eacute;m os dados:"+"<br><input name='coluna' type='text' value='"+parametros.coluna+"' size='30'></p>"+"<p>Ou valor num&eacute;rico para cada ponto:"+"<br><input name='valorPonto' type='text' value='"+parametros.valorPonto+"' size='30'></p>"+"<p>Raio de cada ponto em pixels:"+"<br><input name='radius' type='text' value='"+parametros.radius+"' size='30'></p>"+"<p>Tipo de gradiente (deixe vazio para utilizar as classes definidas no Layer ou escreva 'default' para usar o normal):"+"<br><input name='tipoGradiente' type='text' value='"+parametros.tipoGradiente+"' size='30'></p>"+"<p>Para definir os cortes no gradiente de cores utilize valores entre 0 e 1."+" As cores s&atilde;o definidas nas classes do LAYER, sendo que o nome define o valor superior do gradiente e COLOR define a cor."+" Veja o exemplo utilizado no tema _lmapadecalor.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var heatmap,pontos;heatmap=new HeatmapOverlay(i3GeoMap,camada.name,{"radius":camada.plugini3geo.parametros.radius,"visible":true,"opacity":camada.transparency,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}});pontos={max:camada.plugini3geo.parametros.max,data:heatmap_dados};i3GEO.janela.fechaAguarde("aguardePlugin");heatmap.setDataSet(pontos);heatmap.ligaCamada=function(){this.liga()};heatmap.desLigaCamada=function(){this.desliga()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.draw()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;heatmap_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/openlayers_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var temp,heatmap,transformedTestData={max:1,data:[]},data=heatmap_dados,datalen=heatmap_dados.length,nudata=[],max=0;if(!objMapa){objMapa=i3geoOL}while(datalen--){temp=heatmap_dados[datalen].count;nudata.push({lonlat:new OpenLayers.LonLat(data[datalen].lng,heatmap_dados[datalen].lat),count:temp});max=Math.max(max,temp)}transformedTestData.max=max;transformedTestData.data=nudata;heatmap=new OpenLayers.Layer.Heatmap(camada.name,objMapa,objMapa.baseLayer,{"visible":true,"opacity":camada.transparency,"radius":camada.plugini3geo.parametros.radius,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}},{isBaseLayer:false,projection:new OpenLayers.Projection("EPSG:4326"),displayInLayerSwitcher:true});heatmap.ligaCamada=function(){this.toggle();this.updateLayer()};heatmap.desLigaCamada=function(){this.toggle();this.updateLayer()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.updateLayer()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;objMapa.addLayer(heatmap);heatmap.setDataSet(transformedTestData);heatmap_dados=null;if(i3GEO.janela){i3GEO.janela.fechaAguarde("aguardePlugin")}};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}if(!i3GEO.configura||!i3GEO.configura.sid){i3GEO.configura.sid=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},googleearth:{inicia:function(){alert("Plugin nao disponivel")}}},markercluster:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"markercluster","parametros":{"tipoEstilos": "default","gridSize":50}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="markercluster"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+=""+"<p>Dist&acirc;ncia m&aacute;xima entre ponto em pixels:"+"<br><input name='gridSize' type='text' value='"+parametros.gridSize+"' size='30'></p>"+"<p>Tipo de estilos (deixe vazio para utilizar as classes definidas no Layer ou escreva 'default' para usar o normal):"+"<br><input name='tipoEstilos' type='text' value='"+parametros.tipoEstilos+"' size='30'></p>"+"<p>Os s&iacute;mbolos utilizados podem ser customizados alterando-se as classes do Mapfile</p>"+"<p>Veja o exemplo utilizado no tema _lmapadecluster.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var markercluster,marcas,latLng,marker,n,i;n=markercluster_dados.length;marcas=[];for(i=0;i<n;i++){latLng=new google.maps.LatLng(markercluster_dados[i].lat,markercluster_dados[i].lng);marker=new google.maps.Marker({'position':latLng,icon:{url:markercluster_config.ponto.url,scaledSize:new google.maps.Size(markercluster_config.ponto.width,markercluster_config.ponto.height)}});marcas.push(marker)}markercluster=new MarkerClusterer(i3GeoMap,marcas,{"gridSize":parseInt(camada.plugini3geo.parametros.gridSize,10),"visible":true,"opacity":camada.transparency,"name":camada.name,"styles":markercluster_config.estilos});i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;markercluster.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=true;i3GEO.pluginI3geo.OBJETOS[camada.name].redraw();i3GEO.eventos.cliquePerm.ativo=false};markercluster.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=false;i3GEO.eventos.cliquePerm.ativo=true};markercluster.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].clearMarkers();i3GEO.eventos.cliquePerm.ativo=true};markercluster.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=true;i3GEO.pluginI3geo.OBJETOS[camada.name].redraw();i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos+"&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/openlayers_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var layerListeners,logMax,logMin,classes,min,max,markercluster,marcas,lonlat,n,i,style,nestilos,intervalo,regra,regras=[];nestilos=markercluster_config.estilos.length;n=markercluster_dados.length;classes=Array();logMax=Math.log(n)/Math.LN10; logMin=Math.log(1)/Math.LN10;intervalo=(logMax-logMin)/nestilos;for(i=0;i<nestilos;i++){if(i==0){classes[i]=logMin}else{classes[i]=classes[i-1]+intervalo}}classes=classes.map(function(x){return Math.pow(10,x)});classes.push(n);regra=new OpenLayers.Rule({filter:new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.LESS_THAN,property:"count",value:2}),symbolizer:{externalGraphic:markercluster_config.ponto.url,graphicWidth:markercluster_config.ponto.width,graphicHeight:markercluster_config.ponto.height,graphicYOffset:(markercluster_config.ponto.height/2)*-1}});regras.push(regra);min=2;for(i=0;i<nestilos;i++){max=classes[i+1];regra=new OpenLayers.Rule({filter:new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.BETWEEN,property:"count",lowerBoundary:min,upperBoundary:max}),symbolizer:{externalGraphic:markercluster_config.estilos[i].url,graphicWidth:markercluster_config.estilos[i].width,graphicHeight:markercluster_config.estilos[i].height,label:"${count}",labelOutlineWidth:1,fontColor:"#000000",fontOpacity:1,fontSize:"12px"}});regras.push(regra);min=max}style=new OpenLayers.Style(null,{rules:regras});if(!objMapa){objMapa=i3geoOL}layerListeners={featureclick:function(e){if(e.feature.cluster.length>1){objMapa.setCenter([e.feature.geometry.x,e.feature.geometry.y],objMapa.getZoom()+1,false,false)}return false}};markercluster=new OpenLayers.Layer.Vector(camada.name,{renderers:['Canvas','SVG'],strategies:[new OpenLayers.Strategy.AnimatedCluster({distance:parseInt(camada.plugini3geo.parametros.gridSize,10)})],styleMap:new OpenLayers.StyleMap(style),eventListeners:layerListeners});objMapa.addLayer(markercluster);marcas=[];for(i=0;i<n;i++){lonlat=new OpenLayers.LonLat(markercluster_dados[i].lng,markercluster_dados[i].lat);if(i3GEO.Interface.openlayers.googleLike===true){lonlat.transform(new OpenLayers.Projection("EPSG:4326"),new OpenLayers.Projection("EPSG:900913"))}marcas.push(new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(lonlat.lon,lonlat.lat)))}markercluster.addFeatures(marcas);i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;markercluster.ligaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};markercluster.desLigaCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};markercluster.removeCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};markercluster.atualizaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos+"&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}}},layerkml:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"layerkml","parametros":{"url": ""}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="layerkml"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+="<p>Url do arquivo Kml:<br><input name='url' type='text' value='"+parametros.url+"'/></p>"+"<p>Veja o exemplo utilizado no tema _lmapakml.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var layerkml=new google.maps.KmlLayer(camada.plugini3geo.parametros.url,{map:i3GeoMap,preserveViewport:true,name:camada.name});i3GEO.janela.fechaAguarde("aguardePlugin");layerkml.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};layerkml.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null)};layerkml.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true)};layerkml.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var layerkml;url=i3GEO.configura.locaplic+"/classesphp/proxy.php?url="+camada.plugini3geo.parametros.url;layerkml=new OpenLayers.Layer.Vector(camada.name,{displayOutsideMaxExtent:true,displayInLayerSwitcher:false,visibility:true,strategies:[new OpenLayers.Strategy.Fixed()],protocol:new OpenLayers.Protocol.HTTP({url:url,format:new OpenLayers.Format.KML({extractStyles:true,extractAttributes:true,maxDepth:5})})});i3geoOL.addLayer(layerkml);if(!objMapa){objMapa=i3geoOL}layerkml.div.onclick=function(e){var targ="",id,temp,features,n,i,j="",html="";if(!e){e=window.event}if(e.target){targ=e.target}else if(e.srcElement){targ=e.srcElement}if(targ.id){temp=targ.id.split("_Point");if(temp[0]==="OpenLayers_Geometry"){id=targ.id;temp=i3geoOL.getLayer(this.id);features=temp.features;n=features.length;for(i=0;i<n;i++){if(features[i].geometry.id===id){for(j in features[i].attributes){html+=j+": "+features[i].attributes[j]}g=features[i].geometry;i3geoOL.addPopup(new OpenLayers.Popup.FramedCloud("kml",new OpenLayers.LonLat(g.x,g.y),null,html,null,true))}}}}};i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;layerkml.ligaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};layerkml.desLigaCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};layerkml.removeCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};layerkml.atualizaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}}}};
2 1 \ No newline at end of file
  2 +if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.pluginI3geo={OBJETOS:{},PLUGINS:[{"classe":"heatmap","nome":"Mapa de calor","editor":true},{"classe":"markercluster","nome":"Agrupamento de pontos (cluster)","editor":true},{"classe":"layerkml","nome":"Camada Kml","editor":true},{"classe":"parametrossql","nome":"SQL parametrizado","editor":true}],inicia:function(camada){if(i3GEO.janela){i3GEO.janela.AGUARDEMODAL=true;i3GEO.janela.abreAguarde("aguardePlugin","Plugin...");i3GEO.janela.AGUARDEMODAL=false}i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].inicia(camada)},formAdmin:function(plugin,configString){return i3GEO.pluginI3geo[plugin].formAdmin(configString)},linkAjuda:function(plugin){return i3GEO.pluginI3geo[plugin].linkAjuda()},ligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada();return true}return false},desligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada();return true}return false},removeCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada();delete(i3GEO.pluginI3geo.OBJETOS[nomecamada]);return true}return false},atualizaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada();return true}return false},existeObjeto:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){return true}return false},aplicaPropriedades:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){camada=i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].aplicaPropriedades(camada)}return camada},heatmap:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"heatmap","parametros":{"tipoGradiente": "default","valorPonto":1,"coluna":"","radius":15}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="heatmap"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+=""+"<p>Coluna que cont&eacute;m os dados:"+"<br><input name='coluna' type='text' value='"+parametros.coluna+"' size='30'></p>"+"<p>Ou valor num&eacute;rico para cada ponto:"+"<br><input name='valorPonto' type='text' value='"+parametros.valorPonto+"' size='30'></p>"+"<p>Raio de cada ponto em pixels:"+"<br><input name='radius' type='text' value='"+parametros.radius+"' size='30'></p>"+"<p>Tipo de gradiente (deixe vazio para utilizar as classes definidas no Layer ou escreva 'default' para usar o normal):"+"<br><input name='tipoGradiente' type='text' value='"+parametros.tipoGradiente+"' size='30'></p>"+"<p>Para definir os cortes no gradiente de cores utilize valores entre 0 e 1."+" As cores s&atilde;o definidas nas classes do LAYER, sendo que o nome define o valor superior do gradiente e COLOR define a cor."+" Veja o exemplo utilizado no tema _lmapadecalor.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var heatmap,pontos;heatmap=new HeatmapOverlay(i3GeoMap,camada.name,{"radius":camada.plugini3geo.parametros.radius,"visible":true,"opacity":camada.transparency,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}});pontos={max:camada.plugini3geo.parametros.max,data:heatmap_dados};i3GEO.janela.fechaAguarde("aguardePlugin");heatmap.setDataSet(pontos);heatmap.ligaCamada=function(){this.liga()};heatmap.desLigaCamada=function(){this.desliga()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.draw()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;heatmap_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/openlayers_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var temp,heatmap,transformedTestData={max:1,data:[]},data=heatmap_dados,datalen=heatmap_dados.length,nudata=[],max=0;if(!objMapa){objMapa=i3geoOL}while(datalen--){temp=heatmap_dados[datalen].count;nudata.push({lonlat:new OpenLayers.LonLat(data[datalen].lng,heatmap_dados[datalen].lat),count:temp});max=Math.max(max,temp)}transformedTestData.max=max;transformedTestData.data=nudata;heatmap=new OpenLayers.Layer.Heatmap(camada.name,objMapa,objMapa.baseLayer,{"visible":true,"opacity":camada.transparency,"radius":camada.plugini3geo.parametros.radius,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}},{isBaseLayer:false,projection:new OpenLayers.Projection("EPSG:4326"),displayInLayerSwitcher:true});heatmap.ligaCamada=function(){this.toggle();this.updateLayer()};heatmap.desLigaCamada=function(){this.toggle();this.updateLayer()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.updateLayer()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;objMapa.addLayer(heatmap);heatmap.setDataSet(transformedTestData);heatmap_dados=null;if(i3GEO.janela){i3GEO.janela.fechaAguarde("aguardePlugin")}};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}if(!i3GEO.configura||!i3GEO.configura.sid){i3GEO.configura.sid=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},googleearth:{inicia:function(){alert("Plugin nao disponivel")}}},markercluster:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"markercluster","parametros":{"tipoEstilos": "default","gridSize":50}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="markercluster"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+=""+"<p>Dist&acirc;ncia m&aacute;xima entre ponto em pixels:"+"<br><input name='gridSize' type='text' value='"+parametros.gridSize+"' size='30'></p>"+"<p>Tipo de estilos (deixe vazio para utilizar as classes definidas no Layer ou escreva 'default' para usar o normal):"+"<br><input name='tipoEstilos' type='text' value='"+parametros.tipoEstilos+"' size='30'></p>"+"<p>Os s&iacute;mbolos utilizados podem ser customizados alterando-se as classes do Mapfile</p>"+"<p>Veja o exemplo utilizado no tema _lmapadecluster.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var markercluster,marcas,latLng,marker,n,i;n=markercluster_dados.length;marcas=[];for(i=0;i<n;i++){latLng=new google.maps.LatLng(markercluster_dados[i].lat,markercluster_dados[i].lng);marker=new google.maps.Marker({'position':latLng,icon:{url:markercluster_config.ponto.url,scaledSize:new google.maps.Size(markercluster_config.ponto.width,markercluster_config.ponto.height)}});marcas.push(marker)}markercluster=new MarkerClusterer(i3GeoMap,marcas,{"gridSize":parseInt(camada.plugini3geo.parametros.gridSize,10),"visible":true,"opacity":camada.transparency,"name":camada.name,"styles":markercluster_config.estilos});i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;markercluster.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=true;i3GEO.pluginI3geo.OBJETOS[camada.name].redraw();i3GEO.eventos.cliquePerm.ativo=false};markercluster.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=false;i3GEO.eventos.cliquePerm.ativo=true};markercluster.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].clearMarkers();i3GEO.eventos.cliquePerm.ativo=true};markercluster.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=true;i3GEO.pluginI3geo.OBJETOS[camada.name].redraw();i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos+"&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/openlayers_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var layerListeners,logMax,logMin,classes,min,max,markercluster,marcas,lonlat,n,i,style,nestilos,intervalo,regra,regras=[];nestilos=markercluster_config.estilos.length;n=markercluster_dados.length;classes=Array();logMax=Math.log(n)/Math.LN10; logMin=Math.log(1)/Math.LN10;intervalo=(logMax-logMin)/nestilos;for(i=0;i<nestilos;i++){if(i==0){classes[i]=logMin}else{classes[i]=classes[i-1]+intervalo}}classes=classes.map(function(x){return Math.pow(10,x)});classes.push(n);regra=new OpenLayers.Rule({filter:new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.LESS_THAN,property:"count",value:2}),symbolizer:{externalGraphic:markercluster_config.ponto.url,graphicWidth:markercluster_config.ponto.width,graphicHeight:markercluster_config.ponto.height,graphicYOffset:(markercluster_config.ponto.height/2)*-1}});regras.push(regra);min=2;for(i=0;i<nestilos;i++){max=classes[i+1];regra=new OpenLayers.Rule({filter:new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.BETWEEN,property:"count",lowerBoundary:min,upperBoundary:max}),symbolizer:{externalGraphic:markercluster_config.estilos[i].url,graphicWidth:markercluster_config.estilos[i].width,graphicHeight:markercluster_config.estilos[i].height,label:"${count}",labelOutlineWidth:1,fontColor:"#000000",fontOpacity:1,fontSize:"12px"}});regras.push(regra);min=max}style=new OpenLayers.Style(null,{rules:regras});if(!objMapa){objMapa=i3geoOL}layerListeners={featureclick:function(e){if(e.feature.cluster.length>1){objMapa.setCenter([e.feature.geometry.x,e.feature.geometry.y],objMapa.getZoom()+1,false,false)}return false}};markercluster=new OpenLayers.Layer.Vector(camada.name,{renderers:['Canvas','SVG'],strategies:[new OpenLayers.Strategy.AnimatedCluster({distance:parseInt(camada.plugini3geo.parametros.gridSize,10)})],styleMap:new OpenLayers.StyleMap(style),eventListeners:layerListeners});objMapa.addLayer(markercluster);marcas=[];for(i=0;i<n;i++){lonlat=new OpenLayers.LonLat(markercluster_dados[i].lng,markercluster_dados[i].lat);if(i3GEO.Interface.openlayers.googleLike===true){lonlat.transform(new OpenLayers.Projection("EPSG:4326"),new OpenLayers.Projection("EPSG:900913"))}marcas.push(new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(lonlat.lon,lonlat.lat)))}markercluster.addFeatures(marcas);i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;markercluster.ligaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};markercluster.desLigaCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};markercluster.removeCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};markercluster.atualizaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos+"&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}}},layerkml:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"layerkml","parametros":{"url": ""}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="layerkml"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+="<p>Url do arquivo Kml:<br><input name='url' type='text' value='"+parametros.url+"'/></p>"+"<p>Veja o exemplo utilizado no tema _lmapakml.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var layerkml=new google.maps.KmlLayer(camada.plugini3geo.parametros.url,{map:i3GeoMap,preserveViewport:true,name:camada.name});i3GEO.janela.fechaAguarde("aguardePlugin");layerkml.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};layerkml.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null)};layerkml.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true)};layerkml.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var layerkml;url=i3GEO.configura.locaplic+"/classesphp/proxy.php?url="+camada.plugini3geo.parametros.url;layerkml=new OpenLayers.Layer.Vector(camada.name,{displayOutsideMaxExtent:true,displayInLayerSwitcher:false,visibility:true,strategies:[new OpenLayers.Strategy.Fixed()],protocol:new OpenLayers.Protocol.HTTP({url:url,format:new OpenLayers.Format.KML({extractStyles:true,extractAttributes:true,maxDepth:5})})});i3geoOL.addLayer(layerkml);if(!objMapa){objMapa=i3geoOL}layerkml.div.onclick=function(e){var targ="",id,temp,features,n,i,j="",html="";if(!e){e=window.event}if(e.target){targ=e.target}else if(e.srcElement){targ=e.srcElement}if(targ.id){temp=targ.id.split("_Point");if(temp[0]==="OpenLayers_Geometry"){id=targ.id;temp=i3geoOL.getLayer(this.id);features=temp.features;n=features.length;for(i=0;i<n;i++){if(features[i].geometry.id===id){for(j in features[i].attributes){html+=j+": "+features[i].attributes[j]}g=features[i].geometry;i3geoOL.addPopup(new OpenLayers.Popup.FramedCloud("kml",new OpenLayers.LonLat(g.x,g.y),null,html,null,true))}}}}};i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;layerkml.ligaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};layerkml.desLigaCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};layerkml.removeCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};layerkml.atualizaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}}},parametrossql:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var n,i,parametros,ins="",configDefault='{"plugin":"parametrossql","parametros":[{"titulo":"","tipo":"input","valores":[],"chave":""},{"titulo":"","tipo":"input","valores":[],"chave":""},{"titulo":"","tipo":"input","valores":[],"chave":""},{"titulo":"","tipo":"input","valores":[],"chave":""}]}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="parametrossql"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;n=parametros.length;ins+="<table><tr><td>T&iacute;tulo</td><td>Chave</td><td>Tipo (input ou select)</td><td>Valores</td></tr>";for(i=0;i<n;i++){ins+="<tr><td><input name='titulo' type=text size=20 value='"+parametros[i].titulo+"' /></td>"+"<td><input name='chave' type=text size=20 value='"+parametros[i].chave+"' /></td>"+"<td><input name='tipo' type=text size=20 value='"+parametros[i].tipo+"' /></td> "+"<td><input name='valores' type=text size=20 value='"+parametros[i].valores+"' /></td></tr>"}ins+="</table>"+"<p class='paragrafo'>As chaves s&atilde;o palavras que devem existir no SQL definido em DATA."+"<br>O usu&aacute;rio ir&aacute; fornecer os valores que ser&atilde;o ent&atilde;o utilizados para substituir as chaves de forma din&acirc;mica"+"<br>Ser&aacute; mostrado ao usu&aacute;rio um formul&aacute;rio com op&ccedil;&otilde;es. Cada op&ccedil;&atilde;o conter&aacute; um t&iacute;tulo e um campo de formul&aacute;rio"+"<br>Cada campo de formul&aacute;rio pode ser dos tipos input (para digitar um valor) ou select (caixa de op&ccedil;&otilde;es)."+"<br>Em valores deve ser definida a lista ou o valor default que ser&aacute; mostrado. No caso de listas, utilize v&iacute;rgula para separar os valores.";return ins},parametrosFormAdmin:function(onde){var campo=0,nlinhas=4,ncampos=4,campos=onde.getElementsByTagName("input"),par=[],temp=[],i,j;for(j=0;j<nlinhas;j++){temp=[];for(i=0;i<ncampos;i++){if(campos[campo]){temp.push('"'+campos[campo].name+'" : "'+campos[campo].value+'"')}campo++}par.push("{"+temp.join(",")+"}")}return'{"plugin":"parametrossql","parametros":['+par.join(",")+']}'},inicia:function(camada){i3GEO.janela.fechaAguarde("aguardePlugin");var iniciaform=function(){i3GEOF.parametrossql.iniciaJanelaFlutuante(camada)};i3GEO.util.scriptTag((i3GEO.configura.locaplic+"/ferramentas/parametrossql/dependencias.php"),iniciaform,"parametrossql_script")},googlemaps:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada}},openlayers:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada}}}};
3 3 \ No newline at end of file
... ...
classesjs/compactados/dicionario_ajuda_compacto.js
1   -g_traducao_ajuda={ferramentas:{"1":{titulo:"Filtro de cores",diretorio:"i3geo/ferramentas/tipoimagem",categoria:"1",pt:"O filtro possibilita gerar efeitos de colora&ccedil;&atilde;o no mapa. &Eacute; aplicado sobre a imagem gerada toda vez que o mapa &eacute; alterado. No caso de temas baseados em dados RASTER, os n&iacute;veis de cores obtidos com a ferramenta de identifica&ccedil;&atilde;o n&atilde;o s&atilde;o alterados.",complemento:"Os filtros podem provocar um tempo maior de desenho do mapa, devendo ser utilizados com cuidado. As op&ccedil;&otilde;es s&eacute;pia e tons de cinza utilizam algor&iacute;tmos pr&oacute;prios do i3Geo, j&aacute; as demais, utilizam a op&ccedil;&atilde;o de filtro dispon&iacute;vel com o PHP 5. Mais detalhes <a href='http://www.php.net/manual/pt_BR/function.imagefilter.php' >aqui</a>.",apijs:"i3GEO.mapa.dialogo.tipoimagem()"},"2":{titulo:"Legenda",diretorio:"i3geo/ferramentas/opcoes_legenda",categoria:"1",pt:"A legenda do mapa &eacute; utilizada em v&aacute;rias op&ccedil;&otilde;es do i3Geo e pode tamb&eacute;m ficar inserida na pr&oacute;pria imagem do mapa. A legenda mostra os s&iacute;mbolos utilizados no desenho de cada tema, podendo-se alterar caracter&iacute;sticas como fonte, tamanho dos textos, tamanho dos ret&acirc;ngulos com os s&iacute;mbolos, etc.",complemento:"Antes de aplicar uma altera&ccedil;&atilde;o, voc&ecirc; pode testar os par&acirc;metros escolhidos para avaliar o resultado. No caso dos par&acirc;metros que definem cores, utilize -1,-1,-1 para anular seu efeito.",apijs:"i3GEO.mapa.dialogo.opcoesLegenda()"},"3":{titulo:"Barra de escala",diretorio:"i3geo/ferramentas/opcoes_escala",categoria:"1",pt:"A barra de escala &eacute; uma imagem inserida no mapa que mostra a rela&ccedil;&atilde;o entre uma medida feita no mapa e no mundo real. A barra pode ser modificada especificando-se seu tamanho, n&uacute;mero de divis&otilde;es e cores.",complemento:"Existem dois modelos b&aacute;sicos para a escala: linear e bloco. Para n&atilde;o mostrar a escala no mapa, escolha a 'sem escala' na op&ccedil;&atilde;o estilo.",apijs:"i3GEO.mapa.dialogo.opcoesEscala()"},"4":{titulo:"Tamanho do mapa",diretorio:"i3geo/ferramentas/opcoes_tamanho",categoria:"1",pt:"O tamanho do mapa &eacute; definido automaticamente quando o i3Geo &eacute; aberto, buscando-se otimizar o uso do espa&ccedil;o dispon&iacute;vel no monitor. A op&ccedil;&atilde;o de modifica&ccedil;&atilde;o do tamanho altera apenas o corpo do mapa, for&ccedil;ando o ajuste dos outros elementos, o que nem sempre provoca bons resultados.",complemento:"O ajuste do tamanho do mapa pode ser utilizado para gerar imagens em tamanhos espec&iacute;ficos, principalmente para efeitos de impress&atilde;o. A medida do tamanho utilizado &eacute; pixel, que corresponde ao tamanho m&iacute;nimo de uma c&eacute;lula da imagem do mapa. Para calcular o tamanho do mapa em outra unidade de medida, necess&aacute;rio nos casos em que se deseja imprimir o mapa, deve ser feito considerando-se a resolu&ccedil;&atilde;o de impress&atilde;o desejada.",apijs:"i3GEO.mapa.dialogo.tamanho()"},"5":{titulo:"Cor da sele&ccedil;&atilde;o",diretorio:"i3geo/ferramentas/opcoes_querymap",categoria:"1",pt:"A cor da sele&ccedil;&atilde;o &eacute; utilizada para mostrar no mapa os elementos de um determinado tema que est&atilde;o selecionados. A sele&ccedil;&atilde;o consiste em destacar elementos para uso em determinadas opera&ccedil;&otilde;es, como por exemplo o c&aacute;lculo de entorno (buffer). A defini&ccedil;&atilde;o da cor &eacute; baseada no modelo R,G,B, sendo que cada componente varia de 0 a 255.",complemento:"Ao definir os valores de RGB, separe-os com ','. Quando um tema possuir elementos selecionados, &eacute; inclu&iacute;da uma marca antes do nome do tema na lista de camadas dispon&iacute;veis no mapa.",apijs:"i3GEO.mapa.dialogo.queryMap()"},"6":{titulo:"Cor do fundo",diretorio:"i3geo/ferramentas/opcoes_fundo",categoria:"1",pt:"O corpo do mapa &eacute; constitu&iacute;do por uma imagem gerada com tamanho fixo. Essa imagem possu&iacute; uma cor padr&atilde;o, sobre a qual s&atilde;o sobrepostas as camadas. Por padr&atilde;o, a cor do fundo &eacute; definida como azul. A defini&ccedil;&atilde;o da cor &eacute; baseada no modelo R,G,B, sendo que cada componente varia de 0 a 255.",complemento:"Ao definir os valores de RGB, separe-os com ','. Ao utilizar as op&ccedil;&otilde;es de convers&atilde;o do mapa atual para kml ou WMS, a altera&ccedil;&atilde;o da cor do fundo para 255,255,255 oferece melhores resultados na visualiza&ccedil;&atilde;o dos dados.",apijs:"i3GEO.mapa.dialogo.corFundo()"},"7":{titulo:"Grade de coordenadas",diretorio:"i3geo/ferramentas/gradecoord",categoria:"1",pt:"A grade de coordenadas &eacute; formada por linhas verticais e horizontais representando determinadas latitudes e longitudes. A grade &eacute; um dos elementos principais na defini&ccedil;&atilde;o de um mapa, sendo utilizada na impress&atilde;o ou gera&ccedil;&atilde;o de figuras.",complemento:"Ao adicionar uma grade, &eacute; criado uma nova camada no mapa, possibilitando que mais de uma grade seja criada. Uma grade pode ou n&atilde;o conter os textos indicando os valores de lat long, permitindo que se crie uma grade com espa&ccedil;amento de linhas diferente do espa&ccedil;amento dos textos.",apijs:"i3GEO.mapa.dialogo.gradeCoord()"},"8":{titulo:"Templates",diretorio:"i3geo/ferramentas/template",categoria:"1",pt:"Um template define como os componentes de um mapa s&atilde;o organizados no navegador. O administrador do i3Geo pode criar templates diferentes conforme as necessidades do usu&aacute;rio, sendo que alguns templates s&atilde;o fornecidos com o pr&oacute;prio i3Geo.",complemento:"A cria&ccedil;&atilde;o de templates &eacute; uma tarefa do administrador do i3Geo. Para abrir um template espec&iacute;fico diretamente, utilize a URL que &eacute; mostrada no navegador quando um template &eacute; escolhido.",apijs:"i3GEO.mapa.dialogo.template()"},"9":{titulo:"Temporizador",diretorio:"i3geo/ferramentas/opcoes_autoredesenha",categoria:"1",pt:"O temporizador permite definir um intervalo de tempo em segundos que ir&aacute; disparar o redesenho do mapa.",complemento:"Quando o mapa &eacute; redesenhado, as camadas existentes s&atilde;o lidas novamente para compor o novo mapa. Essa op&ccedil;&atilde;o &eacute; &uacute;til quando existirem camadas no mapa que sofrem atualiza&ccedil;&otilde;es frequentes, como por exemplo o deslocamento de aeronaves, carros ou navios.",apijs:"i3GEO.mapa.dialogo.autoredesenha()"},"10":{titulo:"Salvar mapa",diretorio:"i3geo/ferramentas/salvamapa",categoria:"2",pt:"O mapa que o usu&aacute;rio est&aacute; utilizando pode ser salvo localmente (na m&aacute;quina do usu&aacute;rio) ou no banco de dados no servidor onde o i3Geo est&aacute; instalado. para ser aberto posteriormente. Isso permite que um trabalho seja continuado em outro momento, uma vez que o mapa em uso &eacute; sempre perdido quando o usu&aacute;rio fecha o navegador.",complemento:"Os dados locais que foram criados n&atilde;o s&atilde;o salvos, sendo necess&aacute;rio o seu download quando desejado. Isso afeta as op&ccedil;&otilde;es de inclus&atilde;o de pontos ou convers&atilde;o de elementos selecionados em camadas.",apijs:"i3GEO.mapa.dialogo.salvaMapa()"},"11":{titulo:"Carregar mapa",diretorio:"i3geo/ferramentas/carregamapa",categoria:"2",pt:"O mapa que o usu&aacute;rio est&aacute; utilizando pode ser salvo localmente (na m&aacute;quina do usu&aacute;rio) para ser aberto posteriormente. Isso permite que um trabalho seja continuado em outro momento, uma vez que o mapa em uso &eacute; sempre perdido quando o usu&aacute;rio fecha o navegador.",complemento:"A op&ccedil;&atilde;o de carregar um mapa permite enviar para o servidor, onde o i3Geo est&aacute; instalado, o mapa que foi salvo anteriormente.",apijs:"i3GEO.mapa.dialogo.carregaMapa()"},"12":{titulo:"Converter em WMS",diretorio:"i3geo/ferramentas/convertews",categoria:"2",pt:"Convertendo o mapa atual em um WMS &eacute; poss&iacute;vel utilizar outros softwares para visualizar o mesmo mapa visto no i3Geo. O resultado da convers&atilde;o &eacute; um endere&ccedil;o (url) tempor&aacute;rio, esse endere&ccedil;o deve ser inserido no software que se quer usar e que suporte WMS.",complemento:"WMS &eacute; um padr&atilde;o internacional e n&atilde;o espec&iacute;fico do i3Geo. Utilizando um WMS, pode-se adicionar ao mapa outras camadas de dados, inclusive dados locais, se estiver sendo utilizado um software instalado em um computador local. Conforme as caracter&iacute;sticas de cada servidor onde o i3Geo estiver instalado, o WMS poder&aacute; permanecer dispon&iacute;vel por per&iacute;odos de tempo vari&aacute;veis. Para acessar a lista de WMS dispon&iacute;veis utilize o link <a href='ogc.htm' >ogc.htm</a>.Mais informa&ccedil;&otilde;es em <a href='www.opengeospatial.org' >OGC.</a>",apijs:"i3GEO.mapa.dialogo.convertews()"},"13":{titulo:"Converter em KML",diretorio:"i3geo/ferramentas/convertekml",categoria:"2",pt:"Convertendo o mapa atual em KML &eacute; poss&iacute;vel utilizar outros softwares para visualizar o mesmo mapa visto no i3Geo. O resultado da convers&atilde;o &eacute; um endere&ccedil;o (url) tempor&aacute;rio, esse endere&ccedil;o deve ser inserido no software que se quer usar e que suporte KML. Para usar o KML no Google Earth, utilize a op&ccedil;&atilde;o desse softawre chamada 'adicionar link de rede'.",complemento:"KML &eacute; um padr&atilde;o internacional e n&atilde;o espec&iacute;fico do i3Geo. Conforme as caracter&iacute;sticas de cada servidor onde o i3Geo estiver instalado, o KML poder&aacute; permanecer dispon&iacute;vel por per&iacute;odos de tempo vari&aacute;veis. O KML gerado pelo i3Geo n&atilde;o cont&eacute;m as coordenadas dos elementos de uma camada, mas sim um WMS embutido no KML. Essa estrutura limita o uso do KML mas permite uma maior performance no acesso aos dados. Mais informa&ccedil;&otilde;es em <a href='www.opengeospatial.org' target=blanck >OGC</a>.",apijs:"i3GEO.mapa.dialogo.convertekml()"},"14":{titulo:"Grade de pol&iacute;gonos",diretorio:"i3geo/ferramentas/gradepol",categoria:"3",pt:"Cria uma nova camada no mapa contendo ret&acirc;ngulos com espa&ccedil;amento determinado em x e y. A grade gerada pode ser obtida via download. O espa&ccedil;amento &eacute; definido em d&eacute;cimos de grau e as coordenadas do ponto inicial podem ser definida clicando-se no mapa ou digitando-se o valor.",complemento:"A grade &eacute; &uacute;til para a realiza&ccedil;&atilde;o de an&aacute;lises onde deseja-se calcular ocorr&ecirc;ncias de fen&ocirc;menos pontuais e represent&aacute;-los posteriormente com base em totais. Observe que a &aacute;rea e as dist&acirc;ncias reais de cada pol&iacute;gono n&atilde;o s&atilde;o constantes, uma vez que &eacute; utilizada a proje&ccedil;&atilde;o geogr&aacute;fica na sua gera&ccedil;&atilde;o.",apijs:"i3GEO.analise.dialogo.gradePol()"},"15":{titulo:"Grade de pontos",diretorio:"i3geo/ferramentas/gradepontos",categoria:"3",pt:"Cria uma nova camada no mapa contendo pontos com espa&ccedil;amento determinado em x e y. A grade gerada pode ser obtida via download. O espa&ccedil;amento &eacute; definido em d&eacute;cimos de grau e as coordenadas do ponto inicial podem ser definida clicando-se no mapa ou digitando-se o valor.",complemento:"Observe que as dist&acirc;ncias reais entre cada ponto n&atilde;o s&atilde;o constantes, uma vez que &eacute; utilizada a proje&ccedil;&atilde;o geogr&aacute;fica na sua gera&ccedil;&atilde;o.",apijs:"i3GEO.analise.dialogo.gradePontos()"},"16":{titulo:"Grade de hex&aacute;gonos",diretorio:"i3geo/ferramentas/gradehex",categoria:"3",pt:"Cria uma nova camada no mapa contendo hex&aacute;gonos com espa&ccedil;amento determinado em x e y. A grade gerada pode ser obtida via download. O espa&ccedil;amento &eacute; definido em d&eacute;cimos de grau e as coordenadas do ponto inicial podem ser definida clicando-se no mapa ou digitando-se o valor.",complemento:"A grade &eacute; &uacute;til para a realiza&ccedil;&atilde;o de an&aacute;lises onde deseja-se calcular ocorr&ecirc;ncias de fen&ocirc;menos pontuais e represent&aacute;-los posteriormente com base em totais. Observe que a &aacute;rea e as dist&acirc;ncias reais de cada pol&iacute;gono n&atilde;o s&atilde;o constantes, uma vez que &eacute; utilizada a proje&ccedil;&atilde;o geogr&aacute;fica na sua gera&ccedil;&atilde;o.",apijs:"i3GEO.analise.dialogo.gradeHex()"},"17":{titulo:"Dist&acirc;ncia entre pontos",diretorio:"i3geo/ferramentas/distanciaptpt",categoria:"3",pt:"O c&aacute;lculo de dist&acirc;ncias &eacute; feito de um ponto em rela&ccedil;&atilde;o aos mais pr&oacute;ximos. O ponto origem, deve estar selecionado em um dos temas existentes no mapa. Para restringir a dist&acirc;ncia de busca, &eacute; necess&aacute;rio definir um raio m&aacute;ximo, os pontos considerados ser&atilde;o aqueles dentro desse raio. Em cada linha ligando dois pontos s&atilde;o inseridos atributos que indicam a dist&acirc;ncia e o identificador dos pontos. Esses identificadores s&atilde;o escolhidos com base nas colunas de atributos do tema pontual escolhido.",complemento:"O resultado dos c&aacute;lculos s&atilde;o novas camadas inclu&iacute;das no mapa, sendo uma de linhas e uma com o entorno de busca considerado.",apijs:"i3GEO.analise.dialogo.distanciaptpt()"},"18":{titulo:"Ponto em pol&iacute;gono",diretorio:"i3geo/ferramentas/pontoempoligono",categoria:"3",pt:"Ponto em pol&iacute;gono &eacute; uma opera&ccedil;&atilde;o que resulta em um novo tema contendo o cruzamento entre um tema com pontos e outros com pol&iacute;gonos (ou imagem raster). As informa&ccedil;&otilde;es do tema poligonal (ou raster) ser&atilde;o agregadas &agrave; tabela do novo tema pontual gerado. As colunas da tabela de atributos do novo tema gerado ser&atilde;o nomeadas em uma sequ&ecirc;ncia num&eacute;rica, uma vez que o tema original pode ter colunas com nomes incompat&iacute;veis com o formato shapefile, utilizado na gera&ccedil;&atilde;o do novo tema.",complemento:"Pode-se escolher mais de um tema de origem dos dados, possibilitando agregar informa&ccedil;&otilde;es de temas diferentes. Essa op&ccedil;&atilde;o de cruzamento &eacute; &uacute;til nos casos onde a informa&ccedil;&atilde;o necess&aacute;ria para a an&aacute;lise de um tema encontra-se em outro tema. Por exemplo, &eacute; poss&iacute;vel cruzar um tema com a localiza&ccedil;&atilde;o das cidades com um tema com a delimita&ccedil;&atilde;o de biomas. O resultado permite elaborar estat&iacute;sticas por biomas com base nos dados dos pontos.",apijs:"i3GEO.analise.dialogo.pontoempoligono()"},"19":{titulo:"N&uacute;mero de pontos por pol&iacute;gono",diretorio:"i3geo/ferramentas/nptpol",categoria:"3",pt:"Ponto em pol&iacute;gono &eacute; uma opera&ccedil;&atilde;o que resulta em um novo tema contendo o cruzamento entre um tema com pontos e outro com pol&iacute;gono. O resultado &eacute; um novo tema poligonal, cuja tabela de atributos conter&aacute; um item com o total de pontos em cada pol&iacute;gono",complemento:"O uso dessa ferramenta &eacute; indicado nas situa&ccedil;&otilde;es em que se deseja agregar dados de ocorr&ecirc;ncias pontuais em pol&iacute;gonos, possibilitando a visualiza&ccedil;&atilde;o dos dados por meio de t&eacute;cnicas de classifica&ccedil;&atilde;o e representa&ccedil;&atilde;o coropl&eacute;tica.",apijs:"i3GEO.analise.dialogo.nptPol()"},"20":{titulo:"Distribui&ccedil;&atilde;o de pontos",diretorio:"i3geo/ferramentas/pontosdistri",categoria:"3",pt:"Essa op&ccedil;&atilde;o disponibiliza v&aacute;rias ferramentas de an&aacute;lise de distribui&ccedil;&atilde;o de pontos, a maior parte baseia-se no software estat&iacute;stico <a href='www.r-project.org' target=blanck >R</a>. Algumas das an&aacute;lises geram como resultado imagens RASTER e outras temas lineares e poligonais. A op&ccedil;&atilde;o de relat&oacute;rio gera uma nova p&aacute;gina com v&aacute;rios &iacute;ndices calculados com o software R.",complemento:"A imagem RASTER resultante utiliza a resolu&ccedil;&atilde;o (tamanho do pixel) compat&iacute;vel com a escala utilizada no mapa que est&aacute; sendo visto. A representa&ccedil;&atilde;o utiliza, por padr&atilde;o, tons de cinza. A altera&ccedil;&atilde;o nas cores utilizadas na representa&ccedil;&atilde;o podem melhorar de forma significativa a visualiza&ccedil;&atilde;o dos resultados. Utilize a op&ccedil;&atilde;o de edi&ccedil;&atilde;o da legenda do tema para fazer isso. As an&aacute;lises de distribui&ccedil;&atilde;o de pontos s&atilde;o realizadas com o software R. As an&aacute;lises de densidade de pontos, dist&acirc;ncia entre pontos e kernel, foram implantadas utilizando-se a biblioteca <a href='http://cran.r-project.org/web/packages/spatstat' target=blanck >SPATSTAT</a> do R. As an&aacute;lises de Delaunay e Voronoi utilizam a biblioteca <a href='http://cran.r-project.org/web/packages/deldir' target=blanck >DELDIR</a> e a an&aacute;lise de cluster espacial utiliza o <a href='http://cran.r-project.org/web/packages/spatclus' target=blanck >SPATCLUS</a>. As an&aacute;lises podem consumir muito tempo de processamento, portanto, tenha cuidado com o n&uacute;mero de pontos."},"21":{titulo:"Centr&oacute;ide",diretorio:"i3geo/ferramentas/centroide",categoria:"3",pt:"Os centr&oacute;ides s&atilde;o pontos localizados no centro de massa de uma geometria. Para gerar os centr&oacute;ides, voc&ecirc; precisa selecionar alguns elementos de um tema. Utilize para isso a op&ccedil;&atilde;o de sele&ccedil;&atilde;o ou a tabela de atributos do tema desejado.",complemento:"Dependendo da forma de uma geometria, o ponto calculado pode ser posicionado fora do pol&iacute;gono <a href='http://postgis.refractions.net/documentation/manual-svn/ST_Centroid.html' >exemplo</a>.",apijs:"i3GEO.analise.dialogo.centroide()"},"22":{titulo:"Dissolver",diretorio:"i3geo/ferramentas/dissolve",categoria:"3",pt:"Essa ferramenta transforma v&aacute;rios pol&iacute;gonos em um s&oacute; eliminando as divisas entre eles. Para definir quais os pol&iacute;gonos devem ser unidos uns com os outros &eacute; preciso escolher um item da tabela de atributos do tema. Os pol&iacute;gonos que possu&iacute;rem o mesmo valor ser&atilde;o considerados no mesmo grupo e suas divisas eliminadas. Caso n&atilde;o tenha sido escolhido nenhum item, todas os pol&iacute;gonos ser&atilde;o agrupados em um s&oacute;.",complemento:"O resultado final ser&aacute; um novo tema com pol&iacute;gonos diferentes dos originais e cuja tabela de atributos conter&aacute; apenas o item escolhido. Caso as geometrias originais possuam fronteiras n&atilde;o ajustadas exatamente, o resultado pode apresentar pequenos pol&iacute;gonos internos.",apijs:"i3GEO.analise.dialogo.dissolve()"},"23":{titulo:"An&aacute;lise de geometrias",diretorio:"i3geo/ferramentas/analisageometrias",categoria:"3",pt:"Essa ferramenta permite processar elementos constituintes de um ou mais temas por meio de fun&ccedil;&otilde;es que atuam sobre a geometria que define o elemento. Essas fun&ccedil;&otilde;es possibilitam a realiza&ccedil;&atilde;o de c&aacute;lculos, como &aacute;rea e per&iacute;metro, e cruzamentos entre geometrias, como uni&atilde;o e intersec&ccedil;&atilde;o. Para utilizar a ferramenta, deve-se selecionar cada elemento desejado e convert&ecirc;-los em uma geometria ou conjunto de geometrias. Feito isso, as geometrias convertidas podem ser utilizadas nas opera&ccedil;&otilde;es.",complemento:"Para selecionar elementos, utilize as op&ccedil;&otilde;es de sele&ccedil;&atilde;o dispon&iacute;veis no i3Geo ou ent&atilde;o clique no mapa no elemento desejado ap&oacute;s ativar a ferramenta. A sele&ccedil;&atilde;o &eacute; feita sobre o tema escolhido. Para ver as geometrias capturadas, clique na guia 'listar'. Para usar as op&ccedil;&otilde;es de an&aacute;lise, mostradas na guia 'an&aacute;lise', voc&ecirc; deve marcar as geometrias desejadas na guia 'listar'.",apijs:"i3GEO.analise.dialogo.analisaGeometrias()"},"24":{titulo:"Entorno (buffer)",diretorio:"i3geo/ferramentas/buffer",categoria:"3",pt:"O entorno, ou buffer, &eacute; um pol&iacute;gono que circunda um elemento geogr&aacute;fico em uma dist&acirc;ncia fixa. Para o c&aacute;lculo de dist&acirc;ncia o i3Geo utiliza a proje&ccedil;&atilde;o polic&ocirc;nica. Os atributos do tema alvo s&atilde;o copiados para os pol&iacute;gonos resultantes e uma nova camada &eacute; adicionada ao mapa. Opcionalmente, os pol&iacute;gonos resultantes podem ser unidos como um &uacute;nico.",complemento:"Para gerar o entorno, voc&ecirc; precisa selecionar alguns elementos de um tema. Utilize para isso a op&ccedil;&atilde;o de sele&ccedil;&atilde;o ou a tabela de atributos do tema desejado. O buffer pode ser gerado tamb&eacute;m por meio da ferramenta de identifica&ccedil;&atilde;o.",apijs:"i3GEO.analise.dialogo.buffer()"},"25":{titulo:"Agrupa elementos",diretorio:"i3geo/ferramentas/agrupaelementos",categoria:"3",pt:"Essa ferramenta transforma v&aacute;rios elementos selecionados de um tema em um s&oacute; criando pol&iacute;gonos agrupados. Para definir quais elementos devem ser unidos uns com os outros &eacute; preciso escolher um item da tabela de atributos do tema. Os elementos que possu&iacute;rem o mesmo valor nesse item ser&atilde;o considerados no mesmo grupo e suas divisas eliminadas. Caso n&atilde;o tenha sido escolhido nenhum item, todas os elementos ser&atilde;o agrupados em um s&oacute;.",complemento:"O resultado final ser&aacute; um novo tema com pol&iacute;gonos diferentes dos originais e cuja tabela de atributos conter&aacute; apenas o item escolhido.",apijs:"i3GEO.analise.dialogo.agrupaElementos()"},"26":{titulo:"Upload de arquivo DBF ou CSV",diretorio:"i3geo/ferramentas/uploaddbf",categoria:"4",pt:"Utilize essa op&ccedil;&atilde;o para acrescentar um tema baseado nas coordenadas x e y presentes em uma tabela DBF ou arquivo CSV. Os valores de x e y devem utilizar '.' como separador de decimal. Se as coordenadas estiverem na proje&ccedil;&atilde;o geogr&aacute;fica, os valores dever&atilde;o estar em d&eacute;cimos de grau, com sinal negativo para pontos ao sul do equador e oeste do meridiano 0.",complemento:"O arquivo DBF ou CSV ser&aacute; armazenado no servidor onde o i3geo est&aacute; instalado e permanecer&aacute; l&aacute; at&eacute; que os arquivos tempor&aacute;rios sejam apagados. N&atilde;o utilize essa op&ccedil;&atilde;o se existir alguma restri&ccedil;&atilde;o ao uso do arquivo e se a pol&iacute;tica de acesso aos dados, definidas pela entidade que hospeda o i3geo, n&atilde;o for compat&iacute;vel com essas restri&ccedil;&otilde;es.",apijs:"i3GEO.arvoreDeTemas.dialogo.uploaddbf()"},"27":{titulo:"Upload se shapefile",diretorio:"i3geo/ferramentas/upload",categoria:"4",pt:"Permite que um arquivo do tipo shapefile seja enviado ao servidor e inclu&iacute;do no mapa como uma nova camada. O arquivo shapefile ser&aacute; armazenado no servidor onde o i3geo est&aacute; instalado e permanecer&aacute; l&aacute; at&eacute; que os arquivos tempor&aacute;rios sejam apagados. Um shapefile &eacute; composto basicamente por tr&ecirc;s tipos de arquivos (dbf, shp e shx), todos devem ser submetidos",complemento:"N&atilde;o utilize essa op&ccedil;&atilde;o se existir alguma restri&ccedil;&atilde;o ao uso do arquivo e se a pol&iacute;tica de acesso aos dados, definidas pela entidade que hospeda o i3geo, n&atilde;o for compat&iacute;velcom essas restri&ccedil;&otilde;es.",apijs:"i3GEO.arvoreDeTemas.dialogo.upload()"},"28":{titulo:"Conex&atilde;o WMS",diretorio:"i3geo/ferramentas/conectarwms",categoria:"4",pt:"Uma conex&atilde;o WMS permite que dados dispon&iacute;veis em outros servidores sejam inclu&iacute;dos como camadas no i3Geo. Na ferramenta de conex&atilde;o &eacute; mostrada uma lista de endere&ccedil;os previamente cadastrados, mas pode-se digitar um outro endere&ccedil;o qualquer, desde que seja um servi&ccedil;o no padr&atilde;o WMS. Ap&oacute;s um servi&ccedil;o ser escolhido, a lista de camadas dispon&iacute;veis &eacute; mostrada na guia 'Temas'.",complemento:"Camadas obtidas por meio de conex&atilde;o WMS n&atilde;o permitem que algumas opera&ccedil;&otilde;es dispon&iacute;veis no i3Geo sejam executadas, como por exemplo a altera&ccedil;&atilde;o na legenda, sele&ccedil;&atilde;o, entre outras. Quando um servidor apresentar problemas, a camada n&atilde;o poder&aacute; ser adicionada.",apijs:"i3GEO.arvoreDeTemas.conectarwms.upload()"},"29":{titulo:"Conex&atilde;o GeoRSS",diretorio:"i3geo/ferramentas/conectargeorss",categoria:"4",pt:"Uma conex&atilde;o GeoRSS permite obter a localiza&ccedil;&atilde;o de conte&uacute;dos dispon&iacute;veis no formato RSS com coordenadas geogr&aacute;ficas inclu&iacute;das. Na ferramenta de conex&atilde;o &eacute; mostrada uma lista de endere&ccedil;os previamente cadastrados, mas pode-se digitar um outro endere&ccedil;o qualquer, desde que seja um servi&ccedil;o no padr&atilde;o GeoRSS.",complemento:"A camada adicionada ao mapa baseia-se em um arquivo shapefile criado temporariamente pelo i3Geo. Caso o servi&ccedil;o GeoRSS sofrer altera&ccedil;&otilde;es, como a inclus&atilde;o de um novo item, &eacute; necess&aacute;rio fazer novamente a conex&atilde;o para que a camada reflita a altera&ccedil;&atilde;o.",apijs:"i3GEO.arvoreDeTemas.conectargeorss.upload()"},"30":{titulo:"Nuvem de tags",diretorio:"i3geo/ferramentas/nuvemtags",categoria:"4",pt:"A nuvem de tags &eacute; uma forma de localizar camadas dispon&iacute;veis para ser vistas no mapa. A busca &eacute; feita por meio de tags ou palavras-chave. As tags s&atilde;o registradas pelo administrador do i3Geo para cada tema dispon&iacute;vel na &aacute;rvore de temas.",complemento:"Ao escolher uma tag, &eacute; realizada uma busca dos temas correspondentes e o resultado &eacute; adicionado &agrave; arvore de temas. Opcionalmente, o usu&aacute;rio pode escolher navegar na nuvem 'animada' que mostra as tags como um globo 3d.",apijs:"i3GEO.arvoreDeTemas.dialogo.nuvemTags()"},"31":{titulo:"Procurar tema",diretorio:"classe_arvoredetemas.js",categoria:"4",pt:"Localiza temas dispon&iacute;veis nos menus da &aacute;rvore de adi&ccedil;&atilde;o de temas. Os temas localizados s&atilde;o inclu&iacute;dos em um novo n&oacute; da &aacute;rvore, possibilitando sua adi&ccedil;&atilde;o ao mapa.",complemento:"Para procurar um tema, digite a palavra ou frase no campo de texto e clique no &iacute;cone existente no lado direito. O resultado da busca aparecer&aacute; como um n&oacute; na &aacute;rvore de temas do cat&aacute;logo.",apijs:"i3GEO.arvoreDeTemas.buscaTema(palavra)"},"32":{titulo:"Acesso aos arquivos do servidor",diretorio:"classe_arvoredetemas.js",categoria:"4",pt:"Os usu&aacute;rios cadastrados no i3Geo como editores podem acessar arquivos existentes no servidor onde o i3Geo est&aacute; instalado. A navega&ccedil;&atilde;o permite localizar arquivos shapefile para inclus&atilde;o como uma nova camada no mapa.",complemento:"Por motivos de seguran&ccedil;a, apenas os editores podem utilizar essa op&ccedil;&atilde;o. O cadastramento &eacute; feito pelo administrador do i3Geo, por meio da edi&ccedil;&atilde;o do arquivo ms_configura.php.",apijs:"i3GEO.arvoreDeTemas.montaDir(node)"},"33":{titulo:"&Aacute;rvore de endere&ccedil;os WMS",diretorio:"classe_arvoredetemas.js",categoria:"4",pt:"A conex&atilde;o com servi&ccedil;os WMS (OGC) pode ser feita escolhendo-se o servidor e as camadas dispon&iacute;veis diretamente na &aacute;rvore de temas. A lista de endere&ccedil;os utilizada nesse n&oacute; da &aacute;rvore &eacute; a mesma utilizada na op&ccedil;&atilde;o de conex&atilde;o que &eacute; aberta por meio do &iacute;cone 'Conex&atilde;o MWS'. Quando uma camada for encontrada no WMS, &eacute; mostrado um 'box' ao lado do nome da camada, permitindo sua adi&ccedil;&atilde;o ao mapa.",complemento:"A vantagem do uso da &aacute;rvore &eacute; a velocidade de acesso &agrave; lista de camadas, uma vez que o i3Geo faz um 'cache' do arquivo XML gerado com a lista de camadas dispon&iacute;veis. A &aacute;rvore permite ainda a vis&atilde;o correta da hierarquia de camadas configuradas no WMS, que pode ter v&aacute;rios n&iacute;veis. Cada vez que um usu&aacute;rio tenta acessar um WMS o sucesso ou n&atilde;o da conex&atilde;o &eacute; registrado, assim, &eacute; poss&iacute;vel mostrar ao lado de cada endere&ccedil;o o percentual de tentativas de conex&atilde;o v&aacute;lidas.",apijs:"i3GEO.arvoreDeTemas.listaWMS(node)"},"34":{titulo:"Sistemas",diretorio:"classe_arvoredetemas.js",categoria:"4",pt:"O n&oacute; 'Sistemas' da &aacute;rvore de adi&ccedil;&atilde;o de temas, lista aplicativos especiais que precisam de intera&ccedil;&atilde;o com o usu&aacute;rio para a cria&ccedil;&atilde;o de uma camada.",complemento:"Alguns sistemas s&atilde;o fornecidos com a instala&ccedil;&atilde;o padr&atilde;o do i3Geo, mas cada administrador pode criar seus pr&oacute;prios.",apijs:"i3GEO.arvoreDeTemas.listaSistemas(g_sid,g_locaplic,funcao)"},"35":{titulo:"Procurar ocorr&ecirc;ncias",diretorio:"i3geo/ferramentas/busca",categoria:"5",pt:"Cada tema possui um conjunto de dados descritivos associados aos elementos geogr&aacute;ficos (tabela de atributos). A op&ccedil;&atilde;o 'procurar' realiza uma pesquisa nesses atributos e localiza as correspond&ecirc;ncias. O resultado &eacute; mostrado em uma lista de elementos que permite destacar cada um deles.",complemento:"Para fazer a busca deve-se selecionar em quais itens da tabela de atributos a mesma ser&aacute; feita, podendo-se escolher mais de um. A busca pode ser feita no mapa todo ou apenas na regi&atilde;o vis&iacute;vel do mapa.",apijs:"i3GEO.tema.dialogo.procuraratrib()"},"36":{titulo:"Topon&iacute;mia",diretorio:"i3geo/ferramentas/toponimia",categoria:"5",pt:"A topon&iacute;mia s&atilde;o os textos mostrados no mapa que identificam lugares ou elementos que constituem um tema. Os textos s&atilde;o baseados na tabela de atributos de cada tema, que cont&ecirc;m os dados descritivos de cada elemento.",complemento:"Ao inserir uma topon&iacute;mia, um novo tema &eacute; adicionado ao mapa, podendo ser exclu&iacute;do ou movimentado. Dessa forma &eacute; poss&iacute;vel incluir mais de um tema com a topon&iacute;mia. Ao inserir a topon&iacute;mia deve-se escolher o item da tabela de atributos e, caso necess&aacute;rio, pode-se modificar as op&ccedil;&otilde;es padr&atilde;o de simbologia utilizadas nos textos, como fonte, cor, m&aacute;scara, etc. &Eacute; poss&iacute;vel ainda testar as op&ccedil;&otilde;es antes de concluir a inclus&atilde;o da topon&iacute;mia.",apijs:"i3GEO.tema.dialogo.toponimia()"},"37":{titulo:"Etiquetas",diretorio:"i3geo/ferramentas/etiqueta",categoria:"5",pt:"As etiquetas s&atilde;o textos descritivos mostrados no mapa quando o mouse &eacute; estacionado por alguns instantes sobre um elemento ou utilizando a ferramenta etiqueta presente na barra de bot&otilde;es. Cada tema pode ter uma etiqueta ativa, sendo esta baseada em um item da tabela de atributos do tema.",complemento:"Para ver as etiquetas, ative a opera&ccedil;&atilde;o de identifica&ccedil;&atilde;o.",apijs:"i3GEO.tema.dialogo.etiquetas()"},"38":{titulo:"Filtro",diretorio:"i3geo/ferramentas/filtro",categoria:"5",pt:"Filtrar um tema significa definir um crit&eacute;rio para que um determinado elemento seja mostrado. Esse crit&eacute;rio &eacute; baseado nos dados descritivos (tabela de atributos). Um filtro &eacute; uma express&atilde;o que relaciona os itens da tabela de atributos e seus valores, por exemplo, 'UF' = 'SP', onde 'UF' &eacute; o nome da coluna (item) e 'SP' &eacute; o valor. As express&otilde;es podem ser definidas por meio de um 'construtor' (guia default da ferramenta) ou digitando-se diretamente a express&atilde;o. Veja <a href='http://mapserver.org/mapfile/expressions.html#mapserver-expressions' >como</a>.",complemento:"Cada tema pode ter apenas um filtro. O filtro apenas deixa de mostrar os dados no mapa, ou seja, os dados continuam na tabela de atributos. Antes de aplicar um filtro, pode-se test&aacute;-lo para verificar seu efeito. O construtor de express&otilde;es permite a utiliza&ccedil;&atilde;o de mais de uma coluna, para isso, deve-se adicionar novas linhas e escolher um conector, como 'e' ou 'ou'. Por exemplo, em um tema com os munic&iacute;pios pode-se mostrar apenas aqueles de determinados estados escolhendo-se 'colun' = 'valor' 'e' 'coluna' = 'valor'.",apijs:"i3GEO.tema.dialogo.filtro()"},"39":{titulo:"Tabela",diretorio:"i3geo/ferramentas/tabela",categoria:"5",pt:"Cada tema possui informa&ccedil;&otilde;es descritivas associadas a cada elemento, esses dados s&atilde;o conhecidos como 'tabela de atributos'. Essa op&ccedil;&atilde;o mostra os dados existentes na tabela e permite a realiza&ccedil;&atilde;o de uma s&eacute;rie de opera&ccedil;&otilde;es diretamente sobre os registros existentes, como por exemplo, sele&ccedil;&atilde;o, zoom, relat&oacute;rios e gr&aacute;ficos.",complemento:"Como o n&uacute;mero de registros de um tema pode ser grande, os dados s&atilde;o mostrados em p&aacute;ginas. Ao lado de cada registro existe uma caixa que permite marcar os registros. Os registros marcados s&atilde;o mostrados na guia 'Marcados'. As opera&ccedil;&otilde;es dispon&iacute;veis nessa ferramenta atuam sobre todos os elementos da tabela ou sobre os selecinados. Para selecionar os elementos marcados, utilize a op&ccedil;&atilde;o 'Ativa sele&ccedil;&atilde;o' na guia 'Marcados'.",apijs:"i3GEO.tema.dialogo.tabela()"},"40":{titulo:"Gr&aacute;ficos",diretorio:"i3geo/ferramentas/graficotema",categoria:"5",pt:"Permite inserir gr&aacute;ficos em cada elemento que comp&otilde;e uma camada para representar valores associados. Para a montagem de cada gr&aacute;fico &eacute; necess&aacute;rio selecionar um tema que contenha os dados que ser&atilde;o representados. Os dados s&atilde;o aqueles que encontram-se na tabela de atributos do tema.",complemento:"Ap&oacute;s selecionado o tema, &eacute; mostrada uma lista com os itens existentes na tabela de atributos. Escolha os itens que ser&atilde;o utilizados no gr&aacute;fico clicando no box que aparece na lista de itens. Cada item ir&aacute; compor uma fatia do gr&aacute;fico. Ao lado do item, &eacute; mostrada a cor que ser&aacute; utilizada na representa&ccedil;&atilde;o. Cada cor &eacute; definida em RGB. Na guia 'propriedades' &eacute; poss&iacute;vel definir propriedades de representa&ccedil;&atilde;o de cada gr&aacute;fico. As defini&ccedil;&otilde;es afetar&atilde;o a forma de cada gr&aacute;fico. Cada gr&aacute;fico adicionado &eacute; inclu&iacute;do no mapa como um novo tema.",apijs:"i3GEO.tema.dialogo.graficotema()"},"41":{titulo:"Editor de legenda",diretorio:"i3geo/ferramentas/legenda",categoria:"5",pt:"A legenda de um tema consiste nas defini&ccedil;&otilde;es dos s&iacute;mbolos utilizados na representa&ccedil;&atilde;o de cada elemento. Al&eacute;m dos s&iacute;mbolos, uma das propriedades da legenda &eacute; o tipo de classifica&ccedil;&atilde;o utilizado na representa&ccedil;&atilde;o dos dados, por exemplo, pode-se mostrar todos os elementos com um &uacute;nico s&iacute;mbolo ou agrupar elementos e utilizar s&iacute;mbolos diferentes para cada grupo. No editor, a guia 'Classes' permite definir a classifica&ccedil;&atilde;o e na guia principal s&atilde;o mostrados os s&iacute;mbolos. Quando um s&iacute;mbolo &eacute; clicado, &eacute; ativada a guia que permite definir as caracter&iacute;sticas do s&iacute;mbolo.",complemento:"As classes s&atilde;o definidas por meio de express&otilde;es que definem um tipo de filtro que ser&aacute; usado para definir que elementos fazem parte de cada classe. O editor possui alguns m&eacute;todos para defini&ccedil;&atilde;o autom&aacute;tica das classes, mas pode-se incluir classes livremente digitando-se o filtro. Veja <a href='http://mapserver.org/mapfile/class.html' >como</a>.",apijs:"i3GEO.tema.dialogo.editaLegenda()"},"42":{titulo:"Opacidade",diretorio:"i3geo/classesjs/classe_tema.js",categoria:"5",pt:"Essa op&ccedil;&atilde;o modifica a opacidade de um tema permitindo ajustar a visibilidade dos elementos em rela&ccedil;&atilde;o aos outros temas. A opacidade varia de 0 a 100, sendo 100 o mais opaco.",complemento:"",apijs:"i3GEO.tema.mudatransp(idtema)"},"43":{titulo:"Altera nome",diretorio:"i3geo/classesjs/classe_tema.js",categoria:"5",pt:"Essa op&ccedil;&atilde;o permite alterar o nome do tema. O novo nome ser&aacute; mostrado no mapa e tamb&eacute;m na legenda.",complemento:"",apijs:"i3GEO.tema.mudanome(idtema)"},"44":{titulo:"Mostrar em janela",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"5",pt:"Inclui um ret&acirc;ngulo na tela que segue a movimenta&ccedil;&atilde;o do mouse e mostra o tema escolhido. Possibilita destacar a visualiza&ccedil;&atilde;o de uma camada sobre as outras.",complemento:"",apijs:"i3GEO.navega.destacaTema.inicia()"},"45":{titulo:"Zoom para o tema",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"5",pt:"Ajusta a visualiza&ccedil;&atilde;o do mapa alterando a extens&atilde;o geogr&aacute;fica para mostrar todos os componentes de um determinado tema.",complemento:"Essa op&ccedil;&atilde;o &eacute; mostrada como um pequeno &iacute;cone localizado logo abaixo de um tema na &aacute;rvore de temas.",apijs:"i3GEO.tema.zoom(idtema)"},"46":{titulo:"Farol indicativo de escala",diretorio:"",categoria:"5",pt:"Identifica se o tema possu&iacute; uma escala compat&iacute;vel ou n&atilde;o com a escala do mapa. O farol &eacute; um &iacute;cone com cores que variam entre verde, amarelo e vermelho, conforme a escala do mapa atual. A compatibilidade da escala &eacute; definida em fun&ccedil;&atilde;o da escala da fonte dos dados cartogr&aacute;ficos utilizada pelo tema.",complemento:"Essa op&ccedil;&atilde;o &eacute; mostrada como um pequeno &iacute;cone localizado logo abaixo de um tema na &aacute;rvore de camadas."},"47":{titulo:"Alterar ordem de desenho",diretorio:"i3geo/classesjs/classe_tema.js",categoria:"5",pt:"Os temas dispon&iacute;veis no mapa s&atilde;o desenhados como camadas que se sobrep&otilde;em para compor o mapa. Como uma pilha, as camadas seguem uma ordem de desenho, sendo que na lista de temas o primeiro que &eacute; mostrado &eacute; o &uacute;ltimo desenhado. A ordem da pilha pode ser alterada clicando-se e arrastando um tema (clicando no nome do tema) ou por meio de &iacute;cones que movem para cima ou para baixo apenas uma posi&ccedil;&atilde;o.",complemento:"Quando um novo tema &eacute; adicionado ao mapa, o i3Geo ir&aacute; posicion&aacute;-lo procurando evitar alguns tipos de sobreposi&ccedil;&atilde;o. Temas RASTER ou poligonais s&atilde;o sempre inseridos abaixo dos temas lineares e pontuais.",apijs:"i3GEO.tema.sobe(idtema) ou i3GEO.tema.desce(idtema)"},"48":{titulo:"Excluir tema",diretorio:"i3geo/classesjs/classe_tema.js",categoria:"5",pt:"Exclui um tema da lista de temas dispon&iacute;veis no mapa atual. A exclus&atilde;o pode ser feita arrastando-se o tema para o &iacute;cone da 'lixeira' ou ent&atilde;o por meio de um &iacute;cone mostrado abaixo de cada tema.",complemento:"Temas locais criados pelo usu&aacute;rio n&atilde;o podem ser recuperados ap&oacute;s uma exclus&atilde;o. J&aacute; os temas que constam na lista '+Temas' poder&atilde;o ser adicionados ao mapa novamente.",apijs:"i3GEO.tema.exclui(idtema)"},"48a":{titulo:"Selecionar elementos",diretorio:"i3geo/ferramentas/selecao.js",categoria:"5",pt:"Selecionar elementos consiste em destacar um sub-conjunto do conjunto total de componentes de um tema. Algumas opera&ccedil;&otilde;es do i3Geo atuam sobre o conjunto selecionado, como buffer, exporta&ccedil;&atilde;o, etc. Os elementos selecionados s&atilde;o mostrados em uma cor especial, diferente daquela definida na legenda do tema. Os temas que possuem elementos selecionados s&atilde;o marcados com um &iacute;cone circular mostrado junto ao nome na lista de camadas. A janela de op&ccedil;&otilde;es para sele&ccedil;&atilde;o, al&eacute;m das op&ccedil;&otilde;es de tipo de opera&ccedil;&atilde;o, permite gerar gr&aacute;ficos din&acirc;micos e criar um novo tema com base nos elementos selecionados.",complemento:"Existem v&aacute;rias maneiras de fazer a sele&ccedil;&atilde;o: clicando-se sobre cada elemento, desenhando-se um ret&acirc;ngulo ou pol&iacute;gono no mapa, definindo-se uma express&atilde;o que ir&aacute; buscar os elementos aderentes (com base na tabela de atributos) ou cruzando-se um tema com outro. Tendo-se um conjunto j&aacute; definido, novos elementos podem ser acrescentados ou retirados da sele&ccedil;&atilde;o.",apijs:"i3GEO.selecao.janelaOpcoes()"},"49":{titulo:"Impress&atilde;o",diretorio:"i3geo/ferramentas/imprimir",categoria:"6",pt:"Utilize essa op&ccedil;&atilde;o para gerar uma p&aacute;gina espec&iacute;fica para impress&atilde;o do mapa. Na janela de op&ccedil;&otilde;es deve-se escolher o tipo de p&aacute;gina desejada, que pode variar desde p&aacute;ginas padronizadas em PDF at&eacute; aplicativos onde o mapa &eacute; montado de forma interativa.",complemento:"",apijs:"i3GEO.configura.funcoesBotoes"},"50":{titulo:"C&aacute;lculo de dist&acirc;ncias",diretorio:"i3geo/classesjs/classe_analise.js",categoria:"6",pt:"Ativa o modo de c&aacute;lculo de dist&acirc;ncias, permitindo que a cada clique do mouse sobre o mapa seja feito o c&aacute;lculo da dist&acirc;ncia em rela&ccedil;&atilde;o ao ponto anterior e em rela&ccedil;&atilde;o a todos os pontos clicados. O resultado &eacute; mostrado em uma janela aberta sobre o mapa. Em cada ponto &eacute; tamb&eacute;m desenhado um c&iacute;rculo representando a dist&acirc;ncia at&eacute; o &uacute;ltimo ponto.",complemento:"O c&aacute;lculo de dist&acirc;ncia &eacute; aproximado e depende da escala do mapa (quanto mais detalhado o mapa melhor). A f&oacute;rmula de c&aacute;lculo &eacute; baseada em <a href='http://www.movable-type.co.uk/scripts/latlong.html' >http://www.movable-type.co.uk/scripts/latlong.html</a>. Para parar o c&aacute;lculo basta clicar sobre um dos pontos j&aacute; inseridos.",apijs:"i3GEO.configura.funcoesBotoes"},"51":{titulo:"C&aacute;lculo de &aacute;rea",diretorio:"i3geo/classesjs/classe_analise.js",categoria:"6",pt:"Ativa o modo de c&aacute;lculo de &aacute;rea, permitindo que seja desenhado um pol&iacute;gono sobre o mapa para c&aacute;lculo da &aacute;rea. O pol&iacute;gono &eacute; criado clicando-se no mapa no local onde se quer criar um v&eacute;rtice.",complemento:"O c&aacute;lculo de dist&acirc;ncia &eacute; aproximado e depende da escala do mapa (quanto mais detalhado o mapa melhor). O c&aacute;lculo &eacute; baseado no tamanho do pixel do mapa, calculado ao iniciar a ferramenta. Esse c&aacute;lculo baseia-se na proje&ccedil;&atilde;o polic&ocirc;nica com par&acirc;metros definidos em fun&ccedil;&atilde;o da extens&atilde;o geogr&aacute;fica do mapa atual.",apijs:"i3GEO.configura.funcoesBotoes"},"52":{titulo:"Alterar interface",diretorio:"i3geo/classesjs/classe_interface.js",categoria:"6",pt:"O i3Geo pode usar diferentes interfaces para manipular a navega&ccedil;&atilde;o sobre o mapa. Por padr&atilde;o, &eacute; utilizada uma interface pr&oacute;pria, desenvolvida para o i3Geo, mas pode-se optar pelo uso do OpenLayers, Google Maps ou Google Earth.",complemento:"As funcionalidade do i3Geo s&atilde;o afetadas pela interface escolhida, sendo que algumas opera&ccedil;&otilde;es diferem de uma para outra. A maior parte das funcionalidades s&atilde;o implementadas apenas na interface padr&atilde;o. No caso do Google Earth , que permite a visualiza&ccedil;&atilde;o do mapa em 3d, &eacute; necess&aacute;rio a instala&ccedil;&atilde;o de um plugin espec&iacute;fico.",apijs:"i3GEO.configura.oMenuData"},"55":{titulo:"Extens&atilde;o geogr&aacute;fica",diretorio:"i3geo/ferramentas/mostraexten",categoria:"7",pt:"A extens&atilde;o geogr&aacute;fica &eacute; a abrang&ecirc;ncia espacial do mapa definido por meio de uma lista de coordenadas em d&eacute;cimos de grau e na ordem menor longitude, menor latitude, maior longitude, maior latitude. A extens&atilde;o geogr&aacute;fica do mapa pode ser alterada digitando-se novas coordenadas por meio dessa ferramenta.",complemento:"O resultado final do mapa quando se altera a extens&atilde;o pode n&atilde;o corresponder as espectativas, uma vez que o mapa &eacute; um ret&acirc;ngulo cujas propor&ccedil;&otilde;es podem n&atilde;o ser compat&iacute;veis com as coordenadas digitadas.",apijs:"i3GEO.mapa.dialogo.mostraExten"},"56":{titulo:"Deslocamento do mapa - PAN",diretorio:"",categoria:"7",pt:"O deslocamento do mapa do tipo PAN &eacute; realizado de forma interativa, deve-se clicar em um ponto do mapa e arrastar o mouse para a nova posi&ccedil;&atilde;o. O resultado &eacute; o deslocamento da extens&atilde;o geogr&aacute;fica do mapa movendo-se o ponto inicial at&eacute; o segundo ponto.",complemento:"Caso o primeiro ponto seja muito pr&oacute;ximo do segundo, ou se o usu&aacute;rio clicar e soltar o mouse, o ponto clicado &eacute; movido para o centro do mapa.",apijs:""},"57":{titulo:"Deslocamento direcional",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"7",pt:"O deslocamento direcional movimenta o mapa para o norte, sul, leste ou oeste uma dist&acirc;ncia fixa.",complemento:"Essa forma de deslocamento exige que o usu&aacute;rio clique apenas uma vez em um bot&atilde;o para realizar o deslocamento.",apijs:"i3GEO.navega.panFixo(locaplic,sid,direcao,w,h,escala)"},"58":{titulo:"Rosa dos ventos",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"7",pt:"A rosa dos ventos &eacute; uma imagem mostrada na posi&ccedil;&atilde;o atual do mouse e que possibilita deslocar, aproximar ou afastar o mapa. A rosa aparece quando o mouse &eacute; estacionado por alguns instantes sobre o mapa e permite movimentar o mapa sem a necessidade de abandonar a ferramenta escolhida no momento.",complemento:"A rosa dos ventos &eacute; opcional e por padr&atilde;o n&atilde;o fica habilitada.",apijs:"i3GEO.navega.mostraRosaDosVentos() e i3GEO.eventos.MOUSEPARADO"},"59":{titulo:"Aproximar",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"7",pt:"Aproxima o mapa tendo como refer&ecirc;ncia o ponto central. A aproxima&ccedil;&atilde;o ocorre por um fator fixo, modificando a escala atual.",complemento:"",apijs:"i3GEO.navega.zoomin()"},"60":{titulo:"Afastar",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"7",pt:"Afasta o mapa tendo como refer&ecirc;ncia o ponto central. O afastamento ocorre por um fator fixo, modificando a escala atual.",complemento:"",apijs:"i3GEO.navega.zoomout()"},"61":{titulo:"Aproximar regi&atilde;o",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"7",pt:"Ao ativar essa op&ccedil;&atilde;o deve-se desenhar um ret&acirc;ngulo sobre o mapa abrangendo a regi&atilde;o que se quer enquadrar a &aacute;rea de visualiza&ccedil;&atilde;o. O resultado &eacute; a aproxima&ccedil;&atilde;o do mapa em uma determinada regi&atilde;o.",complemento:"Para desenhar o ret&acirc;ngulo deve-se clicar em um ponto do mapa e arrastar o mouse. A medida que isso ocorre, &eacute; desenhado um ret&acirc;ngulo sobre o mapa.",apijs:"i3GEO.navega.zoomBox"},"62":{titulo:"Definir escala",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"7",pt:"A altera&ccedil;&atilde;o da escala do mapa &eacute; uma das formas de aproximar ou afastar a visualiza&ccedil;&atilde;o. Nessa op&ccedil;&atilde;o, para alterar a escala deve-se digitar o novo valor do denominador da escala que ser&aacute; aplicado.",complemento:"",apijs:"i3GEO.navega.aplicaEscala(locaplic,sid,escala)"},"63":{titulo:"Centralizar em um ponto",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"7",pt:"Essa op&ccedil;&atilde;o desloca o centro do mapa atual para um determinado ponto com coordenadas conhecidas. A escala do mapa n&atilde;o &eacute; alterada.",complemento:"Para usar essa opera&ccedil;&atilde;o, digite as coordenadas desejadas nos campos de formul&aacute;rio utilizados para mostrar a coordenada geogr&aacute;fica atual do mouse.",apijs:"i3GEO.navega.zoomponto(locaplic,sid,x,y)"},"64":{titulo:"Aproximar ou afastar din&acirc;mico",diretorio:"i3geo/classesjs/classe_barradebotoes.js",categoria:"7",pt:"A opera&ccedil;&atilde;o de zoom din&acirc;mico permite afastar ou aproximar o mapa por meio de um controle deslizante. O usu&aacute;rio move um controle para cima ou para baixo e ao soltar o mouse o mapa &eacute; modificado.",complemento:"",apijs:"i3GEO.barraDeBotoes.ativaBarraDeZoom()"},"65":{titulo:"Zoom pr&oacute;ximo ou anterior",diretorio:"i3geo/classesjs/classe_gadgets.js",categoria:"7",pt:"Ao navegar pelo mapa as posi&ccedil;&otilde;es obtidas s&atilde;o armazenadas em mem&oacute;ria. Essa op&ccedil;&atilde;o permite reestabelecer a abrang&ecirc;ncia espacial anterior ou posterior, se houver, de forma sequencial.",complemento:"Essa opera&ccedil;&atilde;o n&atilde;o restaura a situa&ccedil;&atilde;o do mapa apenas modifica a abrang&ecirc;ncia espacial com base nos temas vis&iacute;veis no mapa atual.",apijs:"i3GEO.gadgets.mostraHistoricoZoom(id)"},"66":{titulo:"Mapa de refer&ecirc;ncia",diretorio:"i3geo/classesjs/classe_maparef.js",categoria:"7",pt:"O mapa de refer&ecirc;ncia consiste em uma imagem com escala diferente do corpo do mapa atual, permitindo que a abrang&ecirc;ncia geogr&aacute;fica atual seja mostrada em um contexto mais amplo. A navega&ccedil;&atilde;o pode ser feito sobre o mapa de refer&ecirc;ncia, deslocando-se o ret&acirc;ngulo que mostra a abrang&ecirc;ncia atual para um outro local.",complemento:"O mapa de refer&ecirc;ncia pode ser fixo ou n&atilde;o. O mapa de refer&ecirc;ncia din&acirc;mico pode ser montado tendo como base as camadas vistas no mapa atual. Nesse caso, a topon&iacute;mia especificada e a simbologia podem gerar mapas com pouca visibilidade.",apijs:"i3GEO.maparef"},"67":{titulo:"Extens&atilde;o total",diretorio:"",categoria:"7",pt:"Ao iniciar o mapa, a primeira extens&atilde;o geogr&aacute;fica utilizada para mostrar o mapa &eacute; armazenada em mem&oacute;ria. Essa op&ccedil;&atilde;o permite aplicar essa extens&atilde;o ao mapa atual, restaurando a abrang&ecirc;ncia geogr&aacute;fica inicial.",complemento:"A aplica&ccedil;&atilde;o da extens&atilde;o total n&atilde;o restaura a situa&ccedil;&atilde;o inicial de camadas ligadas e desligadas, mantendo a situa&ccedil;&atilde;o do mapa atual.",apijs:""},"68":{titulo:"Google Maps",diretorio:"i3geo/ferramentas/googlemaps",categoria:"7",pt:"Essa op&ccedil;&atilde;o mostra em uma janela interna o mapa produzido pelo Google Maps. A janela &eacute; sincronizada com o mapa mostrado no i3Geo, permitindo que a navega&ccedil;&atilde;o em um ou noutro modifique os dois mapas.",complemento:"Al&eacute;m das op&ccedil;&otilde;es de tipo de mapa &eacute; poss&iacute;vel tra&ccedil;ar rotas no Google Maps e mostrar nessa janela o mapa visto no i3Geo. Ao tra&ccedil;ar uma rota, o resultado &eacute; inclu&iacute;do no i3Geo como uma nova camada, que pode inclusive ser obtida via download. Quando o mapa do i3Geo &eacute; inclu&iacute;do no mapa do Google, os pol&iacute;gonos com s&iacute;mbolos n&atilde;o transparentes podem encubrir o mapa, nesse caso, altere a legenda das camadas para permitir a visualiza&ccedil;&atilde;o correta.",apijs:"i3GEO.configura.funcoesBotoes a chave de acesso da API do Google Maps &eacute; definida em ms_configura.php"},"69":{titulo:"Visualiza&ccedil;&atilde;o 3d",diretorio:"i3geo/ferramentas/3d",categoria:"7",pt:"A visualiza&ccedil;&atilde;o em 3d gera um arquivo no formato 'wrl' considerando a abrang&ecirc;ncia espacial do mapa atual. Para a gera&ccedil;&atilde;o do modelo &eacute; utilizado um mapa de fundo com a representa&ccedil;&atilde;o da altimetria, esse mapa &eacute; obtido por meio de um servi&ccedil;o WMS baseado nos dados SRTM.",complemento:"Para ver o modelo 3d &eacute; necess&aacute;rio a instala&ccedil;&atilde;o de um plugin no navegador, ou ent&atilde;o, deve-se salvar o arquivo para visualiza&ccedil;&atilde;o em algum outro software. O modelo 3d &eacute; simplificado, permitindo apenas a navega&ccedil;&atilde;o b&aacute;sica.",apijs:"i3GEO.configura.funcoesBotoes"},"70":{titulo:"Identificar",diretorio:"i3geo/ferramentas/identifica",categoria:"8",pt:"Com essa ferramenta ativa pode-se clicar em um elemento do mapa e visualizar os atributos associados. Quando a janela &eacute; aberta, deve-se escolher o tema que ser&aacute; identificado em uma lista. Al&eacute;m dos temas, s&atilde;o mostrados alguns sistemas especiais que permitem a busca de dados em fun&ccedil;&atilde;o da coordenada clicada, por exemplo, &eacute; poss&iacute;vel abrir uma p&aacute;gina do IBGE com informa&ccedil;&otilde;es sobre munic&iacute;pios.",complemento:"Alguns temas permitem a identifica&ccedil;&atilde;o sem o clique no mapa, os dados s&atilde;o mostrados quando o mouse &eacute; estacionado sobre um ponto no mapa. Em 'Buscadores web' &eacute; mostrada uma lista de sistemas que permitem a busca de dados por meio de coordenadas. A guia propriedades permite definir a toler&acirc;ncia de busca, ou seja, quantos pixels ser&atilde;o considerados entorno do ponto clicado.",apijs:"i3GEO.configura.funcoesBotoes"},"71":{titulo:"Busca r&aacute;pida",diretorio:"i3geo/ferramentas/buscarapida",categoria:"8",pt:"Essa op&ccedil;&atilde;o permite localizar dados com base em palavras ou frases, por exemplo 'S&atilde;o Paulo'. A busca &eacute; feita nos temas do mapa ou em um Web Service cujo banco de dados pode variar em cada instala&ccedil;&atilde;o do i3Geo. Quando um lugar &eacute; encontrado, uma nova janela &eacute; mostrada na tela com o resultado. Clicando-se nos links dispon&iacute;veis, o mapa &eacute; deslocado para o lugar definido e uma nova camada &eacute; adicionada ao mapa.",complemento:"A busca &eacute; feita tamb&eacute;m no Web Service do Google, permitindo a localiza&ccedil;&atilde;o de endere&ccedil;os. Utilize as propriedades para definir se a busca ser&aacute; feita ou n&atilde;o nos temas existentes no mapa. Apenas os temas que tiverem sido preparados pelo administrador do i3Geo pode ser pesquisado.",apijs:"i3GEO.gadgets.mostraBuscaRapida(id)",gadget:"ferramentas/buscarapida/gadget.php?palavra=tanabi&locaplic=../../../i3geo"},"72":{titulo:"Localizar IP",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"8",pt:"Ao clicar nesse &iacute;cone &eacute; mostrado um ponto no mapa identificando a coordenada geogr&aacute;fica da localiza&ccedil;&atilde;o do usu&aacute;rio.",complemento:"Essa fun&ccedil;&atilde;o &eacute; baseada em uma tabela de correspond&ecirc;ncia entre o n&uacute;mero IP e localidades. A localiza&ccedil;&atilde;o ser&aacute; mais precisa quanto for essa tabela de correspond&ecirc;ncia.",apijs:"i3GEO.navega.zoomIP()"},"73":{titulo:"Wikipedia",diretorio:"i3geo/ferramentas/wiki",categoria:"8",pt:"A <a href='http://pt.wikipedia.org/wiki/P%C3%A1gina_principal' target='_blank' >Wikipedia</a> &eacute; uma base de conhecimento livre. Alguns dos artigos existentes s&atilde;o georreferenciados, permitindo sua busca por regi&atilde;o geogr&aacute;fica. Essa ferramenta abre uma janela sobre o mapa procurando resultados na Wikipedia para a regi&atilde;o de abrang&ecirc;ncia do mapa.",complemento:"Para maior performance, o mapa deve estar na escala 1:500.000 ou maior. Ao navegar no mapa, a lista de lugares &eacute; atualizada.",apijs:"i3GEO.configura"},"74":{titulo:"Localizar fotos",diretorio:"i3geo/ferramentas/buscafotos",categoria:"8",pt:"Existem v&aacute;rios servi&ccedil;os na Internet que permitem cadastrar e visualizar fotos georreferenciadas. Essa ferramenta procura fotos para a regi&atilde;o de abrang&ecirc;ncia do mapa nos servi&ccedil;os Panor&acirc;mio, Flicker e Locr.",complemento:"Para maior performance, o mapa deve estar na escala 1:150.000 ou maior.Ao passar o mouse sobre a foto, a sua localiza&ccedil;&atilde;o &eacute; mostrada no mapa.",apijs:"i3GEO.configura"},"75":{titulo:"Conflu&ecirc;ncias",diretorio:"i3geo/ferramentas/confluence",categoria:"8",pt:"O projeto 'Confluences' registra expedi&ccedil;&otilde;es aos lugares na terra cuja coordenada geogr&aacute;fica corresponde ao cruzamento de 1 grau por 1 grau. Essa ferramenta permite localizar as conflu&ecirc;ncias no mapa que est&aacute; sendo visto e abrir a p&aacute;gina correspondente.",complemento:"O mapa deve estar pelo menos na escala 1:2.000.000 para que as conflu&ecirc;ncias sejam mostradas.",apijs:"i3GEO.navega.dialogo.confluence"},"76":{titulo:"Conex&atilde;o WMS-T",diretorio:"i3geo/ferramentas/wmstime",categoria:"4",pt:"Uma conex&atilde;o WMS-T permite que dados dispon&iacute;veis em outros servidores sejam inclu&iacute;dos como camadas no i3Geo. Na ferramenta de conex&atilde;o &eacute; mostrada uma lista de endere&ccedil;os previamente cadastrados, mas pode-se digitar um outro endere&ccedil;o qualquer, desde que seja um servi&ccedil;o no padr&atilde;o WMS-T. Ap&oacute;s ser escolhido o servi&ccedil;o, deve-se definir o per&iacute;odo das imagens e o intervalo desejado (di&aacute;rio, mensal ou anual).",complemento:"Ap&oacute;s definido o per&iacute;odo, a ferramenta far&aacute; a busca das imagens para sua apresenta&ccedil;&atilde;o em sequ&ecirc;ncia. Ao parar a anima&ccedil;&atilde;o, a imagem mostrada poder&aacute; ser acrescentada ao mapa como uma nova camada. A visualiza&ccedil;&atilde;o das imagens s&oacute; &eacute; poss&iacute;vel ap&oacute;s a carga de todas as datas selecionadas. Caso seja necess&aacute;rio cancelar a carga de uma ou mais datas, deve-se clicar em 'parar' na lista de imagens que est&atilde;o sendo carregadas.",apijs:"i3GEO.arvoreDeTemas"},"78":{titulo:"Zoom para a sele&ccedil;&atilde;o",diretorio:"i3geo/classesjs/classe_tema.js",categoria:"5",pt:"Ajusta a extens&atilde;o geogr&aacute;fica do mapa tendo como base os elementos selecionados de um tema.",complemento:"Essa op&ccedil;&atilde;o &eacute; mostrada como um pequeno &iacute;cone, localizado ao lado do nome do tema, quando este possuir sele&ccedil;&atilde;o.",apijs:"i3GEO.tema.zoomsel(idtema)"},"79":{titulo:"Exporta SLD",diretorio:"i3geo/classesjs/classe_tema.js",categoria:"5",pt:"Exporta a legenda atual do tema para o formato SLD. O XML &eacute; mostrado na tela.",complemento:"O formato SLD &eacute; utilizado em clientes WMS. Essa fun&ccedil;&atilde;o objetiva auxiliar a constru&ccedil;&atilde;o de web Services OGC.",apijs:"i3GEO.tema.dialogo.sld(idtema) Esta op&ccedil;&atilde;o n&atilde;o possu&iacute; um diret&oacute;rio em i3geo/ferramentas. O XML &eacute; gerado diretamente na tela pelo programa classesphp/mapa_controle.php"},"80":{titulo:"Inserir gr&aacute;fico interativamente",diretorio:"i3geo/ferramentas/inseregrafico",categoria:"5",pt:"Insere gr&aacute;ficos em um elemento de um tema de forma interativa.",complemento:"Para inserir gr&aacute;ficos no mapa, &eacute; necess&aacute;rio escolher os atributos do tema que ser&atilde;o considerados para a gera&ccedil;&atilde;o do gr&aacute;fico. Feito isso, clique sobre um elemento do tema utilizado e o gr&aacute;fico ser&aacute; inserido no mapa na forma de um novo tema.",apijs:"i3GEO.mapa.dialogo.cliqueGrafico()"},"81":{titulo:"Converter tema em KML",diretorio:"i3geo/ferramentas/convertekml",categoria:"5",pt:"Convertendo um tema em KML &eacute; poss&iacute;vel utilizar outros softwares para visualizar os dados. O i3Geo permite isso de duas maneiras, a primeira utiliza um WMS embutido dentro de um KML, ou seja, os dados s&atilde;o vistos como uma imagem raster georreferenciada, sendo que as coordenadas e atributos n&atilde;o s&atilde;o acess&iacute;veis diretamente.Dessa forma, grandes volumes de dados podem ser utilizados, pois n&atilde;o ocorre o download dos arquivos.<p>A segunda maneira converte os dados de um tema em arquivos KML compactados contendo as coordenadas e atributos dos elementos que comp&otilde;em o tema.",complemento:"KML &eacute; um padr&atilde;o internacional e n&atilde;o &eacute; espec&iacute;fico do i3Geo. Conforme as caracter&iacute;sticas de cada servidor onde o i3Geo estiver instalado, o KML poder&aacute; permanecer dispon&iacute;vel por per&iacute;odos de tempo vari&aacute;veis. Para usar o KML no Google Earth, utilize a op&ccedil;&atilde;o desse software chamada 'adicionar link de rede'",apijs:"i3GEO.mapa.dialogo.convertekml()"},"82":{titulo:"Download",diretorio:"i3geo/ferramentas/download",categoria:"2",pt:"Permite o download de um tema escolhido. No caso de dados vetoriais derivados de outros temas ou camadas com elementos selecionados, os dados s&atilde;o sempre fornecidos no formato 'shapefile'. Nos outros casos, o arquivo fornecido depender&aacute; da configura&ccedil;&atilde;o de cada camada, mas, por padr&atilde;o, os dados s&atilde;o fornecidos em 'shapefile'",complemento:"",apijs:"i3GEO.tema.dialogo.download()"},"83":{titulo:"Inserir texto interativamente",diretorio:"i3geo/ferramentas/inseretxt",categoria:"5",pt:"Insere textos em local do mapa de forma interativa.",complemento:"Voc&ecirc; pode inserir um texto espec&iacute;fico no mapa simplesmente digitando o texto na janela da ferramenta e clicando no local desejado no mapa, ou ainda utilizar os atributos de uma camada para capturar o texto da regi&atilde;o clicada.",apijs:"i3GEO.mapa.dialogo.cliqueTexto()"},"84":{titulo:"Gr&aacute;fico interativo",diretorio:"i3geo/ferramentas/graficointerativo1",categoria:"3",pt:"Gerador de representa&ccedil;&atilde;o gr&aacute;fica de dados tabulares. Abre uma janela flutuante onde o usu&aacute;rio pode escolher os dados e o tipo de gr&aacute;fico desejado. Os dados s&atilde;o baseados em um dos temas existentes no mapa.",complemento:"Existem v&aacute;rias op&ccedil;&otilde;es de tratamento dos dados que permitem, por exemplo, mostrar os percentuais ou os dados brutos. Pode-se ainda ativar a navega&ccedil;&atilde;o din&acirc;mica, o que permite atualizar o gr&aacute;fico conforme &eacute; feita a navega&ccedil;&atilde;o sobre o mapa.",apijs:"i3GEO.analise.dialogo.graficoInterativo1()"},"85":{titulo:"Miniaturas",diretorio:"i3geo/ferramentas/carouseltemas",categoria:"6",pt:"Abre uma janela flutuante que mostra imagens miniatura de cada tema existente na &aacute;rvore de temas. O usu&aacute;rio pode clicar em uma das imagens para adicionar o tema ao mapa atual.",complemento:"As miniaturas devem existir previamente para aparecerem nessa ferramenta. Para gerar as miniaturas, o administrador do i3Geo pode usar o sistema de administra&ccedil;&atilde;o.",apijs:"i3GEO.arvoreDeTemas.dialogo.carouselTemas()"},"86":{titulo:"Editor SQL",diretorio:"i3geo/ferramentas/editorsql",categoria:"5",pt:"Permite modificar o SQL utilizado para compor os dados referentes ao tema. Apenas temas baseados em bancos de dados podem utilizar essa fun&ccedil;&atilde;o, sendo que o administrador do i3Geo pode bloque&aacute;-la utilizando do sistema de administra&ccedil;&atilde;o. As fun&ccedil;&otilde;es SQL de modifica&ccedil;&atilde;o de dados n&atilde;o s&atilde;o suportadas (UPDATE, INSERT, DELETE, etc.)",complemento:"O Mapserver utiliza uma express&atilde;o na linguagem SQL para definir os dados que ir&atilde;o compor um tema. A edi&ccedil;&atilde;o do SQL possibilita o uso de express&otilde;es customizadas, baseadas na sintaxe SQL que o banco de dados utilizado suportar. A janela de di&aacute;logo permite ainda listar as colunas dispon&iacute;veis bem como os dados de cada coluna, facilitando a defini&ccedil;&atilde;o do novo SQL.",apijs:"i3GEO.tema.dialogo.editorsql()"},"87":{titulo:"Rede Metar",diretorio:"i3geo/ferramentas/metar",categoria:"8",pt:"A rede <a href='http://weather.noaa.gov/' target='_blank' >metar</a> reune dados de esta&ccedil;&otilde;es meteorol&oacute;gicas espalhadas por toto o mundo. Essa ferramenta mostra as esta&ccedil;&otilde;es existentes na extens&atilde;o geogr&aacute;fica do mapa",complemento:"Os dados da rede Metar s&atilde;o acessados indiretamente por meio dos Web Services do site Geonames.",apijs:"i3GEO.navega.dialogo.metar"},"88":{titulo:"Linha do tempo",diretorio:"i3geo/ferramentas/linhadotempo",categoria:"3",pt:"Constr&oacute;i um gr&aacute;fico do tipo 'linha do tempo' tendo como fonte dos dados a tabela de atributos de um tema. Veja: <a href='http://www.simile-widgets.org/timeline/' target=_blank >Simline</a>",complemento:"Ao navegar pelo mapa, o gr&aacute;fico &eacute; atualizado sendo utilizado apenas os dados existentes na extens&atilde;o do mapa. Ao passar o mouse sobre um dos nomes mostrados no gr&aacute;fico, &eacute; indicado a posi&ccedil;&atilde;o no mapa. Ao ser clicado um &iacute;cone no gr&aacute;fico, abre-se um bal&atilde;o com informa&ccedil;&otilde;es adicionais, podendo incluir links e imagens. O gr&aacute;fico s&oacute; &eacute; mostrado para os temas que estiverem configurados pelo administrador do i3Geo.",apijs:"i3GEO.configura"},"89":{titulo:"Tipo de imagem",diretorio:"i3geo/ferramentas/outputformat",categoria:"1",pt:"Modifica o tipo de imagem utilizada na gera&ccedil;&atilde;o do mapa.",complemento:"Modifica o par&acirc;metro OUTPUTFORMAT do mapa em uso permitindo-se escolher entre PNG e JPEG com tecnologia de gera&ccedil;&atilde;o AGG ou GD.",apijs:"i3GEO.mapa.dialogo.outputformat()"},"90":{titulo:"Cortina",diretorio:"i3geo/ferramentas/cortina",categoria:"5",pt:"Permite mostrar e esconder uma camada existente no mapa em um movimento cont&iacute;nuo. O efeito 'cortina' permite comparar um tema com outro.",complemento:"",apijs:"i3GEO.tema.dialogo.cortina()"},"91":{titulo:"Aplicar SLD",diretorio:"i3geo/classesjs/classe_tema.js",categoria:"5",pt:"Aplica um arquivo XML, no formato SLD, ao tema ativo.",complemento:"SLD &eacute; um formato padr&atilde;o que permite definir filtros e simbologia. V&aacute;rios softwraes permitem criar arquivos nesse padr&atilde;o.",apijs:"i3GEO.tema.dialogo.aplicarsld()"},"92":{titulo:"Salvar o mapfile",diretorio:"i3geo/ferramentas/salvamapfile",categoria:"5",pt:"Salva as defini&ccedil;&otilde;es da camada no arquivo mapfile de origem",complemento:"Essa op&ccedil;&atilde;o s&oacute; &eacute; ativada para usu&aacute;rios que s&atilde;o administradores. Permite que a camada seja alterada, por exemplo, modificando-se a legenda, e que o resultado seja salvo nas defini&ccedil;&otilde;es originais da camada.",apijs:"i3GEO.tema.dialogo.salvaMapfile()"},"93":{titulo:"Coment&aacute;rios",diretorio:"i3geo/ferramentas/comentarios",categoria:"5",pt:"Mostra os coment&aacute;rios existentes sobre o tema e permite ao usu&aacute;rio inserir novos",complemento:"Para entar com um coment&aacute;rio, o usu&aacute;rio precisa ser autenticado em alguma das redes sociais compat&iacute;veis com a rotina de login dispon&iacute;vel no i3Geo",apijs:"i3GEO.tema.dialogo.comentario()"},"94":{titulo:"Centro m&eacute;dio",diretorio:"i3geo/ferramentas/centromassa",categoria:"3",pt:"O centro m&eacute;dio &eacute; uma medida da distribui&ccedil;&atilde;o de um conjunto de pontos. Sendo definido por Gerardi & Silva (1980) como: o ponto que minimiza a soma das dist&acirc;ncias quadr&aacute;ticas a todos os outros pontos do plano",complemento:"Mais detalhes em http://www.criminologia-rsm.org/LinkClick.aspx?fileticket=XT%2BDy%2BNyrZM%3D&tabid=484&mid=1614",apijs:"i3GEO.analise.dialogo.centromassa()"},"95":{titulo:"Temas mais populares",diretorio:"",categoria:"4",pt:"Cada vez que um usu&aacute;rio adiciona uma camada ao mapa, por meio do cat&aacute;logo de temas, &eacute; feito um registro no banco de dados de administra&ccedil;&atilde;o. Esse registro &eacute; cumulativo e permite classificar os temas conforme sua popularidade.",complemento:"",apijs:"i3GEO.arvoreDeTemas"},"96":{titulo:"Gr&aacute;fico de perfil",diretorio:"",categoria:"3",pt:"Cria um gr&aacute;fico de perfil com base em um conjunto de dados contendo os valores de Z.",complemento:"Os valores de Z podem ser obtidos de um tema ou de um servi&ccedil;o do tipo Google API",apijs:"i3GEO.analise"},"97":{titulo:"Filtro de camadas",diretorio:"",categoria:"7",pt:"Filtra as camadas que s&atilde;o mostradas na &aacute;rvore de camadas conforme as caracter&iacute;sticas de cada uma.",complemento:"",apijs:"i3GEO.arvoreDeCamadas.dialogo.filtro"},"98":{titulo:"Importar WMC",diretorio:"i3geo/ferramentas/importarwmc",categoria:"4",pt:"Adiciona ao mapa camadas definidas em um arquivo XML no padr&atilde;o WMC 'Web Map Context'. O WMC permite que mapas sejam transferidos entre aplica&ccedil;&otilde;es.",complemento:"O arquivo XML pode estar em um servidor ou pode ser feito o upload para o servidor do i3Geo",apijs:"i3GEO.arvoreDeTemas.dialogo.importarwmc()"},"99":{titulo:"Tela remota",diretorio:"i3geo/ferramentas/telaremota",categoria:"7",pt:"Cria um link que permite abrir o mapa atual em outro computador ou navegador. O mapa clonado &eacute; atualizado conforme o original for sendo modificado.",complemento:"Essa funcionalidade permite que um mapa seja mostrado em uma tela remota com uma interface diferente da original. &Uacute;til para proje&ccedil;&atilde;o em tel&otilde;es e salas de situa&ccedil;&atilde;o.",apijs:"i3GEO.mapa.dialogo.telaRemota()"},"100":{titulo:"Upload KML",diretorio:"i3geo/ferramentas/uploadkml",categoria:"4",pt:"Permite que o usu&aacute;rio fa&ccedil;a o upload de um arquivo KML ou KMZ para o servidor para que seja acrescentado como uma camada ao mapa.",complemento:"O arquivo &eacute; armazenado no servidor temporariamente. &Eacute; necess&aacute;rio que o usu&aacute;rio saiba qual o tipo de elementos existentes no arquivo KML e qual o nome do folder que ser&aacute; utilizado.",apijs:"i3GEO.arvoreDeTemas.dialogo.uploadkml()"},"101":{titulo:"Temporizador",diretorio:"",categoria:"5",pt:"Aplica um temporizador que atualiza uma determinada camada ap&oacute;s um intervalo de tempo e de forma cont&iacute;nua. Para finalizar o temporizador, digite o ou vazio e aplique novamente.",complemento:"",apijs:"i3GEO.tema.temporizador()"},"102":{titulo:"Opacidade interativa",diretorio:"i3geo/ferramentas/opacidademapa",categoria:"7",pt:"Altera a opacidade do mapa de forma interativa. Aplica-se aos temas que n&atilde;o est&atilde;o definidos como 'fundo'. A altera&ccedil;&atilde;o &eacute; feita diretamente no objeto HTML, sendo que o efeito &eacute; imediato.",complemento:"",apijs:"i3GEO.mapa.dialogo.opacidade()"},"103":{titulo:"Upload de GPX",diretorio:"i3geo/ferramentas/uploadgpx",categoria:"4",pt:"Permite que um arquivo do tipo GPX, normalmente gerado por programas que utilizam GPS, seja enviado ao servidor e inclu&iacute;do no mapa como uma nova camada. O arquivo GPX ser&aacute; armazenado no servidor onde o i3geo est&aacute; instalado e permanecer&aacute; l&aacute; at&eacute; que os arquivos tempor&aacute;rios sejam apagados.",complemento:"N&atilde;o utilize essa op&ccedil;&atilde;o se existir alguma restri&ccedil;&atilde;o ao uso do arquivo e se a pol&iacute;tica de acesso aos dados, definidas pela entidade que hospeda o i3geo, n&atilde;o for compat&iacute;velcom essas restri&ccedil;&otilde;es.",apijs:"i3GEO.arvoreDeTemas.dialogo.uploadgpx()"},"104":{titulo:"Upload de KML",diretorio:"i3geo/ferramentas/uploadkml",categoria:"4",pt:"Permite que um arquivo do tipo KML, seja enviado ao servidor e inclu&iacute;do no mapa como uma nova camada. O arquivo GPX ser&aacute; armazenado no servidor onde o i3geo est&aacute; instalado e permanecer&aacute; l&aacute; at&eacute; que os arquivos tempor&aacute;rios sejam apagados.",complemento:"N&atilde;o utilize essa op&ccedil;&atilde;o se existir alguma restri&ccedil;&atilde;o ao uso do arquivo e se a pol&iacute;tica de acesso aos dados, definidas pela entidade que hospeda o i3geo, n&atilde;o for compat&iacute;velcom essas restri&ccedil;&otilde;es.",apijs:"i3GEO.arvoreDeTemas.dialogo.uploadkml()"},"105":{titulo:"Conex&atilde;o KML",diretorio:"i3geo/ferramentas/carregakml",categoria:"4",pt:"Cria um novo layer com base no endere&ccedil;o (url) de um arquivo KML. O layer &eacute; baseado em uma conex&atilde;o OGR.",complemento:"S&atilde;o criadas 3 novas camadas no mapa, uma para pontos, uma para linhas e outra para os pol&iacute;gonos. N&atilde;o necessariamente existir&atilde;o elementos nas tr&ecirc;s camadas.",apijs:"i3GEO.arvoreDeTemas.carregakml()"},"106":{titulo:"Conex&atilde;o GeoJson",diretorio:"i3geo/ferramentas/conectargeojson",categoria:"4",pt:"Cria um novo layer com base no endere&ccedil;o (url) de um arquivo no formato GeoJson. O layer &eacute; baseado em uma conex&atilde;o OGR.",complemento:"S&atilde;o criadas 3 novas camadas no mapa, uma para pontos, uma para linhas e outra para os pol&iacute;gonos. N&atilde;o necessariamente existir&atilde;o elementos nas tr&ecirc;s camadas.",apijs:"i3GEO.arvoreDeTemas.conectargeojson()"},"107":{titulo:"Anima&ccedil;&atilde;o",diretorio:"i3geo/ferramentas/animacao",categoria:"1",pt:"Mostra camadas em uma sequ&ecirc;ncia definida pelo usu&aacute;rio e em um determinado intervalo de tempo. As camadas s&atilde;o automaticamente desligadas e ligadas, formando uma sequ&ecirc;ncia que proporciona um efeito de anima&ccedil;&atilde;o",complemento:"",apijs:"i3GEO.mapa.dialogo.animacao()"},"108":{titulo:"Mapa tem&aacute;tico 3d",diretorio:"i3geo/ferramentas/tme",categoria:"5",pt:"Cria um arquivo no formato KML, representando os dados de uma coluna da tabela de atributos como elementos em 3d. Mais detalhes em http://thematicmapping.org/",complemento:"",apijs:"i3GEO.tema.dialogo.tme()"},"109":{titulo:"Busca de metadados na INDE",diretorio:"i3geo/ferramentas/buscainde",categoria:"8",pt:"Busca metadados no banco de dados da Infraestrutura Nacional de Dados Espaciais (INDE) do Brasil.",complemento:"A busca ainda &eacute; experimental, permitindo apenas a localiza&ccedil;&atilde;o dos registros, sem que o tema possa ser adicionado diretamente ao mapa.",apijs:"i3GEO.arvoreDeTemas.dialogo.buscainde()"},"110":{titulo:"Remove camadas em lote",diretorio:"i3geo/ferramentas/excluirarvore",categoria:"6",pt:"Lista as camadas que est&atilde;o no mapa para que o usu&aacute;rio escolha quais deseja remover. As camadas utilizadas no in&iacute;cio do mapa aparecem desmarcadas na lista.",complemento:"",apijs:"i3GEO.arvoreDeCamadas.dialogo.excluir()"},"111":{titulo:"Localiza regi&otilde;es cadastradas",diretorio:"i3geo/ferramentas/metaestat",categoria:"6",pt:"Lista as regi&otilde;es cadastradas no sistema de metadados estat&iacute;sticos conforme a hierarquia definida. Conforme uma regi&atilde;o &eacute; escolhida, o mapa tem a extens&atilde;o geogr&aacute;fica alterada, destacando a escolha. Essa mesma ferramenta &eacute; usada para aplicar filtros. Os filtros funcionam apenas nas camadas que forem oriundas da aplica&ccedil;&atilde;o de gera&ccedil;&atilde;o de cartogramas estat&iacute;sticos.",complemento:"",apijs:"i3GEO.mapa.dialogo.locregiao()"},"112":{titulo:"&Aacute;rvore de endere&ccedil;os WMS Metaestat",diretorio:"classe_arvoredetemas.js",categoria:"4",pt:"Mostra os WMS cuja origem &eacute; o sistema de metadados estat&iacute;sticos. Esse sistema apresenta cartogramas gerados de forma din&acirc;mica no padr&atilde;o WMS-Time.",complemento:"",apijs:"i3GEO.arvoreDeTemas.listaWMSmetaestat(node)"},"113":{titulo:"Marcador",diretorio:"classe_marcador.js",categoria:"7",pt:"Os marcadores permitem armazenar a regi&atilde;o de abrang&ecirc;ncia do mapa que est&aacute; sendo visto para que seja poss&iacute;vel voltar a essa regi&atilde;o. Para cinar as op&ccedil;&otilde;es de marca&ccedil;&atilde;o utilize a op&ccedil;&atilde;o Marcadores existente no menu suspenso. O menu permite remover marcadores, exportar, importar e converter em shapefile. Os marcadores s&atilde;o mantidos como cookies no navegador, por isso, ao limpar o seu hist&oacute;rico os registros podem ser perdidos. Para evitar isso, exporte seus marcadores como texto e depois importe-os novamente.",complemento:"",apijs:"i3GEO.marcador.prompt()"},"114":{titulo:"Visualizador INDE",diretorio:"i3geo/ferramentas/vinde",categoria:"7",pt:"Essa ferramenta apresenta os servi&ccedil;os WMS cadastrados no servidor da Infraestrutura Nacional de Dados Espaciais do Brasil. O usu&aacute;rio pode escolher diferentes camadas para visualiza&ccedil;&atilde;o e consulta.",complemento:"",apijs:"i3GEO.arvoreDeTemas.dialogo.vinde()"},"115":{titulo:"Prefer&ecirc;ncias",diretorio:"i3geo/ferramentas/preferencias",categoria:"1",pt:"Guarda as prefer&ecirc;ncias do usu&aacute;rio em rela&ccedil;&atilde;o aos par&acirc;metros que controlam a interface do mapa",complemento:"O usu&aacute;rio pode definir as prefer&ecirc;ncias para a interface do mapa, por exemplo, as configura&ccedil;&otilde;es iniciais de menu e ferramentas, temas que iniciam abertos, extens&atilde;o inicial do mapa etc. As informa&ccedil;&otilde;es de prefer&ecirc;ncias ficam armazenadas como cookies do navegador e podem ser restauradas para as configura&ccedil;&otilde;es iniciais por meio da bot&atilde;o ''Limpar'' ou pela limpeza dos cookies diretamente pelo navegador.",apijs:"i3GEO.mapa.dialogo.preferencias()"},"116":{titulo:"Upload de s&iacute;mbolo",diretorio:"i3geo/ferramentas/uploadsimbolo",categoria:"4",pt:"Envia para o servidor um arquivo de imagem que poder&aacute; ser utilizado como s&iacute;mbolo nas legendas das camadas",complemento:"",apijs:""},"117":{titulo:"SAIKU",diretorio:"i3geo/ferramentas/saiku",categoria:"5",pt:"Abre o sistema Saiku que permite o cruzamento de vari&aacute;veis estat&iacute;sticas. O Saiku utiliza o sistema de metadados estat&iacute;sticos para gerar cubos tridimensionais que permitem ao cruzamento de dados tabulares, gera&ccedil;&atilde;o de gr&aacute;ficos e relat&oacute;rios. O usu&aacute;rio deve adicionar ao mapa pelo menos uma camada com localidades originadas do sistema de metadados. Os elementos dessa camada que estiverem selecionados ser&atilde;o utilizados como filtro no Saiku.",complemento:"As vari&aacute;veis cruzadas no Saiku podem gerar artefatos como tabelas, gr&aacute;ficos, relat&oacute;rios e mapas que podem ser visualizados no i3Geo utilizando o bot&atilde;o 'Atualiza o mapa' presente na ferramenta de integra&ccedil;&atilde;o entre os sistemas.",apijs:""},"118":{titulo:"Geolocation",diretorio:"i3geo/ferramentas/geolocal",categoria:"6",pt:"Captura as coordenadas da posi&ccedil;&atilde;o atual do usu&aacute;rio. As coordenadas s&atilde;o capturadas individualmente ou por um intervalo de tempo. Os dados s&atilde;o mostrados em uma lista e no mapa.",complemento:"",apijs:"i3GEO.mapa.dialogo.geolocal()"},"119":{titulo:"Cria uma c&oacute;pia",diretorio:"i3geo/classesjs/classe_camadas.js",categoria:"5",pt:"Cria uma c&oacute;pia de uma camada existente no mapa e adiciona com novo nome.",complemento:"",apijs:"i3GEO.tema.copia(idtema)"},"120":{titulo:"V&iacute;ncula dados entre tabelas",diretorio:"i3geo/ferramentas/tabela/index.js",categoria:"5",pt:"Op&ccedil;&atilde;o utilizada na ferramenta tabela que pemrite vincular a listagem de registros entre tabelas que estejam em diferentes janelas flutuantes. Ao abrir duas tabelas de atributos, a janela de v&iacute;nculos permite definir quais as tabelas ser&atilde;o vinculadas e quais as colunas de liga&ccedil;&atilde;o. Ao marcar um registro em uma tabela, os registros semelhantes s&atilde;o marcados nas tabelas vinculadas.",complemento:"",apijs:""},"121":{titulo:"Mapa de calor",diretorio:"i3geo/ferramentas/heatmap/index.js",categoria:"3",pt:"Obt&eacute;m os dados de um tema pontual, linear ou poligonal e calcula para toda a &aacute;rea vis&iacute;vel os prov&aacute;veis valores. O resultado &eacute; uma representa&ccedil;&atilde;o cont&iacute;nua dos valores em classes de cores. O c&aacute;lculo da camada &eacute; feito diretamente no navegador utilizando-se um programa em javascript.",complemento:"A ferramenta adiciona um novo tema ao mapa contendo o mapa de calor e utiliza como refer&ecirc;ncia para a cria&ccedil;&atilde;o da legenda as classes da camada original. No caso de camadas lineares ou poligonais, ser&aacute; considerado o centroide de cada elemento.",apijs:"i3GEO.mapa.dialogo.heatmap()"},"122":{titulo:"MarkerCluster",diretorio:"i3geo/ferramentas/markercluster/index.js",categoria:"3",pt:"Cria uma camada vetorial com pontos que s&atilde;o agrupados conforme a proximidade. Os pontos agrupados s&atilde;o representados com um s&iacute;mbolo especial e &eacute; mostrado um texto indicando o total de pontos.",complemento:"",apijs:"i3GEO.mapa.dialogo.markercluster()"},"123":{titulo:"Congela a vis&atilde;o atual",diretorio:"i3geo/ferramentas/congelamapa/openlayers.php",categoria:"6",pt:"Abre uma nova janela com a visualiza&ccedil;&atilde;o atual do mapa, mantendo o n&iacute;vel de zoom e as camadas ativas.",complemento:"O mapa &eacute; mostrado na forma de uma imagem, ou seja, mant&eacute;m os elementos do mapa est&aacute;ticos mesmo que se desative as camadas ou altere a regi&atilde;o de visualiza&ccedil;&atilde;o do mapa original. Esta ferramenta &eacute; &uacute;til quando se deseja manter uma determinada regi&atilde;o do mapa sempre vis&iacute;vel enquanto se navega pelas demais regi&otilde;es do mesmo.",apijs:"i3GEO.mapa.dialogo.congelaMapa();"},"124":{titulo:"Cartogramas estat&iacute;sticos",diretorio:"i3geo/ferramentas/metaestat/index.js",categoria:"9",pt:"A ferramenta Cartogramas Estat&iacute;sticos &eacute; utilizada como uma integra&ccedil;&atilde;o entre o mapa interativo e o sistema de metadados estat&iacute;sticos. Al&eacute;m de funcionar como um cat&aacute;logo de camadas oriundas do sistema de metadados estat&iacute;sticos, ela permite a cria&ccedil;&atilde;o, edi&ccedil;&atilde;o e an&aacute;lise de vari&aacute;veis sem a necessidade de acesso ao sistema de administra&ccedil;&atilde;o.",complemento:"Voc&ecirc; pode construir um cartograma a partir da adi&ccedil;&atilde;o das vari&aacute;veis, medidas de vari&aacute;veis e par&acirc;metros constantes no sistema de metadados estat&iacute;sticos. Basta selecionar os componentes da camada e clicar em ''Adicionar camada ao mapa'.<p>O bot&atilde;o ''Edi&ccedil;&atilde;o'' abre o m&oacute;dulo ''Ajudante do editor'', que pode redirecionar o usu&aacute;rio para o ''Editor avan&ccedil;ado'' de vari&aacute;veis, diretamente no sistema de administra&ccedil;&atilde;o, para o ''Editor de limites'', onde o usu&aacute;rio pode editar os limites das camadas pertencentes ao cadastro de regi&otilde;es geogr&aacute;ficas, ou ainda acessar o gerenciador de banco de dados para a inclus&atilde;o de novos dados. Ainda por meio do ''Ajudante do editor'', o usu&aacute;rio pode editar vari&aacute;veis, medidas de vari&aacute;veis ou classifica&ccedil;&otilde;es, ou ainda criar novos elementos para a composi&ccedil;&atilde;o de uma camada no sistema de metadados estat&iacute;sticos.<p>O bot&atilde;o ''An&aacute;lise'' abre uma s&eacute;rie de ferramentas que podem ser utilizadas para uma configura&ccedil;&atilde;o e um exame mais aprofundado dos dados constantes nas vari&aacute;veis.",apijs:"javascript:i3GEO.mapa.dialogo.metaestat();"},"125":{titulo:"Aplicativos estat&iacute;sticos cadastrados",diretorio:"i3geo/ferramentas/metaestat/listamapas.js",categoria:"9",pt:"Lista os mapas cadastrados pelo publicador de mapas do sistema de metadados estat&iacute;sticos, apresentando as diferentes op&ccedil;&otilde;es de interface para abri-los.",complemento:"",apijs:"javascript:i3GEO.mapa.dialogo.metaestatListaMapas();"}}};g_traducao_ajuda_categorias={"1":{titulo:"Propriedades do mapa",observacao:"Funcionalidades que permitem alterar caracter&iacute;sticas gerais do mapa, como tamanho e filtro de cores."},"2":{titulo:"Arquivos"},"3":{titulo:"An&aacute;lise geogr&aacute;fica"},"4":{titulo:"Inclus&atilde;o de camadas",observacao:"O i3Geo utiliza um conceito de camadas dispon&iacute;veis no mapa e camadas adicionais. Camadas dispon&iacute;veis s&atilde;o as que podem ser consultadas, visualizadas e modificadas, compondo uma lista separada das camadas adicionais. Normalmente as camadas dispon&iacute;veis s&atilde;o um conjunto menor em rela&ccedil;&atilde;o ao total de temas que podem ser utilizados. Novos temas podem ser adicionados ao mapa por meio das op&ccedil;&otilde;es existentes na lista de temas, normalmente posicionada na guia '+Temas'."},"5":{titulo:"Opera&ccedil;&otilde;es sobre um tema",observacao:"Uma das caracter&iacute;sticas do i3Geo &eacute; a possibilidade de modifica&ccedil;&atilde;o das camadas vistas no mapa. As op&ccedil;&otilde;es que permitem isso s&atilde;o mostradas normalmente na lista de camadas dispon&iacute;veis no mapa atual. Essa lista &eacute; mostrada como uma &aacute;rvore hier&aacute;rquica sendo que cada camada &eacute; um dos n&oacute;s. Expandindo-se esse n&oacute;, tem-se acesso &agrave;s opera&ccedil;&otilde;es."},"6":{titulo:"Opera&ccedil;&otilde;es sobre o mapa"},"7":{titulo:"Navega&ccedil;&atilde;o",observacao:"As fun&ccedil;&otilde;es de navega&ccedil;&atilde;o permitem alterar a escala do mapa e modificar a abrang&ecirc;ncia espacial. Esse tipo de mudan&ccedil;a, principalmente de escala, afeta o contexto do mapa, modificando seu comportamento. Algumas camadas podem ser sens&iacute;veis &agrave; escala, mostrando ou n&atilde;o determinados elementos. Quando uma camada possuir muitos elementos, &eacute; aconselh&aacute;vel seu desligamento at&eacute; que a regi&atilde;o desejada seja encontrada. Algumas interfaces possuem mecanismos distintos de navega&ccedil;&atilde;o, como Google e openLayers. A lista abaixo contempla apenas a interface padr&atilde;o."},"8":{titulo:"Pesquisa"},"9":{titulo:"Metadados estat&iacute;sticos",observacao:""}};
2 1 \ No newline at end of file
  2 +g_traducao_ajuda={ferramentas:{"1":{titulo:"Filtro de cores",diretorio:"i3geo/ferramentas/tipoimagem",categoria:"1",pt:"O filtro possibilita gerar efeitos de colora&ccedil;&atilde;o no mapa. &Eacute; aplicado sobre a imagem gerada toda vez que o mapa &eacute; alterado. No caso de temas baseados em dados RASTER, os n&iacute;veis de cores obtidos com a ferramenta de identifica&ccedil;&atilde;o n&atilde;o s&atilde;o alterados.",complemento:"Os filtros podem provocar um tempo maior de desenho do mapa, devendo ser utilizados com cuidado. As op&ccedil;&otilde;es s&eacute;pia e tons de cinza utilizam algor&iacute;tmos pr&oacute;prios do i3Geo, j&aacute; as demais, utilizam a op&ccedil;&atilde;o de filtro dispon&iacute;vel com o PHP 5. Mais detalhes <a href='http://www.php.net/manual/pt_BR/function.imagefilter.php' >aqui</a>.",apijs:"i3GEO.mapa.dialogo.tipoimagem()"},"2":{titulo:"Legenda",diretorio:"i3geo/ferramentas/opcoes_legenda",categoria:"1",pt:"A legenda do mapa &eacute; utilizada em v&aacute;rias op&ccedil;&otilde;es do i3Geo e pode tamb&eacute;m ficar inserida na pr&oacute;pria imagem do mapa. A legenda mostra os s&iacute;mbolos utilizados no desenho de cada tema, podendo-se alterar caracter&iacute;sticas como fonte, tamanho dos textos, tamanho dos ret&acirc;ngulos com os s&iacute;mbolos, etc.",complemento:"Antes de aplicar uma altera&ccedil;&atilde;o, voc&ecirc; pode testar os par&acirc;metros escolhidos para avaliar o resultado. No caso dos par&acirc;metros que definem cores, utilize -1,-1,-1 para anular seu efeito.",apijs:"i3GEO.mapa.dialogo.opcoesLegenda()"},"3":{titulo:"Barra de escala",diretorio:"i3geo/ferramentas/opcoes_escala",categoria:"1",pt:"A barra de escala &eacute; uma imagem inserida no mapa que mostra a rela&ccedil;&atilde;o entre uma medida feita no mapa e no mundo real. A barra pode ser modificada especificando-se seu tamanho, n&uacute;mero de divis&otilde;es e cores.",complemento:"Existem dois modelos b&aacute;sicos para a escala: linear e bloco. Para n&atilde;o mostrar a escala no mapa, escolha a 'sem escala' na op&ccedil;&atilde;o estilo.",apijs:"i3GEO.mapa.dialogo.opcoesEscala()"},"4":{titulo:"Tamanho do mapa",diretorio:"i3geo/ferramentas/opcoes_tamanho",categoria:"1",pt:"O tamanho do mapa &eacute; definido automaticamente quando o i3Geo &eacute; aberto, buscando-se otimizar o uso do espa&ccedil;o dispon&iacute;vel no monitor. A op&ccedil;&atilde;o de modifica&ccedil;&atilde;o do tamanho altera apenas o corpo do mapa, for&ccedil;ando o ajuste dos outros elementos, o que nem sempre provoca bons resultados.",complemento:"O ajuste do tamanho do mapa pode ser utilizado para gerar imagens em tamanhos espec&iacute;ficos, principalmente para efeitos de impress&atilde;o. A medida do tamanho utilizado &eacute; pixel, que corresponde ao tamanho m&iacute;nimo de uma c&eacute;lula da imagem do mapa. Para calcular o tamanho do mapa em outra unidade de medida, necess&aacute;rio nos casos em que se deseja imprimir o mapa, deve ser feito considerando-se a resolu&ccedil;&atilde;o de impress&atilde;o desejada.",apijs:"i3GEO.mapa.dialogo.tamanho()"},"5":{titulo:"Cor da sele&ccedil;&atilde;o",diretorio:"i3geo/ferramentas/opcoes_querymap",categoria:"1",pt:"A cor da sele&ccedil;&atilde;o &eacute; utilizada para mostrar no mapa os elementos de um determinado tema que est&atilde;o selecionados. A sele&ccedil;&atilde;o consiste em destacar elementos para uso em determinadas opera&ccedil;&otilde;es, como por exemplo o c&aacute;lculo de entorno (buffer). A defini&ccedil;&atilde;o da cor &eacute; baseada no modelo R,G,B, sendo que cada componente varia de 0 a 255.",complemento:"Ao definir os valores de RGB, separe-os com ','. Quando um tema possuir elementos selecionados, &eacute; inclu&iacute;da uma marca antes do nome do tema na lista de camadas dispon&iacute;veis no mapa.",apijs:"i3GEO.mapa.dialogo.queryMap()"},"6":{titulo:"Cor do fundo",diretorio:"i3geo/ferramentas/opcoes_fundo",categoria:"1",pt:"O corpo do mapa &eacute; constitu&iacute;do por uma imagem gerada com tamanho fixo. Essa imagem possu&iacute; uma cor padr&atilde;o, sobre a qual s&atilde;o sobrepostas as camadas. Por padr&atilde;o, a cor do fundo &eacute; definida como azul. A defini&ccedil;&atilde;o da cor &eacute; baseada no modelo R,G,B, sendo que cada componente varia de 0 a 255.",complemento:"Ao definir os valores de RGB, separe-os com ','. Ao utilizar as op&ccedil;&otilde;es de convers&atilde;o do mapa atual para kml ou WMS, a altera&ccedil;&atilde;o da cor do fundo para 255,255,255 oferece melhores resultados na visualiza&ccedil;&atilde;o dos dados.",apijs:"i3GEO.mapa.dialogo.corFundo()"},"7":{titulo:"Grade de coordenadas",diretorio:"i3geo/ferramentas/gradecoord",categoria:"1",pt:"A grade de coordenadas &eacute; formada por linhas verticais e horizontais representando determinadas latitudes e longitudes. A grade &eacute; um dos elementos principais na defini&ccedil;&atilde;o de um mapa, sendo utilizada na impress&atilde;o ou gera&ccedil;&atilde;o de figuras.",complemento:"Ao adicionar uma grade, &eacute; criado uma nova camada no mapa, possibilitando que mais de uma grade seja criada. Uma grade pode ou n&atilde;o conter os textos indicando os valores de lat long, permitindo que se crie uma grade com espa&ccedil;amento de linhas diferente do espa&ccedil;amento dos textos.",apijs:"i3GEO.mapa.dialogo.gradeCoord()"},"8":{titulo:"Templates",diretorio:"i3geo/ferramentas/template",categoria:"1",pt:"Um template define como os componentes de um mapa s&atilde;o organizados no navegador. O administrador do i3Geo pode criar templates diferentes conforme as necessidades do usu&aacute;rio, sendo que alguns templates s&atilde;o fornecidos com o pr&oacute;prio i3Geo.",complemento:"A cria&ccedil;&atilde;o de templates &eacute; uma tarefa do administrador do i3Geo. Para abrir um template espec&iacute;fico diretamente, utilize a URL que &eacute; mostrada no navegador quando um template &eacute; escolhido.",apijs:"i3GEO.mapa.dialogo.template()"},"9":{titulo:"Temporizador",diretorio:"i3geo/ferramentas/opcoes_autoredesenha",categoria:"1",pt:"O temporizador permite definir um intervalo de tempo em segundos que ir&aacute; disparar o redesenho do mapa.",complemento:"Quando o mapa &eacute; redesenhado, as camadas existentes s&atilde;o lidas novamente para compor o novo mapa. Essa op&ccedil;&atilde;o &eacute; &uacute;til quando existirem camadas no mapa que sofrem atualiza&ccedil;&otilde;es frequentes, como por exemplo o deslocamento de aeronaves, carros ou navios.",apijs:"i3GEO.mapa.dialogo.autoredesenha()"},"10":{titulo:"Salvar mapa",diretorio:"i3geo/ferramentas/salvamapa",categoria:"2",pt:"O mapa que o usu&aacute;rio est&aacute; utilizando pode ser salvo localmente (na m&aacute;quina do usu&aacute;rio) ou no banco de dados no servidor onde o i3Geo est&aacute; instalado. para ser aberto posteriormente. Isso permite que um trabalho seja continuado em outro momento, uma vez que o mapa em uso &eacute; sempre perdido quando o usu&aacute;rio fecha o navegador.",complemento:"Os dados locais que foram criados n&atilde;o s&atilde;o salvos, sendo necess&aacute;rio o seu download quando desejado. Isso afeta as op&ccedil;&otilde;es de inclus&atilde;o de pontos ou convers&atilde;o de elementos selecionados em camadas.",apijs:"i3GEO.mapa.dialogo.salvaMapa()"},"11":{titulo:"Carregar mapa",diretorio:"i3geo/ferramentas/carregamapa",categoria:"2",pt:"O mapa que o usu&aacute;rio est&aacute; utilizando pode ser salvo localmente (na m&aacute;quina do usu&aacute;rio) para ser aberto posteriormente. Isso permite que um trabalho seja continuado em outro momento, uma vez que o mapa em uso &eacute; sempre perdido quando o usu&aacute;rio fecha o navegador.",complemento:"A op&ccedil;&atilde;o de carregar um mapa permite enviar para o servidor, onde o i3Geo est&aacute; instalado, o mapa que foi salvo anteriormente.",apijs:"i3GEO.mapa.dialogo.carregaMapa()"},"12":{titulo:"Converter em WMS",diretorio:"i3geo/ferramentas/convertews",categoria:"2",pt:"Convertendo o mapa atual em um WMS &eacute; poss&iacute;vel utilizar outros softwares para visualizar o mesmo mapa visto no i3Geo. O resultado da convers&atilde;o &eacute; um endere&ccedil;o (url) tempor&aacute;rio, esse endere&ccedil;o deve ser inserido no software que se quer usar e que suporte WMS.",complemento:"WMS &eacute; um padr&atilde;o internacional e n&atilde;o espec&iacute;fico do i3Geo. Utilizando um WMS, pode-se adicionar ao mapa outras camadas de dados, inclusive dados locais, se estiver sendo utilizado um software instalado em um computador local. Conforme as caracter&iacute;sticas de cada servidor onde o i3Geo estiver instalado, o WMS poder&aacute; permanecer dispon&iacute;vel por per&iacute;odos de tempo vari&aacute;veis. Para acessar a lista de WMS dispon&iacute;veis utilize o link <a href='ogc.htm' >ogc.htm</a>.Mais informa&ccedil;&otilde;es em <a href='www.opengeospatial.org' >OGC.</a>",apijs:"i3GEO.mapa.dialogo.convertews()"},"13":{titulo:"Converter em KML",diretorio:"i3geo/ferramentas/convertekml",categoria:"2",pt:"Convertendo o mapa atual em KML &eacute; poss&iacute;vel utilizar outros softwares para visualizar o mesmo mapa visto no i3Geo. O resultado da convers&atilde;o &eacute; um endere&ccedil;o (url) tempor&aacute;rio, esse endere&ccedil;o deve ser inserido no software que se quer usar e que suporte KML. Para usar o KML no Google Earth, utilize a op&ccedil;&atilde;o desse softawre chamada 'adicionar link de rede'.",complemento:"KML &eacute; um padr&atilde;o internacional e n&atilde;o espec&iacute;fico do i3Geo. Conforme as caracter&iacute;sticas de cada servidor onde o i3Geo estiver instalado, o KML poder&aacute; permanecer dispon&iacute;vel por per&iacute;odos de tempo vari&aacute;veis. O KML gerado pelo i3Geo n&atilde;o cont&eacute;m as coordenadas dos elementos de uma camada, mas sim um WMS embutido no KML. Essa estrutura limita o uso do KML mas permite uma maior performance no acesso aos dados. Mais informa&ccedil;&otilde;es em <a href='www.opengeospatial.org' target=blanck >OGC</a>.",apijs:"i3GEO.mapa.dialogo.convertekml()"},"14":{titulo:"Grade de pol&iacute;gonos",diretorio:"i3geo/ferramentas/gradepol",categoria:"3",pt:"Cria uma nova camada no mapa contendo ret&acirc;ngulos com espa&ccedil;amento determinado em x e y. A grade gerada pode ser obtida via download. O espa&ccedil;amento &eacute; definido em d&eacute;cimos de grau e as coordenadas do ponto inicial podem ser definida clicando-se no mapa ou digitando-se o valor.",complemento:"A grade &eacute; &uacute;til para a realiza&ccedil;&atilde;o de an&aacute;lises onde deseja-se calcular ocorr&ecirc;ncias de fen&ocirc;menos pontuais e represent&aacute;-los posteriormente com base em totais. Observe que a &aacute;rea e as dist&acirc;ncias reais de cada pol&iacute;gono n&atilde;o s&atilde;o constantes, uma vez que &eacute; utilizada a proje&ccedil;&atilde;o geogr&aacute;fica na sua gera&ccedil;&atilde;o.",apijs:"i3GEO.analise.dialogo.gradePol()"},"15":{titulo:"Grade de pontos",diretorio:"i3geo/ferramentas/gradepontos",categoria:"3",pt:"Cria uma nova camada no mapa contendo pontos com espa&ccedil;amento determinado em x e y. A grade gerada pode ser obtida via download. O espa&ccedil;amento &eacute; definido em d&eacute;cimos de grau e as coordenadas do ponto inicial podem ser definida clicando-se no mapa ou digitando-se o valor.",complemento:"Observe que as dist&acirc;ncias reais entre cada ponto n&atilde;o s&atilde;o constantes, uma vez que &eacute; utilizada a proje&ccedil;&atilde;o geogr&aacute;fica na sua gera&ccedil;&atilde;o.",apijs:"i3GEO.analise.dialogo.gradePontos()"},"16":{titulo:"Grade de hex&aacute;gonos",diretorio:"i3geo/ferramentas/gradehex",categoria:"3",pt:"Cria uma nova camada no mapa contendo hex&aacute;gonos com espa&ccedil;amento determinado em x e y. A grade gerada pode ser obtida via download. O espa&ccedil;amento &eacute; definido em d&eacute;cimos de grau e as coordenadas do ponto inicial podem ser definida clicando-se no mapa ou digitando-se o valor.",complemento:"A grade &eacute; &uacute;til para a realiza&ccedil;&atilde;o de an&aacute;lises onde deseja-se calcular ocorr&ecirc;ncias de fen&ocirc;menos pontuais e represent&aacute;-los posteriormente com base em totais. Observe que a &aacute;rea e as dist&acirc;ncias reais de cada pol&iacute;gono n&atilde;o s&atilde;o constantes, uma vez que &eacute; utilizada a proje&ccedil;&atilde;o geogr&aacute;fica na sua gera&ccedil;&atilde;o.",apijs:"i3GEO.analise.dialogo.gradeHex()"},"17":{titulo:"Dist&acirc;ncia entre pontos",diretorio:"i3geo/ferramentas/distanciaptpt",categoria:"3",pt:"O c&aacute;lculo de dist&acirc;ncias &eacute; feito de um ponto em rela&ccedil;&atilde;o aos mais pr&oacute;ximos. O ponto origem, deve estar selecionado em um dos temas existentes no mapa. Para restringir a dist&acirc;ncia de busca, &eacute; necess&aacute;rio definir um raio m&aacute;ximo, os pontos considerados ser&atilde;o aqueles dentro desse raio. Em cada linha ligando dois pontos s&atilde;o inseridos atributos que indicam a dist&acirc;ncia e o identificador dos pontos. Esses identificadores s&atilde;o escolhidos com base nas colunas de atributos do tema pontual escolhido.",complemento:"O resultado dos c&aacute;lculos s&atilde;o novas camadas inclu&iacute;das no mapa, sendo uma de linhas e uma com o entorno de busca considerado.",apijs:"i3GEO.analise.dialogo.distanciaptpt()"},"18":{titulo:"Ponto em pol&iacute;gono",diretorio:"i3geo/ferramentas/pontoempoligono",categoria:"3",pt:"Ponto em pol&iacute;gono &eacute; uma opera&ccedil;&atilde;o que resulta em um novo tema contendo o cruzamento entre um tema com pontos e outros com pol&iacute;gonos (ou imagem raster). As informa&ccedil;&otilde;es do tema poligonal (ou raster) ser&atilde;o agregadas &agrave; tabela do novo tema pontual gerado. As colunas da tabela de atributos do novo tema gerado ser&atilde;o nomeadas em uma sequ&ecirc;ncia num&eacute;rica, uma vez que o tema original pode ter colunas com nomes incompat&iacute;veis com o formato shapefile, utilizado na gera&ccedil;&atilde;o do novo tema.",complemento:"Pode-se escolher mais de um tema de origem dos dados, possibilitando agregar informa&ccedil;&otilde;es de temas diferentes. Essa op&ccedil;&atilde;o de cruzamento &eacute; &uacute;til nos casos onde a informa&ccedil;&atilde;o necess&aacute;ria para a an&aacute;lise de um tema encontra-se em outro tema. Por exemplo, &eacute; poss&iacute;vel cruzar um tema com a localiza&ccedil;&atilde;o das cidades com um tema com a delimita&ccedil;&atilde;o de biomas. O resultado permite elaborar estat&iacute;sticas por biomas com base nos dados dos pontos.",apijs:"i3GEO.analise.dialogo.pontoempoligono()"},"19":{titulo:"N&uacute;mero de pontos por pol&iacute;gono",diretorio:"i3geo/ferramentas/nptpol",categoria:"3",pt:"Ponto em pol&iacute;gono &eacute; uma opera&ccedil;&atilde;o que resulta em um novo tema contendo o cruzamento entre um tema com pontos e outro com pol&iacute;gono. O resultado &eacute; um novo tema poligonal, cuja tabela de atributos conter&aacute; um item com o total de pontos em cada pol&iacute;gono",complemento:"O uso dessa ferramenta &eacute; indicado nas situa&ccedil;&otilde;es em que se deseja agregar dados de ocorr&ecirc;ncias pontuais em pol&iacute;gonos, possibilitando a visualiza&ccedil;&atilde;o dos dados por meio de t&eacute;cnicas de classifica&ccedil;&atilde;o e representa&ccedil;&atilde;o coropl&eacute;tica.",apijs:"i3GEO.analise.dialogo.nptPol()"},"20":{titulo:"Distribui&ccedil;&atilde;o de pontos",diretorio:"i3geo/ferramentas/pontosdistri",categoria:"3",pt:"Essa op&ccedil;&atilde;o disponibiliza v&aacute;rias ferramentas de an&aacute;lise de distribui&ccedil;&atilde;o de pontos, a maior parte baseia-se no software estat&iacute;stico <a href='www.r-project.org' target=blanck >R</a>. Algumas das an&aacute;lises geram como resultado imagens RASTER e outras temas lineares e poligonais. A op&ccedil;&atilde;o de relat&oacute;rio gera uma nova p&aacute;gina com v&aacute;rios &iacute;ndices calculados com o software R.",complemento:"A imagem RASTER resultante utiliza a resolu&ccedil;&atilde;o (tamanho do pixel) compat&iacute;vel com a escala utilizada no mapa que est&aacute; sendo visto. A representa&ccedil;&atilde;o utiliza, por padr&atilde;o, tons de cinza. A altera&ccedil;&atilde;o nas cores utilizadas na representa&ccedil;&atilde;o podem melhorar de forma significativa a visualiza&ccedil;&atilde;o dos resultados. Utilize a op&ccedil;&atilde;o de edi&ccedil;&atilde;o da legenda do tema para fazer isso. As an&aacute;lises de distribui&ccedil;&atilde;o de pontos s&atilde;o realizadas com o software R. As an&aacute;lises de densidade de pontos, dist&acirc;ncia entre pontos e kernel, foram implantadas utilizando-se a biblioteca <a href='http://cran.r-project.org/web/packages/spatstat' target=blanck >SPATSTAT</a> do R. As an&aacute;lises de Delaunay e Voronoi utilizam a biblioteca <a href='http://cran.r-project.org/web/packages/deldir' target=blanck >DELDIR</a> e a an&aacute;lise de cluster espacial utiliza o <a href='http://cran.r-project.org/web/packages/spatclus' target=blanck >SPATCLUS</a>. As an&aacute;lises podem consumir muito tempo de processamento, portanto, tenha cuidado com o n&uacute;mero de pontos."},"21":{titulo:"Centr&oacute;ide",diretorio:"i3geo/ferramentas/centroide",categoria:"3",pt:"Os centr&oacute;ides s&atilde;o pontos localizados no centro de massa de uma geometria. Para gerar os centr&oacute;ides, voc&ecirc; precisa selecionar alguns elementos de um tema. Utilize para isso a op&ccedil;&atilde;o de sele&ccedil;&atilde;o ou a tabela de atributos do tema desejado.",complemento:"Dependendo da forma de uma geometria, o ponto calculado pode ser posicionado fora do pol&iacute;gono <a href='http://postgis.refractions.net/documentation/manual-svn/ST_Centroid.html' >exemplo</a>.",apijs:"i3GEO.analise.dialogo.centroide()"},"22":{titulo:"Dissolver",diretorio:"i3geo/ferramentas/dissolve",categoria:"3",pt:"Essa ferramenta transforma v&aacute;rios pol&iacute;gonos em um s&oacute; eliminando as divisas entre eles. Para definir quais os pol&iacute;gonos devem ser unidos uns com os outros &eacute; preciso escolher um item da tabela de atributos do tema. Os pol&iacute;gonos que possu&iacute;rem o mesmo valor ser&atilde;o considerados no mesmo grupo e suas divisas eliminadas. Caso n&atilde;o tenha sido escolhido nenhum item, todas os pol&iacute;gonos ser&atilde;o agrupados em um s&oacute;.",complemento:"O resultado final ser&aacute; um novo tema com pol&iacute;gonos diferentes dos originais e cuja tabela de atributos conter&aacute; apenas o item escolhido. Caso as geometrias originais possuam fronteiras n&atilde;o ajustadas exatamente, o resultado pode apresentar pequenos pol&iacute;gonos internos.",apijs:"i3GEO.analise.dialogo.dissolve()"},"23":{titulo:"An&aacute;lise de geometrias",diretorio:"i3geo/ferramentas/analisageometrias",categoria:"3",pt:"Essa ferramenta permite processar elementos constituintes de um ou mais temas por meio de fun&ccedil;&otilde;es que atuam sobre a geometria que define o elemento. Essas fun&ccedil;&otilde;es possibilitam a realiza&ccedil;&atilde;o de c&aacute;lculos, como &aacute;rea e per&iacute;metro, e cruzamentos entre geometrias, como uni&atilde;o e intersec&ccedil;&atilde;o. Para utilizar a ferramenta, deve-se selecionar cada elemento desejado e convert&ecirc;-los em uma geometria ou conjunto de geometrias. Feito isso, as geometrias convertidas podem ser utilizadas nas opera&ccedil;&otilde;es.",complemento:"Para selecionar elementos, utilize as op&ccedil;&otilde;es de sele&ccedil;&atilde;o dispon&iacute;veis no i3Geo ou ent&atilde;o clique no mapa no elemento desejado ap&oacute;s ativar a ferramenta. A sele&ccedil;&atilde;o &eacute; feita sobre o tema escolhido. Para ver as geometrias capturadas, clique na guia 'listar'. Para usar as op&ccedil;&otilde;es de an&aacute;lise, mostradas na guia 'an&aacute;lise', voc&ecirc; deve marcar as geometrias desejadas na guia 'listar'.",apijs:"i3GEO.analise.dialogo.analisaGeometrias()"},"24":{titulo:"Entorno (buffer)",diretorio:"i3geo/ferramentas/buffer",categoria:"3",pt:"O entorno, ou buffer, &eacute; um pol&iacute;gono que circunda um elemento geogr&aacute;fico em uma dist&acirc;ncia fixa. Para o c&aacute;lculo de dist&acirc;ncia o i3Geo utiliza a proje&ccedil;&atilde;o polic&ocirc;nica. Os atributos do tema alvo s&atilde;o copiados para os pol&iacute;gonos resultantes e uma nova camada &eacute; adicionada ao mapa. Opcionalmente, os pol&iacute;gonos resultantes podem ser unidos como um &uacute;nico.",complemento:"Para gerar o entorno, voc&ecirc; precisa selecionar alguns elementos de um tema. Utilize para isso a op&ccedil;&atilde;o de sele&ccedil;&atilde;o ou a tabela de atributos do tema desejado. O buffer pode ser gerado tamb&eacute;m por meio da ferramenta de identifica&ccedil;&atilde;o.",apijs:"i3GEO.analise.dialogo.buffer()"},"25":{titulo:"Agrupa elementos",diretorio:"i3geo/ferramentas/agrupaelementos",categoria:"3",pt:"Essa ferramenta transforma v&aacute;rios elementos selecionados de um tema em um s&oacute; criando pol&iacute;gonos agrupados. Para definir quais elementos devem ser unidos uns com os outros &eacute; preciso escolher um item da tabela de atributos do tema. Os elementos que possu&iacute;rem o mesmo valor nesse item ser&atilde;o considerados no mesmo grupo e suas divisas eliminadas. Caso n&atilde;o tenha sido escolhido nenhum item, todas os elementos ser&atilde;o agrupados em um s&oacute;.",complemento:"O resultado final ser&aacute; um novo tema com pol&iacute;gonos diferentes dos originais e cuja tabela de atributos conter&aacute; apenas o item escolhido.",apijs:"i3GEO.analise.dialogo.agrupaElementos()"},"26":{titulo:"Upload de arquivo DBF ou CSV",diretorio:"i3geo/ferramentas/uploaddbf",categoria:"4",pt:"Utilize essa op&ccedil;&atilde;o para acrescentar um tema baseado nas coordenadas x e y presentes em uma tabela DBF ou arquivo CSV. Os valores de x e y devem utilizar '.' como separador de decimal. Se as coordenadas estiverem na proje&ccedil;&atilde;o geogr&aacute;fica, os valores dever&atilde;o estar em d&eacute;cimos de grau, com sinal negativo para pontos ao sul do equador e oeste do meridiano 0.",complemento:"O arquivo DBF ou CSV ser&aacute; armazenado no servidor onde o i3geo est&aacute; instalado e permanecer&aacute; l&aacute; at&eacute; que os arquivos tempor&aacute;rios sejam apagados. N&atilde;o utilize essa op&ccedil;&atilde;o se existir alguma restri&ccedil;&atilde;o ao uso do arquivo e se a pol&iacute;tica de acesso aos dados, definidas pela entidade que hospeda o i3geo, n&atilde;o for compat&iacute;vel com essas restri&ccedil;&otilde;es.",apijs:"i3GEO.arvoreDeTemas.dialogo.uploaddbf()"},"27":{titulo:"Upload se shapefile",diretorio:"i3geo/ferramentas/upload",categoria:"4",pt:"Permite que um arquivo do tipo shapefile seja enviado ao servidor e inclu&iacute;do no mapa como uma nova camada. O arquivo shapefile ser&aacute; armazenado no servidor onde o i3geo est&aacute; instalado e permanecer&aacute; l&aacute; at&eacute; que os arquivos tempor&aacute;rios sejam apagados. Um shapefile &eacute; composto basicamente por tr&ecirc;s tipos de arquivos (dbf, shp e shx), todos devem ser submetidos",complemento:"N&atilde;o utilize essa op&ccedil;&atilde;o se existir alguma restri&ccedil;&atilde;o ao uso do arquivo e se a pol&iacute;tica de acesso aos dados, definidas pela entidade que hospeda o i3geo, n&atilde;o for compat&iacute;velcom essas restri&ccedil;&otilde;es.",apijs:"i3GEO.arvoreDeTemas.dialogo.upload()"},"28":{titulo:"Conex&atilde;o WMS",diretorio:"i3geo/ferramentas/conectarwms",categoria:"4",pt:"Uma conex&atilde;o WMS permite que dados dispon&iacute;veis em outros servidores sejam inclu&iacute;dos como camadas no i3Geo. Na ferramenta de conex&atilde;o &eacute; mostrada uma lista de endere&ccedil;os previamente cadastrados, mas pode-se digitar um outro endere&ccedil;o qualquer, desde que seja um servi&ccedil;o no padr&atilde;o WMS. Ap&oacute;s um servi&ccedil;o ser escolhido, a lista de camadas dispon&iacute;veis &eacute; mostrada na guia 'Temas'.",complemento:"Camadas obtidas por meio de conex&atilde;o WMS n&atilde;o permitem que algumas opera&ccedil;&otilde;es dispon&iacute;veis no i3Geo sejam executadas, como por exemplo a altera&ccedil;&atilde;o na legenda, sele&ccedil;&atilde;o, entre outras. Quando um servidor apresentar problemas, a camada n&atilde;o poder&aacute; ser adicionada.",apijs:"i3GEO.arvoreDeTemas.conectarwms.upload()"},"29":{titulo:"Conex&atilde;o GeoRSS",diretorio:"i3geo/ferramentas/conectargeorss",categoria:"4",pt:"Uma conex&atilde;o GeoRSS permite obter a localiza&ccedil;&atilde;o de conte&uacute;dos dispon&iacute;veis no formato RSS com coordenadas geogr&aacute;ficas inclu&iacute;das. Na ferramenta de conex&atilde;o &eacute; mostrada uma lista de endere&ccedil;os previamente cadastrados, mas pode-se digitar um outro endere&ccedil;o qualquer, desde que seja um servi&ccedil;o no padr&atilde;o GeoRSS.",complemento:"A camada adicionada ao mapa baseia-se em um arquivo shapefile criado temporariamente pelo i3Geo. Caso o servi&ccedil;o GeoRSS sofrer altera&ccedil;&otilde;es, como a inclus&atilde;o de um novo item, &eacute; necess&aacute;rio fazer novamente a conex&atilde;o para que a camada reflita a altera&ccedil;&atilde;o.",apijs:"i3GEO.arvoreDeTemas.conectargeorss.upload()"},"30":{titulo:"Nuvem de tags",diretorio:"i3geo/ferramentas/nuvemtags",categoria:"4",pt:"A nuvem de tags &eacute; uma forma de localizar camadas dispon&iacute;veis para ser vistas no mapa. A busca &eacute; feita por meio de tags ou palavras-chave. As tags s&atilde;o registradas pelo administrador do i3Geo para cada tema dispon&iacute;vel na &aacute;rvore de temas.",complemento:"Ao escolher uma tag, &eacute; realizada uma busca dos temas correspondentes e o resultado &eacute; adicionado &agrave; arvore de temas. Opcionalmente, o usu&aacute;rio pode escolher navegar na nuvem 'animada' que mostra as tags como um globo 3d.",apijs:"i3GEO.arvoreDeTemas.dialogo.nuvemTags()"},"31":{titulo:"Procurar tema",diretorio:"classe_arvoredetemas.js",categoria:"4",pt:"Localiza temas dispon&iacute;veis nos menus da &aacute;rvore de adi&ccedil;&atilde;o de temas. Os temas localizados s&atilde;o inclu&iacute;dos em um novo n&oacute; da &aacute;rvore, possibilitando sua adi&ccedil;&atilde;o ao mapa.",complemento:"Para procurar um tema, digite a palavra ou frase no campo de texto e clique no &iacute;cone existente no lado direito. O resultado da busca aparecer&aacute; como um n&oacute; na &aacute;rvore de temas do cat&aacute;logo.",apijs:"i3GEO.arvoreDeTemas.buscaTema(palavra)"},"32":{titulo:"Acesso aos arquivos do servidor",diretorio:"classe_arvoredetemas.js",categoria:"4",pt:"Os usu&aacute;rios cadastrados no i3Geo como editores podem acessar arquivos existentes no servidor onde o i3Geo est&aacute; instalado. A navega&ccedil;&atilde;o permite localizar arquivos shapefile para inclus&atilde;o como uma nova camada no mapa.",complemento:"Por motivos de seguran&ccedil;a, apenas os editores podem utilizar essa op&ccedil;&atilde;o. O cadastramento &eacute; feito pelo administrador do i3Geo, por meio da edi&ccedil;&atilde;o do arquivo ms_configura.php.",apijs:"i3GEO.arvoreDeTemas.montaDir(node)"},"33":{titulo:"&Aacute;rvore de endere&ccedil;os WMS",diretorio:"classe_arvoredetemas.js",categoria:"4",pt:"A conex&atilde;o com servi&ccedil;os WMS (OGC) pode ser feita escolhendo-se o servidor e as camadas dispon&iacute;veis diretamente na &aacute;rvore de temas. A lista de endere&ccedil;os utilizada nesse n&oacute; da &aacute;rvore &eacute; a mesma utilizada na op&ccedil;&atilde;o de conex&atilde;o que &eacute; aberta por meio do &iacute;cone 'Conex&atilde;o MWS'. Quando uma camada for encontrada no WMS, &eacute; mostrado um 'box' ao lado do nome da camada, permitindo sua adi&ccedil;&atilde;o ao mapa.",complemento:"A vantagem do uso da &aacute;rvore &eacute; a velocidade de acesso &agrave; lista de camadas, uma vez que o i3Geo faz um 'cache' do arquivo XML gerado com a lista de camadas dispon&iacute;veis. A &aacute;rvore permite ainda a vis&atilde;o correta da hierarquia de camadas configuradas no WMS, que pode ter v&aacute;rios n&iacute;veis. Cada vez que um usu&aacute;rio tenta acessar um WMS o sucesso ou n&atilde;o da conex&atilde;o &eacute; registrado, assim, &eacute; poss&iacute;vel mostrar ao lado de cada endere&ccedil;o o percentual de tentativas de conex&atilde;o v&aacute;lidas.",apijs:"i3GEO.arvoreDeTemas.listaWMS(node)"},"34":{titulo:"Sistemas",diretorio:"classe_arvoredetemas.js",categoria:"4",pt:"O n&oacute; 'Sistemas' da &aacute;rvore de adi&ccedil;&atilde;o de temas, lista aplicativos especiais que precisam de intera&ccedil;&atilde;o com o usu&aacute;rio para a cria&ccedil;&atilde;o de uma camada.",complemento:"Alguns sistemas s&atilde;o fornecidos com a instala&ccedil;&atilde;o padr&atilde;o do i3Geo, mas cada administrador pode criar seus pr&oacute;prios.",apijs:"i3GEO.arvoreDeTemas.listaSistemas(g_sid,g_locaplic,funcao)"},"35":{titulo:"Procurar ocorr&ecirc;ncias",diretorio:"i3geo/ferramentas/busca",categoria:"5",pt:"Cada tema possui um conjunto de dados descritivos associados aos elementos geogr&aacute;ficos (tabela de atributos). A op&ccedil;&atilde;o 'procurar' realiza uma pesquisa nesses atributos e localiza as correspond&ecirc;ncias. O resultado &eacute; mostrado em uma lista de elementos que permite destacar cada um deles.",complemento:"Para fazer a busca deve-se selecionar em quais itens da tabela de atributos a mesma ser&aacute; feita, podendo-se escolher mais de um. A busca pode ser feita no mapa todo ou apenas na regi&atilde;o vis&iacute;vel do mapa.",apijs:"i3GEO.tema.dialogo.procuraratrib()"},"36":{titulo:"Topon&iacute;mia",diretorio:"i3geo/ferramentas/toponimia",categoria:"5",pt:"A topon&iacute;mia s&atilde;o os textos mostrados no mapa que identificam lugares ou elementos que constituem um tema. Os textos s&atilde;o baseados na tabela de atributos de cada tema, que cont&ecirc;m os dados descritivos de cada elemento.",complemento:"Ao inserir uma topon&iacute;mia, um novo tema &eacute; adicionado ao mapa, podendo ser exclu&iacute;do ou movimentado. Dessa forma &eacute; poss&iacute;vel incluir mais de um tema com a topon&iacute;mia. Ao inserir a topon&iacute;mia deve-se escolher o item da tabela de atributos e, caso necess&aacute;rio, pode-se modificar as op&ccedil;&otilde;es padr&atilde;o de simbologia utilizadas nos textos, como fonte, cor, m&aacute;scara, etc. &Eacute; poss&iacute;vel ainda testar as op&ccedil;&otilde;es antes de concluir a inclus&atilde;o da topon&iacute;mia.",apijs:"i3GEO.tema.dialogo.toponimia()"},"37":{titulo:"Etiquetas",diretorio:"i3geo/ferramentas/etiqueta",categoria:"5",pt:"As etiquetas s&atilde;o textos descritivos mostrados no mapa quando o mouse &eacute; estacionado por alguns instantes sobre um elemento ou utilizando a ferramenta etiqueta presente na barra de bot&otilde;es. Cada tema pode ter uma etiqueta ativa, sendo esta baseada em um item da tabela de atributos do tema.",complemento:"Para ver as etiquetas, ative a opera&ccedil;&atilde;o de identifica&ccedil;&atilde;o.",apijs:"i3GEO.tema.dialogo.etiquetas()"},"38":{titulo:"Filtro",diretorio:"i3geo/ferramentas/filtro",categoria:"5",pt:"Filtrar um tema significa definir um crit&eacute;rio para que um determinado elemento seja mostrado. Esse crit&eacute;rio &eacute; baseado nos dados descritivos (tabela de atributos). Um filtro &eacute; uma express&atilde;o que relaciona os itens da tabela de atributos e seus valores, por exemplo, 'UF' = 'SP', onde 'UF' &eacute; o nome da coluna (item) e 'SP' &eacute; o valor. As express&otilde;es podem ser definidas por meio de um 'construtor' (guia default da ferramenta) ou digitando-se diretamente a express&atilde;o. Veja <a href='http://mapserver.org/mapfile/expressions.html#mapserver-expressions' >como</a>.",complemento:"Cada tema pode ter apenas um filtro. O filtro apenas deixa de mostrar os dados no mapa, ou seja, os dados continuam na tabela de atributos. Antes de aplicar um filtro, pode-se test&aacute;-lo para verificar seu efeito. O construtor de express&otilde;es permite a utiliza&ccedil;&atilde;o de mais de uma coluna, para isso, deve-se adicionar novas linhas e escolher um conector, como 'e' ou 'ou'. Por exemplo, em um tema com os munic&iacute;pios pode-se mostrar apenas aqueles de determinados estados escolhendo-se 'colun' = 'valor' 'e' 'coluna' = 'valor'.",apijs:"i3GEO.tema.dialogo.filtro()"},"39":{titulo:"Tabela",diretorio:"i3geo/ferramentas/tabela",categoria:"5",pt:"Cada tema possui informa&ccedil;&otilde;es descritivas associadas a cada elemento, esses dados s&atilde;o conhecidos como 'tabela de atributos'. Essa op&ccedil;&atilde;o mostra os dados existentes na tabela e permite a realiza&ccedil;&atilde;o de uma s&eacute;rie de opera&ccedil;&otilde;es diretamente sobre os registros existentes, como por exemplo, sele&ccedil;&atilde;o, zoom, relat&oacute;rios e gr&aacute;ficos.",complemento:"Como o n&uacute;mero de registros de um tema pode ser grande, os dados s&atilde;o mostrados em p&aacute;ginas. Ao lado de cada registro existe uma caixa que permite marcar os registros. Os registros marcados s&atilde;o mostrados na guia 'Marcados'. As opera&ccedil;&otilde;es dispon&iacute;veis nessa ferramenta atuam sobre todos os elementos da tabela ou sobre os selecinados. Para selecionar os elementos marcados, utilize a op&ccedil;&atilde;o 'Ativa sele&ccedil;&atilde;o' na guia 'Marcados'.",apijs:"i3GEO.tema.dialogo.tabela()"},"40":{titulo:"Gr&aacute;ficos",diretorio:"i3geo/ferramentas/graficotema",categoria:"5",pt:"Permite inserir gr&aacute;ficos em cada elemento que comp&otilde;e uma camada para representar valores associados. Para a montagem de cada gr&aacute;fico &eacute; necess&aacute;rio selecionar um tema que contenha os dados que ser&atilde;o representados. Os dados s&atilde;o aqueles que encontram-se na tabela de atributos do tema.",complemento:"Ap&oacute;s selecionado o tema, &eacute; mostrada uma lista com os itens existentes na tabela de atributos. Escolha os itens que ser&atilde;o utilizados no gr&aacute;fico clicando no box que aparece na lista de itens. Cada item ir&aacute; compor uma fatia do gr&aacute;fico. Ao lado do item, &eacute; mostrada a cor que ser&aacute; utilizada na representa&ccedil;&atilde;o. Cada cor &eacute; definida em RGB. Na guia 'propriedades' &eacute; poss&iacute;vel definir propriedades de representa&ccedil;&atilde;o de cada gr&aacute;fico. As defini&ccedil;&otilde;es afetar&atilde;o a forma de cada gr&aacute;fico. Cada gr&aacute;fico adicionado &eacute; inclu&iacute;do no mapa como um novo tema.",apijs:"i3GEO.tema.dialogo.graficotema()"},"41":{titulo:"Editor de legenda",diretorio:"i3geo/ferramentas/legenda",categoria:"5",pt:"A legenda de um tema consiste nas defini&ccedil;&otilde;es dos s&iacute;mbolos utilizados na representa&ccedil;&atilde;o de cada elemento. Al&eacute;m dos s&iacute;mbolos, uma das propriedades da legenda &eacute; o tipo de classifica&ccedil;&atilde;o utilizado na representa&ccedil;&atilde;o dos dados, por exemplo, pode-se mostrar todos os elementos com um &uacute;nico s&iacute;mbolo ou agrupar elementos e utilizar s&iacute;mbolos diferentes para cada grupo. No editor, a guia 'Classes' permite definir a classifica&ccedil;&atilde;o e na guia principal s&atilde;o mostrados os s&iacute;mbolos. Quando um s&iacute;mbolo &eacute; clicado, &eacute; ativada a guia que permite definir as caracter&iacute;sticas do s&iacute;mbolo.",complemento:"As classes s&atilde;o definidas por meio de express&otilde;es que definem um tipo de filtro que ser&aacute; usado para definir que elementos fazem parte de cada classe. O editor possui alguns m&eacute;todos para defini&ccedil;&atilde;o autom&aacute;tica das classes, mas pode-se incluir classes livremente digitando-se o filtro. Veja <a href='http://mapserver.org/mapfile/class.html' >como</a>.",apijs:"i3GEO.tema.dialogo.editaLegenda()"},"42":{titulo:"Opacidade",diretorio:"i3geo/classesjs/classe_tema.js",categoria:"5",pt:"Essa op&ccedil;&atilde;o modifica a opacidade de um tema permitindo ajustar a visibilidade dos elementos em rela&ccedil;&atilde;o aos outros temas. A opacidade varia de 0 a 100, sendo 100 o mais opaco.",complemento:"",apijs:"i3GEO.tema.mudatransp(idtema)"},"43":{titulo:"Altera nome",diretorio:"i3geo/classesjs/classe_tema.js",categoria:"5",pt:"Essa op&ccedil;&atilde;o permite alterar o nome do tema. O novo nome ser&aacute; mostrado no mapa e tamb&eacute;m na legenda.",complemento:"",apijs:"i3GEO.tema.mudanome(idtema)"},"44":{titulo:"Mostrar em janela",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"5",pt:"Inclui um ret&acirc;ngulo na tela que segue a movimenta&ccedil;&atilde;o do mouse e mostra o tema escolhido. Possibilita destacar a visualiza&ccedil;&atilde;o de uma camada sobre as outras.",complemento:"",apijs:"i3GEO.navega.destacaTema.inicia()"},"45":{titulo:"Zoom para o tema",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"5",pt:"Ajusta a visualiza&ccedil;&atilde;o do mapa alterando a extens&atilde;o geogr&aacute;fica para mostrar todos os componentes de um determinado tema.",complemento:"Essa op&ccedil;&atilde;o &eacute; mostrada como um pequeno &iacute;cone localizado logo abaixo de um tema na &aacute;rvore de temas.",apijs:"i3GEO.tema.zoom(idtema)"},"46":{titulo:"Farol indicativo de escala",diretorio:"",categoria:"5",pt:"Identifica se o tema possu&iacute; uma escala compat&iacute;vel ou n&atilde;o com a escala do mapa. O farol &eacute; um &iacute;cone com cores que variam entre verde, amarelo e vermelho, conforme a escala do mapa atual. A compatibilidade da escala &eacute; definida em fun&ccedil;&atilde;o da escala da fonte dos dados cartogr&aacute;ficos utilizada pelo tema.",complemento:"Essa op&ccedil;&atilde;o &eacute; mostrada como um pequeno &iacute;cone localizado logo abaixo de um tema na &aacute;rvore de camadas."},"47":{titulo:"Alterar ordem de desenho",diretorio:"i3geo/classesjs/classe_tema.js",categoria:"5",pt:"Os temas dispon&iacute;veis no mapa s&atilde;o desenhados como camadas que se sobrep&otilde;em para compor o mapa. Como uma pilha, as camadas seguem uma ordem de desenho, sendo que na lista de temas o primeiro que &eacute; mostrado &eacute; o &uacute;ltimo desenhado. A ordem da pilha pode ser alterada clicando-se e arrastando um tema (clicando no nome do tema) ou por meio de &iacute;cones que movem para cima ou para baixo apenas uma posi&ccedil;&atilde;o.",complemento:"Quando um novo tema &eacute; adicionado ao mapa, o i3Geo ir&aacute; posicion&aacute;-lo procurando evitar alguns tipos de sobreposi&ccedil;&atilde;o. Temas RASTER ou poligonais s&atilde;o sempre inseridos abaixo dos temas lineares e pontuais.",apijs:"i3GEO.tema.sobe(idtema) ou i3GEO.tema.desce(idtema)"},"48":{titulo:"Excluir tema",diretorio:"i3geo/classesjs/classe_tema.js",categoria:"5",pt:"Exclui um tema da lista de temas dispon&iacute;veis no mapa atual. A exclus&atilde;o pode ser feita arrastando-se o tema para o &iacute;cone da 'lixeira' ou ent&atilde;o por meio de um &iacute;cone mostrado abaixo de cada tema.",complemento:"Temas locais criados pelo usu&aacute;rio n&atilde;o podem ser recuperados ap&oacute;s uma exclus&atilde;o. J&aacute; os temas que constam na lista '+Temas' poder&atilde;o ser adicionados ao mapa novamente.",apijs:"i3GEO.tema.exclui(idtema)"},"48a":{titulo:"Selecionar elementos",diretorio:"i3geo/ferramentas/selecao.js",categoria:"5",pt:"Selecionar elementos consiste em destacar um sub-conjunto do conjunto total de componentes de um tema. Algumas opera&ccedil;&otilde;es do i3Geo atuam sobre o conjunto selecionado, como buffer, exporta&ccedil;&atilde;o, etc. Os elementos selecionados s&atilde;o mostrados em uma cor especial, diferente daquela definida na legenda do tema. Os temas que possuem elementos selecionados s&atilde;o marcados com um &iacute;cone circular mostrado junto ao nome na lista de camadas. A janela de op&ccedil;&otilde;es para sele&ccedil;&atilde;o, al&eacute;m das op&ccedil;&otilde;es de tipo de opera&ccedil;&atilde;o, permite gerar gr&aacute;ficos din&acirc;micos e criar um novo tema com base nos elementos selecionados.",complemento:"Existem v&aacute;rias maneiras de fazer a sele&ccedil;&atilde;o: clicando-se sobre cada elemento, desenhando-se um ret&acirc;ngulo ou pol&iacute;gono no mapa, definindo-se uma express&atilde;o que ir&aacute; buscar os elementos aderentes (com base na tabela de atributos) ou cruzando-se um tema com outro. Tendo-se um conjunto j&aacute; definido, novos elementos podem ser acrescentados ou retirados da sele&ccedil;&atilde;o.",apijs:"i3GEO.selecao.janelaOpcoes()"},"49":{titulo:"Impress&atilde;o",diretorio:"i3geo/ferramentas/imprimir",categoria:"6",pt:"Utilize essa op&ccedil;&atilde;o para gerar uma p&aacute;gina espec&iacute;fica para impress&atilde;o do mapa. Na janela de op&ccedil;&otilde;es deve-se escolher o tipo de p&aacute;gina desejada, que pode variar desde p&aacute;ginas padronizadas em PDF at&eacute; aplicativos onde o mapa &eacute; montado de forma interativa.",complemento:"",apijs:"i3GEO.configura.funcoesBotoes"},"50":{titulo:"C&aacute;lculo de dist&acirc;ncias",diretorio:"i3geo/classesjs/classe_analise.js",categoria:"6",pt:"Ativa o modo de c&aacute;lculo de dist&acirc;ncias, permitindo que a cada clique do mouse sobre o mapa seja feito o c&aacute;lculo da dist&acirc;ncia em rela&ccedil;&atilde;o ao ponto anterior e em rela&ccedil;&atilde;o a todos os pontos clicados. O resultado &eacute; mostrado em uma janela aberta sobre o mapa. Em cada ponto &eacute; tamb&eacute;m desenhado um c&iacute;rculo representando a dist&acirc;ncia at&eacute; o &uacute;ltimo ponto.",complemento:"O c&aacute;lculo de dist&acirc;ncia &eacute; aproximado e depende da escala do mapa (quanto mais detalhado o mapa melhor). A f&oacute;rmula de c&aacute;lculo &eacute; baseada em <a href='http://www.movable-type.co.uk/scripts/latlong.html' >http://www.movable-type.co.uk/scripts/latlong.html</a>. Para parar o c&aacute;lculo basta clicar sobre um dos pontos j&aacute; inseridos.",apijs:"i3GEO.configura.funcoesBotoes"},"51":{titulo:"C&aacute;lculo de &aacute;rea",diretorio:"i3geo/classesjs/classe_analise.js",categoria:"6",pt:"Ativa o modo de c&aacute;lculo de &aacute;rea, permitindo que seja desenhado um pol&iacute;gono sobre o mapa para c&aacute;lculo da &aacute;rea. O pol&iacute;gono &eacute; criado clicando-se no mapa no local onde se quer criar um v&eacute;rtice.",complemento:"O c&aacute;lculo de dist&acirc;ncia &eacute; aproximado e depende da escala do mapa (quanto mais detalhado o mapa melhor). O c&aacute;lculo &eacute; baseado no tamanho do pixel do mapa, calculado ao iniciar a ferramenta. Esse c&aacute;lculo baseia-se na proje&ccedil;&atilde;o polic&ocirc;nica com par&acirc;metros definidos em fun&ccedil;&atilde;o da extens&atilde;o geogr&aacute;fica do mapa atual.",apijs:"i3GEO.configura.funcoesBotoes"},"52":{titulo:"Alterar interface",diretorio:"i3geo/classesjs/classe_interface.js",categoria:"6",pt:"O i3Geo pode usar diferentes interfaces para manipular a navega&ccedil;&atilde;o sobre o mapa. Por padr&atilde;o, &eacute; utilizada uma interface pr&oacute;pria, desenvolvida para o i3Geo, mas pode-se optar pelo uso do OpenLayers, Google Maps ou Google Earth.",complemento:"As funcionalidade do i3Geo s&atilde;o afetadas pela interface escolhida, sendo que algumas opera&ccedil;&otilde;es diferem de uma para outra. A maior parte das funcionalidades s&atilde;o implementadas apenas na interface padr&atilde;o. No caso do Google Earth , que permite a visualiza&ccedil;&atilde;o do mapa em 3d, &eacute; necess&aacute;rio a instala&ccedil;&atilde;o de um plugin espec&iacute;fico.",apijs:"i3GEO.configura.oMenuData"},"55":{titulo:"Extens&atilde;o geogr&aacute;fica",diretorio:"i3geo/ferramentas/mostraexten",categoria:"7",pt:"A extens&atilde;o geogr&aacute;fica &eacute; a abrang&ecirc;ncia espacial do mapa definido por meio de uma lista de coordenadas em d&eacute;cimos de grau e na ordem menor longitude, menor latitude, maior longitude, maior latitude. A extens&atilde;o geogr&aacute;fica do mapa pode ser alterada digitando-se novas coordenadas por meio dessa ferramenta.",complemento:"O resultado final do mapa quando se altera a extens&atilde;o pode n&atilde;o corresponder as espectativas, uma vez que o mapa &eacute; um ret&acirc;ngulo cujas propor&ccedil;&otilde;es podem n&atilde;o ser compat&iacute;veis com as coordenadas digitadas.",apijs:"i3GEO.mapa.dialogo.mostraExten"},"56":{titulo:"Deslocamento do mapa - PAN",diretorio:"",categoria:"7",pt:"O deslocamento do mapa do tipo PAN &eacute; realizado de forma interativa, deve-se clicar em um ponto do mapa e arrastar o mouse para a nova posi&ccedil;&atilde;o. O resultado &eacute; o deslocamento da extens&atilde;o geogr&aacute;fica do mapa movendo-se o ponto inicial at&eacute; o segundo ponto.",complemento:"Caso o primeiro ponto seja muito pr&oacute;ximo do segundo, ou se o usu&aacute;rio clicar e soltar o mouse, o ponto clicado &eacute; movido para o centro do mapa.",apijs:""},"57":{titulo:"Deslocamento direcional",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"7",pt:"O deslocamento direcional movimenta o mapa para o norte, sul, leste ou oeste uma dist&acirc;ncia fixa.",complemento:"Essa forma de deslocamento exige que o usu&aacute;rio clique apenas uma vez em um bot&atilde;o para realizar o deslocamento.",apijs:"i3GEO.navega.panFixo(locaplic,sid,direcao,w,h,escala)"},"58":{titulo:"Rosa dos ventos",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"7",pt:"A rosa dos ventos &eacute; uma imagem mostrada na posi&ccedil;&atilde;o atual do mouse e que possibilita deslocar, aproximar ou afastar o mapa. A rosa aparece quando o mouse &eacute; estacionado por alguns instantes sobre o mapa e permite movimentar o mapa sem a necessidade de abandonar a ferramenta escolhida no momento.",complemento:"A rosa dos ventos &eacute; opcional e por padr&atilde;o n&atilde;o fica habilitada.",apijs:"i3GEO.navega.mostraRosaDosVentos() e i3GEO.eventos.MOUSEPARADO"},"59":{titulo:"Aproximar",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"7",pt:"Aproxima o mapa tendo como refer&ecirc;ncia o ponto central. A aproxima&ccedil;&atilde;o ocorre por um fator fixo, modificando a escala atual.",complemento:"",apijs:"i3GEO.navega.zoomin()"},"60":{titulo:"Afastar",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"7",pt:"Afasta o mapa tendo como refer&ecirc;ncia o ponto central. O afastamento ocorre por um fator fixo, modificando a escala atual.",complemento:"",apijs:"i3GEO.navega.zoomout()"},"61":{titulo:"Aproximar regi&atilde;o",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"7",pt:"Ao ativar essa op&ccedil;&atilde;o deve-se desenhar um ret&acirc;ngulo sobre o mapa abrangendo a regi&atilde;o que se quer enquadrar a &aacute;rea de visualiza&ccedil;&atilde;o. O resultado &eacute; a aproxima&ccedil;&atilde;o do mapa em uma determinada regi&atilde;o.",complemento:"Para desenhar o ret&acirc;ngulo deve-se clicar em um ponto do mapa e arrastar o mouse. A medida que isso ocorre, &eacute; desenhado um ret&acirc;ngulo sobre o mapa.",apijs:"i3GEO.navega.zoomBox"},"62":{titulo:"Definir escala",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"7",pt:"A altera&ccedil;&atilde;o da escala do mapa &eacute; uma das formas de aproximar ou afastar a visualiza&ccedil;&atilde;o. Nessa op&ccedil;&atilde;o, para alterar a escala deve-se digitar o novo valor do denominador da escala que ser&aacute; aplicado.",complemento:"",apijs:"i3GEO.navega.aplicaEscala(locaplic,sid,escala)"},"63":{titulo:"Centralizar em um ponto",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"7",pt:"Essa op&ccedil;&atilde;o desloca o centro do mapa atual para um determinado ponto com coordenadas conhecidas. A escala do mapa n&atilde;o &eacute; alterada.",complemento:"Para usar essa opera&ccedil;&atilde;o, digite as coordenadas desejadas nos campos de formul&aacute;rio utilizados para mostrar a coordenada geogr&aacute;fica atual do mouse.",apijs:"i3GEO.navega.zoomponto(locaplic,sid,x,y)"},"64":{titulo:"Aproximar ou afastar din&acirc;mico",diretorio:"i3geo/classesjs/classe_barradebotoes.js",categoria:"7",pt:"A opera&ccedil;&atilde;o de zoom din&acirc;mico permite afastar ou aproximar o mapa por meio de um controle deslizante. O usu&aacute;rio move um controle para cima ou para baixo e ao soltar o mouse o mapa &eacute; modificado.",complemento:"",apijs:"i3GEO.barraDeBotoes.ativaBarraDeZoom()"},"65":{titulo:"Zoom pr&oacute;ximo ou anterior",diretorio:"i3geo/classesjs/classe_gadgets.js",categoria:"7",pt:"Ao navegar pelo mapa as posi&ccedil;&otilde;es obtidas s&atilde;o armazenadas em mem&oacute;ria. Essa op&ccedil;&atilde;o permite reestabelecer a abrang&ecirc;ncia espacial anterior ou posterior, se houver, de forma sequencial.",complemento:"Essa opera&ccedil;&atilde;o n&atilde;o restaura a situa&ccedil;&atilde;o do mapa apenas modifica a abrang&ecirc;ncia espacial com base nos temas vis&iacute;veis no mapa atual.",apijs:"i3GEO.gadgets.mostraHistoricoZoom(id)"},"66":{titulo:"Mapa de refer&ecirc;ncia",diretorio:"i3geo/classesjs/classe_maparef.js",categoria:"7",pt:"O mapa de refer&ecirc;ncia consiste em uma imagem com escala diferente do corpo do mapa atual, permitindo que a abrang&ecirc;ncia geogr&aacute;fica atual seja mostrada em um contexto mais amplo. A navega&ccedil;&atilde;o pode ser feito sobre o mapa de refer&ecirc;ncia, deslocando-se o ret&acirc;ngulo que mostra a abrang&ecirc;ncia atual para um outro local.",complemento:"O mapa de refer&ecirc;ncia pode ser fixo ou n&atilde;o. O mapa de refer&ecirc;ncia din&acirc;mico pode ser montado tendo como base as camadas vistas no mapa atual. Nesse caso, a topon&iacute;mia especificada e a simbologia podem gerar mapas com pouca visibilidade.",apijs:"i3GEO.maparef"},"67":{titulo:"Extens&atilde;o total",diretorio:"",categoria:"7",pt:"Ao iniciar o mapa, a primeira extens&atilde;o geogr&aacute;fica utilizada para mostrar o mapa &eacute; armazenada em mem&oacute;ria. Essa op&ccedil;&atilde;o permite aplicar essa extens&atilde;o ao mapa atual, restaurando a abrang&ecirc;ncia geogr&aacute;fica inicial.",complemento:"A aplica&ccedil;&atilde;o da extens&atilde;o total n&atilde;o restaura a situa&ccedil;&atilde;o inicial de camadas ligadas e desligadas, mantendo a situa&ccedil;&atilde;o do mapa atual.",apijs:""},"68":{titulo:"Google Maps",diretorio:"i3geo/ferramentas/googlemaps",categoria:"7",pt:"Essa op&ccedil;&atilde;o mostra em uma janela interna o mapa produzido pelo Google Maps. A janela &eacute; sincronizada com o mapa mostrado no i3Geo, permitindo que a navega&ccedil;&atilde;o em um ou noutro modifique os dois mapas.",complemento:"Al&eacute;m das op&ccedil;&otilde;es de tipo de mapa &eacute; poss&iacute;vel tra&ccedil;ar rotas no Google Maps e mostrar nessa janela o mapa visto no i3Geo. Ao tra&ccedil;ar uma rota, o resultado &eacute; inclu&iacute;do no i3Geo como uma nova camada, que pode inclusive ser obtida via download. Quando o mapa do i3Geo &eacute; inclu&iacute;do no mapa do Google, os pol&iacute;gonos com s&iacute;mbolos n&atilde;o transparentes podem encubrir o mapa, nesse caso, altere a legenda das camadas para permitir a visualiza&ccedil;&atilde;o correta.",apijs:"i3GEO.configura.funcoesBotoes a chave de acesso da API do Google Maps &eacute; definida em ms_configura.php"},"69":{titulo:"Visualiza&ccedil;&atilde;o 3d",diretorio:"i3geo/ferramentas/3d",categoria:"7",pt:"A visualiza&ccedil;&atilde;o em 3d gera um arquivo no formato 'wrl' considerando a abrang&ecirc;ncia espacial do mapa atual. Para a gera&ccedil;&atilde;o do modelo &eacute; utilizado um mapa de fundo com a representa&ccedil;&atilde;o da altimetria, esse mapa &eacute; obtido por meio de um servi&ccedil;o WMS baseado nos dados SRTM.",complemento:"Para ver o modelo 3d &eacute; necess&aacute;rio a instala&ccedil;&atilde;o de um plugin no navegador, ou ent&atilde;o, deve-se salvar o arquivo para visualiza&ccedil;&atilde;o em algum outro software. O modelo 3d &eacute; simplificado, permitindo apenas a navega&ccedil;&atilde;o b&aacute;sica.",apijs:"i3GEO.configura.funcoesBotoes"},"70":{titulo:"Identificar",diretorio:"i3geo/ferramentas/identifica",categoria:"8",pt:"Com essa ferramenta ativa pode-se clicar em um elemento do mapa e visualizar os atributos associados. Quando a janela &eacute; aberta, deve-se escolher o tema que ser&aacute; identificado em uma lista. Al&eacute;m dos temas, s&atilde;o mostrados alguns sistemas especiais que permitem a busca de dados em fun&ccedil;&atilde;o da coordenada clicada, por exemplo, &eacute; poss&iacute;vel abrir uma p&aacute;gina do IBGE com informa&ccedil;&otilde;es sobre munic&iacute;pios.",complemento:"Alguns temas permitem a identifica&ccedil;&atilde;o sem o clique no mapa, os dados s&atilde;o mostrados quando o mouse &eacute; estacionado sobre um ponto no mapa. Em 'Buscadores web' &eacute; mostrada uma lista de sistemas que permitem a busca de dados por meio de coordenadas. A guia propriedades permite definir a toler&acirc;ncia de busca, ou seja, quantos pixels ser&atilde;o considerados entorno do ponto clicado.",apijs:"i3GEO.configura.funcoesBotoes"},"71":{titulo:"Busca r&aacute;pida",diretorio:"i3geo/ferramentas/buscarapida",categoria:"8",pt:"Essa op&ccedil;&atilde;o permite localizar dados com base em palavras ou frases, por exemplo 'S&atilde;o Paulo'. A busca &eacute; feita nos temas do mapa ou em um Web Service cujo banco de dados pode variar em cada instala&ccedil;&atilde;o do i3Geo. Quando um lugar &eacute; encontrado, uma nova janela &eacute; mostrada na tela com o resultado. Clicando-se nos links dispon&iacute;veis, o mapa &eacute; deslocado para o lugar definido e uma nova camada &eacute; adicionada ao mapa.",complemento:"A busca &eacute; feita tamb&eacute;m no Web Service do Google, permitindo a localiza&ccedil;&atilde;o de endere&ccedil;os. Utilize as propriedades para definir se a busca ser&aacute; feita ou n&atilde;o nos temas existentes no mapa. Apenas os temas que tiverem sido preparados pelo administrador do i3Geo pode ser pesquisado.",apijs:"i3GEO.gadgets.mostraBuscaRapida(id)",gadget:"ferramentas/buscarapida/gadget.php?palavra=tanabi&locaplic=../../../i3geo"},"72":{titulo:"Localizar IP",diretorio:"i3geo/classesjs/classe_navega.js",categoria:"8",pt:"Ao clicar nesse &iacute;cone &eacute; mostrado um ponto no mapa identificando a coordenada geogr&aacute;fica da localiza&ccedil;&atilde;o do usu&aacute;rio.",complemento:"Essa fun&ccedil;&atilde;o &eacute; baseada em uma tabela de correspond&ecirc;ncia entre o n&uacute;mero IP e localidades. A localiza&ccedil;&atilde;o ser&aacute; mais precisa quanto for essa tabela de correspond&ecirc;ncia.",apijs:"i3GEO.navega.zoomIP()"},"73":{titulo:"Wikipedia",diretorio:"i3geo/ferramentas/wiki",categoria:"8",pt:"A <a href='http://pt.wikipedia.org/wiki/P%C3%A1gina_principal' target='_blank' >Wikipedia</a> &eacute; uma base de conhecimento livre. Alguns dos artigos existentes s&atilde;o georreferenciados, permitindo sua busca por regi&atilde;o geogr&aacute;fica. Essa ferramenta abre uma janela sobre o mapa procurando resultados na Wikipedia para a regi&atilde;o de abrang&ecirc;ncia do mapa.",complemento:"Para maior performance, o mapa deve estar na escala 1:500.000 ou maior. Ao navegar no mapa, a lista de lugares &eacute; atualizada.",apijs:"i3GEO.configura"},"74":{titulo:"Localizar fotos",diretorio:"i3geo/ferramentas/buscafotos",categoria:"8",pt:"Existem v&aacute;rios servi&ccedil;os na Internet que permitem cadastrar e visualizar fotos georreferenciadas. Essa ferramenta procura fotos para a regi&atilde;o de abrang&ecirc;ncia do mapa nos servi&ccedil;os Panor&acirc;mio, Flicker e Locr.",complemento:"Para maior performance, o mapa deve estar na escala 1:150.000 ou maior.Ao passar o mouse sobre a foto, a sua localiza&ccedil;&atilde;o &eacute; mostrada no mapa.",apijs:"i3GEO.configura"},"75":{titulo:"Conflu&ecirc;ncias",diretorio:"i3geo/ferramentas/confluence",categoria:"8",pt:"O projeto 'Confluences' registra expedi&ccedil;&otilde;es aos lugares na terra cuja coordenada geogr&aacute;fica corresponde ao cruzamento de 1 grau por 1 grau. Essa ferramenta permite localizar as conflu&ecirc;ncias no mapa que est&aacute; sendo visto e abrir a p&aacute;gina correspondente.",complemento:"O mapa deve estar pelo menos na escala 1:2.000.000 para que as conflu&ecirc;ncias sejam mostradas.",apijs:"i3GEO.navega.dialogo.confluence"},"76":{titulo:"Conex&atilde;o WMS-T",diretorio:"i3geo/ferramentas/wmstime",categoria:"4",pt:"Uma conex&atilde;o WMS-T permite que dados dispon&iacute;veis em outros servidores sejam inclu&iacute;dos como camadas no i3Geo. Na ferramenta de conex&atilde;o &eacute; mostrada uma lista de endere&ccedil;os previamente cadastrados, mas pode-se digitar um outro endere&ccedil;o qualquer, desde que seja um servi&ccedil;o no padr&atilde;o WMS-T. Ap&oacute;s ser escolhido o servi&ccedil;o, deve-se definir o per&iacute;odo das imagens e o intervalo desejado (di&aacute;rio, mensal ou anual).",complemento:"Ap&oacute;s definido o per&iacute;odo, a ferramenta far&aacute; a busca das imagens para sua apresenta&ccedil;&atilde;o em sequ&ecirc;ncia. Ao parar a anima&ccedil;&atilde;o, a imagem mostrada poder&aacute; ser acrescentada ao mapa como uma nova camada. A visualiza&ccedil;&atilde;o das imagens s&oacute; &eacute; poss&iacute;vel ap&oacute;s a carga de todas as datas selecionadas. Caso seja necess&aacute;rio cancelar a carga de uma ou mais datas, deve-se clicar em 'parar' na lista de imagens que est&atilde;o sendo carregadas.",apijs:"i3GEO.arvoreDeTemas"},"78":{titulo:"Zoom para a sele&ccedil;&atilde;o",diretorio:"i3geo/classesjs/classe_tema.js",categoria:"5",pt:"Ajusta a extens&atilde;o geogr&aacute;fica do mapa tendo como base os elementos selecionados de um tema.",complemento:"Essa op&ccedil;&atilde;o &eacute; mostrada como um pequeno &iacute;cone, localizado ao lado do nome do tema, quando este possuir sele&ccedil;&atilde;o.",apijs:"i3GEO.tema.zoomsel(idtema)"},"79":{titulo:"Exporta SLD",diretorio:"i3geo/classesjs/classe_tema.js",categoria:"5",pt:"Exporta a legenda atual do tema para o formato SLD. O XML &eacute; mostrado na tela.",complemento:"O formato SLD &eacute; utilizado em clientes WMS. Essa fun&ccedil;&atilde;o objetiva auxiliar a constru&ccedil;&atilde;o de web Services OGC.",apijs:"i3GEO.tema.dialogo.sld(idtema) Esta op&ccedil;&atilde;o n&atilde;o possu&iacute; um diret&oacute;rio em i3geo/ferramentas. O XML &eacute; gerado diretamente na tela pelo programa classesphp/mapa_controle.php"},"80":{titulo:"Inserir gr&aacute;fico interativamente",diretorio:"i3geo/ferramentas/inseregrafico",categoria:"5",pt:"Insere gr&aacute;ficos em um elemento de um tema de forma interativa.",complemento:"Para inserir gr&aacute;ficos no mapa, &eacute; necess&aacute;rio escolher os atributos do tema que ser&atilde;o considerados para a gera&ccedil;&atilde;o do gr&aacute;fico. Feito isso, clique sobre um elemento do tema utilizado e o gr&aacute;fico ser&aacute; inserido no mapa na forma de um novo tema.",apijs:"i3GEO.mapa.dialogo.cliqueGrafico()"},"81":{titulo:"Converter tema em KML",diretorio:"i3geo/ferramentas/convertekml",categoria:"5",pt:"Convertendo um tema em KML &eacute; poss&iacute;vel utilizar outros softwares para visualizar os dados. O i3Geo permite isso de duas maneiras, a primeira utiliza um WMS embutido dentro de um KML, ou seja, os dados s&atilde;o vistos como uma imagem raster georreferenciada, sendo que as coordenadas e atributos n&atilde;o s&atilde;o acess&iacute;veis diretamente.Dessa forma, grandes volumes de dados podem ser utilizados, pois n&atilde;o ocorre o download dos arquivos.<p>A segunda maneira converte os dados de um tema em arquivos KML compactados contendo as coordenadas e atributos dos elementos que comp&otilde;em o tema.",complemento:"KML &eacute; um padr&atilde;o internacional e n&atilde;o &eacute; espec&iacute;fico do i3Geo. Conforme as caracter&iacute;sticas de cada servidor onde o i3Geo estiver instalado, o KML poder&aacute; permanecer dispon&iacute;vel por per&iacute;odos de tempo vari&aacute;veis. Para usar o KML no Google Earth, utilize a op&ccedil;&atilde;o desse software chamada 'adicionar link de rede'",apijs:"i3GEO.mapa.dialogo.convertekml()"},"82":{titulo:"Download",diretorio:"i3geo/ferramentas/download",categoria:"2",pt:"Permite o download de um tema escolhido. No caso de dados vetoriais derivados de outros temas ou camadas com elementos selecionados, os dados s&atilde;o sempre fornecidos no formato 'shapefile'. Nos outros casos, o arquivo fornecido depender&aacute; da configura&ccedil;&atilde;o de cada camada, mas, por padr&atilde;o, os dados s&atilde;o fornecidos em 'shapefile'",complemento:"",apijs:"i3GEO.tema.dialogo.download()"},"83":{titulo:"Inserir texto interativamente",diretorio:"i3geo/ferramentas/inseretxt",categoria:"5",pt:"Insere textos em local do mapa de forma interativa.",complemento:"Voc&ecirc; pode inserir um texto espec&iacute;fico no mapa simplesmente digitando o texto na janela da ferramenta e clicando no local desejado no mapa, ou ainda utilizar os atributos de uma camada para capturar o texto da regi&atilde;o clicada.",apijs:"i3GEO.mapa.dialogo.cliqueTexto()"},"84":{titulo:"Gr&aacute;fico interativo",diretorio:"i3geo/ferramentas/graficointerativo1",categoria:"3",pt:"Gerador de representa&ccedil;&atilde;o gr&aacute;fica de dados tabulares. Abre uma janela flutuante onde o usu&aacute;rio pode escolher os dados e o tipo de gr&aacute;fico desejado. Os dados s&atilde;o baseados em um dos temas existentes no mapa.",complemento:"Existem v&aacute;rias op&ccedil;&otilde;es de tratamento dos dados que permitem, por exemplo, mostrar os percentuais ou os dados brutos. Pode-se ainda ativar a navega&ccedil;&atilde;o din&acirc;mica, o que permite atualizar o gr&aacute;fico conforme &eacute; feita a navega&ccedil;&atilde;o sobre o mapa.",apijs:"i3GEO.analise.dialogo.graficoInterativo1()"},"85":{titulo:"Miniaturas",diretorio:"i3geo/ferramentas/carouseltemas",categoria:"6",pt:"Abre uma janela flutuante que mostra imagens miniatura de cada tema existente na &aacute;rvore de temas. O usu&aacute;rio pode clicar em uma das imagens para adicionar o tema ao mapa atual.",complemento:"As miniaturas devem existir previamente para aparecerem nessa ferramenta. Para gerar as miniaturas, o administrador do i3Geo pode usar o sistema de administra&ccedil;&atilde;o.",apijs:"i3GEO.arvoreDeTemas.dialogo.carouselTemas()"},"86":{titulo:"Editor SQL",diretorio:"i3geo/ferramentas/editorsql",categoria:"5",pt:"Permite modificar o SQL utilizado para compor os dados referentes ao tema. Apenas temas baseados em bancos de dados podem utilizar essa fun&ccedil;&atilde;o, sendo que o administrador do i3Geo pode bloque&aacute;-la utilizando do sistema de administra&ccedil;&atilde;o. As fun&ccedil;&otilde;es SQL de modifica&ccedil;&atilde;o de dados n&atilde;o s&atilde;o suportadas (UPDATE, INSERT, DELETE, etc.)",complemento:"O Mapserver utiliza uma express&atilde;o na linguagem SQL para definir os dados que ir&atilde;o compor um tema. A edi&ccedil;&atilde;o do SQL possibilita o uso de express&otilde;es customizadas, baseadas na sintaxe SQL que o banco de dados utilizado suportar. A janela de di&aacute;logo permite ainda listar as colunas dispon&iacute;veis bem como os dados de cada coluna, facilitando a defini&ccedil;&atilde;o do novo SQL.",apijs:"i3GEO.tema.dialogo.editorsql()"},"87":{titulo:"Rede Metar",diretorio:"i3geo/ferramentas/metar",categoria:"8",pt:"A rede <a href='http://weather.noaa.gov/' target='_blank' >metar</a> reune dados de esta&ccedil;&otilde;es meteorol&oacute;gicas espalhadas por toto o mundo. Essa ferramenta mostra as esta&ccedil;&otilde;es existentes na extens&atilde;o geogr&aacute;fica do mapa",complemento:"Os dados da rede Metar s&atilde;o acessados indiretamente por meio dos Web Services do site Geonames.",apijs:"i3GEO.navega.dialogo.metar"},"88":{titulo:"Linha do tempo",diretorio:"i3geo/ferramentas/linhadotempo",categoria:"3",pt:"Constr&oacute;i um gr&aacute;fico do tipo 'linha do tempo' tendo como fonte dos dados a tabela de atributos de um tema. Veja: <a href='http://www.simile-widgets.org/timeline/' target=_blank >Simline</a>",complemento:"Ao navegar pelo mapa, o gr&aacute;fico &eacute; atualizado sendo utilizado apenas os dados existentes na extens&atilde;o do mapa. Ao passar o mouse sobre um dos nomes mostrados no gr&aacute;fico, &eacute; indicado a posi&ccedil;&atilde;o no mapa. Ao ser clicado um &iacute;cone no gr&aacute;fico, abre-se um bal&atilde;o com informa&ccedil;&otilde;es adicionais, podendo incluir links e imagens. O gr&aacute;fico s&oacute; &eacute; mostrado para os temas que estiverem configurados pelo administrador do i3Geo.",apijs:"i3GEO.configura"},"89":{titulo:"Tipo de imagem",diretorio:"i3geo/ferramentas/outputformat",categoria:"1",pt:"Modifica o tipo de imagem utilizada na gera&ccedil;&atilde;o do mapa.",complemento:"Modifica o par&acirc;metro OUTPUTFORMAT do mapa em uso permitindo-se escolher entre PNG e JPEG com tecnologia de gera&ccedil;&atilde;o AGG ou GD.",apijs:"i3GEO.mapa.dialogo.outputformat()"},"90":{titulo:"Cortina",diretorio:"i3geo/ferramentas/cortina",categoria:"5",pt:"Permite mostrar e esconder uma camada existente no mapa em um movimento cont&iacute;nuo. O efeito 'cortina' permite comparar um tema com outro.",complemento:"",apijs:"i3GEO.tema.dialogo.cortina()"},"91":{titulo:"Aplicar SLD",diretorio:"i3geo/classesjs/classe_tema.js",categoria:"5",pt:"Aplica um arquivo XML, no formato SLD, ao tema ativo.",complemento:"SLD &eacute; um formato padr&atilde;o que permite definir filtros e simbologia. V&aacute;rios softwraes permitem criar arquivos nesse padr&atilde;o.",apijs:"i3GEO.tema.dialogo.aplicarsld()"},"92":{titulo:"Salvar o mapfile",diretorio:"i3geo/ferramentas/salvamapfile",categoria:"5",pt:"Salva as defini&ccedil;&otilde;es da camada no arquivo mapfile de origem",complemento:"Essa op&ccedil;&atilde;o s&oacute; &eacute; ativada para usu&aacute;rios que s&atilde;o administradores. Permite que a camada seja alterada, por exemplo, modificando-se a legenda, e que o resultado seja salvo nas defini&ccedil;&otilde;es originais da camada.",apijs:"i3GEO.tema.dialogo.salvaMapfile()"},"93":{titulo:"Coment&aacute;rios",diretorio:"i3geo/ferramentas/comentarios",categoria:"5",pt:"Mostra os coment&aacute;rios existentes sobre o tema e permite ao usu&aacute;rio inserir novos",complemento:"Para entar com um coment&aacute;rio, o usu&aacute;rio precisa ser autenticado em alguma das redes sociais compat&iacute;veis com a rotina de login dispon&iacute;vel no i3Geo",apijs:"i3GEO.tema.dialogo.comentario()"},"94":{titulo:"Centro m&eacute;dio",diretorio:"i3geo/ferramentas/centromassa",categoria:"3",pt:"O centro m&eacute;dio &eacute; uma medida da distribui&ccedil;&atilde;o de um conjunto de pontos. Sendo definido por Gerardi & Silva (1980) como: o ponto que minimiza a soma das dist&acirc;ncias quadr&aacute;ticas a todos os outros pontos do plano",complemento:"Mais detalhes em http://www.criminologia-rsm.org/LinkClick.aspx?fileticket=XT%2BDy%2BNyrZM%3D&tabid=484&mid=1614",apijs:"i3GEO.analise.dialogo.centromassa()"},"95":{titulo:"Temas mais populares",diretorio:"",categoria:"4",pt:"Cada vez que um usu&aacute;rio adiciona uma camada ao mapa, por meio do cat&aacute;logo de temas, &eacute; feito um registro no banco de dados de administra&ccedil;&atilde;o. Esse registro &eacute; cumulativo e permite classificar os temas conforme sua popularidade.",complemento:"",apijs:"i3GEO.arvoreDeTemas"},"96":{titulo:"Gr&aacute;fico de perfil",diretorio:"",categoria:"3",pt:"Cria um gr&aacute;fico de perfil com base em um conjunto de dados contendo os valores de Z.",complemento:"Os valores de Z podem ser obtidos de um tema ou de um servi&ccedil;o do tipo Google API",apijs:"i3GEO.analise"},"97":{titulo:"Filtro de camadas",diretorio:"",categoria:"7",pt:"Filtra as camadas que s&atilde;o mostradas na &aacute;rvore de camadas conforme as caracter&iacute;sticas de cada uma.",complemento:"",apijs:"i3GEO.arvoreDeCamadas.dialogo.filtro"},"98":{titulo:"Importar WMC",diretorio:"i3geo/ferramentas/importarwmc",categoria:"4",pt:"Adiciona ao mapa camadas definidas em um arquivo XML no padr&atilde;o WMC 'Web Map Context'. O WMC permite que mapas sejam transferidos entre aplica&ccedil;&otilde;es.",complemento:"O arquivo XML pode estar em um servidor ou pode ser feito o upload para o servidor do i3Geo",apijs:"i3GEO.arvoreDeTemas.dialogo.importarwmc()"},"99":{titulo:"Tela remota",diretorio:"i3geo/ferramentas/telaremota",categoria:"7",pt:"Cria um link que permite abrir o mapa atual em outro computador ou navegador. O mapa clonado &eacute; atualizado conforme o original for sendo modificado.",complemento:"Essa funcionalidade permite que um mapa seja mostrado em uma tela remota com uma interface diferente da original. &Uacute;til para proje&ccedil;&atilde;o em tel&otilde;es e salas de situa&ccedil;&atilde;o.",apijs:"i3GEO.mapa.dialogo.telaRemota()"},"100":{titulo:"Upload KML",diretorio:"i3geo/ferramentas/uploadkml",categoria:"4",pt:"Permite que o usu&aacute;rio fa&ccedil;a o upload de um arquivo KML ou KMZ para o servidor para que seja acrescentado como uma camada ao mapa.",complemento:"O arquivo &eacute; armazenado no servidor temporariamente. &Eacute; necess&aacute;rio que o usu&aacute;rio saiba qual o tipo de elementos existentes no arquivo KML e qual o nome do folder que ser&aacute; utilizado.",apijs:"i3GEO.arvoreDeTemas.dialogo.uploadkml()"},"101":{titulo:"Temporizador",diretorio:"",categoria:"5",pt:"Aplica um temporizador que atualiza uma determinada camada ap&oacute;s um intervalo de tempo e de forma cont&iacute;nua. Para finalizar o temporizador, digite o ou vazio e aplique novamente.",complemento:"",apijs:"i3GEO.tema.temporizador()"},"102":{titulo:"Opacidade interativa",diretorio:"i3geo/ferramentas/opacidademapa",categoria:"7",pt:"Altera a opacidade do mapa de forma interativa. Aplica-se aos temas que n&atilde;o est&atilde;o definidos como 'fundo'. A altera&ccedil;&atilde;o &eacute; feita diretamente no objeto HTML, sendo que o efeito &eacute; imediato.",complemento:"",apijs:"i3GEO.mapa.dialogo.opacidade()"},"103":{titulo:"Upload de GPX",diretorio:"i3geo/ferramentas/uploadgpx",categoria:"4",pt:"Permite que um arquivo do tipo GPX, normalmente gerado por programas que utilizam GPS, seja enviado ao servidor e inclu&iacute;do no mapa como uma nova camada. O arquivo GPX ser&aacute; armazenado no servidor onde o i3geo est&aacute; instalado e permanecer&aacute; l&aacute; at&eacute; que os arquivos tempor&aacute;rios sejam apagados.",complemento:"N&atilde;o utilize essa op&ccedil;&atilde;o se existir alguma restri&ccedil;&atilde;o ao uso do arquivo e se a pol&iacute;tica de acesso aos dados, definidas pela entidade que hospeda o i3geo, n&atilde;o for compat&iacute;velcom essas restri&ccedil;&otilde;es.",apijs:"i3GEO.arvoreDeTemas.dialogo.uploadgpx()"},"104":{titulo:"Upload de KML",diretorio:"i3geo/ferramentas/uploadkml",categoria:"4",pt:"Permite que um arquivo do tipo KML, seja enviado ao servidor e inclu&iacute;do no mapa como uma nova camada. O arquivo GPX ser&aacute; armazenado no servidor onde o i3geo est&aacute; instalado e permanecer&aacute; l&aacute; at&eacute; que os arquivos tempor&aacute;rios sejam apagados.",complemento:"N&atilde;o utilize essa op&ccedil;&atilde;o se existir alguma restri&ccedil;&atilde;o ao uso do arquivo e se a pol&iacute;tica de acesso aos dados, definidas pela entidade que hospeda o i3geo, n&atilde;o for compat&iacute;velcom essas restri&ccedil;&otilde;es.",apijs:"i3GEO.arvoreDeTemas.dialogo.uploadkml()"},"105":{titulo:"Conex&atilde;o KML",diretorio:"i3geo/ferramentas/carregakml",categoria:"4",pt:"Cria um novo layer com base no endere&ccedil;o (url) de um arquivo KML. O layer &eacute; baseado em uma conex&atilde;o OGR.",complemento:"S&atilde;o criadas 3 novas camadas no mapa, uma para pontos, uma para linhas e outra para os pol&iacute;gonos. N&atilde;o necessariamente existir&atilde;o elementos nas tr&ecirc;s camadas.",apijs:"i3GEO.arvoreDeTemas.carregakml()"},"106":{titulo:"Conex&atilde;o GeoJson",diretorio:"i3geo/ferramentas/conectargeojson",categoria:"4",pt:"Cria um novo layer com base no endere&ccedil;o (url) de um arquivo no formato GeoJson. O layer &eacute; baseado em uma conex&atilde;o OGR.",complemento:"S&atilde;o criadas 3 novas camadas no mapa, uma para pontos, uma para linhas e outra para os pol&iacute;gonos. N&atilde;o necessariamente existir&atilde;o elementos nas tr&ecirc;s camadas.",apijs:"i3GEO.arvoreDeTemas.conectargeojson()"},"107":{titulo:"Anima&ccedil;&atilde;o",diretorio:"i3geo/ferramentas/animacao",categoria:"1",pt:"Mostra camadas em uma sequ&ecirc;ncia definida pelo usu&aacute;rio e em um determinado intervalo de tempo. As camadas s&atilde;o automaticamente desligadas e ligadas, formando uma sequ&ecirc;ncia que proporciona um efeito de anima&ccedil;&atilde;o",complemento:"",apijs:"i3GEO.mapa.dialogo.animacao()"},"108":{titulo:"Mapa tem&aacute;tico 3d",diretorio:"i3geo/ferramentas/tme",categoria:"5",pt:"Cria um arquivo no formato KML, representando os dados de uma coluna da tabela de atributos como elementos em 3d. Mais detalhes em http://thematicmapping.org/",complemento:"",apijs:"i3GEO.tema.dialogo.tme()"},"109":{titulo:"Busca de metadados na INDE",diretorio:"i3geo/ferramentas/buscainde",categoria:"8",pt:"Busca metadados no banco de dados da Infraestrutura Nacional de Dados Espaciais (INDE) do Brasil.",complemento:"A busca ainda &eacute; experimental, permitindo apenas a localiza&ccedil;&atilde;o dos registros, sem que o tema possa ser adicionado diretamente ao mapa.",apijs:"i3GEO.arvoreDeTemas.dialogo.buscainde()"},"110":{titulo:"Remove camadas em lote",diretorio:"i3geo/ferramentas/excluirarvore",categoria:"6",pt:"Lista as camadas que est&atilde;o no mapa para que o usu&aacute;rio escolha quais deseja remover. As camadas utilizadas no in&iacute;cio do mapa aparecem desmarcadas na lista.",complemento:"",apijs:"i3GEO.arvoreDeCamadas.dialogo.excluir()"},"111":{titulo:"Localiza regi&otilde;es cadastradas",diretorio:"i3geo/ferramentas/metaestat",categoria:"6",pt:"Lista as regi&otilde;es cadastradas no sistema de metadados estat&iacute;sticos conforme a hierarquia definida. Conforme uma regi&atilde;o &eacute; escolhida, o mapa tem a extens&atilde;o geogr&aacute;fica alterada, destacando a escolha. Essa mesma ferramenta &eacute; usada para aplicar filtros. Os filtros funcionam apenas nas camadas que forem oriundas da aplica&ccedil;&atilde;o de gera&ccedil;&atilde;o de cartogramas estat&iacute;sticos.",complemento:"",apijs:"i3GEO.mapa.dialogo.locregiao()"},"112":{titulo:"&Aacute;rvore de endere&ccedil;os WMS Metaestat",diretorio:"classe_arvoredetemas.js",categoria:"4",pt:"Mostra os WMS cuja origem &eacute; o sistema de metadados estat&iacute;sticos. Esse sistema apresenta cartogramas gerados de forma din&acirc;mica no padr&atilde;o WMS-Time.",complemento:"",apijs:"i3GEO.arvoreDeTemas.listaWMSmetaestat(node)"},"113":{titulo:"Marcador",diretorio:"classe_marcador.js",categoria:"7",pt:"Os marcadores permitem armazenar a regi&atilde;o de abrang&ecirc;ncia do mapa que est&aacute; sendo visto para que seja poss&iacute;vel voltar a essa regi&atilde;o. Para cinar as op&ccedil;&otilde;es de marca&ccedil;&atilde;o utilize a op&ccedil;&atilde;o Marcadores existente no menu suspenso. O menu permite remover marcadores, exportar, importar e converter em shapefile. Os marcadores s&atilde;o mantidos como cookies no navegador, por isso, ao limpar o seu hist&oacute;rico os registros podem ser perdidos. Para evitar isso, exporte seus marcadores como texto e depois importe-os novamente.",complemento:"",apijs:"i3GEO.marcador.prompt()"},"114":{titulo:"Visualizador INDE",diretorio:"i3geo/ferramentas/vinde",categoria:"7",pt:"Essa ferramenta apresenta os servi&ccedil;os WMS cadastrados no servidor da Infraestrutura Nacional de Dados Espaciais do Brasil. O usu&aacute;rio pode escolher diferentes camadas para visualiza&ccedil;&atilde;o e consulta.",complemento:"",apijs:"i3GEO.arvoreDeTemas.dialogo.vinde()"},"115":{titulo:"Prefer&ecirc;ncias",diretorio:"i3geo/ferramentas/preferencias",categoria:"1",pt:"Guarda as prefer&ecirc;ncias do usu&aacute;rio em rela&ccedil;&atilde;o aos par&acirc;metros que controlam a interface do mapa",complemento:"O usu&aacute;rio pode definir as prefer&ecirc;ncias para a interface do mapa, por exemplo, as configura&ccedil;&otilde;es iniciais de menu e ferramentas, temas que iniciam abertos, extens&atilde;o inicial do mapa etc. As informa&ccedil;&otilde;es de prefer&ecirc;ncias ficam armazenadas como cookies do navegador e podem ser restauradas para as configura&ccedil;&otilde;es iniciais por meio da bot&atilde;o ''Limpar'' ou pela limpeza dos cookies diretamente pelo navegador.",apijs:"i3GEO.mapa.dialogo.preferencias()"},"116":{titulo:"Upload de s&iacute;mbolo",diretorio:"i3geo/ferramentas/uploadsimbolo",categoria:"4",pt:"Envia para o servidor um arquivo de imagem que poder&aacute; ser utilizado como s&iacute;mbolo nas legendas das camadas",complemento:"",apijs:""},"117":{titulo:"SAIKU",diretorio:"i3geo/ferramentas/saiku",categoria:"5",pt:"Abre o sistema Saiku que permite o cruzamento de vari&aacute;veis estat&iacute;sticas. O Saiku utiliza o sistema de metadados estat&iacute;sticos para gerar cubos tridimensionais que permitem ao cruzamento de dados tabulares, gera&ccedil;&atilde;o de gr&aacute;ficos e relat&oacute;rios. O usu&aacute;rio deve adicionar ao mapa pelo menos uma camada com localidades originadas do sistema de metadados. Os elementos dessa camada que estiverem selecionados ser&atilde;o utilizados como filtro no Saiku.",complemento:"As vari&aacute;veis cruzadas no Saiku podem gerar artefatos como tabelas, gr&aacute;ficos, relat&oacute;rios e mapas que podem ser visualizados no i3Geo utilizando o bot&atilde;o 'Atualiza o mapa' presente na ferramenta de integra&ccedil;&atilde;o entre os sistemas.",apijs:""},"118":{titulo:"Geolocation",diretorio:"i3geo/ferramentas/geolocal",categoria:"6",pt:"Captura as coordenadas da posi&ccedil;&atilde;o atual do usu&aacute;rio. As coordenadas s&atilde;o capturadas individualmente ou por um intervalo de tempo. Os dados s&atilde;o mostrados em uma lista e no mapa.",complemento:"",apijs:"i3GEO.mapa.dialogo.geolocal()"},"119":{titulo:"Cria uma c&oacute;pia",diretorio:"i3geo/classesjs/classe_camadas.js",categoria:"5",pt:"Cria uma c&oacute;pia de uma camada existente no mapa e adiciona com novo nome.",complemento:"",apijs:"i3GEO.tema.copia(idtema)"},"120":{titulo:"V&iacute;ncula dados entre tabelas",diretorio:"i3geo/ferramentas/tabela/index.js",categoria:"5",pt:"Op&ccedil;&atilde;o utilizada na ferramenta tabela que pemrite vincular a listagem de registros entre tabelas que estejam em diferentes janelas flutuantes. Ao abrir duas tabelas de atributos, a janela de v&iacute;nculos permite definir quais as tabelas ser&atilde;o vinculadas e quais as colunas de liga&ccedil;&atilde;o. Ao marcar um registro em uma tabela, os registros semelhantes s&atilde;o marcados nas tabelas vinculadas.",complemento:"",apijs:""},"121":{titulo:"Mapa de calor",diretorio:"i3geo/ferramentas/heatmap/index.js",categoria:"3",pt:"Obt&eacute;m os dados de um tema pontual, linear ou poligonal e calcula para toda a &aacute;rea vis&iacute;vel os prov&aacute;veis valores. O resultado &eacute; uma representa&ccedil;&atilde;o cont&iacute;nua dos valores em classes de cores. O c&aacute;lculo da camada &eacute; feito diretamente no navegador utilizando-se um programa em javascript.",complemento:"A ferramenta adiciona um novo tema ao mapa contendo o mapa de calor e utiliza como refer&ecirc;ncia para a cria&ccedil;&atilde;o da legenda as classes da camada original. No caso de camadas lineares ou poligonais, ser&aacute; considerado o centroide de cada elemento.",apijs:"i3GEO.mapa.dialogo.heatmap()"},"122":{titulo:"MarkerCluster",diretorio:"i3geo/ferramentas/markercluster/index.js",categoria:"3",pt:"Cria uma camada vetorial com pontos que s&atilde;o agrupados conforme a proximidade. Os pontos agrupados s&atilde;o representados com um s&iacute;mbolo especial e &eacute; mostrado um texto indicando o total de pontos.",complemento:"",apijs:"i3GEO.mapa.dialogo.markercluster()"},"123":{titulo:"Congela a vis&atilde;o atual",diretorio:"i3geo/ferramentas/congelamapa/openlayers.php",categoria:"6",pt:"Abre uma nova janela com a visualiza&ccedil;&atilde;o atual do mapa, mantendo o n&iacute;vel de zoom e as camadas ativas.",complemento:"O mapa &eacute; mostrado na forma de uma imagem, ou seja, mant&eacute;m os elementos do mapa est&aacute;ticos mesmo que se desative as camadas ou altere a regi&atilde;o de visualiza&ccedil;&atilde;o do mapa original. Esta ferramenta &eacute; &uacute;til quando se deseja manter uma determinada regi&atilde;o do mapa sempre vis&iacute;vel enquanto se navega pelas demais regi&otilde;es do mesmo.",apijs:"i3GEO.mapa.dialogo.congelaMapa();"},"124":{titulo:"Cartogramas estat&iacute;sticos",diretorio:"i3geo/ferramentas/metaestat/index.js",categoria:"9",pt:"A ferramenta Cartogramas Estat&iacute;sticos &eacute; utilizada como uma integra&ccedil;&atilde;o entre o mapa interativo e o sistema de metadados estat&iacute;sticos. Al&eacute;m de funcionar como um cat&aacute;logo de camadas oriundas do sistema de metadados estat&iacute;sticos, ela permite a cria&ccedil;&atilde;o, edi&ccedil;&atilde;o e an&aacute;lise de vari&aacute;veis sem a necessidade de acesso ao sistema de administra&ccedil;&atilde;o.",complemento:"Voc&ecirc; pode construir um cartograma a partir da adi&ccedil;&atilde;o das vari&aacute;veis, medidas de vari&aacute;veis e par&acirc;metros constantes no sistema de metadados estat&iacute;sticos. Basta selecionar os componentes da camada e clicar em ''Adicionar camada ao mapa'.<p>O bot&atilde;o ''Edi&ccedil;&atilde;o'' abre o m&oacute;dulo ''Ajudante do editor'', que pode redirecionar o usu&aacute;rio para o ''Editor avan&ccedil;ado'' de vari&aacute;veis, diretamente no sistema de administra&ccedil;&atilde;o, para o ''Editor de limites'', onde o usu&aacute;rio pode editar os limites das camadas pertencentes ao cadastro de regi&otilde;es geogr&aacute;ficas, ou ainda acessar o gerenciador de banco de dados para a inclus&atilde;o de novos dados. Ainda por meio do ''Ajudante do editor'', o usu&aacute;rio pode editar vari&aacute;veis, medidas de vari&aacute;veis ou classifica&ccedil;&otilde;es, ou ainda criar novos elementos para a composi&ccedil;&atilde;o de uma camada no sistema de metadados estat&iacute;sticos.<p>O bot&atilde;o ''An&aacute;lise'' abre uma s&eacute;rie de ferramentas que podem ser utilizadas para uma configura&ccedil;&atilde;o e um exame mais aprofundado dos dados constantes nas vari&aacute;veis.",apijs:"javascript:i3GEO.mapa.dialogo.metaestat();"},"125":{titulo:"Aplicativos estat&iacute;sticos cadastrados",diretorio:"i3geo/ferramentas/metaestat/listamapas.js",categoria:"9",pt:"Lista os mapas cadastrados pelo publicador de mapas do sistema de metadados estat&iacute;sticos, apresentando as diferentes op&ccedil;&otilde;es de interface para abri-los.",complemento:"",apijs:"javascript:i3GEO.mapa.dialogo.metaestatListaMapas();"},"126":{titulo:"Layer KML (plugin)",diretorio:"i3geo/classesjs/classe_plugin.js",categoria:"4",pt:"Plugin que permite configurar um mapfile contendo um layer cujos dados ser&atilde;o inseridos no mapa como uma camada em KML. O KML deve ser fornecido como uma url, podendo estar em qualquer servidor, local ou externo.",complemento:"",apijs:""}}};g_traducao_ajuda_categorias={"1":{titulo:"Propriedades do mapa",observacao:"Funcionalidades que permitem alterar caracter&iacute;sticas gerais do mapa, como tamanho e filtro de cores."},"2":{titulo:"Arquivos"},"3":{titulo:"An&aacute;lise geogr&aacute;fica"},"4":{titulo:"Inclus&atilde;o de camadas",observacao:"O i3Geo utiliza um conceito de camadas dispon&iacute;veis no mapa e camadas adicionais. Camadas dispon&iacute;veis s&atilde;o as que podem ser consultadas, visualizadas e modificadas, compondo uma lista separada das camadas adicionais. Normalmente as camadas dispon&iacute;veis s&atilde;o um conjunto menor em rela&ccedil;&atilde;o ao total de temas que podem ser utilizados. Novos temas podem ser adicionados ao mapa por meio das op&ccedil;&otilde;es existentes na lista de temas, normalmente posicionada na guia '+Temas'."},"5":{titulo:"Opera&ccedil;&otilde;es sobre um tema",observacao:"Uma das caracter&iacute;sticas do i3Geo &eacute; a possibilidade de modifica&ccedil;&atilde;o das camadas vistas no mapa. As op&ccedil;&otilde;es que permitem isso s&atilde;o mostradas normalmente na lista de camadas dispon&iacute;veis no mapa atual. Essa lista &eacute; mostrada como uma &aacute;rvore hier&aacute;rquica sendo que cada camada &eacute; um dos n&oacute;s. Expandindo-se esse n&oacute;, tem-se acesso &agrave;s opera&ccedil;&otilde;es."},"6":{titulo:"Opera&ccedil;&otilde;es sobre o mapa"},"7":{titulo:"Navega&ccedil;&atilde;o",observacao:"As fun&ccedil;&otilde;es de navega&ccedil;&atilde;o permitem alterar a escala do mapa e modificar a abrang&ecirc;ncia espacial. Esse tipo de mudan&ccedil;a, principalmente de escala, afeta o contexto do mapa, modificando seu comportamento. Algumas camadas podem ser sens&iacute;veis &agrave; escala, mostrando ou n&atilde;o determinados elementos. Quando uma camada possuir muitos elementos, &eacute; aconselh&aacute;vel seu desligamento at&eacute; que a regi&atilde;o desejada seja encontrada. Algumas interfaces possuem mecanismos distintos de navega&ccedil;&atilde;o, como Google e openLayers. A lista abaixo contempla apenas a interface padr&atilde;o."},"8":{titulo:"Pesquisa"},"9":{titulo:"Metadados estat&iacute;sticos",observacao:""}};
3 3 \ No newline at end of file
... ...
classesjs/dicionario_ajuda.js
... ... @@ -1051,6 +1051,14 @@ g_traducao_ajuda = {
1051 1051 pt:"Lista os mapas cadastrados pelo publicador de mapas do sistema de metadados estat&iacute;sticos, apresentando as diferentes op&ccedil;&otilde;es de interface para abri-los.",
1052 1052 complemento:"",
1053 1053 apijs:"javascript:i3GEO.mapa.dialogo.metaestatListaMapas();"
  1054 + },
  1055 + "126": {
  1056 + titulo: "Layer KML (plugin)",
  1057 + diretorio:"i3geo/classesjs/classe_plugin.js",
  1058 + categoria:"4",
  1059 + pt:"Plugin que permite configurar um mapfile contendo um layer cujos dados ser&atilde;o inseridos no mapa como uma camada em KML. O KML deve ser fornecido como uma url, podendo estar em qualquer servidor, local ou externo.",
  1060 + complemento:"",
  1061 + apijs:""
1054 1062 }
1055 1063 }
1056 1064 };
... ...
classesjs/i3geo_tudo_compacto6.js
... ... @@ -405,7 +405,7 @@ if(typeof(i3GEO)===&#39;undefined&#39;){var i3GEO={}}i3GEO.gadgets={PARAMETROS:{&quot;mostraI
405 405 if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.social={curtirFacebook:function(url,tipo){if(tipo==="comtotal"){return"<iframe src='http://www.facebook.com/plugins/like.php?href="+url+"&layout=button_count&show_faces=false&width=160&action=like&colorscheme=light&height=21' scrolling='no' frameborder='0' style='border:none; overflow:hidden; width:160px; height:21px;' allowTransparency='true'></iframe>"}if(tipo==="semtotal"){return"<iframe src='http://www.facebook.com/plugins/like.php?href="+url+"&layout=button_count&show_faces=false&action=like&colorscheme=light&height=21' scrolling='no' frameborder='0' style='border:none; overflow:hidden; width:100px; height:21px;' allowTransparency='true'></iframe>"}},publicarTwitter:function(url,tipo){var re=new RegExp("=","g");url=url.replace(re,'%3d');if(tipo==="comtotal"){return'<iframe allowtransparency="true" frameborder="0" scrolling="no" src="http://platform.twitter.com/widgets/tweet_button.html?count=horizontal&via=i3geo&url='+url+'" style="width:100px; height:21px;"></iframe>'}if(tipo==="semtotal"){return'<iframe allowtransparency="true" frameborder="0" scrolling="no" src="http://platform.twitter.com/widgets/tweet_button.html?count=none&via=i3geo&url='+url+'" style="width:65px; height:21px;"></iframe>'}},compartilhar:function(id,urlcf,urlpt,tipo,locaplic){if(!locaplic){locaplic=i3GEO.configura.locaplic}if(!tipo){tipo="comtotal"}var onde=$i(id),tabela="";if(tipo==="comtotal"){tabela+="<table style='width:250px' ><tr>"}if(tipo==="semtotal"){tabela+="<table style='width:115px' ><tr>"}if(onde||id===""){if(urlpt!==""){tabela+="<td>"+i3GEO.social.publicarTwitter(urlpt,tipo)+"</td>"}if(urlcf!==""){tabela+="<td>"+i3GEO.social.curtirFacebook(urlcf,tipo)+"</td>"}tabela+="</tr></table>";if(id!==""){onde.innerHTML=tabela}return tabela}else{return false}},bookmark:function(link,locaplic){if(!locaplic){locaplic=i3GEO.configura.locaplic}var ins="<img style='cursor:pointer' src='"+locaplic+"/imagens/delicious.gif' onclick='javascript:window.open(\"http://del.icio.us/post?url="+link+"\")' title='Delicious'/> ";ins+="<img style='cursor:pointer' src='"+locaplic+"/imagens/digg.gif' onclick='javascript:window.open(\"http://digg.com/submit/post?url="+link+"\")' title='Digg'/> ";ins+="<img style='cursor:pointer' src='"+locaplic+"/imagens/facebook.gif' onclick='javascript:window.open(\"http://www.facebook.com/sharer.php?u="+link+"\")' title='Facebook'/> ";ins+="<img style='cursor:pointer' src='"+locaplic+"/imagens/stumbleupon.gif' onclick='javascript:window.open(\"http://www.stumbleupon.com/submit?url="+link+"\")' title='StumbleUpon'/>";return ins}};
406 406 if(typeof(i3GEO)==='undefined'){var i3GEO={}}if(typeof(i3GEOF)==='undefined'){var i3GEOF={}}i3GEO.login={divnomelogin:"i3GEONomeLogin",recarrega:false,funcaoLoginOk:null,funcaoLoginErro:null,dialogo:{abreLogin:function(locaplic){var js;if(!locaplic){locaplic=i3GEO.configura.locaplic}if(typeof(i3GEOF.loginusuario)==='undefined'){js=locaplic+"/ferramentas/loginusuario/index.js";i3GEO.util.scriptTag(js,"i3GEOF.loginusuario.criaJanelaFlutuante()","i3GEOF.loginusuario_script()")}else{i3GEOF.loginusuario.criaJanelaFlutuante()}},abreLogout:function(){var r=confirm($trad("x26"));if(r==true){i3GEO.login.anulaCookie();i3GEO.janela.destroi("i3GEOF.loginusuario");if($i(i3GEO.login.divnomelogin)){$i(i3GEO.login.divnomelogin).innerHTML=""}if(i3GEO.login.recarrega===true){document.location.reload()}if(i3GEO.parametros){i3GEO.parametros.editor="nao";i3GEO.arvoreDeTemas.atualiza()}}}},anulaCookie:function(){i3GEO.util.insereCookie("i3geocodigologin","",0);i3GEO.util.insereCookie("i3geousuariologin","",0);i3GEO.util.insereCookie("i3geousuarionome","",0);i3GEO.util.insereCookie("i3GeoLogin","",0)},verificaCookieLogin:function(){var a=i3GEO.util.pegaCookie("i3geocodigologin"),b=i3GEO.util.pegaCookie("i3geousuarionome");if(a&&b&&a!=""&&b!=""){return true}else{return false}},verificaOperacao:function(operacao,locaplic,funcaoOk,tipo,funcaoErro){var p="",cp,temp,resultado=true;if(!i3GEO.login.verificaCookieLogin()){if(!funcaoErro){alert("Login...!")}else{funcaoErro.call()}return false}if(!locaplic){locaplic=i3GEO.configura.locaplic}temp=function(retorno){if(retorno.data=="sim"){resultado=true}else{resultado=false}if(resultado===true){if(funcaoOk&&funcaoOk!=""){funcaoOk.call()}}else{if($i(i3GEO.login.divnomelogin)){$i(i3GEO.login.divnomelogin).innerHTML="";i3GEO.login.anulaCookie()}if(funcaoErro&&funcaoErro!=""&&resultado===false){funcaoErro.call()}}return resultado};if(tipo==="sessao"){p=locaplic+"/admin/php/login.php?funcao=validaoperacaosessao"}if(tipo==="banco"){p=locaplic+"/admin/php/login.php?funcao=validaoperacaobanco"}cp=new cpaint();cp.set_response_type("JSON");cp.set_transfer_mode("POST");cp.call(p,"login",temp,"&operacao="+operacao)},adicionaMenuSuspenso:function(obj){obj.menu.push({nome:"Admin/Login",id:"i3GeoAdmin"});obj.submenus.i3GeoAdmin=[];obj.submenus.i3GeoAdmin.push({id:"omenudataAdminu1",text:"Login",url:"javascript:i3GEO.login.dialogo.abreLogin()"},{id:"omenudataAdminu2",text:"Logout",url:"javascript:i3GEO.login.dialogo.abreLogout()"},{id:"omenudataAdmin1",text:$trad("x1"),url:"javascript:var w = window.open(i3GEO.configura.locaplic+'/admin/index.html')"},{id:"omenudataAdmin2",text:$trad("g1a"),url:"javascript:var w = window.open(i3GEO.configura.locaplic+'/admin/html/arvore.html')"},{id:"omenudataAdmin3",text:$trad("x10"),url:"javascript:i3GEO.arvoreDeTemas.abrejanelaIframe('900','700','"+i3GEO.configura.locaplic+"/admin/html/menus.html\')"},{id:"omenudataAdmin4",text:$trad("t44"),url:"javascript:i3GEO.janela.tempoMsg($trad('x63'))"},{id:"omenudataAdmin5",text:$trad("x88"),url:"javascript:i3GEO.mapa.dialogo.preferencias()"});return obj}};
407 407 if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.marcador={prompt:function(){i3GEO.janela.prompt($trad("x77"),i3GEO.marcador.armazena,"")},armazena:function(){var cookies=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),ext=i3GEO.parametros.mapexten,nome="Marcador",valor;if($i("i3GEOjanelaprompt")){nome=$i("i3GEOjanelaprompt").value}valor=nome+"|"+ext;if(cookies){cookies+=":"}else{cookies=""}valor=cookies+valor;i3GEO.util.insereCookie("marcadoresDoI3Geo",valor,365);i3GEO.marcador.redesenha()},redesenha:function(){var m=i3GEOoMenuBar.getMenu("i3GeoMenuMarcador");m.clearContent();m.addItems(i3GEO.marcador.itensMenu());m.render()},exporta:function(){var c=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),texto;if(!c){c=""}texto="<p class=paragrafo >"+$trad("x78")+"</p><div class='i3geoForm i3geoFormIconeEdita' ><input type=text value='"+c+"' onclick='javascript:this.select()'/></div>";i3GEO.janela.mensagemSimples(texto,$trad("x79"))},exportaShp:function(){var c=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),temp=function(retorno){i3GEO.temaAtivo=retorno.data;i3GEO.atualiza()};if(c){i3GEO.php.marcadores2shp(temp)}},importa:function(){var temp=function(){var cookies=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),novos="";if($i("i3GEOjanelaprompt")){novos=$i("i3GEOjanelaprompt").value}if(cookies){cookies+=":"}else{cookies=""}novos=cookies+novos;i3GEO.util.insereCookie("marcadoresDoI3Geo",novos,365);i3GEO.marcador.redesenha()};i3GEO.janela.prompt($trad("x83"),temp,"")},remove:function(nomeMarcador){var cookie=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),valores=cookie.split(":"),n=valores.length,i,temp,novos=[];for(i=0;i<n;i++){temp=valores[i].split("|");if(temp[0]&&temp[0]!==nomeMarcador){novos.push(valores[i])}}i3GEO.util.insereCookie("marcadoresDoI3Geo",novos.join(":"),365);i3GEO.marcador.redesenha()},recuperaZoom:function(nomeMarcador){var cookie=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),valores=cookie.split(":"),n=valores.length,i,temp;for(i=0;i<n;i++){temp=valores[i].split("|");if(temp[0]&&temp[0]===nomeMarcador){i3GEO.navega.zoomExt("","","",temp[1]);return}}},adicionaMenuSuspenso:function(obj){obj.menu.push({nome:$trad("x79"),id:"i3GeoMenuMarcador"});obj.submenus.i3GeoMenuMarcador=i3GEO.marcador.itensMenu();return obj},itensMenu:function(){var itens=[],cookie=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),valores,n,i,temp;itens.push({id:"omenudataMarcadorSalva",text:$trad("x82"),url:"javascript:i3GEO.marcador.prompt()"},{id:"omenudataMarcadorExporta",text:$trad("x80"),url:"javascript:i3GEO.marcador.exporta()"},{id:"omenudataMarcadorImporta",text:$trad("x81"),url:"javascript:i3GEO.marcador.importa()"},{id:"omenudataMarcadorExportaShp",text:$trad("x84"),url:"javascript:i3GEO.marcador.exportaShp()"});if(cookie){valores=cookie.split(":");n=valores.length;for(i=0;i<n;i++){temp=valores[i].split("|");if(temp.length===2){itens.push({id:"omenudataMarcador"+i,text:"<img title='"+$trad("x62")+"' src='"+i3GEO.configura.locaplic+"/imagens/visual/default/branco.gif' class=x onclick='i3GEO.marcador.remove(\""+temp[0]+"\")' />&nbsp;<span style='color:blue;background-color:white;'>"+temp[0]+"</span>",url:"javascript:i3GEO.marcador.recuperaZoom('"+temp[0]+"')"})}}}return itens}};
408   -if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.pluginI3geo={OBJETOS:{},PLUGINS:[{"classe":"heatmap","nome":"Mapa de calor","editor":true},{"classe":"markercluster","nome":"Agrupamento de pontos (cluster)","editor":true},{"classe":"layerkml","nome":"Camada Kml","editor":true}],inicia:function(camada){if(i3GEO.janela){i3GEO.janela.AGUARDEMODAL=true;i3GEO.janela.abreAguarde("aguardePlugin","Plugin...");i3GEO.janela.AGUARDEMODAL=false}i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].inicia(camada)},formAdmin:function(plugin,configString){return i3GEO.pluginI3geo[plugin].formAdmin(configString)},linkAjuda:function(plugin){return i3GEO.pluginI3geo[plugin].linkAjuda()},ligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada();return true}return false},desligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada();return true}return false},removeCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada();delete(i3GEO.pluginI3geo.OBJETOS[nomecamada]);return true}return false},atualizaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada();return true}return false},existeObjeto:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){return true}return false},aplicaPropriedades:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){camada=i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].aplicaPropriedades(camada)}return camada},heatmap:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"heatmap","parametros":{"tipoGradiente": "default","valorPonto":1,"coluna":"","radius":15}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="heatmap"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+=""+"<p>Coluna que cont&eacute;m os dados:"+"<br><input name='coluna' type='text' value='"+parametros.coluna+"' size='30'></p>"+"<p>Ou valor num&eacute;rico para cada ponto:"+"<br><input name='valorPonto' type='text' value='"+parametros.valorPonto+"' size='30'></p>"+"<p>Raio de cada ponto em pixels:"+"<br><input name='radius' type='text' value='"+parametros.radius+"' size='30'></p>"+"<p>Tipo de gradiente (deixe vazio para utilizar as classes definidas no Layer ou escreva 'default' para usar o normal):"+"<br><input name='tipoGradiente' type='text' value='"+parametros.tipoGradiente+"' size='30'></p>"+"<p>Para definir os cortes no gradiente de cores utilize valores entre 0 e 1."+" As cores s&atilde;o definidas nas classes do LAYER, sendo que o nome define o valor superior do gradiente e COLOR define a cor."+" Veja o exemplo utilizado no tema _lmapadecalor.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var heatmap,pontos;heatmap=new HeatmapOverlay(i3GeoMap,camada.name,{"radius":camada.plugini3geo.parametros.radius,"visible":true,"opacity":camada.transparency,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}});pontos={max:camada.plugini3geo.parametros.max,data:heatmap_dados};i3GEO.janela.fechaAguarde("aguardePlugin");heatmap.setDataSet(pontos);heatmap.ligaCamada=function(){this.liga()};heatmap.desLigaCamada=function(){this.desliga()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.draw()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;heatmap_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/openlayers_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var temp,heatmap,transformedTestData={max:1,data:[]},data=heatmap_dados,datalen=heatmap_dados.length,nudata=[],max=0;if(!objMapa){objMapa=i3geoOL}while(datalen--){temp=heatmap_dados[datalen].count;nudata.push({lonlat:new OpenLayers.LonLat(data[datalen].lng,heatmap_dados[datalen].lat),count:temp});max=Math.max(max,temp)}transformedTestData.max=max;transformedTestData.data=nudata;heatmap=new OpenLayers.Layer.Heatmap(camada.name,objMapa,objMapa.baseLayer,{"visible":true,"opacity":camada.transparency,"radius":camada.plugini3geo.parametros.radius,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}},{isBaseLayer:false,projection:new OpenLayers.Projection("EPSG:4326"),displayInLayerSwitcher:true});heatmap.ligaCamada=function(){this.toggle();this.updateLayer()};heatmap.desLigaCamada=function(){this.toggle();this.updateLayer()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.updateLayer()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;objMapa.addLayer(heatmap);heatmap.setDataSet(transformedTestData);heatmap_dados=null;if(i3GEO.janela){i3GEO.janela.fechaAguarde("aguardePlugin")}};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}if(!i3GEO.configura||!i3GEO.configura.sid){i3GEO.configura.sid=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},googleearth:{inicia:function(){alert("Plugin nao disponivel")}}},markercluster:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"markercluster","parametros":{"tipoEstilos": "default","gridSize":50}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="markercluster"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+=""+"<p>Dist&acirc;ncia m&aacute;xima entre ponto em pixels:"+"<br><input name='gridSize' type='text' value='"+parametros.gridSize+"' size='30'></p>"+"<p>Tipo de estilos (deixe vazio para utilizar as classes definidas no Layer ou escreva 'default' para usar o normal):"+"<br><input name='tipoEstilos' type='text' value='"+parametros.tipoEstilos+"' size='30'></p>"+"<p>Os s&iacute;mbolos utilizados podem ser customizados alterando-se as classes do Mapfile</p>"+"<p>Veja o exemplo utilizado no tema _lmapadecluster.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var markercluster,marcas,latLng,marker,n,i;n=markercluster_dados.length;marcas=[];for(i=0;i<n;i++){latLng=new google.maps.LatLng(markercluster_dados[i].lat,markercluster_dados[i].lng);marker=new google.maps.Marker({'position':latLng,icon:{url:markercluster_config.ponto.url,scaledSize:new google.maps.Size(markercluster_config.ponto.width,markercluster_config.ponto.height)}});marcas.push(marker)}markercluster=new MarkerClusterer(i3GeoMap,marcas,{"gridSize":parseInt(camada.plugini3geo.parametros.gridSize,10),"visible":true,"opacity":camada.transparency,"name":camada.name,"styles":markercluster_config.estilos});i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;markercluster.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=true;i3GEO.pluginI3geo.OBJETOS[camada.name].redraw();i3GEO.eventos.cliquePerm.ativo=false};markercluster.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=false;i3GEO.eventos.cliquePerm.ativo=true};markercluster.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].clearMarkers();i3GEO.eventos.cliquePerm.ativo=true};markercluster.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=true;i3GEO.pluginI3geo.OBJETOS[camada.name].redraw();i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos+"&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/openlayers_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var layerListeners,logMax,logMin,classes,min,max,markercluster,marcas,lonlat,n,i,style,nestilos,intervalo,regra,regras=[];nestilos=markercluster_config.estilos.length;n=markercluster_dados.length;classes=Array();logMax=Math.log(n)/Math.LN10; logMin=Math.log(1)/Math.LN10;intervalo=(logMax-logMin)/nestilos;for(i=0;i<nestilos;i++){if(i==0){classes[i]=logMin}else{classes[i]=classes[i-1]+intervalo}}classes=classes.map(function(x){return Math.pow(10,x)});classes.push(n);regra=new OpenLayers.Rule({filter:new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.LESS_THAN,property:"count",value:2}),symbolizer:{externalGraphic:markercluster_config.ponto.url,graphicWidth:markercluster_config.ponto.width,graphicHeight:markercluster_config.ponto.height,graphicYOffset:(markercluster_config.ponto.height/2)*-1}});regras.push(regra);min=2;for(i=0;i<nestilos;i++){max=classes[i+1];regra=new OpenLayers.Rule({filter:new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.BETWEEN,property:"count",lowerBoundary:min,upperBoundary:max}),symbolizer:{externalGraphic:markercluster_config.estilos[i].url,graphicWidth:markercluster_config.estilos[i].width,graphicHeight:markercluster_config.estilos[i].height,label:"${count}",labelOutlineWidth:1,fontColor:"#000000",fontOpacity:1,fontSize:"12px"}});regras.push(regra);min=max}style=new OpenLayers.Style(null,{rules:regras});if(!objMapa){objMapa=i3geoOL}layerListeners={featureclick:function(e){if(e.feature.cluster.length>1){objMapa.setCenter([e.feature.geometry.x,e.feature.geometry.y],objMapa.getZoom()+1,false,false)}return false}};markercluster=new OpenLayers.Layer.Vector(camada.name,{renderers:['Canvas','SVG'],strategies:[new OpenLayers.Strategy.AnimatedCluster({distance:parseInt(camada.plugini3geo.parametros.gridSize,10)})],styleMap:new OpenLayers.StyleMap(style),eventListeners:layerListeners});objMapa.addLayer(markercluster);marcas=[];for(i=0;i<n;i++){lonlat=new OpenLayers.LonLat(markercluster_dados[i].lng,markercluster_dados[i].lat);if(i3GEO.Interface.openlayers.googleLike===true){lonlat.transform(new OpenLayers.Projection("EPSG:4326"),new OpenLayers.Projection("EPSG:900913"))}marcas.push(new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(lonlat.lon,lonlat.lat)))}markercluster.addFeatures(marcas);i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;markercluster.ligaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};markercluster.desLigaCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};markercluster.removeCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};markercluster.atualizaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos+"&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}}},layerkml:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"layerkml","parametros":{"url": ""}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="layerkml"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+="<p>Url do arquivo Kml:<br><input name='url' type='text' value='"+parametros.url+"'/></p>"+"<p>Veja o exemplo utilizado no tema _lmapakml.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var layerkml=new google.maps.KmlLayer(camada.plugini3geo.parametros.url,{map:i3GeoMap,preserveViewport:true,name:camada.name});i3GEO.janela.fechaAguarde("aguardePlugin");layerkml.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};layerkml.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null)};layerkml.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true)};layerkml.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var layerkml;url=i3GEO.configura.locaplic+"/classesphp/proxy.php?url="+camada.plugini3geo.parametros.url;layerkml=new OpenLayers.Layer.Vector(camada.name,{displayOutsideMaxExtent:true,displayInLayerSwitcher:false,visibility:true,strategies:[new OpenLayers.Strategy.Fixed()],protocol:new OpenLayers.Protocol.HTTP({url:url,format:new OpenLayers.Format.KML({extractStyles:true,extractAttributes:true,maxDepth:5})})});i3geoOL.addLayer(layerkml);if(!objMapa){objMapa=i3geoOL}layerkml.div.onclick=function(e){var targ="",id,temp,features,n,i,j="",html="";if(!e){e=window.event}if(e.target){targ=e.target}else if(e.srcElement){targ=e.srcElement}if(targ.id){temp=targ.id.split("_Point");if(temp[0]==="OpenLayers_Geometry"){id=targ.id;temp=i3geoOL.getLayer(this.id);features=temp.features;n=features.length;for(i=0;i<n;i++){if(features[i].geometry.id===id){for(j in features[i].attributes){html+=j+": "+features[i].attributes[j]}g=features[i].geometry;i3geoOL.addPopup(new OpenLayers.Popup.FramedCloud("kml",new OpenLayers.LonLat(g.x,g.y),null,html,null,true))}}}}};i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;layerkml.ligaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};layerkml.desLigaCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};layerkml.removeCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};layerkml.atualizaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}}}};
  408 +if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.pluginI3geo={OBJETOS:{},PLUGINS:[{"classe":"heatmap","nome":"Mapa de calor","editor":true},{"classe":"markercluster","nome":"Agrupamento de pontos (cluster)","editor":true},{"classe":"layerkml","nome":"Camada Kml","editor":true},{"classe":"parametrossql","nome":"SQL parametrizado","editor":true}],inicia:function(camada){if(i3GEO.janela){i3GEO.janela.AGUARDEMODAL=true;i3GEO.janela.abreAguarde("aguardePlugin","Plugin...");i3GEO.janela.AGUARDEMODAL=false}i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].inicia(camada)},formAdmin:function(plugin,configString){return i3GEO.pluginI3geo[plugin].formAdmin(configString)},linkAjuda:function(plugin){return i3GEO.pluginI3geo[plugin].linkAjuda()},ligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada();return true}return false},desligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada();return true}return false},removeCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada();delete(i3GEO.pluginI3geo.OBJETOS[nomecamada]);return true}return false},atualizaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada();return true}return false},existeObjeto:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){return true}return false},aplicaPropriedades:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){camada=i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].aplicaPropriedades(camada)}return camada},heatmap:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"heatmap","parametros":{"tipoGradiente": "default","valorPonto":1,"coluna":"","radius":15}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="heatmap"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+=""+"<p>Coluna que cont&eacute;m os dados:"+"<br><input name='coluna' type='text' value='"+parametros.coluna+"' size='30'></p>"+"<p>Ou valor num&eacute;rico para cada ponto:"+"<br><input name='valorPonto' type='text' value='"+parametros.valorPonto+"' size='30'></p>"+"<p>Raio de cada ponto em pixels:"+"<br><input name='radius' type='text' value='"+parametros.radius+"' size='30'></p>"+"<p>Tipo de gradiente (deixe vazio para utilizar as classes definidas no Layer ou escreva 'default' para usar o normal):"+"<br><input name='tipoGradiente' type='text' value='"+parametros.tipoGradiente+"' size='30'></p>"+"<p>Para definir os cortes no gradiente de cores utilize valores entre 0 e 1."+" As cores s&atilde;o definidas nas classes do LAYER, sendo que o nome define o valor superior do gradiente e COLOR define a cor."+" Veja o exemplo utilizado no tema _lmapadecalor.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var heatmap,pontos;heatmap=new HeatmapOverlay(i3GeoMap,camada.name,{"radius":camada.plugini3geo.parametros.radius,"visible":true,"opacity":camada.transparency,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}});pontos={max:camada.plugini3geo.parametros.max,data:heatmap_dados};i3GEO.janela.fechaAguarde("aguardePlugin");heatmap.setDataSet(pontos);heatmap.ligaCamada=function(){this.liga()};heatmap.desLigaCamada=function(){this.desliga()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.draw()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;heatmap_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/openlayers_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var temp,heatmap,transformedTestData={max:1,data:[]},data=heatmap_dados,datalen=heatmap_dados.length,nudata=[],max=0;if(!objMapa){objMapa=i3geoOL}while(datalen--){temp=heatmap_dados[datalen].count;nudata.push({lonlat:new OpenLayers.LonLat(data[datalen].lng,heatmap_dados[datalen].lat),count:temp});max=Math.max(max,temp)}transformedTestData.max=max;transformedTestData.data=nudata;heatmap=new OpenLayers.Layer.Heatmap(camada.name,objMapa,objMapa.baseLayer,{"visible":true,"opacity":camada.transparency,"radius":camada.plugini3geo.parametros.radius,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}},{isBaseLayer:false,projection:new OpenLayers.Projection("EPSG:4326"),displayInLayerSwitcher:true});heatmap.ligaCamada=function(){this.toggle();this.updateLayer()};heatmap.desLigaCamada=function(){this.toggle();this.updateLayer()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.updateLayer()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;objMapa.addLayer(heatmap);heatmap.setDataSet(transformedTestData);heatmap_dados=null;if(i3GEO.janela){i3GEO.janela.fechaAguarde("aguardePlugin")}};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}if(!i3GEO.configura||!i3GEO.configura.sid){i3GEO.configura.sid=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},googleearth:{inicia:function(){alert("Plugin nao disponivel")}}},markercluster:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"markercluster","parametros":{"tipoEstilos": "default","gridSize":50}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="markercluster"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+=""+"<p>Dist&acirc;ncia m&aacute;xima entre ponto em pixels:"+"<br><input name='gridSize' type='text' value='"+parametros.gridSize+"' size='30'></p>"+"<p>Tipo de estilos (deixe vazio para utilizar as classes definidas no Layer ou escreva 'default' para usar o normal):"+"<br><input name='tipoEstilos' type='text' value='"+parametros.tipoEstilos+"' size='30'></p>"+"<p>Os s&iacute;mbolos utilizados podem ser customizados alterando-se as classes do Mapfile</p>"+"<p>Veja o exemplo utilizado no tema _lmapadecluster.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var markercluster,marcas,latLng,marker,n,i;n=markercluster_dados.length;marcas=[];for(i=0;i<n;i++){latLng=new google.maps.LatLng(markercluster_dados[i].lat,markercluster_dados[i].lng);marker=new google.maps.Marker({'position':latLng,icon:{url:markercluster_config.ponto.url,scaledSize:new google.maps.Size(markercluster_config.ponto.width,markercluster_config.ponto.height)}});marcas.push(marker)}markercluster=new MarkerClusterer(i3GeoMap,marcas,{"gridSize":parseInt(camada.plugini3geo.parametros.gridSize,10),"visible":true,"opacity":camada.transparency,"name":camada.name,"styles":markercluster_config.estilos});i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;markercluster.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=true;i3GEO.pluginI3geo.OBJETOS[camada.name].redraw();i3GEO.eventos.cliquePerm.ativo=false};markercluster.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=false;i3GEO.eventos.cliquePerm.ativo=true};markercluster.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].clearMarkers();i3GEO.eventos.cliquePerm.ativo=true};markercluster.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=true;i3GEO.pluginI3geo.OBJETOS[camada.name].redraw();i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos+"&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/openlayers_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var layerListeners,logMax,logMin,classes,min,max,markercluster,marcas,lonlat,n,i,style,nestilos,intervalo,regra,regras=[];nestilos=markercluster_config.estilos.length;n=markercluster_dados.length;classes=Array();logMax=Math.log(n)/Math.LN10; logMin=Math.log(1)/Math.LN10;intervalo=(logMax-logMin)/nestilos;for(i=0;i<nestilos;i++){if(i==0){classes[i]=logMin}else{classes[i]=classes[i-1]+intervalo}}classes=classes.map(function(x){return Math.pow(10,x)});classes.push(n);regra=new OpenLayers.Rule({filter:new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.LESS_THAN,property:"count",value:2}),symbolizer:{externalGraphic:markercluster_config.ponto.url,graphicWidth:markercluster_config.ponto.width,graphicHeight:markercluster_config.ponto.height,graphicYOffset:(markercluster_config.ponto.height/2)*-1}});regras.push(regra);min=2;for(i=0;i<nestilos;i++){max=classes[i+1];regra=new OpenLayers.Rule({filter:new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.BETWEEN,property:"count",lowerBoundary:min,upperBoundary:max}),symbolizer:{externalGraphic:markercluster_config.estilos[i].url,graphicWidth:markercluster_config.estilos[i].width,graphicHeight:markercluster_config.estilos[i].height,label:"${count}",labelOutlineWidth:1,fontColor:"#000000",fontOpacity:1,fontSize:"12px"}});regras.push(regra);min=max}style=new OpenLayers.Style(null,{rules:regras});if(!objMapa){objMapa=i3geoOL}layerListeners={featureclick:function(e){if(e.feature.cluster.length>1){objMapa.setCenter([e.feature.geometry.x,e.feature.geometry.y],objMapa.getZoom()+1,false,false)}return false}};markercluster=new OpenLayers.Layer.Vector(camada.name,{renderers:['Canvas','SVG'],strategies:[new OpenLayers.Strategy.AnimatedCluster({distance:parseInt(camada.plugini3geo.parametros.gridSize,10)})],styleMap:new OpenLayers.StyleMap(style),eventListeners:layerListeners});objMapa.addLayer(markercluster);marcas=[];for(i=0;i<n;i++){lonlat=new OpenLayers.LonLat(markercluster_dados[i].lng,markercluster_dados[i].lat);if(i3GEO.Interface.openlayers.googleLike===true){lonlat.transform(new OpenLayers.Projection("EPSG:4326"),new OpenLayers.Projection("EPSG:900913"))}marcas.push(new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(lonlat.lon,lonlat.lat)))}markercluster.addFeatures(marcas);i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;markercluster.ligaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};markercluster.desLigaCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};markercluster.removeCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};markercluster.atualizaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos+"&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}}},layerkml:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"layerkml","parametros":{"url": ""}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="layerkml"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+="<p>Url do arquivo Kml:<br><input name='url' type='text' value='"+parametros.url+"'/></p>"+"<p>Veja o exemplo utilizado no tema _lmapakml.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var layerkml=new google.maps.KmlLayer(camada.plugini3geo.parametros.url,{map:i3GeoMap,preserveViewport:true,name:camada.name});i3GEO.janela.fechaAguarde("aguardePlugin");layerkml.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};layerkml.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null)};layerkml.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true)};layerkml.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var layerkml;url=i3GEO.configura.locaplic+"/classesphp/proxy.php?url="+camada.plugini3geo.parametros.url;layerkml=new OpenLayers.Layer.Vector(camada.name,{displayOutsideMaxExtent:true,displayInLayerSwitcher:false,visibility:true,strategies:[new OpenLayers.Strategy.Fixed()],protocol:new OpenLayers.Protocol.HTTP({url:url,format:new OpenLayers.Format.KML({extractStyles:true,extractAttributes:true,maxDepth:5})})});i3geoOL.addLayer(layerkml);if(!objMapa){objMapa=i3geoOL}layerkml.div.onclick=function(e){var targ="",id,temp,features,n,i,j="",html="";if(!e){e=window.event}if(e.target){targ=e.target}else if(e.srcElement){targ=e.srcElement}if(targ.id){temp=targ.id.split("_Point");if(temp[0]==="OpenLayers_Geometry"){id=targ.id;temp=i3geoOL.getLayer(this.id);features=temp.features;n=features.length;for(i=0;i<n;i++){if(features[i].geometry.id===id){for(j in features[i].attributes){html+=j+": "+features[i].attributes[j]}g=features[i].geometry;i3geoOL.addPopup(new OpenLayers.Popup.FramedCloud("kml",new OpenLayers.LonLat(g.x,g.y),null,html,null,true))}}}}};i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;layerkml.ligaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};layerkml.desLigaCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};layerkml.removeCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};layerkml.atualizaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}}},parametrossql:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var n,i,parametros,ins="",configDefault='{"plugin":"parametrossql","parametros":[{"titulo":"","tipo":"input","valores":[],"chave":""},{"titulo":"","tipo":"input","valores":[],"chave":""},{"titulo":"","tipo":"input","valores":[],"chave":""},{"titulo":"","tipo":"input","valores":[],"chave":""}]}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="parametrossql"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;n=parametros.length;ins+="<table><tr><td>T&iacute;tulo</td><td>Chave</td><td>Tipo (input ou select)</td><td>Valores</td></tr>";for(i=0;i<n;i++){ins+="<tr><td><input name='titulo' type=text size=20 value='"+parametros[i].titulo+"' /></td>"+"<td><input name='chave' type=text size=20 value='"+parametros[i].chave+"' /></td>"+"<td><input name='tipo' type=text size=20 value='"+parametros[i].tipo+"' /></td> "+"<td><input name='valores' type=text size=20 value='"+parametros[i].valores+"' /></td></tr>"}ins+="</table>"+"<p class='paragrafo'>As chaves s&atilde;o palavras que devem existir no SQL definido em DATA."+"<br>O usu&aacute;rio ir&aacute; fornecer os valores que ser&atilde;o ent&atilde;o utilizados para substituir as chaves de forma din&acirc;mica"+"<br>Ser&aacute; mostrado ao usu&aacute;rio um formul&aacute;rio com op&ccedil;&otilde;es. Cada op&ccedil;&atilde;o conter&aacute; um t&iacute;tulo e um campo de formul&aacute;rio"+"<br>Cada campo de formul&aacute;rio pode ser dos tipos input (para digitar um valor) ou select (caixa de op&ccedil;&otilde;es)."+"<br>Em valores deve ser definida a lista ou o valor default que ser&aacute; mostrado. No caso de listas, utilize v&iacute;rgula para separar os valores.";return ins},parametrosFormAdmin:function(onde){var campo=0,nlinhas=4,ncampos=4,campos=onde.getElementsByTagName("input"),par=[],temp=[],i,j;for(j=0;j<nlinhas;j++){temp=[];for(i=0;i<ncampos;i++){if(campos[campo]){temp.push('"'+campos[campo].name+'" : "'+campos[campo].value+'"')}campo++}par.push("{"+temp.join(",")+"}")}return'{"plugin":"parametrossql","parametros":['+par.join(",")+']}'},inicia:function(camada){i3GEO.janela.fechaAguarde("aguardePlugin");var iniciaform=function(){i3GEOF.parametrossql.iniciaJanelaFlutuante(camada)};i3GEO.util.scriptTag((i3GEO.configura.locaplic+"/ferramentas/parametrossql/dependencias.php"),iniciaform,"parametrossql_script")},googlemaps:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada}},openlayers:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada}}}};
409 409 /*
410 410 * euDock - javascript Emulation of Dock style MAC OS X bar
411 411 *
... ...
classesjs/i3geo_tudo_compacto6.js.php
... ... @@ -405,7 +405,7 @@ if(typeof(i3GEO)===&#39;undefined&#39;){var i3GEO={}}i3GEO.gadgets={PARAMETROS:{&quot;mostraI
405 405 if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.social={curtirFacebook:function(url,tipo){if(tipo==="comtotal"){return"<iframe src='http://www.facebook.com/plugins/like.php?href="+url+"&layout=button_count&show_faces=false&width=160&action=like&colorscheme=light&height=21' scrolling='no' frameborder='0' style='border:none; overflow:hidden; width:160px; height:21px;' allowTransparency='true'></iframe>"}if(tipo==="semtotal"){return"<iframe src='http://www.facebook.com/plugins/like.php?href="+url+"&layout=button_count&show_faces=false&action=like&colorscheme=light&height=21' scrolling='no' frameborder='0' style='border:none; overflow:hidden; width:100px; height:21px;' allowTransparency='true'></iframe>"}},publicarTwitter:function(url,tipo){var re=new RegExp("=","g");url=url.replace(re,'%3d');if(tipo==="comtotal"){return'<iframe allowtransparency="true" frameborder="0" scrolling="no" src="http://platform.twitter.com/widgets/tweet_button.html?count=horizontal&via=i3geo&url='+url+'" style="width:100px; height:21px;"></iframe>'}if(tipo==="semtotal"){return'<iframe allowtransparency="true" frameborder="0" scrolling="no" src="http://platform.twitter.com/widgets/tweet_button.html?count=none&via=i3geo&url='+url+'" style="width:65px; height:21px;"></iframe>'}},compartilhar:function(id,urlcf,urlpt,tipo,locaplic){if(!locaplic){locaplic=i3GEO.configura.locaplic}if(!tipo){tipo="comtotal"}var onde=$i(id),tabela="";if(tipo==="comtotal"){tabela+="<table style='width:250px' ><tr>"}if(tipo==="semtotal"){tabela+="<table style='width:115px' ><tr>"}if(onde||id===""){if(urlpt!==""){tabela+="<td>"+i3GEO.social.publicarTwitter(urlpt,tipo)+"</td>"}if(urlcf!==""){tabela+="<td>"+i3GEO.social.curtirFacebook(urlcf,tipo)+"</td>"}tabela+="</tr></table>";if(id!==""){onde.innerHTML=tabela}return tabela}else{return false}},bookmark:function(link,locaplic){if(!locaplic){locaplic=i3GEO.configura.locaplic}var ins="<img style='cursor:pointer' src='"+locaplic+"/imagens/delicious.gif' onclick='javascript:window.open(\"http://del.icio.us/post?url="+link+"\")' title='Delicious'/> ";ins+="<img style='cursor:pointer' src='"+locaplic+"/imagens/digg.gif' onclick='javascript:window.open(\"http://digg.com/submit/post?url="+link+"\")' title='Digg'/> ";ins+="<img style='cursor:pointer' src='"+locaplic+"/imagens/facebook.gif' onclick='javascript:window.open(\"http://www.facebook.com/sharer.php?u="+link+"\")' title='Facebook'/> ";ins+="<img style='cursor:pointer' src='"+locaplic+"/imagens/stumbleupon.gif' onclick='javascript:window.open(\"http://www.stumbleupon.com/submit?url="+link+"\")' title='StumbleUpon'/>";return ins}};
406 406 if(typeof(i3GEO)==='undefined'){var i3GEO={}}if(typeof(i3GEOF)==='undefined'){var i3GEOF={}}i3GEO.login={divnomelogin:"i3GEONomeLogin",recarrega:false,funcaoLoginOk:null,funcaoLoginErro:null,dialogo:{abreLogin:function(locaplic){var js;if(!locaplic){locaplic=i3GEO.configura.locaplic}if(typeof(i3GEOF.loginusuario)==='undefined'){js=locaplic+"/ferramentas/loginusuario/index.js";i3GEO.util.scriptTag(js,"i3GEOF.loginusuario.criaJanelaFlutuante()","i3GEOF.loginusuario_script()")}else{i3GEOF.loginusuario.criaJanelaFlutuante()}},abreLogout:function(){var r=confirm($trad("x26"));if(r==true){i3GEO.login.anulaCookie();i3GEO.janela.destroi("i3GEOF.loginusuario");if($i(i3GEO.login.divnomelogin)){$i(i3GEO.login.divnomelogin).innerHTML=""}if(i3GEO.login.recarrega===true){document.location.reload()}if(i3GEO.parametros){i3GEO.parametros.editor="nao";i3GEO.arvoreDeTemas.atualiza()}}}},anulaCookie:function(){i3GEO.util.insereCookie("i3geocodigologin","",0);i3GEO.util.insereCookie("i3geousuariologin","",0);i3GEO.util.insereCookie("i3geousuarionome","",0);i3GEO.util.insereCookie("i3GeoLogin","",0)},verificaCookieLogin:function(){var a=i3GEO.util.pegaCookie("i3geocodigologin"),b=i3GEO.util.pegaCookie("i3geousuarionome");if(a&&b&&a!=""&&b!=""){return true}else{return false}},verificaOperacao:function(operacao,locaplic,funcaoOk,tipo,funcaoErro){var p="",cp,temp,resultado=true;if(!i3GEO.login.verificaCookieLogin()){if(!funcaoErro){alert("Login...!")}else{funcaoErro.call()}return false}if(!locaplic){locaplic=i3GEO.configura.locaplic}temp=function(retorno){if(retorno.data=="sim"){resultado=true}else{resultado=false}if(resultado===true){if(funcaoOk&&funcaoOk!=""){funcaoOk.call()}}else{if($i(i3GEO.login.divnomelogin)){$i(i3GEO.login.divnomelogin).innerHTML="";i3GEO.login.anulaCookie()}if(funcaoErro&&funcaoErro!=""&&resultado===false){funcaoErro.call()}}return resultado};if(tipo==="sessao"){p=locaplic+"/admin/php/login.php?funcao=validaoperacaosessao"}if(tipo==="banco"){p=locaplic+"/admin/php/login.php?funcao=validaoperacaobanco"}cp=new cpaint();cp.set_response_type("JSON");cp.set_transfer_mode("POST");cp.call(p,"login",temp,"&operacao="+operacao)},adicionaMenuSuspenso:function(obj){obj.menu.push({nome:"Admin/Login",id:"i3GeoAdmin"});obj.submenus.i3GeoAdmin=[];obj.submenus.i3GeoAdmin.push({id:"omenudataAdminu1",text:"Login",url:"javascript:i3GEO.login.dialogo.abreLogin()"},{id:"omenudataAdminu2",text:"Logout",url:"javascript:i3GEO.login.dialogo.abreLogout()"},{id:"omenudataAdmin1",text:$trad("x1"),url:"javascript:var w = window.open(i3GEO.configura.locaplic+'/admin/index.html')"},{id:"omenudataAdmin2",text:$trad("g1a"),url:"javascript:var w = window.open(i3GEO.configura.locaplic+'/admin/html/arvore.html')"},{id:"omenudataAdmin3",text:$trad("x10"),url:"javascript:i3GEO.arvoreDeTemas.abrejanelaIframe('900','700','"+i3GEO.configura.locaplic+"/admin/html/menus.html\')"},{id:"omenudataAdmin4",text:$trad("t44"),url:"javascript:i3GEO.janela.tempoMsg($trad('x63'))"},{id:"omenudataAdmin5",text:$trad("x88"),url:"javascript:i3GEO.mapa.dialogo.preferencias()"});return obj}};
407 407 if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.marcador={prompt:function(){i3GEO.janela.prompt($trad("x77"),i3GEO.marcador.armazena,"")},armazena:function(){var cookies=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),ext=i3GEO.parametros.mapexten,nome="Marcador",valor;if($i("i3GEOjanelaprompt")){nome=$i("i3GEOjanelaprompt").value}valor=nome+"|"+ext;if(cookies){cookies+=":"}else{cookies=""}valor=cookies+valor;i3GEO.util.insereCookie("marcadoresDoI3Geo",valor,365);i3GEO.marcador.redesenha()},redesenha:function(){var m=i3GEOoMenuBar.getMenu("i3GeoMenuMarcador");m.clearContent();m.addItems(i3GEO.marcador.itensMenu());m.render()},exporta:function(){var c=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),texto;if(!c){c=""}texto="<p class=paragrafo >"+$trad("x78")+"</p><div class='i3geoForm i3geoFormIconeEdita' ><input type=text value='"+c+"' onclick='javascript:this.select()'/></div>";i3GEO.janela.mensagemSimples(texto,$trad("x79"))},exportaShp:function(){var c=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),temp=function(retorno){i3GEO.temaAtivo=retorno.data;i3GEO.atualiza()};if(c){i3GEO.php.marcadores2shp(temp)}},importa:function(){var temp=function(){var cookies=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),novos="";if($i("i3GEOjanelaprompt")){novos=$i("i3GEOjanelaprompt").value}if(cookies){cookies+=":"}else{cookies=""}novos=cookies+novos;i3GEO.util.insereCookie("marcadoresDoI3Geo",novos,365);i3GEO.marcador.redesenha()};i3GEO.janela.prompt($trad("x83"),temp,"")},remove:function(nomeMarcador){var cookie=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),valores=cookie.split(":"),n=valores.length,i,temp,novos=[];for(i=0;i<n;i++){temp=valores[i].split("|");if(temp[0]&&temp[0]!==nomeMarcador){novos.push(valores[i])}}i3GEO.util.insereCookie("marcadoresDoI3Geo",novos.join(":"),365);i3GEO.marcador.redesenha()},recuperaZoom:function(nomeMarcador){var cookie=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),valores=cookie.split(":"),n=valores.length,i,temp;for(i=0;i<n;i++){temp=valores[i].split("|");if(temp[0]&&temp[0]===nomeMarcador){i3GEO.navega.zoomExt("","","",temp[1]);return}}},adicionaMenuSuspenso:function(obj){obj.menu.push({nome:$trad("x79"),id:"i3GeoMenuMarcador"});obj.submenus.i3GeoMenuMarcador=i3GEO.marcador.itensMenu();return obj},itensMenu:function(){var itens=[],cookie=i3GEO.util.pegaCookie("marcadoresDoI3Geo"),valores,n,i,temp;itens.push({id:"omenudataMarcadorSalva",text:$trad("x82"),url:"javascript:i3GEO.marcador.prompt()"},{id:"omenudataMarcadorExporta",text:$trad("x80"),url:"javascript:i3GEO.marcador.exporta()"},{id:"omenudataMarcadorImporta",text:$trad("x81"),url:"javascript:i3GEO.marcador.importa()"},{id:"omenudataMarcadorExportaShp",text:$trad("x84"),url:"javascript:i3GEO.marcador.exportaShp()"});if(cookie){valores=cookie.split(":");n=valores.length;for(i=0;i<n;i++){temp=valores[i].split("|");if(temp.length===2){itens.push({id:"omenudataMarcador"+i,text:"<img title='"+$trad("x62")+"' src='"+i3GEO.configura.locaplic+"/imagens/visual/default/branco.gif' class=x onclick='i3GEO.marcador.remove(\""+temp[0]+"\")' />&nbsp;<span style='color:blue;background-color:white;'>"+temp[0]+"</span>",url:"javascript:i3GEO.marcador.recuperaZoom('"+temp[0]+"')"})}}}return itens}};
408   -if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.pluginI3geo={OBJETOS:{},PLUGINS:[{"classe":"heatmap","nome":"Mapa de calor","editor":true},{"classe":"markercluster","nome":"Agrupamento de pontos (cluster)","editor":true},{"classe":"layerkml","nome":"Camada Kml","editor":true}],inicia:function(camada){if(i3GEO.janela){i3GEO.janela.AGUARDEMODAL=true;i3GEO.janela.abreAguarde("aguardePlugin","Plugin...");i3GEO.janela.AGUARDEMODAL=false}i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].inicia(camada)},formAdmin:function(plugin,configString){return i3GEO.pluginI3geo[plugin].formAdmin(configString)},linkAjuda:function(plugin){return i3GEO.pluginI3geo[plugin].linkAjuda()},ligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada();return true}return false},desligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada();return true}return false},removeCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada();delete(i3GEO.pluginI3geo.OBJETOS[nomecamada]);return true}return false},atualizaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada();return true}return false},existeObjeto:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){return true}return false},aplicaPropriedades:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){camada=i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].aplicaPropriedades(camada)}return camada},heatmap:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"heatmap","parametros":{"tipoGradiente": "default","valorPonto":1,"coluna":"","radius":15}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="heatmap"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+=""+"<p>Coluna que cont&eacute;m os dados:"+"<br><input name='coluna' type='text' value='"+parametros.coluna+"' size='30'></p>"+"<p>Ou valor num&eacute;rico para cada ponto:"+"<br><input name='valorPonto' type='text' value='"+parametros.valorPonto+"' size='30'></p>"+"<p>Raio de cada ponto em pixels:"+"<br><input name='radius' type='text' value='"+parametros.radius+"' size='30'></p>"+"<p>Tipo de gradiente (deixe vazio para utilizar as classes definidas no Layer ou escreva 'default' para usar o normal):"+"<br><input name='tipoGradiente' type='text' value='"+parametros.tipoGradiente+"' size='30'></p>"+"<p>Para definir os cortes no gradiente de cores utilize valores entre 0 e 1."+" As cores s&atilde;o definidas nas classes do LAYER, sendo que o nome define o valor superior do gradiente e COLOR define a cor."+" Veja o exemplo utilizado no tema _lmapadecalor.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var heatmap,pontos;heatmap=new HeatmapOverlay(i3GeoMap,camada.name,{"radius":camada.plugini3geo.parametros.radius,"visible":true,"opacity":camada.transparency,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}});pontos={max:camada.plugini3geo.parametros.max,data:heatmap_dados};i3GEO.janela.fechaAguarde("aguardePlugin");heatmap.setDataSet(pontos);heatmap.ligaCamada=function(){this.liga()};heatmap.desLigaCamada=function(){this.desliga()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.draw()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;heatmap_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/openlayers_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var temp,heatmap,transformedTestData={max:1,data:[]},data=heatmap_dados,datalen=heatmap_dados.length,nudata=[],max=0;if(!objMapa){objMapa=i3geoOL}while(datalen--){temp=heatmap_dados[datalen].count;nudata.push({lonlat:new OpenLayers.LonLat(data[datalen].lng,heatmap_dados[datalen].lat),count:temp});max=Math.max(max,temp)}transformedTestData.max=max;transformedTestData.data=nudata;heatmap=new OpenLayers.Layer.Heatmap(camada.name,objMapa,objMapa.baseLayer,{"visible":true,"opacity":camada.transparency,"radius":camada.plugini3geo.parametros.radius,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}},{isBaseLayer:false,projection:new OpenLayers.Projection("EPSG:4326"),displayInLayerSwitcher:true});heatmap.ligaCamada=function(){this.toggle();this.updateLayer()};heatmap.desLigaCamada=function(){this.toggle();this.updateLayer()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.updateLayer()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;objMapa.addLayer(heatmap);heatmap.setDataSet(transformedTestData);heatmap_dados=null;if(i3GEO.janela){i3GEO.janela.fechaAguarde("aguardePlugin")}};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}if(!i3GEO.configura||!i3GEO.configura.sid){i3GEO.configura.sid=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},googleearth:{inicia:function(){alert("Plugin nao disponivel")}}},markercluster:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"markercluster","parametros":{"tipoEstilos": "default","gridSize":50}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="markercluster"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+=""+"<p>Dist&acirc;ncia m&aacute;xima entre ponto em pixels:"+"<br><input name='gridSize' type='text' value='"+parametros.gridSize+"' size='30'></p>"+"<p>Tipo de estilos (deixe vazio para utilizar as classes definidas no Layer ou escreva 'default' para usar o normal):"+"<br><input name='tipoEstilos' type='text' value='"+parametros.tipoEstilos+"' size='30'></p>"+"<p>Os s&iacute;mbolos utilizados podem ser customizados alterando-se as classes do Mapfile</p>"+"<p>Veja o exemplo utilizado no tema _lmapadecluster.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var markercluster,marcas,latLng,marker,n,i;n=markercluster_dados.length;marcas=[];for(i=0;i<n;i++){latLng=new google.maps.LatLng(markercluster_dados[i].lat,markercluster_dados[i].lng);marker=new google.maps.Marker({'position':latLng,icon:{url:markercluster_config.ponto.url,scaledSize:new google.maps.Size(markercluster_config.ponto.width,markercluster_config.ponto.height)}});marcas.push(marker)}markercluster=new MarkerClusterer(i3GeoMap,marcas,{"gridSize":parseInt(camada.plugini3geo.parametros.gridSize,10),"visible":true,"opacity":camada.transparency,"name":camada.name,"styles":markercluster_config.estilos});i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;markercluster.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=true;i3GEO.pluginI3geo.OBJETOS[camada.name].redraw();i3GEO.eventos.cliquePerm.ativo=false};markercluster.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=false;i3GEO.eventos.cliquePerm.ativo=true};markercluster.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].clearMarkers();i3GEO.eventos.cliquePerm.ativo=true};markercluster.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=true;i3GEO.pluginI3geo.OBJETOS[camada.name].redraw();i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos+"&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/openlayers_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var layerListeners,logMax,logMin,classes,min,max,markercluster,marcas,lonlat,n,i,style,nestilos,intervalo,regra,regras=[];nestilos=markercluster_config.estilos.length;n=markercluster_dados.length;classes=Array();logMax=Math.log(n)/Math.LN10; logMin=Math.log(1)/Math.LN10;intervalo=(logMax-logMin)/nestilos;for(i=0;i<nestilos;i++){if(i==0){classes[i]=logMin}else{classes[i]=classes[i-1]+intervalo}}classes=classes.map(function(x){return Math.pow(10,x)});classes.push(n);regra=new OpenLayers.Rule({filter:new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.LESS_THAN,property:"count",value:2}),symbolizer:{externalGraphic:markercluster_config.ponto.url,graphicWidth:markercluster_config.ponto.width,graphicHeight:markercluster_config.ponto.height,graphicYOffset:(markercluster_config.ponto.height/2)*-1}});regras.push(regra);min=2;for(i=0;i<nestilos;i++){max=classes[i+1];regra=new OpenLayers.Rule({filter:new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.BETWEEN,property:"count",lowerBoundary:min,upperBoundary:max}),symbolizer:{externalGraphic:markercluster_config.estilos[i].url,graphicWidth:markercluster_config.estilos[i].width,graphicHeight:markercluster_config.estilos[i].height,label:"${count}",labelOutlineWidth:1,fontColor:"#000000",fontOpacity:1,fontSize:"12px"}});regras.push(regra);min=max}style=new OpenLayers.Style(null,{rules:regras});if(!objMapa){objMapa=i3geoOL}layerListeners={featureclick:function(e){if(e.feature.cluster.length>1){objMapa.setCenter([e.feature.geometry.x,e.feature.geometry.y],objMapa.getZoom()+1,false,false)}return false}};markercluster=new OpenLayers.Layer.Vector(camada.name,{renderers:['Canvas','SVG'],strategies:[new OpenLayers.Strategy.AnimatedCluster({distance:parseInt(camada.plugini3geo.parametros.gridSize,10)})],styleMap:new OpenLayers.StyleMap(style),eventListeners:layerListeners});objMapa.addLayer(markercluster);marcas=[];for(i=0;i<n;i++){lonlat=new OpenLayers.LonLat(markercluster_dados[i].lng,markercluster_dados[i].lat);if(i3GEO.Interface.openlayers.googleLike===true){lonlat.transform(new OpenLayers.Projection("EPSG:4326"),new OpenLayers.Projection("EPSG:900913"))}marcas.push(new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(lonlat.lon,lonlat.lat)))}markercluster.addFeatures(marcas);i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;markercluster.ligaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};markercluster.desLigaCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};markercluster.removeCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};markercluster.atualizaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos+"&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}}},layerkml:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"layerkml","parametros":{"url": ""}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="layerkml"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+="<p>Url do arquivo Kml:<br><input name='url' type='text' value='"+parametros.url+"'/></p>"+"<p>Veja o exemplo utilizado no tema _lmapakml.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var layerkml=new google.maps.KmlLayer(camada.plugini3geo.parametros.url,{map:i3GeoMap,preserveViewport:true,name:camada.name});i3GEO.janela.fechaAguarde("aguardePlugin");layerkml.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};layerkml.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null)};layerkml.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true)};layerkml.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var layerkml;url=i3GEO.configura.locaplic+"/classesphp/proxy.php?url="+camada.plugini3geo.parametros.url;layerkml=new OpenLayers.Layer.Vector(camada.name,{displayOutsideMaxExtent:true,displayInLayerSwitcher:false,visibility:true,strategies:[new OpenLayers.Strategy.Fixed()],protocol:new OpenLayers.Protocol.HTTP({url:url,format:new OpenLayers.Format.KML({extractStyles:true,extractAttributes:true,maxDepth:5})})});i3geoOL.addLayer(layerkml);if(!objMapa){objMapa=i3geoOL}layerkml.div.onclick=function(e){var targ="",id,temp,features,n,i,j="",html="";if(!e){e=window.event}if(e.target){targ=e.target}else if(e.srcElement){targ=e.srcElement}if(targ.id){temp=targ.id.split("_Point");if(temp[0]==="OpenLayers_Geometry"){id=targ.id;temp=i3geoOL.getLayer(this.id);features=temp.features;n=features.length;for(i=0;i<n;i++){if(features[i].geometry.id===id){for(j in features[i].attributes){html+=j+": "+features[i].attributes[j]}g=features[i].geometry;i3geoOL.addPopup(new OpenLayers.Popup.FramedCloud("kml",new OpenLayers.LonLat(g.x,g.y),null,html,null,true))}}}}};i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;layerkml.ligaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};layerkml.desLigaCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};layerkml.removeCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};layerkml.atualizaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}}}};
  408 +if(typeof(i3GEO)==='undefined'){var i3GEO={}}i3GEO.pluginI3geo={OBJETOS:{},PLUGINS:[{"classe":"heatmap","nome":"Mapa de calor","editor":true},{"classe":"markercluster","nome":"Agrupamento de pontos (cluster)","editor":true},{"classe":"layerkml","nome":"Camada Kml","editor":true},{"classe":"parametrossql","nome":"SQL parametrizado","editor":true}],inicia:function(camada){if(i3GEO.janela){i3GEO.janela.AGUARDEMODAL=true;i3GEO.janela.abreAguarde("aguardePlugin","Plugin...");i3GEO.janela.AGUARDEMODAL=false}i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].inicia(camada)},formAdmin:function(plugin,configString){return i3GEO.pluginI3geo[plugin].formAdmin(configString)},linkAjuda:function(plugin){return i3GEO.pluginI3geo[plugin].linkAjuda()},ligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].ligaCamada();return true}return false},desligaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].desLigaCamada();return true}return false},removeCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].removeCamada();delete(i3GEO.pluginI3geo.OBJETOS[nomecamada]);return true}return false},atualizaCamada:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada();return true}return false},existeObjeto:function(nomecamada){if(i3GEO.pluginI3geo.OBJETOS[nomecamada]&&i3GEO.pluginI3geo.OBJETOS[nomecamada].atualizaCamada){return true}return false},aplicaPropriedades:function(camada){if(camada.plugini3geo&&camada.plugini3geo!=""){camada=i3GEO.pluginI3geo[camada.plugini3geo.plugin][i3GEO.Interface.ATUAL].aplicaPropriedades(camada)}return camada},heatmap:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"heatmap","parametros":{"tipoGradiente": "default","valorPonto":1,"coluna":"","radius":15}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="heatmap"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+=""+"<p>Coluna que cont&eacute;m os dados:"+"<br><input name='coluna' type='text' value='"+parametros.coluna+"' size='30'></p>"+"<p>Ou valor num&eacute;rico para cada ponto:"+"<br><input name='valorPonto' type='text' value='"+parametros.valorPonto+"' size='30'></p>"+"<p>Raio de cada ponto em pixels:"+"<br><input name='radius' type='text' value='"+parametros.radius+"' size='30'></p>"+"<p>Tipo de gradiente (deixe vazio para utilizar as classes definidas no Layer ou escreva 'default' para usar o normal):"+"<br><input name='tipoGradiente' type='text' value='"+parametros.tipoGradiente+"' size='30'></p>"+"<p>Para definir os cortes no gradiente de cores utilize valores entre 0 e 1."+" As cores s&atilde;o definidas nas classes do LAYER, sendo que o nome define o valor superior do gradiente e COLOR define a cor."+" Veja o exemplo utilizado no tema _lmapadecalor.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var heatmap,pontos;heatmap=new HeatmapOverlay(i3GeoMap,camada.name,{"radius":camada.plugini3geo.parametros.radius,"visible":true,"opacity":camada.transparency,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}});pontos={max:camada.plugini3geo.parametros.max,data:heatmap_dados};i3GEO.janela.fechaAguarde("aguardePlugin");heatmap.setDataSet(pontos);heatmap.ligaCamada=function(){this.liga()};heatmap.desLigaCamada=function(){this.desliga()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.draw()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;heatmap_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var nomeScript="heatmap_script",p=i3GEO.configura.locaplic+"/ferramentas/heatmap/openlayers_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var temp,heatmap,transformedTestData={max:1,data:[]},data=heatmap_dados,datalen=heatmap_dados.length,nudata=[],max=0;if(!objMapa){objMapa=i3geoOL}while(datalen--){temp=heatmap_dados[datalen].count;nudata.push({lonlat:new OpenLayers.LonLat(data[datalen].lng,heatmap_dados[datalen].lat),count:temp});max=Math.max(max,temp)}transformedTestData.max=max;transformedTestData.data=nudata;heatmap=new OpenLayers.Layer.Heatmap(camada.name,objMapa,objMapa.baseLayer,{"visible":true,"opacity":camada.transparency,"radius":camada.plugini3geo.parametros.radius,"gradient":heatmap_config.gradient,"legend":{"title":camada.tema,"position":"bl","offset":[5,50]}},{isBaseLayer:false,projection:new OpenLayers.Projection("EPSG:4326"),displayInLayerSwitcher:true});heatmap.ligaCamada=function(){this.toggle();this.updateLayer()};heatmap.desLigaCamada=function(){this.toggle();this.updateLayer()};heatmap.removeCamada=function(){this.destroy()};heatmap.atualizaCamada=function(){this.updateLayer()};i3GEO.pluginI3geo.OBJETOS[camada.name]=heatmap;objMapa.addLayer(heatmap);heatmap.setDataSet(transformedTestData);heatmap_dados=null;if(i3GEO.janela){i3GEO.janela.fechaAguarde("aguardePlugin")}};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}if(!i3GEO.configura||!i3GEO.configura.sid){i3GEO.configura.sid=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&coluna="+camada.plugini3geo.parametros.coluna+"&tipoGradiente="+camada.plugini3geo.parametros.tipoGradiente+"&g_sid="+i3GEO.configura.sid+"&nomevariavel=heatmap_dados&nomevariavelConfig=heatmap_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},googleearth:{inicia:function(){alert("Plugin nao disponivel")}}},markercluster:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"markercluster","parametros":{"tipoEstilos": "default","gridSize":50}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="markercluster"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+=""+"<p>Dist&acirc;ncia m&aacute;xima entre ponto em pixels:"+"<br><input name='gridSize' type='text' value='"+parametros.gridSize+"' size='30'></p>"+"<p>Tipo de estilos (deixe vazio para utilizar as classes definidas no Layer ou escreva 'default' para usar o normal):"+"<br><input name='tipoEstilos' type='text' value='"+parametros.tipoEstilos+"' size='30'></p>"+"<p>Os s&iacute;mbolos utilizados podem ser customizados alterando-se as classes do Mapfile</p>"+"<p>Veja o exemplo utilizado no tema _lmapadecluster.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/googlemaps_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var markercluster,marcas,latLng,marker,n,i;n=markercluster_dados.length;marcas=[];for(i=0;i<n;i++){latLng=new google.maps.LatLng(markercluster_dados[i].lat,markercluster_dados[i].lng);marker=new google.maps.Marker({'position':latLng,icon:{url:markercluster_config.ponto.url,scaledSize:new google.maps.Size(markercluster_config.ponto.width,markercluster_config.ponto.height)}});marcas.push(marker)}markercluster=new MarkerClusterer(i3GeoMap,marcas,{"gridSize":parseInt(camada.plugini3geo.parametros.gridSize,10),"visible":true,"opacity":camada.transparency,"name":camada.name,"styles":markercluster_config.estilos});i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;markercluster.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=true;i3GEO.pluginI3geo.OBJETOS[camada.name].redraw();i3GEO.eventos.cliquePerm.ativo=false};markercluster.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=false;i3GEO.eventos.cliquePerm.ativo=true};markercluster.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].clearMarkers();i3GEO.eventos.cliquePerm.ativo=true};markercluster.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].ready_=true;i3GEO.pluginI3geo.OBJETOS[camada.name].redraw();i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos+"&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var nomeScript="markercluster_script",p=i3GEO.configura.locaplic+"/ferramentas/markercluster/openlayers_js.php",carregaJs="nao",criaLayer;criaLayer=function(){var layerListeners,logMax,logMin,classes,min,max,markercluster,marcas,lonlat,n,i,style,nestilos,intervalo,regra,regras=[];nestilos=markercluster_config.estilos.length;n=markercluster_dados.length;classes=Array();logMax=Math.log(n)/Math.LN10; logMin=Math.log(1)/Math.LN10;intervalo=(logMax-logMin)/nestilos;for(i=0;i<nestilos;i++){if(i==0){classes[i]=logMin}else{classes[i]=classes[i-1]+intervalo}}classes=classes.map(function(x){return Math.pow(10,x)});classes.push(n);regra=new OpenLayers.Rule({filter:new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.LESS_THAN,property:"count",value:2}),symbolizer:{externalGraphic:markercluster_config.ponto.url,graphicWidth:markercluster_config.ponto.width,graphicHeight:markercluster_config.ponto.height,graphicYOffset:(markercluster_config.ponto.height/2)*-1}});regras.push(regra);min=2;for(i=0;i<nestilos;i++){max=classes[i+1];regra=new OpenLayers.Rule({filter:new OpenLayers.Filter.Comparison({type:OpenLayers.Filter.Comparison.BETWEEN,property:"count",lowerBoundary:min,upperBoundary:max}),symbolizer:{externalGraphic:markercluster_config.estilos[i].url,graphicWidth:markercluster_config.estilos[i].width,graphicHeight:markercluster_config.estilos[i].height,label:"${count}",labelOutlineWidth:1,fontColor:"#000000",fontOpacity:1,fontSize:"12px"}});regras.push(regra);min=max}style=new OpenLayers.Style(null,{rules:regras});if(!objMapa){objMapa=i3geoOL}layerListeners={featureclick:function(e){if(e.feature.cluster.length>1){objMapa.setCenter([e.feature.geometry.x,e.feature.geometry.y],objMapa.getZoom()+1,false,false)}return false}};markercluster=new OpenLayers.Layer.Vector(camada.name,{renderers:['Canvas','SVG'],strategies:[new OpenLayers.Strategy.AnimatedCluster({distance:parseInt(camada.plugini3geo.parametros.gridSize,10)})],styleMap:new OpenLayers.StyleMap(style),eventListeners:layerListeners});objMapa.addLayer(markercluster);marcas=[];for(i=0;i<n;i++){lonlat=new OpenLayers.LonLat(markercluster_dados[i].lng,markercluster_dados[i].lat);if(i3GEO.Interface.openlayers.googleLike===true){lonlat.transform(new OpenLayers.Projection("EPSG:4326"),new OpenLayers.Projection("EPSG:900913"))}marcas.push(new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(lonlat.lon,lonlat.lat)))}markercluster.addFeatures(marcas);i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;markercluster.ligaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};markercluster.desLigaCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};markercluster.removeCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};markercluster.atualizaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=markercluster;markercluster_dados=null};if(!$i(nomeScript)){carregaJs="sim"}else{nomeScript=""}p+="?carregajs="+carregaJs+"&layer="+camada.name+"&g_sid="+i3GEO.configura.sid+"&tipoEstilos="+camada.plugini3geo.parametros.tipoEstilos+"&nomevariavel=markercluster_dados&nomevariavelConfig=markercluster_config";i3GEO.util.scriptTag(p,criaLayer,nomeScript)}}},layerkml:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var parametros,ins="",configDefault='{"plugin":"layerkml","parametros":{"url": ""}}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="layerkml"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;ins+="<p>Url do arquivo Kml:<br><input name='url' type='text' value='"+parametros.url+"'/></p>"+"<p>Veja o exemplo utilizado no tema _lmapakml.map</p>";return ins},googlemaps:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada){var layerkml=new google.maps.KmlLayer(camada.plugini3geo.parametros.url,{map:i3GeoMap,preserveViewport:true,name:camada.name});i3GEO.janela.fechaAguarde("aguardePlugin");layerkml.ligaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};layerkml.desLigaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null)};layerkml.removeCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true)};layerkml.atualizaCamada=function(){i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(null);i3GEO.pluginI3geo.OBJETOS[camada.name].resetViewport(true);i3GEO.pluginI3geo.OBJETOS[camada.name].setMap(i3GeoMap)};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}},openlayers:{aplicaPropriedades:function(camada){camada.sel="nao";camada.download="nao";camada.AGUARDALEGENDA=false;camada.temporizador="";camada.copia=false;camada.procurar=false;camada.toponimia=false;camada.etiquetas=false;camada.tabela=false;camada.grafico=false;camada.destacar=false;camada.wms=false;camada.classe="NAO";return camada},inicia:function(camada,objMapa){var layerkml;url=i3GEO.configura.locaplic+"/classesphp/proxy.php?url="+camada.plugini3geo.parametros.url;layerkml=new OpenLayers.Layer.Vector(camada.name,{displayOutsideMaxExtent:true,displayInLayerSwitcher:false,visibility:true,strategies:[new OpenLayers.Strategy.Fixed()],protocol:new OpenLayers.Protocol.HTTP({url:url,format:new OpenLayers.Format.KML({extractStyles:true,extractAttributes:true,maxDepth:5})})});i3geoOL.addLayer(layerkml);if(!objMapa){objMapa=i3geoOL}layerkml.div.onclick=function(e){var targ="",id,temp,features,n,i,j="",html="";if(!e){e=window.event}if(e.target){targ=e.target}else if(e.srcElement){targ=e.srcElement}if(targ.id){temp=targ.id.split("_Point");if(temp[0]==="OpenLayers_Geometry"){id=targ.id;temp=i3geoOL.getLayer(this.id);features=temp.features;n=features.length;for(i=0;i<n;i++){if(features[i].geometry.id===id){for(j in features[i].attributes){html+=j+": "+features[i].attributes[j]}g=features[i].geometry;i3geoOL.addPopup(new OpenLayers.Popup.FramedCloud("kml",new OpenLayers.LonLat(g.x,g.y),null,html,null,true))}}}}};i3GEO.janela.fechaAguarde("aguardePlugin");i3GEO.eventos.cliquePerm.ativo=false;layerkml.ligaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};layerkml.desLigaCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};layerkml.removeCamada=function(){i3GEO.eventos.cliquePerm.ativo=true};layerkml.atualizaCamada=function(){i3GEO.eventos.cliquePerm.ativo=false};i3GEO.pluginI3geo.OBJETOS[camada.name]=layerkml}}},parametrossql:{linkAjuda:function(){return i3GEO.configura.locaplic+"/ajuda_usuario.php?idcategoria=3&idajuda=121"},formAdmin:function(config){var n,i,parametros,ins="",configDefault='{"plugin":"parametrossql","parametros":[{"titulo":"","tipo":"input","valores":[],"chave":""},{"titulo":"","tipo":"input","valores":[],"chave":""},{"titulo":"","tipo":"input","valores":[],"chave":""},{"titulo":"","tipo":"input","valores":[],"chave":""}]}';if(config===""){config=configDefault}config=YAHOO.lang.JSON.parse(config);if(config.plugin!="parametrossql"){config=YAHOO.lang.JSON.parse(configDefault)}parametros=config.parametros;n=parametros.length;ins+="<table><tr><td>T&iacute;tulo</td><td>Chave</td><td>Tipo (input ou select)</td><td>Valores</td></tr>";for(i=0;i<n;i++){ins+="<tr><td><input name='titulo' type=text size=20 value='"+parametros[i].titulo+"' /></td>"+"<td><input name='chave' type=text size=20 value='"+parametros[i].chave+"' /></td>"+"<td><input name='tipo' type=text size=20 value='"+parametros[i].tipo+"' /></td> "+"<td><input name='valores' type=text size=20 value='"+parametros[i].valores+"' /></td></tr>"}ins+="</table>"+"<p class='paragrafo'>As chaves s&atilde;o palavras que devem existir no SQL definido em DATA."+"<br>O usu&aacute;rio ir&aacute; fornecer os valores que ser&atilde;o ent&atilde;o utilizados para substituir as chaves de forma din&acirc;mica"+"<br>Ser&aacute; mostrado ao usu&aacute;rio um formul&aacute;rio com op&ccedil;&otilde;es. Cada op&ccedil;&atilde;o conter&aacute; um t&iacute;tulo e um campo de formul&aacute;rio"+"<br>Cada campo de formul&aacute;rio pode ser dos tipos input (para digitar um valor) ou select (caixa de op&ccedil;&otilde;es)."+"<br>Em valores deve ser definida a lista ou o valor default que ser&aacute; mostrado. No caso de listas, utilize v&iacute;rgula para separar os valores.";return ins},parametrosFormAdmin:function(onde){var campo=0,nlinhas=4,ncampos=4,campos=onde.getElementsByTagName("input"),par=[],temp=[],i,j;for(j=0;j<nlinhas;j++){temp=[];for(i=0;i<ncampos;i++){if(campos[campo]){temp.push('"'+campos[campo].name+'" : "'+campos[campo].value+'"')}campo++}par.push("{"+temp.join(",")+"}")}return'{"plugin":"parametrossql","parametros":['+par.join(",")+']}'},inicia:function(camada){i3GEO.janela.fechaAguarde("aguardePlugin");var iniciaform=function(){i3GEOF.parametrossql.iniciaJanelaFlutuante(camada)};i3GEO.util.scriptTag((i3GEO.configura.locaplic+"/ferramentas/parametrossql/dependencias.php"),iniciaform,"parametrossql_script")},googlemaps:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada}},openlayers:{inicia:function(camada){i3GEO.pluginI3geo.parametrossql.inicia(camada)},aplicaPropriedades:function(camada){return camada}}}};
409 409 /*
410 410 * euDock - javascript Emulation of Dock style MAC OS X bar
411 411 *
... ...
classesphp/classe_mapa.php
... ... @@ -407,6 +407,9 @@ class Mapa
407 407 $plugini3geo = "";
408 408 if($oLayer->getmetadata("PLUGINI3GEO") != ""){
409 409 $plugini3geo = $oLayer->getmetadata("PLUGINI3GEO");
  410 + if (!mb_detect_encoding($plugini3geo,"UTF-8",true)){
  411 + $plugini3geo = mb_convert_encoding($plugini3geo,"UTF-8","ISO-8859-1");
  412 + }
410 413 $plugini3geo = json_decode($plugini3geo);
411 414 }
412 415 //formatacao antiga, antes da versao 6.0
... ...
classesphp/mapa_controle.php
... ... @@ -890,7 +890,7 @@ Gera os arquivos para download de um tema for&amp;ccedil;ando um mapfile vazio.
890 890 */
891 891 case "DOWNLOAD3":
892 892 //caso o tema tenha de vir do sistema de metadados estatisticos
893   -
  893 +
894 894 //pode ser uma regiao cadastrada no sistema de metadados
895 895 if(isset($codigo_tipo_regiao) && $codigo_tipo_regiao != ""){
896 896 include(dirname(__FILE__)."/../admin/php/classe_metaestat.php");
... ... @@ -898,7 +898,7 @@ Gera os arquivos para download de um tema for&amp;ccedil;ando um mapfile vazio.
898 898 $m->nomecache = "ogcmetaestatreg".$codigo_tipo_regiao;
899 899 $tema = $m->mapfileTipoRegiao($codigo_tipo_regiao);
900 900 $tema = str_replace(".map","",$tema["mapfile"]);
901   - }
  901 + }
902 902 //pode ser uma medida de uma variavel
903 903 if(isset($id_medida_variavel) && $id_medida_variavel != ""){
904 904 include(dirname(__FILE__)."/../admin/php/classe_metaestat.php");
... ...
css/i3geo_ferramentas6.css
1   -/*
2   -Copyright (c) 2007, Yahoo! Inc. All rights reserved.
3   -Code licensed under the BSD License:
4   -http://developer.yahoo.net/yui/license.txt
5   -version: 2.2.2
6   -*/
7   -.yuibutton {
8   -
9   - display:-moz-inline-stack; /* Gecko */
10   - display:inline-block; /* IE, Opera and Safari */
11   - border-width:1px 0;
12   - border-style:solid;
13   - border-color:#999;
14   - margin:auto .25em;
15   -}
16   -
17   -.yuibutton.ie6 {
18   -
19   - /* Give the transparent background image to IE 6 */
20   - background-image:none;
21   - filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='background.png', sizingMethod = 'scale');
22   -
23   -}
24   -
25   -.yuibutton .first-child {
26   -
27   - display:block; /* Gecko, Opera and Safari */
28   - display:inline-block; /* IE */
29   -
30   - border-width:0 2px;
31   - border-style:solid;
32   - border-color:#999;
33   -
34   - margin:0 -1px;
35   -/*
36   - *position:relative;
37   - *left:-1px;
38   -*/
39   -}
40   -
41   -.yuibutton button,
42   -.yuibutton a {
43   -
44   - display:block; /* Opera and Safari */
45   - display:-moz-inline-block; /* Gecko */
46   - *display:inline-block; /* IE */
47   - padding:.25em .5em;
48   - border:1px solid #ccc;
49   -
50   -}
51   -
52   -.yuibutton button {
53   -
54   - overflow:visible; /* Remove superfluous padding for IE */
55   - font-size:100%; /* Makes form controls resizable in IE */
56   - background-color:transparent;
57   - cursor:pointer;
58   - cursor:hand;
59   -
60   -}
61   -
62   -.yuibutton a {
63   -
64   - text-decoration:none;
65   - color:#000;
66   -
67   -}
68   -
69   -.yuibutton.splitbutton button,
70   -.yuibutton.menubutton button {
71   -
72   - padding-right:20px;
73   - background-position:right center;
74   - background-repeat:no-repeat;
75   -
76   -}
77   -
78   -.yuibutton.menubutton button {
79   -
80   - background-image:url(menuarrow.gif);
81   -
82   -}
83   -
84   -.yuibutton.splitbutton button {
85   -
86   - background-image:url(splitarrow.gif);
87   -
88   -}
89   -
90   -
91   -/* Focus state */
92   -
93   -.yuibutton.focus {
94   -
95   - border-color:#5e5c95;
96   -
97   -}
98   -
99   -.yuibutton.focus .first-child {
100   -
101   - border-color:#5e5c95;
102   -
103   -}
104   -
105   -.yuibutton.focus button,
106   -.yuibutton.focus a {
107   -
108   - border-color:#cec1fc;
109   -
110   -}
111   -
112   -
113   -/* Hover state */
114   -
115   -.yuibutton.hover {
116   -
117   - border-color:#406fac;
118   - background-color:#98d5fc;
119   -
120   -}
121   -
122   -.yuibutton.hover .first-child {
123   -
124   - border-color:#406fac;
125   -
126   -}
127   -
128   -.yuibutton.hover button,
129   -.yuibutton.hover a {
130   -
131   - border-color:#7099ce;
132   -
133   -}
134   -
135   -
136   -/* Active state */
137   -
138   -.yuibutton.active {
139   -
140   - border-color:#7a8180;
141   - background-color:#333;
142   -
143   -}
144   -
145   -.yuibutton.active .first-child {
146   -
147   - border-color:#7a8180;
148   -
149   -}
150   -
151   -.yuibutton.active button,
152   -.yuibutton.active a {
153   -
154   - border-color:#98a09f;
155   -
156   -}
157   -
158   -.yuibutton.splitbutton.activeoption button {
159   -
160   - background-color:transparent;
161   - background-image:url(splitarrow_active.gif);
162   -
163   -}
164   -
165   -
166   -
167   -/* Checked state */
168   -
169   -.yuibutton.radio.checked,
170   -.yuibutton.checkbox.checked {
171   -
172   - border-color:#7a8180;
173   - background-color:#333;
174   -
175   -}
176   -
177   -.yuibutton.radio.checked .first-child,
178   -.yuibutton.checkbox.checked .first-child {
179   -
180   - border-color:#7a8180;
181   -
182   -}
183   -
184   -.yuibutton.radio.checked button,
185   -.yuibutton.checkbox.checked button {
186   -
187   - border-color:#98a09f;
188   -
189   -}
190   -
191   -
192   -
193   -/* Disabled state */
194   -
195   -.yuibutton.disabled {
196   -
197   - border-color:#cbcdc5;
198   - background:#ecece3;
199   -
200   - filter:none;
201   -
202   -}
203   -
204   -.yuibutton.disabled .first-child {
205   -
206   - border-color:#cbcdc5;
207   -
208   -}
209   -
210   -.yuibutton.disabled button,
211   -.yuibutton.disabled a {
212   -
213   - border-color:transparent;
214   - color:#b9b9b9;
215   - cursor:default;
216   -
217   -}
218   -td input {
219   - border-bottom: 1px solid rgb(156, 195, 195);
220   - border-left: 1px solid rgb(156, 195, 195);
221   - border-right: 1px solid rgb(156, 195, 195);
222   - border-top: 1px solid rgb(156, 195, 195);
223   - font-size: 10px;
224   - font-family: Verdana, Arial, Helvetica, sans-serif;
225   - color: navy;
226   - text-align: center;
227   -}
228   -
229   -body {
230   - overflow: hidden;
231   - font-size: 12px
232   -}
233   -
234   -div {
235   - text-align: left;
236   - border: 0px solid #FFFFFF;
237   - font-family: Verdana, Arial, Helvetica, sans-serif;
238   - position: relative;
239   - display: block;
240   - font-size: 12px;
241   - padding: 0px;
242   - font-weight: normal;
243   - left: 10px;
244   -}
245   -
246   -tr {
247   - background-color: white;
248   - border: 0px solid rgb(240, 240, 240);
249   - padding: 0px;
250   - margin: 0px;
251   -}
252   -
253   -td {
254   - border: 2px solid rgb(240, 240, 240);
255   - border-left: 0px;
256   - border-right: 0px;
257   - border-top: 0px;
258   - padding: 0px;
259   - color: #2F4632;
260   - margin: 0px;
261   - text-align: center;
262   - font-size: 10px;
263   - font-family: Verdana, Arial, Helvetica, sans-serif;
264   -}
265   -
266   -.lista td {
267   - border: 0px solid rgb(240, 240, 240);
268   - border-left: 0px;
269   - border-right: 0px;
270   - border-top: 0px;
271   - padding: 0px;
272   - color: #2F4632;
273   - margin: 0px;
274   - text-align: left;
275   - font-size: 10px;
276   - font-family: Verdana, Arial, Helvetica, sans-serif;
277   -}
278   -
279   -.lista2 td {
280   - border: 0px solid rgb(240, 240, 240);
281   - border-left: 0px;
282   - border-right: 0px;
283   - border-top: 0px;
284   - padding: 2px;
285   - color: #2F4632;
286   - margin: 0px;
287   - text-align: left;
288   - font-size: 10px;
289   - font-family: Verdana, Arial, Helvetica, sans-serif;
290   -}
291   -
292   -.lista3 td {
293   - border: 0px solid rgb(240, 240, 240);
294   - border-left: 0px;
295   - border-right: 0px;
296   - border-top: 0px;
297   - padding: 1px;
298   - color: #2F4632;
299   - background-color: #F2F2F2;
300   - margin: 0px;
301   - text-align: left;
302   - font-size: 12px;
303   - font-family: Verdana, Arial, Helvetica, sans-serif;
304   -}
305   -
306   -select {
307   - font-family: Verdana, Arial, Helvetica, sans-serif;
308   - font-size: 10px;
309   - color: navy;
310   - background-color: #FFFFFF;
311   - padding: 0;
312   - border: 1px solid rgb(240, 240, 240);
313   - text-align: left;
314   - cursor: pointer;
315   -}
316   -
317   -.digitar {
318   - box-shadow: 1px 1px 3px 0px lightgray;
319   - margin: 0px;
320   - color: #426252;
321   - background-color: white;
322   - height: 17px;
323   - font-size: 12px;
324   - font-family: Verdana, Arial, Helvetica, sans-serif;
325   -}
326   -
327   -.digitar input {
328   - border: 1px solid rgb(180, 180, 180);
329   -}
330   -
331   -.executar {
332   - cursor: pointer;
333   - color: rgb(0, 0, 200);
334   - text-align: left;
335   - padding-left: 5px;
336   - background-color: white;
337   - background-image: URL('../imagens/tic.png');
338   - background-repeat: no-repeat;
339   - border-style: outset;
340   - background-position: right;
341   - font-family: Verdana, Arial, Helvetica, sans-serif;
342   - font-size: 10px;
343   -}
344   -
345   -#fundo {
346   - background-color: rgb(255, 255, 255);
347   - overflow: hidden;
348   - position: absolute;
349   - top: 0px;
350   - left: 0px;
351   -}
352   -
353   -.guias {
354   - background-color: rgb(255, 255, 255);
355   - cursor: pointer;
356   - position: relative;
357   - text-align: left;
358   - top: 8px;
359   - left: 8px;
360   - padding: 0px;
361   - margin: 0px;
362   -}
363   -
364   -.guia {
365   - display: inline;
366   - background-color: rgb(230, 230, 230);
367   - color: rgb(150, 150, 150);
368   - position: relative;
369   - left: 0px;
370   - top: 0px;
371   - border: 0px solid white;
372   - font-size: 12px;
373   - z-index: 1050;
374   - padding: 0;
375   - margin-right: 3px;
376   - border-left: 1px solid rgb(230, 230, 230);
377   - border-top: 1px solid rgb(230, 230, 230);
378   - border-right: 1px solid rgb(230, 230, 230);
379   -}
380   -
381   -.guiaobj {
382   - text-align: left;
383   - text-decoration: none;
384   - border: 0px solid #ffffff;
385   - font-family: Verdana, Arial, Helvetica, sans-serif;
386   - position: relative;
387   - display: block;
388   - font-size: 8px;
389   - padding: 1;
390   - font-weight: normal;
391   - top: 0px;
392   - width: 95%;
393   -}
394   -
395   -#geral {
396   - position: relative;
397   - background-color: white;
398   - text-align: center;
399   - text-decoration: none;
400   - border-top: 2px solid rgb(230, 230, 230);
401   - font-family: Verdana, Arial, Helvetica, sans-serif;
402   - display: block;
403   - font-size: 8px;
404   - padding: 5px;
405   - font-weight: normal;
406   - top: 8px;
407   - left: 0px;
408   - overflow: auto;
409   - width: 100%;
410   -}
411   -
412   -.geralFerramentas {
413   - position: relative;
414   - background-color: white;
415   - text-align: center;
416   - text-decoration: none;
417   - border-top: 2px solid rgb(230, 230, 230);
418   - font-family: Verdana, Arial, Helvetica, sans-serif;
419   - display: block;
420   - font-size: 8px;
421   - padding: 5px;
422   - font-weight: normal;
423   - top: 8px;
424   - left: 0px;
425   - overflow: auto;
426   - width: 100%;
427   -}
428   -
429   -#aguarde {
430   - position: relative;
431   - top: 10px;
432   - left: 5px;
433   -}
434   -
435   -.aguarde1 {
436   - background-image: URL('../../imagens/aguarde.gif');
437   -}
438   -
439   -.alerta {
440   - font-weight: bold;
441   - color: red;
442   - top: 5px;
443   - left: 0px;
444   - padding: 5px;
445   -}
446   -
447   -.erro {
448   - color: red;
449   - padding: 5px;
450   -}
451   -
452   -.destaca {
453   - left: 0px;
454   - bottom: 10px;
455   - padding: 5px;
456   -}
457   -/*
458   -Copyright (c) 2011, Yahoo! Inc. All rights reserved.
459   -Code licensed under the BSD License:
460   -http://developer.yahoo.com/yui/license.html
461   -version: 2.9.0
462   -*/
463   -.yui-overlay,.yui-panel-container{visibility:hidden;position:absolute;z-index:2}.yui-panel{position:relative}.yui-panel-container form{margin:0}.mask{z-index:1;display:none;position:absolute;top:0;left:0;right:0;bottom:0}.mask.block-scrollbars{overflow:auto}.masked select,.drag select,.hide-select select{_visibility:hidden}.yui-panel-container select{_visibility:inherit}.hide-scrollbars,.hide-scrollbars *{overflow:hidden}.hide-scrollbars select{display:none}.show-scrollbars{overflow:auto}.yui-panel-container.show-scrollbars,.yui-tt.show-scrollbars{overflow:visible}.yui-panel-container.show-scrollbars .underlay,.yui-tt.show-scrollbars .yui-tt-shadow{overflow:auto}.yui-panel-container.shadow .underlay.yui-force-redraw{padding-bottom:1px}.yui-effect-fade .underlay,.yui-effect-fade .yui-tt-shadow{display:none}.yui-tt-shadow{position:absolute}.yui-override-padding{padding:0!important}.yui-panel-container .container-close{overflow:hidden;text-indent:-10000em;text-decoration:none}.yui-overlay.yui-force-redraw,.yui-panel-container.yui-force-redraw{margin-bottom:1px}.yui-skin-sam .mask{background-color:#000;opacity:.25;filter:alpha(opacity=25)}.yui-skin-sam .yui-panel-container{padding:0 1px;*padding:2px}.yui-skin-sam .yui-panel{position:relative;left:0;top:0;border-style:solid;border-width:1px 0;border-color:#808080;z-index:1;*border-width:1px;*zoom:1;_zoom:normal}.yui-skin-sam .yui-panel .hd,.yui-skin-sam .yui-panel .bd,.yui-skin-sam .yui-panel .ft{border-style:solid;border-width:0 1px;border-color:#808080;margin:0 -1px;*margin:0;*border:0}.yui-skin-sam .yui-panel .hd{border-bottom:solid 1px #ccc}.yui-skin-sam .yui-panel .bd,.yui-skin-sam .yui-panel .ft{background-color:#f2f2f2}.yui-skin-sam .yui-panel .hd{padding:0 10px;font-size:93%;line-height:2;*line-height:1.9;font-weight:bold;color:#000;background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -200px}.yui-skin-sam .yui-panel .bd{padding:10px}.yui-skin-sam .yui-panel .ft{border-top:solid 1px #808080;padding:5px 10px;font-size:77%}.yui-skin-sam .container-close{position:absolute;top:5px;right:6px;width:25px;height:15px;background:url(../../../../assets/skins/sam/sprite.png) no-repeat 0 -300px;cursor:pointer}.yui-skin-sam .yui-panel-container .underlay{right:-1px;left:-1px}.yui-skin-sam .yui-panel-container.matte{padding:9px 10px;background-color:#fff}.yui-skin-sam .yui-panel-container.shadow{_padding:2px 4px 0 2px}.yui-skin-sam .yui-panel-container.shadow .underlay{position:absolute;top:2px;left:-3px;right:-3px;bottom:-3px;*top:4px;*left:-1px;*right:-1px;*bottom:-1px;_top:0;_left:0;_right:0;_bottom:0;_margin-top:3px;_margin-left:-1px;background-color:#000;opacity:.12;filter:alpha(opacity=12)}.yui-skin-sam .yui-dialog .ft{border-top:0;padding:0 10px 10px 10px;font-size:100%}.yui-skin-sam .yui-dialog .ft .button-group{display:block;text-align:right}.yui-skin-sam .yui-dialog .ft button.default{font-weight:bold}.yui-skin-sam .yui-dialog .ft span.default{border-color:#304369;background-position:0 -1400px}.yui-skin-sam .yui-dialog .ft span.default .first-child{border-color:#304369}.yui-skin-sam .yui-dialog .ft span.default button{color:#fff}.yui-skin-sam .yui-dialog .ft span.yui-button-disabled{background-position:0 -1500px;border-color:#ccc}.yui-skin-sam .yui-dialog .ft span.yui-button-disabled .first-child{border-color:#ccc}.yui-skin-sam .yui-dialog .ft span.yui-button-disabled button{color:#a6a6a6}.yui-skin-sam .yui-simple-dialog .bd .yui-icon{background:url(../../../../assets/skins/sam/sprite.png) no-repeat 0 0;width:16px;height:16px;margin-right:10px;float:left}.yui-skin-sam .yui-simple-dialog .bd span.blckicon{background-position:0 -1100px}.yui-skin-sam .yui-simple-dialog .bd span.alrticon{background-position:0 -1050px}.yui-skin-sam .yui-simple-dialog .bd span.hlpicon{background-position:0 -1150px}.yui-skin-sam .yui-simple-dialog .bd span.infoicon{background-position:0 -1200px}.yui-skin-sam .yui-simple-dialog .bd span.warnicon{background-position:0 -1900px}.yui-skin-sam .yui-simple-dialog .bd span.tipicon{background-position:0 -1250px}.yui-skin-sam .yui-tt .bd{position:relative;top:0;left:0;z-index:1;color:#000;padding:2px 5px;border-color:#d4c237 #A6982b #a6982b #A6982B;border-width:1px;border-style:solid;background-color:#ffee69}.yui-skin-sam .yui-tt.show-scrollbars .bd{overflow:auto}.yui-skin-sam .yui-tt-shadow{top:2px;right:-3px;left:-3px;bottom:-3px;background-color:#000}.yui-skin-sam .yui-tt-shadow-visible{opacity:.12;filter:alpha(opacity=12)}
464   -
465   -/*
466   -Copyright (c) 2011, Yahoo! Inc. All rights reserved.
467   -Code licensed under the BSD License:
468   -http://developer.yahoo.com/yui/license.html
469   -version: 2.9.0
470   -*/
471   -/* MenuBar style rules */
472   -
473   -.yui-skin-sam .yuimenubar {
474   -
475   - font-size: 93%; /* 12px */
476   - line-height: 2; /* ~24px */
477   - *line-height: 1.9; /* For IE */
478   - border: solid 1px #808080;
479   - background: url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;
480   -
481   -}
482   -
483   -
484   -/* MenuBarItem style rules */
485   -
486   -.yui-skin-sam .yuimenubarnav .yuimenubaritem {
487   -
488   - border-right: solid 1px #ccc;
489   -
490   -}
491   -
492   -.yui-skin-sam .yuimenubaritemlabel {
493   -
494   - padding: 0 10px;
495   - color: #000;
496   - text-decoration: none;
497   - cursor: default;
498   - border-style: solid;
499   - border-color: #808080;
500   - border-width: 1px 0;
501   - *position: relative; /* Necessary to get negative margins in IE. */
502   - margin: -1px 0;
503   -
504   -}
505   -
506   -.yui-skin-sam .yuimenubaritemlabel:visited {
507   -
508   - color: #000;
509   -
510   -}
511   -
512   -.yui-skin-sam .yuimenubarnav .yuimenubaritemlabel {
513   -
514   - padding-right: 20px;
515   -
516   - /*
517   - Prevents the label from shifting left in IE when the
518   - ".yui-skin-sam .yuimenubarnav .yuimenubaritemlabel-selected"
519   - rule us applied.
520   - */
521   -
522   - *display: inline-block;
523   -
524   -}
525   -
526   -.yui-skin-sam .yuimenubarnav .yuimenubaritemlabel-hassubmenu {
527   -
528   - background: url(menubaritem_submenuindicator.png) right center no-repeat;
529   -
530   -}
531   -
532   -
533   -
534   -/* MenuBarItem states */
535   -
536   -/* Selected MenuBarItem */
537   -
538   -.yui-skin-sam .yuimenubaritem-selected {
539   -
540   - background: url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1700px;
541   -
542   -}
543   -
544   -.yui-skin-sam .yuimenubaritemlabel-selected {
545   -
546   - border-color: #7D98B8;
547   -
548   -}
549   -
550   -.yui-skin-sam .yuimenubarnav .yuimenubaritemlabel-selected {
551   -
552   - border-left-width: 1px;
553   - margin-left: -1px;
554   - *left: -1px; /* For IE */
555   -
556   -}
557   -
558   -
559   -/* Disabled MenuBarItem */
560   -
561   -.yui-skin-sam .yuimenubaritemlabel-disabled,
562   -.yui-skin-sam .yuimenubaritemlabel-disabled:visited {
563   -
564   - cursor: default;
565   - color: #A6A6A6;
566   -
567   -}
568   -
569   -.yui-skin-sam .yuimenubarnav .yuimenubaritemlabel-hassubmenu-disabled {
570   -
571   - background-image: url(menubaritem_submenuindicator_disabled.png);
572   -
573   -}
574   -
575   -
576   -
577   -/* Menu style rules */
578   -
579   -.yui-skin-sam .yuimenu {
580   -
581   - font-size: 93%; /* 12px */
582   - line-height: 1.5; /* 18px */
583   - *line-height: 1.45; /* For IE */
584   -
585   -}
586   -
587   -.yui-skin-sam .yuimenubar .yuimenu,
588   -.yui-skin-sam .yuimenu .yuimenu {
589   -
590   - font-size: 100%;
591   -
592   -}
593   -
594   -.yui-skin-sam .yuimenu .bd {
595   -
596   - /*
597   - The following application of zoom:1 prevents first tier submenus of a MenuBar from hiding
598   - when the mouse is moving from an item in a MenuBar to a submenu in IE 7.
599   - */
600   -
601   - *zoom: 1;
602   - _zoom: normal; /* Remove this rule for IE 6. */
603   - border: solid 1px #808080;
604   - background-color: #fff;
605   -
606   -}
607   -
608   -.yui-skin-sam .yuimenu .yuimenu .bd {
609   -
610   - *zoom: normal;
611   -
612   -}
613   -
614   -.yui-skin-sam .yuimenu ul {
615   -
616   - padding: 3px 0;
617   - border-width: 1px 0 0 0;
618   - border-color: #ccc;
619   - border-style: solid;
620   -
621   -}
622   -
623   -.yui-skin-sam .yuimenu ul.first-of-type {
624   -
625   - border-width: 0;
626   -
627   -}
628   -
629   -
630   -/* Group titles */
631   -
632   -.yui-skin-sam .yuimenu h6 {
633   -
634   - font-weight: bold;
635   - border-style: solid;
636   - border-color: #ccc;
637   - border-width: 1px 0 0 0;
638   - color: #a4a4a4;
639   - padding: 3px 10px 0 10px;
640   -
641   -}
642   -
643   -.yui-skin-sam .yuimenu ul.hastitle,
644   -.yui-skin-sam .yuimenu h6.first-of-type {
645   -
646   - border-width: 0;
647   -
648   -}
649   -
650   -
651   -/* Top and bottom scroll controls */
652   -
653   -.yui-skin-sam .yuimenu .yui-menu-body-scrolled {
654   -
655   - border-color: #ccc #808080;
656   - overflow: hidden;
657   -
658   -}
659   -
660   -.yui-skin-sam .yuimenu .topscrollbar,
661   -.yui-skin-sam .yuimenu .bottomscrollbar {
662   -
663   - height: 16px;
664   - border: solid 1px #808080;
665   - background: #fff url(../../../../assets/skins/sam/sprite.png) no-repeat 0 0;
666   -
667   -}
668   -
669   -.yui-skin-sam .yuimenu .topscrollbar {
670   -
671   - border-bottom-width: 0;
672   - background-position: center -950px;
673   -
674   -}
675   -
676   -.yui-skin-sam .yuimenu .topscrollbar_disabled {
677   -
678   - background-position: center -975px;
679   -
680   -}
681   -
682   -.yui-skin-sam .yuimenu .bottomscrollbar {
683   -
684   - border-top-width: 0;
685   - background-position: center -850px;
686   -
687   -}
688   -
689   -.yui-skin-sam .yuimenu .bottomscrollbar_disabled {
690   -
691   - background-position: center -875px;
692   -
693   -}
694   -
695   -
696   -/* MenuItem style rules */
697   -
698   -.yui-skin-sam .yuimenuitem {
699   -
700   - /*
701   - For IE 7 Quirks and IE 6 Strict Mode and Quirks Mode:
702   - Used to collapse superfluous white space between <li> elements
703   - that is triggered by the "display" property of the <a> elements being
704   - set to "block."
705   - */
706   -
707   - _border-bottom: solid 1px #fff;
708   -
709   -}
710   -
711   -.yui-skin-sam .yuimenuitemlabel {
712   -
713   - padding: 0 20px;
714   - color: #000;
715   - text-decoration: none;
716   - cursor: default;
717   -
718   -}
719   -
720   -.yui-skin-sam .yuimenuitemlabel:visited {
721   -
722   - color: #000;
723   -
724   -}
725   -
726   -.yui-skin-sam .yuimenuitemlabel .helptext {
727   -
728   - margin-top: -1.5em;
729   - *margin-top: -1.45em; /* For IE*/
730   -
731   -}
732   -
733   -.yui-skin-sam .yuimenuitem-hassubmenu {
734   -
735   - background-image: url(menuitem_submenuindicator.png);
736   - background-position: right center;
737   - background-repeat: no-repeat;
738   -
739   -}
740   -
741   -.yui-skin-sam .yuimenuitem-checked {
742   -
743   - background-image: url(menuitem_checkbox.png);
744   - background-position: left center;
745   - background-repeat: no-repeat;
746   -
747   -}
748   -
749   -
750   -/* Menu states */
751   -
752   -
753   -/* Visible Menu */
754   -
755   -.yui-skin-sam .yui-menu-shadow-visible {
756   -
757   - background-color: #000;
758   -
759   - /*
760   - Opacity can be expensive, so defer the use of opacity until the
761   - menu is visible.
762   - */
763   -
764   - opacity: .12;
765   - filter: alpha(opacity=12); /* For IE */
766   -
767   -}
768   -
769   -
770   -
771   -/* MenuItem states */
772   -
773   -
774   -/* Selected MenuItem */
775   -
776   -.yui-skin-sam .yuimenuitem-selected {
777   -
778   - background-color: #B3D4FF;
779   -
780   -}
781   -
782   -
783   -/* Disabled MenuItem */
784   -
785   -.yui-skin-sam .yuimenuitemlabel-disabled,
786   -.yui-skin-sam .yuimenuitemlabel-disabled:visited {
787   -
788   - cursor: default;
789   - color: #A6A6A6;
790   -
791   -}
792   -
793   -.yui-skin-sam .yuimenuitem-hassubmenu-disabled {
794   -
795   - background-image: url(menuitem_submenuindicator_disabled.png);
796   -
797   -}
798   -
799   -.yui-skin-sam .yuimenuitem-checked-disabled {
800   -
801   - background-image: url(menuitem_checkbox_disabled.png);
802   -
803   -}
804   -/*
805   -Copyright (c) 2009, Yahoo! Inc. All rights reserved.
806   -Code licensed under the BSD License:
807   -http://developer.yahoo.net/yui/license.txt
808   -version: 2.7.0
809   -*/
810   -.yui-navset .yui-nav li,.yui-navset .yui-navset-top .yui-nav li,.yui-navset .yui-navset-bottom .yui-nav li{margin:0 .5em 0 0;}.yui-navset-left .yui-nav li,.yui-navset-right .yui-nav li{margin:0 0 .5em;}.yui-navset .yui-content .yui-hidden{position:absolute;left:-999999px;visibility:hidden;}.yui-navset .yui-navset-left .yui-nav,.yui-navset .yui-navset-right .yui-nav,.yui-navset-left .yui-nav,.yui-navset-right .yui-nav{width:6em;}.yui-navset-top .yui-nav,.yui-navset-bottom .yui-nav{width:auto;}.yui-navset .yui-navset-left,.yui-navset-left{padding:0 0 0 6em;}.yui-navset-right{padding:0 6em 0 0;}.yui-navset-top,.yui-navset-bottom{padding:auto;}.yui-nav,.yui-nav li{margin:0;padding:0;list-style:none;}.yui-navset li em{font-style:normal;}.yui-navset{position:relative;zoom:1;}.yui-navset .yui-content,.yui-navset .yui-content div{zoom:1;}.yui-navset .yui-content:after{content:'';display:block;clear:both;}.yui-navset .yui-nav li,.yui-navset .yui-navset-top .yui-nav li,.yui-navset .yui-navset-bottom .yui-nav li{display:inline-block;display:-moz-inline-stack;*display:inline;vertical-align:bottom;cursor:pointer;zoom:1;}.yui-navset-left .yui-nav li,.yui-navset-right .yui-nav li{display:block;}.yui-navset .yui-nav a{position:relative;}.yui-navset .yui-nav li a,.yui-navset-top .yui-nav li a,.yui-navset-bottom .yui-nav li a{display:block;display:inline-block;vertical-align:bottom;zoom:1;}.yui-navset-left .yui-nav li a,.yui-navset-right .yui-nav li a{display:block;}.yui-navset-bottom .yui-nav li a{vertical-align:text-top;}.yui-navset .yui-nav li a em,.yui-navset-top .yui-nav li a em,.yui-navset-bottom .yui-nav li a em{display:block;}.yui-navset .yui-navset-left .yui-nav,.yui-navset .yui-navset-right .yui-nav,.yui-navset-left .yui-nav,.yui-navset-right .yui-nav{position:absolute;z-index:1;}.yui-navset-top .yui-nav,.yui-navset-bottom .yui-nav{position:static;}.yui-navset .yui-navset-left .yui-nav,.yui-navset-left .yui-nav{left:0;right:auto;}.yui-navset .yui-navset-right .yui-nav,.yui-navset-right .yui-nav{right:0;left:auto;}.yui-skin-sam .yui-navset .yui-nav,.yui-skin-sam .yui-navset .yui-navset-top .yui-nav{border:solid #2647a0;border-width:0 0 5px;zoom:1;}.yui-skin-sam .yui-navset .yui-nav li,.yui-skin-sam .yui-navset .yui-navset-top .yui-nav li{margin:0 .16em 0 0;padding:1px 0 0;zoom:1;}.yui-skin-sam .yui-navset .yui-nav .selected,.yui-skin-sam .yui-navset .yui-navset-top .yui-nav .selected{margin:0 .16em -1px 0;}.yui-skin-sam .yui-navset .yui-nav a,.yui-skin-sam .yui-navset .yui-navset-top .yui-nav a{background:#d8d8d8 url(../pacotes/yui290/build/assets/skins/sam/sprite.png) repeat-x;border:solid #a3a3a3;border-width:0 1px;color:#000;position:relative;text-decoration:none;}.yui-skin-sam .yui-navset .yui-nav a em,.yui-skin-sam .yui-navset .yui-navset-top .yui-nav a em{border:solid #a3a3a3;border-width:1px 0 0;cursor:hand;padding:.25em .75em;left:0;right:0;bottom:0;top:-1px;position:relative;}.yui-skin-sam .yui-navset .yui-nav .selected a,.yui-skin-sam .yui-navset .yui-nav .selected a:focus,.yui-skin-sam .yui-navset .yui-nav .selected a:hover{background:#2647a0 url(../pacotes/yui290/build/assets/skins/sam/sprite.png) repeat-x left -1400px;color:#fff;}.yui-skin-sam .yui-navset .yui-nav a:hover,.yui-skin-sam .yui-navset .yui-nav a:focus{background:white url(../pacotes/yui290/build/assets/skins/sam/sprite.png) repeat-x left -1300px;outline:0;}.yui-skin-sam .yui-navset .yui-nav .selected a em{padding:.35em .75em;}.yui-skin-sam .yui-navset .yui-nav .selected a,.yui-skin-sam .yui-navset .yui-nav .selected a em{border-color:#243356;}.yui-skin-sam .yui-navset .yui-content{background:#edf5ff;}.yui-skin-sam .yui-navset .yui-content,.yui-skin-sam .yui-navset .yui-navset-top .yui-content{border:1px solid #808080;border-top-color:#243356;padding:.25em .5em;}.yui-skin-sam .yui-navset-left .yui-nav,.yui-skin-sam .yui-navset .yui-navset-left .yui-nav,.yui-skin-sam .yui-navset .yui-navset-right .yui-nav,.yui-skin-sam .yui-navset-right .yui-nav{border-width:0 5px 0 0;Xposition:absolute;top:0;bottom:0;}.yui-skin-sam .yui-navset .yui-navset-right .yui-nav,.yui-skin-sam .yui-navset-right .yui-nav{border-width:0 0 0 5px;}.yui-skin-sam .yui-navset-left .yui-nav li,.yui-skin-sam .yui-navset .yui-navset-left .yui-nav li,.yui-skin-sam .yui-navset-right .yui-nav li{margin:0 0 .16em;padding:0 0 0 1px;}.yui-skin-sam .yui-navset-right .yui-nav li{padding:0 1px 0 0;}.yui-skin-sam .yui-navset-left .yui-nav .selected,.yui-skin-sam .yui-navset .yui-navset-left .yui-nav .selected{margin:0 -1px .16em 0;}.yui-skin-sam .yui-navset-right .yui-nav .selected{margin:0 0 .16em -1px;}.yui-skin-sam .yui-navset-left .yui-nav a,.yui-skin-sam .yui-navset-right .yui-nav a{border-width:1px 0;}.yui-skin-sam .yui-navset-left .yui-nav a em,.yui-skin-sam .yui-navset .yui-navset-left .yui-nav a em,.yui-skin-sam .yui-navset-right .yui-nav a em{border-width:0 0 0 1px;padding:.2em .75em;top:auto;left:-1px;}.yui-skin-sam .yui-navset-right .yui-nav a em{border-width:0 1px 0 0;left:auto;right:-1px;}.yui-skin-sam .yui-navset-left .yui-nav a,.yui-skin-sam .yui-navset-left .yui-nav .selected a,.yui-skin-sam .yui-navset-left .yui-nav a:hover,.yui-skin-sam .yui-navset-right .yui-nav a,.yui-skin-sam .yui-navset-right .yui-nav .selected a,.yui-skin-sam .yui-navset-right .yui-nav a:hover,.yui-skin-sam .yui-navset-bottom .yui-nav a,.yui-skin-sam .yui-navset-bottom .yui-nav .selected a,.yui-skin-sam .yui-navset-bottom .yui-nav a:hover{background-image:none;}.yui-skin-sam .yui-navset-left .yui-content{border:1px solid #808080;border-left-color:#243356;}.yui-skin-sam .yui-navset-bottom .yui-nav,.yui-skin-sam .yui-navset .yui-navset-bottom .yui-nav{border-width:5px 0 0;}.yui-skin-sam .yui-navset .yui-navset-bottom .yui-nav .selected,.yui-skin-sam .yui-navset-bottom .yui-nav .selected{margin:-1px .16em 0 0;}.yui-skin-sam .yui-navset .yui-navset-bottom .yui-nav li,.yui-skin-sam .yui-navset-bottom .yui-nav li{padding:0 0 1px 0;vertical-align:top;}.yui-skin-sam .yui-navset .yui-navset-bottom .yui-nav a em,.yui-skin-sam .yui-navset-bottom .yui-nav a em{border-width:0 0 1px;top:auto;bottom:-1px;}
811   -.yui-skin-sam .yui-navset-bottom .yui-content,.yui-skin-sam .yui-navset .yui-navset-bottom .yui-content{border:1px solid #808080;border-bottom-color:#243356;}
812   -
  1 +/*
  2 +Copyright (c) 2007, Yahoo! Inc. All rights reserved.
  3 +Code licensed under the BSD License:
  4 +http://developer.yahoo.net/yui/license.txt
  5 +version: 2.2.2
  6 +*/
  7 +.yuibutton {
  8 +
  9 + display:-moz-inline-stack; /* Gecko */
  10 + display:inline-block; /* IE, Opera and Safari */
  11 + border-width:1px 0;
  12 + border-style:solid;
  13 + border-color:#999;
  14 + margin:auto .25em;
  15 +}
  16 +
  17 +.yuibutton.ie6 {
  18 +
  19 + /* Give the transparent background image to IE 6 */
  20 + background-image:none;
  21 + filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='background.png', sizingMethod = 'scale');
  22 +
  23 +}
  24 +
  25 +.yuibutton .first-child {
  26 +
  27 + display:block; /* Gecko, Opera and Safari */
  28 + display:inline-block; /* IE */
  29 +
  30 + border-width:0 2px;
  31 + border-style:solid;
  32 + border-color:#999;
  33 +
  34 + margin:0 -1px;
  35 +/*
  36 + *position:relative;
  37 + *left:-1px;
  38 +*/
  39 +}
  40 +
  41 +.yuibutton button,
  42 +.yuibutton a {
  43 +
  44 + display:block; /* Opera and Safari */
  45 + display:-moz-inline-block; /* Gecko */
  46 + *display:inline-block; /* IE */
  47 + padding:.25em .5em;
  48 + border:1px solid #ccc;
  49 +
  50 +}
  51 +
  52 +.yuibutton button {
  53 +
  54 + overflow:visible; /* Remove superfluous padding for IE */
  55 + font-size:100%; /* Makes form controls resizable in IE */
  56 + background-color:transparent;
  57 + cursor:pointer;
  58 + cursor:hand;
  59 +
  60 +}
  61 +
  62 +.yuibutton a {
  63 +
  64 + text-decoration:none;
  65 + color:#000;
  66 +
  67 +}
  68 +
  69 +.yuibutton.splitbutton button,
  70 +.yuibutton.menubutton button {
  71 +
  72 + padding-right:20px;
  73 + background-position:right center;
  74 + background-repeat:no-repeat;
  75 +
  76 +}
  77 +
  78 +.yuibutton.menubutton button {
  79 +
  80 + background-image:url(menuarrow.gif);
  81 +
  82 +}
  83 +
  84 +.yuibutton.splitbutton button {
  85 +
  86 + background-image:url(splitarrow.gif);
  87 +
  88 +}
  89 +
  90 +
  91 +/* Focus state */
  92 +
  93 +.yuibutton.focus {
  94 +
  95 + border-color:#5e5c95;
  96 +
  97 +}
  98 +
  99 +.yuibutton.focus .first-child {
  100 +
  101 + border-color:#5e5c95;
  102 +
  103 +}
  104 +
  105 +.yuibutton.focus button,
  106 +.yuibutton.focus a {
  107 +
  108 + border-color:#cec1fc;
  109 +
  110 +}
  111 +
  112 +
  113 +/* Hover state */
  114 +
  115 +.yuibutton.hover {
  116 +
  117 + border-color:#406fac;
  118 + background-color:#98d5fc;
  119 +
  120 +}
  121 +
  122 +.yuibutton.hover .first-child {
  123 +
  124 + border-color:#406fac;
  125 +
  126 +}
  127 +
  128 +.yuibutton.hover button,
  129 +.yuibutton.hover a {
  130 +
  131 + border-color:#7099ce;
  132 +
  133 +}
  134 +
  135 +
  136 +/* Active state */
  137 +
  138 +.yuibutton.active {
  139 +
  140 + border-color:#7a8180;
  141 + background-color:#333;
  142 +
  143 +}
  144 +
  145 +.yuibutton.active .first-child {
  146 +
  147 + border-color:#7a8180;
  148 +
  149 +}
  150 +
  151 +.yuibutton.active button,
  152 +.yuibutton.active a {
  153 +
  154 + border-color:#98a09f;
  155 +
  156 +}
  157 +
  158 +.yuibutton.splitbutton.activeoption button {
  159 +
  160 + background-color:transparent;
  161 + background-image:url(splitarrow_active.gif);
  162 +
  163 +}
  164 +
  165 +
  166 +
  167 +/* Checked state */
  168 +
  169 +.yuibutton.radio.checked,
  170 +.yuibutton.checkbox.checked {
  171 +
  172 + border-color:#7a8180;
  173 + background-color:#333;
  174 +
  175 +}
  176 +
  177 +.yuibutton.radio.checked .first-child,
  178 +.yuibutton.checkbox.checked .first-child {
  179 +
  180 + border-color:#7a8180;
  181 +
  182 +}
  183 +
  184 +.yuibutton.radio.checked button,
  185 +.yuibutton.checkbox.checked button {
  186 +
  187 + border-color:#98a09f;
  188 +
  189 +}
  190 +
  191 +
  192 +
  193 +/* Disabled state */
  194 +
  195 +.yuibutton.disabled {
  196 +
  197 + border-color:#cbcdc5;
  198 + background:#ecece3;
  199 +
  200 + filter:none;
  201 +
  202 +}
  203 +
  204 +.yuibutton.disabled .first-child {
  205 +
  206 + border-color:#cbcdc5;
  207 +
  208 +}
  209 +
  210 +.yuibutton.disabled button,
  211 +.yuibutton.disabled a {
  212 +
  213 + border-color:transparent;
  214 + color:#b9b9b9;
  215 + cursor:default;
  216 +
  217 +}
  218 +td input {
  219 + border-bottom: 1px solid rgb(156, 195, 195);
  220 + border-left: 1px solid rgb(156, 195, 195);
  221 + border-right: 1px solid rgb(156, 195, 195);
  222 + border-top: 1px solid rgb(156, 195, 195);
  223 + font-size: 10px;
  224 + font-family: Verdana, Arial, Helvetica, sans-serif;
  225 + color: navy;
  226 + text-align: center;
  227 +}
  228 +
  229 +body {
  230 + overflow: hidden;
  231 + font-size: 12px
  232 +}
  233 +
  234 +div {
  235 + text-align: left;
  236 + border: 0px solid #FFFFFF;
  237 + font-family: Verdana, Arial, Helvetica, sans-serif;
  238 + position: relative;
  239 + display: block;
  240 + font-size: 12px;
  241 + padding: 0px;
  242 + font-weight: normal;
  243 + left: 10px;
  244 +}
  245 +
  246 +tr {
  247 + background-color: white;
  248 + border: 0px solid rgb(240, 240, 240);
  249 + padding: 0px;
  250 + margin: 0px;
  251 +}
  252 +
  253 +td {
  254 + border: 2px solid rgb(240, 240, 240);
  255 + border-left: 0px;
  256 + border-right: 0px;
  257 + border-top: 0px;
  258 + padding: 0px;
  259 + color: #2F4632;
  260 + margin: 0px;
  261 + text-align: center;
  262 + font-size: 10px;
  263 + font-family: Verdana, Arial, Helvetica, sans-serif;
  264 +}
  265 +
  266 +.lista td {
  267 + border: 0px solid rgb(240, 240, 240);
  268 + border-left: 0px;
  269 + border-right: 0px;
  270 + border-top: 0px;
  271 + padding: 0px;
  272 + color: #2F4632;
  273 + margin: 0px;
  274 + text-align: left;
  275 + font-size: 10px;
  276 + font-family: Verdana, Arial, Helvetica, sans-serif;
  277 +}
  278 +
  279 +.lista2 td {
  280 + border: 0px solid rgb(240, 240, 240);
  281 + border-left: 0px;
  282 + border-right: 0px;
  283 + border-top: 0px;
  284 + padding: 2px;
  285 + color: #2F4632;
  286 + margin: 0px;
  287 + text-align: left;
  288 + font-size: 10px;
  289 + font-family: Verdana, Arial, Helvetica, sans-serif;
  290 +}
  291 +
  292 +.lista3 td {
  293 + border: 0px solid rgb(240, 240, 240);
  294 + border-left: 0px;
  295 + border-right: 0px;
  296 + border-top: 0px;
  297 + padding: 1px;
  298 + color: #2F4632;
  299 + background-color: #F2F2F2;
  300 + margin: 0px;
  301 + text-align: left;
  302 + font-size: 12px;
  303 + font-family: Verdana, Arial, Helvetica, sans-serif;
  304 +}
  305 +
  306 +select {
  307 + font-family: Verdana, Arial, Helvetica, sans-serif;
  308 + font-size: 10px;
  309 + color: navy;
  310 + background-color: #FFFFFF;
  311 + padding: 0;
  312 + border: 1px solid rgb(240, 240, 240);
  313 + text-align: left;
  314 + cursor: pointer;
  315 +}
  316 +
  317 +.digitar {
  318 + box-shadow: 1px 1px 3px 0px lightgray;
  319 + margin: 0px;
  320 + color: #426252;
  321 + background-color: white;
  322 + height: 17px;
  323 + font-size: 12px;
  324 + font-family: Verdana, Arial, Helvetica, sans-serif;
  325 +}
  326 +
  327 +.digitar input {
  328 + border: 1px solid rgb(180, 180, 180);
  329 +}
  330 +
  331 +.executar {
  332 + cursor: pointer;
  333 + color: rgb(0, 0, 200);
  334 + text-align: left;
  335 + padding-left: 5px;
  336 + background-color: white;
  337 + background-image: URL('../imagens/tic.png');
  338 + background-repeat: no-repeat;
  339 + border-style: outset;
  340 + background-position: right;
  341 + font-family: Verdana, Arial, Helvetica, sans-serif;
  342 + font-size: 10px;
  343 +}
  344 +
  345 +#fundo {
  346 + background-color: rgb(255, 255, 255);
  347 + overflow: hidden;
  348 + position: absolute;
  349 + top: 0px;
  350 + left: 0px;
  351 +}
  352 +
  353 +.guias {
  354 + background-color: rgb(255, 255, 255);
  355 + cursor: pointer;
  356 + position: relative;
  357 + text-align: left;
  358 + top: 8px;
  359 + left: 8px;
  360 + padding: 0px;
  361 + margin: 0px;
  362 +}
  363 +
  364 +.guia {
  365 + display: inline;
  366 + background-color: rgb(230, 230, 230);
  367 + color: rgb(150, 150, 150);
  368 + position: relative;
  369 + left: 0px;
  370 + top: 0px;
  371 + border: 0px solid white;
  372 + font-size: 12px;
  373 + z-index: 1050;
  374 + padding: 0;
  375 + margin-right: 3px;
  376 + border-left: 1px solid rgb(230, 230, 230);
  377 + border-top: 1px solid rgb(230, 230, 230);
  378 + border-right: 1px solid rgb(230, 230, 230);
  379 +}
  380 +
  381 +.guiaobj {
  382 + text-align: left;
  383 + text-decoration: none;
  384 + border: 0px solid #ffffff;
  385 + font-family: Verdana, Arial, Helvetica, sans-serif;
  386 + position: relative;
  387 + display: block;
  388 + font-size: 8px;
  389 + padding: 1;
  390 + font-weight: normal;
  391 + top: 0px;
  392 + width: 95%;
  393 +}
  394 +
  395 +#geral {
  396 + position: relative;
  397 + background-color: white;
  398 + text-align: center;
  399 + text-decoration: none;
  400 + border-top: 2px solid rgb(230, 230, 230);
  401 + font-family: Verdana, Arial, Helvetica, sans-serif;
  402 + display: block;
  403 + font-size: 8px;
  404 + padding: 5px;
  405 + font-weight: normal;
  406 + top: 8px;
  407 + left: 0px;
  408 + overflow: auto;
  409 + width: 100%;
  410 +}
  411 +
  412 +.geralFerramentas {
  413 + position: relative;
  414 + background-color: white;
  415 + text-align: center;
  416 + text-decoration: none;
  417 + border-top: 2px solid rgb(230, 230, 230);
  418 + font-family: Verdana, Arial, Helvetica, sans-serif;
  419 + display: block;
  420 + font-size: 8px;
  421 + padding: 5px;
  422 + font-weight: normal;
  423 + top: 8px;
  424 + left: 0px;
  425 + overflow: auto;
  426 + width: 100%;
  427 +}
  428 +
  429 +#aguarde {
  430 + position: relative;
  431 + top: 10px;
  432 + left: 5px;
  433 +}
  434 +
  435 +.aguarde1 {
  436 + background-image: URL('../../imagens/aguarde.gif');
  437 +}
  438 +
  439 +.alerta {
  440 + font-weight: bold;
  441 + color: red;
  442 + top: 5px;
  443 + left: 0px;
  444 + padding: 5px;
  445 +}
  446 +
  447 +.erro {
  448 + color: red;
  449 + padding: 5px;
  450 +}
  451 +
  452 +.destaca {
  453 + left: 0px;
  454 + bottom: 10px;
  455 + padding: 5px;
  456 +}
  457 +/*
  458 +Copyright (c) 2011, Yahoo! Inc. All rights reserved.
  459 +Code licensed under the BSD License:
  460 +http://developer.yahoo.com/yui/license.html
  461 +version: 2.9.0
  462 +*/
  463 +.yui-overlay,.yui-panel-container{visibility:hidden;position:absolute;z-index:2}.yui-panel{position:relative}.yui-panel-container form{margin:0}.mask{z-index:1;display:none;position:absolute;top:0;left:0;right:0;bottom:0}.mask.block-scrollbars{overflow:auto}.masked select,.drag select,.hide-select select{_visibility:hidden}.yui-panel-container select{_visibility:inherit}.hide-scrollbars,.hide-scrollbars *{overflow:hidden}.hide-scrollbars select{display:none}.show-scrollbars{overflow:auto}.yui-panel-container.show-scrollbars,.yui-tt.show-scrollbars{overflow:visible}.yui-panel-container.show-scrollbars .underlay,.yui-tt.show-scrollbars .yui-tt-shadow{overflow:auto}.yui-panel-container.shadow .underlay.yui-force-redraw{padding-bottom:1px}.yui-effect-fade .underlay,.yui-effect-fade .yui-tt-shadow{display:none}.yui-tt-shadow{position:absolute}.yui-override-padding{padding:0!important}.yui-panel-container .container-close{overflow:hidden;text-indent:-10000em;text-decoration:none}.yui-overlay.yui-force-redraw,.yui-panel-container.yui-force-redraw{margin-bottom:1px}.yui-skin-sam .mask{background-color:#000;opacity:.25;filter:alpha(opacity=25)}.yui-skin-sam .yui-panel-container{padding:0 1px;*padding:2px}.yui-skin-sam .yui-panel{position:relative;left:0;top:0;border-style:solid;border-width:1px 0;border-color:#808080;z-index:1;*border-width:1px;*zoom:1;_zoom:normal}.yui-skin-sam .yui-panel .hd,.yui-skin-sam .yui-panel .bd,.yui-skin-sam .yui-panel .ft{border-style:solid;border-width:0 1px;border-color:#808080;margin:0 -1px;*margin:0;*border:0}.yui-skin-sam .yui-panel .hd{border-bottom:solid 1px #ccc}.yui-skin-sam .yui-panel .bd,.yui-skin-sam .yui-panel .ft{background-color:#f2f2f2}.yui-skin-sam .yui-panel .hd{padding:0 10px;font-size:93%;line-height:2;*line-height:1.9;font-weight:bold;color:#000;background:url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -200px}.yui-skin-sam .yui-panel .bd{padding:10px}.yui-skin-sam .yui-panel .ft{border-top:solid 1px #808080;padding:5px 10px;font-size:77%}.yui-skin-sam .container-close{position:absolute;top:5px;right:6px;width:25px;height:15px;background:url(../../../../assets/skins/sam/sprite.png) no-repeat 0 -300px;cursor:pointer}.yui-skin-sam .yui-panel-container .underlay{right:-1px;left:-1px}.yui-skin-sam .yui-panel-container.matte{padding:9px 10px;background-color:#fff}.yui-skin-sam .yui-panel-container.shadow{_padding:2px 4px 0 2px}.yui-skin-sam .yui-panel-container.shadow .underlay{position:absolute;top:2px;left:-3px;right:-3px;bottom:-3px;*top:4px;*left:-1px;*right:-1px;*bottom:-1px;_top:0;_left:0;_right:0;_bottom:0;_margin-top:3px;_margin-left:-1px;background-color:#000;opacity:.12;filter:alpha(opacity=12)}.yui-skin-sam .yui-dialog .ft{border-top:0;padding:0 10px 10px 10px;font-size:100%}.yui-skin-sam .yui-dialog .ft .button-group{display:block;text-align:right}.yui-skin-sam .yui-dialog .ft button.default{font-weight:bold}.yui-skin-sam .yui-dialog .ft span.default{border-color:#304369;background-position:0 -1400px}.yui-skin-sam .yui-dialog .ft span.default .first-child{border-color:#304369}.yui-skin-sam .yui-dialog .ft span.default button{color:#fff}.yui-skin-sam .yui-dialog .ft span.yui-button-disabled{background-position:0 -1500px;border-color:#ccc}.yui-skin-sam .yui-dialog .ft span.yui-button-disabled .first-child{border-color:#ccc}.yui-skin-sam .yui-dialog .ft span.yui-button-disabled button{color:#a6a6a6}.yui-skin-sam .yui-simple-dialog .bd .yui-icon{background:url(../../../../assets/skins/sam/sprite.png) no-repeat 0 0;width:16px;height:16px;margin-right:10px;float:left}.yui-skin-sam .yui-simple-dialog .bd span.blckicon{background-position:0 -1100px}.yui-skin-sam .yui-simple-dialog .bd span.alrticon{background-position:0 -1050px}.yui-skin-sam .yui-simple-dialog .bd span.hlpicon{background-position:0 -1150px}.yui-skin-sam .yui-simple-dialog .bd span.infoicon{background-position:0 -1200px}.yui-skin-sam .yui-simple-dialog .bd span.warnicon{background-position:0 -1900px}.yui-skin-sam .yui-simple-dialog .bd span.tipicon{background-position:0 -1250px}.yui-skin-sam .yui-tt .bd{position:relative;top:0;left:0;z-index:1;color:#000;padding:2px 5px;border-color:#d4c237 #A6982b #a6982b #A6982B;border-width:1px;border-style:solid;background-color:#ffee69}.yui-skin-sam .yui-tt.show-scrollbars .bd{overflow:auto}.yui-skin-sam .yui-tt-shadow{top:2px;right:-3px;left:-3px;bottom:-3px;background-color:#000}.yui-skin-sam .yui-tt-shadow-visible{opacity:.12;filter:alpha(opacity=12)}
  464 +
  465 +/*
  466 +Copyright (c) 2011, Yahoo! Inc. All rights reserved.
  467 +Code licensed under the BSD License:
  468 +http://developer.yahoo.com/yui/license.html
  469 +version: 2.9.0
  470 +*/
  471 +/* MenuBar style rules */
  472 +
  473 +.yui-skin-sam .yuimenubar {
  474 +
  475 + font-size: 93%; /* 12px */
  476 + line-height: 2; /* ~24px */
  477 + *line-height: 1.9; /* For IE */
  478 + border: solid 1px #808080;
  479 + background: url(../../../../assets/skins/sam/sprite.png) repeat-x 0 0;
  480 +
  481 +}
  482 +
  483 +
  484 +/* MenuBarItem style rules */
  485 +
  486 +.yui-skin-sam .yuimenubarnav .yuimenubaritem {
  487 +
  488 + border-right: solid 1px #ccc;
  489 +
  490 +}
  491 +
  492 +.yui-skin-sam .yuimenubaritemlabel {
  493 +
  494 + padding: 0 10px;
  495 + color: #000;
  496 + text-decoration: none;
  497 + cursor: default;
  498 + border-style: solid;
  499 + border-color: #808080;
  500 + border-width: 1px 0;
  501 + *position: relative; /* Necessary to get negative margins in IE. */
  502 + margin: -1px 0;
  503 +
  504 +}
  505 +
  506 +.yui-skin-sam .yuimenubaritemlabel:visited {
  507 +
  508 + color: #000;
  509 +
  510 +}
  511 +
  512 +.yui-skin-sam .yuimenubarnav .yuimenubaritemlabel {
  513 +
  514 + padding-right: 20px;
  515 +
  516 + /*
  517 + Prevents the label from shifting left in IE when the
  518 + ".yui-skin-sam .yuimenubarnav .yuimenubaritemlabel-selected"
  519 + rule us applied.
  520 + */
  521 +
  522 + *display: inline-block;
  523 +
  524 +}
  525 +
  526 +.yui-skin-sam .yuimenubarnav .yuimenubaritemlabel-hassubmenu {
  527 +
  528 + background: url(menubaritem_submenuindicator.png) right center no-repeat;
  529 +
  530 +}
  531 +
  532 +
  533 +
  534 +/* MenuBarItem states */
  535 +
  536 +/* Selected MenuBarItem */
  537 +
  538 +.yui-skin-sam .yuimenubaritem-selected {
  539 +
  540 + background: url(../../../../assets/skins/sam/sprite.png) repeat-x 0 -1700px;
  541 +
  542 +}
  543 +
  544 +.yui-skin-sam .yuimenubaritemlabel-selected {
  545 +
  546 + border-color: #7D98B8;
  547 +
  548 +}
  549 +
  550 +.yui-skin-sam .yuimenubarnav .yuimenubaritemlabel-selected {
  551 +
  552 + border-left-width: 1px;
  553 + margin-left: -1px;
  554 + *left: -1px; /* For IE */
  555 +
  556 +}
  557 +
  558 +
  559 +/* Disabled MenuBarItem */
  560 +
  561 +.yui-skin-sam .yuimenubaritemlabel-disabled,
  562 +.yui-skin-sam .yuimenubaritemlabel-disabled:visited {
  563 +
  564 + cursor: default;
  565 + color: #A6A6A6;
  566 +
  567 +}
  568 +
  569 +.yui-skin-sam .yuimenubarnav .yuimenubaritemlabel-hassubmenu-disabled {
  570 +
  571 + background-image: url(menubaritem_submenuindicator_disabled.png);
  572 +
  573 +}
  574 +
  575 +
  576 +
  577 +/* Menu style rules */
  578 +
  579 +.yui-skin-sam .yuimenu {
  580 +
  581 + font-size: 93%; /* 12px */
  582 + line-height: 1.5; /* 18px */
  583 + *line-height: 1.45; /* For IE */
  584 +
  585 +}
  586 +
  587 +.yui-skin-sam .yuimenubar .yuimenu,
  588 +.yui-skin-sam .yuimenu .yuimenu {
  589 +
  590 + font-size: 100%;
  591 +
  592 +}
  593 +
  594 +.yui-skin-sam .yuimenu .bd {
  595 +
  596 + /*
  597 + The following application of zoom:1 prevents first tier submenus of a MenuBar from hiding
  598 + when the mouse is moving from an item in a MenuBar to a submenu in IE 7.
  599 + */
  600 +
  601 + *zoom: 1;
  602 + _zoom: normal; /* Remove this rule for IE 6. */
  603 + border: solid 1px #808080;
  604 + background-color: #fff;
  605 +
  606 +}
  607 +
  608 +.yui-skin-sam .yuimenu .yuimenu .bd {
  609 +
  610 + *zoom: normal;
  611 +
  612 +}
  613 +
  614 +.yui-skin-sam .yuimenu ul {
  615 +
  616 + padding: 3px 0;
  617 + border-width: 1px 0 0 0;
  618 + border-color: #ccc;
  619 + border-style: solid;
  620 +
  621 +}
  622 +
  623 +.yui-skin-sam .yuimenu ul.first-of-type {
  624 +
  625 + border-width: 0;
  626 +
  627 +}
  628 +
  629 +
  630 +/* Group titles */
  631 +
  632 +.yui-skin-sam .yuimenu h6 {
  633 +
  634 + font-weight: bold;
  635 + border-style: solid;
  636 + border-color: #ccc;
  637 + border-width: 1px 0 0 0;
  638 + color: #a4a4a4;
  639 + padding: 3px 10px 0 10px;
  640 +
  641 +}
  642 +
  643 +.yui-skin-sam .yuimenu ul.hastitle,
  644 +.yui-skin-sam .yuimenu h6.first-of-type {
  645 +
  646 + border-width: 0;
  647 +
  648 +}
  649 +
  650 +
  651 +/* Top and bottom scroll controls */
  652 +
  653 +.yui-skin-sam .yuimenu .yui-menu-body-scrolled {
  654 +
  655 + border-color: #ccc #808080;
  656 + overflow: hidden;
  657 +
  658 +}
  659 +
  660 +.yui-skin-sam .yuimenu .topscrollbar,
  661 +.yui-skin-sam .yuimenu .bottomscrollbar {
  662 +
  663 + height: 16px;
  664 + border: solid 1px #808080;
  665 + background: #fff url(../../../../assets/skins/sam/sprite.png) no-repeat 0 0;
  666 +
  667 +}
  668 +
  669 +.yui-skin-sam .yuimenu .topscrollbar {
  670 +
  671 + border-bottom-width: 0;
  672 + background-position: center -950px;
  673 +
  674 +}
  675 +
  676 +.yui-skin-sam .yuimenu .topscrollbar_disabled {
  677 +
  678 + background-position: center -975px;
  679 +
  680 +}
  681 +
  682 +.yui-skin-sam .yuimenu .bottomscrollbar {
  683 +
  684 + border-top-width: 0;
  685 + background-position: center -850px;
  686 +
  687 +}
  688 +
  689 +.yui-skin-sam .yuimenu .bottomscrollbar_disabled {
  690 +
  691 + background-position: center -875px;
  692 +
  693 +}
  694 +
  695 +
  696 +/* MenuItem style rules */
  697 +
  698 +.yui-skin-sam .yuimenuitem {
  699 +
  700 + /*
  701 + For IE 7 Quirks and IE 6 Strict Mode and Quirks Mode:
  702 + Used to collapse superfluous white space between <li> elements
  703 + that is triggered by the "display" property of the <a> elements being
  704 + set to "block."
  705 + */
  706 +
  707 + _border-bottom: solid 1px #fff;
  708 +
  709 +}
  710 +
  711 +.yui-skin-sam .yuimenuitemlabel {
  712 +
  713 + padding: 0 20px;
  714 + color: #000;
  715 + text-decoration: none;
  716 + cursor: default;
  717 +
  718 +}
  719 +
  720 +.yui-skin-sam .yuimenuitemlabel:visited {
  721 +
  722 + color: #000;
  723 +
  724 +}
  725 +
  726 +.yui-skin-sam .yuimenuitemlabel .helptext {
  727 +
  728 + margin-top: -1.5em;
  729 + *margin-top: -1.45em; /* For IE*/
  730 +
  731 +}
  732 +
  733 +.yui-skin-sam .yuimenuitem-hassubmenu {
  734 +
  735 + background-image: url(menuitem_submenuindicator.png);
  736 + background-position: right center;
  737 + background-repeat: no-repeat;
  738 +
  739 +}
  740 +
  741 +.yui-skin-sam .yuimenuitem-checked {
  742 +
  743 + background-image: url(menuitem_checkbox.png);
  744 + background-position: left center;
  745 + background-repeat: no-repeat;
  746 +
  747 +}
  748 +
  749 +
  750 +/* Menu states */
  751 +
  752 +
  753 +/* Visible Menu */
  754 +
  755 +.yui-skin-sam .yui-menu-shadow-visible {
  756 +
  757 + background-color: #000;
  758 +
  759 + /*
  760 + Opacity can be expensive, so defer the use of opacity until the
  761 + menu is visible.
  762 + */
  763 +
  764 + opacity: .12;
  765 + filter: alpha(opacity=12); /* For IE */
  766 +
  767 +}
  768 +
  769 +
  770 +
  771 +/* MenuItem states */
  772 +
  773 +
  774 +/* Selected MenuItem */
  775 +
  776 +.yui-skin-sam .yuimenuitem-selected {
  777 +
  778 + background-color: #B3D4FF;
  779 +
  780 +}
  781 +
  782 +
  783 +/* Disabled MenuItem */
  784 +
  785 +.yui-skin-sam .yuimenuitemlabel-disabled,
  786 +.yui-skin-sam .yuimenuitemlabel-disabled:visited {
  787 +
  788 + cursor: default;
  789 + color: #A6A6A6;
  790 +
  791 +}
  792 +
  793 +.yui-skin-sam .yuimenuitem-hassubmenu-disabled {
  794 +
  795 + background-image: url(menuitem_submenuindicator_disabled.png);
  796 +
  797 +}
  798 +
  799 +.yui-skin-sam .yuimenuitem-checked-disabled {
  800 +
  801 + background-image: url(menuitem_checkbox_disabled.png);
  802 +
  803 +}
  804 +/*
  805 +Copyright (c) 2009, Yahoo! Inc. All rights reserved.
  806 +Code licensed under the BSD License:
  807 +http://developer.yahoo.net/yui/license.txt
  808 +version: 2.7.0
  809 +*/
  810 +.yui-navset .yui-nav li,.yui-navset .yui-navset-top .yui-nav li,.yui-navset .yui-navset-bottom .yui-nav li{margin:0 .5em 0 0;}.yui-navset-left .yui-nav li,.yui-navset-right .yui-nav li{margin:0 0 .5em;}.yui-navset .yui-content .yui-hidden{position:absolute;left:-999999px;visibility:hidden;}.yui-navset .yui-navset-left .yui-nav,.yui-navset .yui-navset-right .yui-nav,.yui-navset-left .yui-nav,.yui-navset-right .yui-nav{width:6em;}.yui-navset-top .yui-nav,.yui-navset-bottom .yui-nav{width:auto;}.yui-navset .yui-navset-left,.yui-navset-left{padding:0 0 0 6em;}.yui-navset-right{padding:0 6em 0 0;}.yui-navset-top,.yui-navset-bottom{padding:auto;}.yui-nav,.yui-nav li{margin:0;padding:0;list-style:none;}.yui-navset li em{font-style:normal;}.yui-navset{position:relative;zoom:1;}.yui-navset .yui-content,.yui-navset .yui-content div{zoom:1;}.yui-navset .yui-content:after{content:'';display:block;clear:both;}.yui-navset .yui-nav li,.yui-navset .yui-navset-top .yui-nav li,.yui-navset .yui-navset-bottom .yui-nav li{display:inline-block;display:-moz-inline-stack;*display:inline;vertical-align:bottom;cursor:pointer;zoom:1;}.yui-navset-left .yui-nav li,.yui-navset-right .yui-nav li{display:block;}.yui-navset .yui-nav a{position:relative;}.yui-navset .yui-nav li a,.yui-navset-top .yui-nav li a,.yui-navset-bottom .yui-nav li a{display:block;display:inline-block;vertical-align:bottom;zoom:1;}.yui-navset-left .yui-nav li a,.yui-navset-right .yui-nav li a{display:block;}.yui-navset-bottom .yui-nav li a{vertical-align:text-top;}.yui-navset .yui-nav li a em,.yui-navset-top .yui-nav li a em,.yui-navset-bottom .yui-nav li a em{display:block;}.yui-navset .yui-navset-left .yui-nav,.yui-navset .yui-navset-right .yui-nav,.yui-navset-left .yui-nav,.yui-navset-right .yui-nav{position:absolute;z-index:1;}.yui-navset-top .yui-nav,.yui-navset-bottom .yui-nav{position:static;}.yui-navset .yui-navset-left .yui-nav,.yui-navset-left .yui-nav{left:0;right:auto;}.yui-navset .yui-navset-right .yui-nav,.yui-navset-right .yui-nav{right:0;left:auto;}.yui-skin-sam .yui-navset .yui-nav,.yui-skin-sam .yui-navset .yui-navset-top .yui-nav{border:solid #2647a0;border-width:0 0 5px;zoom:1;}.yui-skin-sam .yui-navset .yui-nav li,.yui-skin-sam .yui-navset .yui-navset-top .yui-nav li{margin:0 .16em 0 0;padding:1px 0 0;zoom:1;}.yui-skin-sam .yui-navset .yui-nav .selected,.yui-skin-sam .yui-navset .yui-navset-top .yui-nav .selected{margin:0 .16em -1px 0;}.yui-skin-sam .yui-navset .yui-nav a,.yui-skin-sam .yui-navset .yui-navset-top .yui-nav a{background:#d8d8d8 url(../pacotes/yui290/build/assets/skins/sam/sprite.png) repeat-x;border:solid #a3a3a3;border-width:0 1px;color:#000;position:relative;text-decoration:none;}.yui-skin-sam .yui-navset .yui-nav a em,.yui-skin-sam .yui-navset .yui-navset-top .yui-nav a em{border:solid #a3a3a3;border-width:1px 0 0;cursor:hand;padding:.25em .75em;left:0;right:0;bottom:0;top:-1px;position:relative;}.yui-skin-sam .yui-navset .yui-nav .selected a,.yui-skin-sam .yui-navset .yui-nav .selected a:focus,.yui-skin-sam .yui-navset .yui-nav .selected a:hover{background:#2647a0 url(../pacotes/yui290/build/assets/skins/sam/sprite.png) repeat-x left -1400px;color:#fff;}.yui-skin-sam .yui-navset .yui-nav a:hover,.yui-skin-sam .yui-navset .yui-nav a:focus{background:white url(../pacotes/yui290/build/assets/skins/sam/sprite.png) repeat-x left -1300px;outline:0;}.yui-skin-sam .yui-navset .yui-nav .selected a em{padding:.35em .75em;}.yui-skin-sam .yui-navset .yui-nav .selected a,.yui-skin-sam .yui-navset .yui-nav .selected a em{border-color:#243356;}.yui-skin-sam .yui-navset .yui-content{background:#edf5ff;}.yui-skin-sam .yui-navset .yui-content,.yui-skin-sam .yui-navset .yui-navset-top .yui-content{border:1px solid #808080;border-top-color:#243356;padding:.25em .5em;}.yui-skin-sam .yui-navset-left .yui-nav,.yui-skin-sam .yui-navset .yui-navset-left .yui-nav,.yui-skin-sam .yui-navset .yui-navset-right .yui-nav,.yui-skin-sam .yui-navset-right .yui-nav{border-width:0 5px 0 0;Xposition:absolute;top:0;bottom:0;}.yui-skin-sam .yui-navset .yui-navset-right .yui-nav,.yui-skin-sam .yui-navset-right .yui-nav{border-width:0 0 0 5px;}.yui-skin-sam .yui-navset-left .yui-nav li,.yui-skin-sam .yui-navset .yui-navset-left .yui-nav li,.yui-skin-sam .yui-navset-right .yui-nav li{margin:0 0 .16em;padding:0 0 0 1px;}.yui-skin-sam .yui-navset-right .yui-nav li{padding:0 1px 0 0;}.yui-skin-sam .yui-navset-left .yui-nav .selected,.yui-skin-sam .yui-navset .yui-navset-left .yui-nav .selected{margin:0 -1px .16em 0;}.yui-skin-sam .yui-navset-right .yui-nav .selected{margin:0 0 .16em -1px;}.yui-skin-sam .yui-navset-left .yui-nav a,.yui-skin-sam .yui-navset-right .yui-nav a{border-width:1px 0;}.yui-skin-sam .yui-navset-left .yui-nav a em,.yui-skin-sam .yui-navset .yui-navset-left .yui-nav a em,.yui-skin-sam .yui-navset-right .yui-nav a em{border-width:0 0 0 1px;padding:.2em .75em;top:auto;left:-1px;}.yui-skin-sam .yui-navset-right .yui-nav a em{border-width:0 1px 0 0;left:auto;right:-1px;}.yui-skin-sam .yui-navset-left .yui-nav a,.yui-skin-sam .yui-navset-left .yui-nav .selected a,.yui-skin-sam .yui-navset-left .yui-nav a:hover,.yui-skin-sam .yui-navset-right .yui-nav a,.yui-skin-sam .yui-navset-right .yui-nav .selected a,.yui-skin-sam .yui-navset-right .yui-nav a:hover,.yui-skin-sam .yui-navset-bottom .yui-nav a,.yui-skin-sam .yui-navset-bottom .yui-nav .selected a,.yui-skin-sam .yui-navset-bottom .yui-nav a:hover{background-image:none;}.yui-skin-sam .yui-navset-left .yui-content{border:1px solid #808080;border-left-color:#243356;}.yui-skin-sam .yui-navset-bottom .yui-nav,.yui-skin-sam .yui-navset .yui-navset-bottom .yui-nav{border-width:5px 0 0;}.yui-skin-sam .yui-navset .yui-navset-bottom .yui-nav .selected,.yui-skin-sam .yui-navset-bottom .yui-nav .selected{margin:-1px .16em 0 0;}.yui-skin-sam .yui-navset .yui-navset-bottom .yui-nav li,.yui-skin-sam .yui-navset-bottom .yui-nav li{padding:0 0 1px 0;vertical-align:top;}.yui-skin-sam .yui-navset .yui-navset-bottom .yui-nav a em,.yui-skin-sam .yui-navset-bottom .yui-nav a em{border-width:0 0 1px;top:auto;bottom:-1px;}
  811 +.yui-skin-sam .yui-navset-bottom .yui-content,.yui-skin-sam .yui-navset .yui-navset-bottom .yui-content{border:1px solid #808080;border-bottom-color:#243356;}
  812 +
... ...
ferramentas/parametrossql/dependencias.php 0 → 100755
... ... @@ -0,0 +1,31 @@
  1 +<?php
  2 +/**
  3 + * Esse script e utilizado por i3GEO.pluginI3geo
  4 + * Carrega os programas javascript necessarios para a ferramenta
  5 + * Esse programa e usado na tag <script> ou com a funcao scripttag do i3Geo
  6 + * Alem de carregar os scripts, carrega tambem o template no formato MUSTACHE, definindo a variavel
  7 + * javascript i3GEOF.parametrossql.MUSTACHE
  8 + * O template e substituido pelos valores definidos em index.js no momento da inicializacao da ferramenta
  9 + */
  10 +if(extension_loaded('zlib')){
  11 + ob_start('ob_gzhandler');
  12 +}
  13 +header("Content-type: text/javascript");
  14 +include("index.js");
  15 +include("dicionario.js");
  16 +echo "\n";
  17 +/**
  18 + * Inclui o template mustache do HTML usado para criar o conteudo da janela
  19 + */
  20 +echo 'i3GEOF.parametrossql.MUSTACHE = "';
  21 +$texto = file_get_contents("template_mst.html");
  22 +$texto = str_replace("\n", "", $texto);
  23 +$texto = str_replace("\r", "", $texto);
  24 +$texto = str_replace("\t", "", $texto);
  25 +$texto = str_replace('"', "'", $texto);
  26 +echo $texto;
  27 +echo '";';
  28 +if(extension_loaded('zlib')){
  29 + ob_end_flush();
  30 +}
  31 +?>
0 32 \ No newline at end of file
... ...
ferramentas/parametrossql/dicionario.js 0 → 100755
... ... @@ -0,0 +1,8 @@
  1 +//+$trad(1,i3GEOF.parametrossql.dicionario)+
  2 +i3GEOF.parametrossql.dicionario = {
  3 + 'digita' : [ {
  4 + pt : "digite aqui o texto...",
  5 + en : "",
  6 + es : ""
  7 + } ]
  8 +};
... ...
ferramentas/parametrossql/exec.php 0 → 100755
... ... @@ -0,0 +1,44 @@
  1 +<?php
  2 +include_once(dirname(__FILE__)."/../inicia.php");
  3 +//
  4 +//faz a busca da fun&ccedil;&atilde;o que deve ser executada
  5 +//
  6 +$retorno = ""; //string que ser&aacute; retornada ao browser via JSON
  7 +switch (strtoupper($funcao))
  8 +{
  9 +/*
  10 +Valor: APLICAR
  11 +
  12 +Aplica a substituicao de chaves pelos valores enviados
  13 +*/
  14 + case "APLICAR":
  15 + $map = ms_newMapObj($map_file);
  16 + $layer = $map->getlayerbyname($tema);
  17 + $data = $layer->data;
  18 + $chaves = explode(",",$chaves);
  19 + $valores = explode(",",$valores);
  20 + $n = count($chaves);
  21 + for($i = 0; $i < $n; $i++){
  22 + $data = str_replace($chaves[$i],$valores[$i],$data);
  23 + }
  24 + $layer->set("data",$data);
  25 + $layer->set("status",MS_DEFAULT);
  26 + $layer->setmetadata("PLUGINI3GEO","");
  27 + if (connection_aborted()){exit();}
  28 + $salvo = $map->save($map_file);
  29 + $retorno = "ok";
  30 + break;
  31 + case "REMOVER":
  32 + $map = ms_newMapObj($map_file);
  33 + $layer = $map->getlayerbyname($tema);
  34 + $layer->set("status",MS_DELETE);
  35 + $salvo = $map->save($map_file);
  36 + $retorno = "ok";
  37 + break;
  38 +}
  39 +if (!connection_aborted()){
  40 + cpjson($retorno);
  41 +}
  42 +else
  43 +{exit();}
  44 +?>
0 45 \ No newline at end of file
... ...
ferramentas/parametrossql/index.js 0 → 100755
... ... @@ -0,0 +1,212 @@
  1 +/*
  2 +Title: Adiciona ao mapa uma camada e substitu&iacute; par&acirc;metros no item DATA do Mapfile
  3 +
  4 +Veja:
  5 +
  6 +<i3GEO.pluginI3geo>
  7 +
  8 +Arquivo:
  9 +
  10 +i3geo/ferramentas/parametrossql/index.js.php
  11 +
  12 +About: Licen&ccedil;a
  13 +
  14 +i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet
  15 +
  16 +Direitos Autorais Reservados (c) 2006 Minist&eacute;rio do Meio Ambiente Brasil
  17 +Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com
  18 +
  19 +Este programa &eacute; software livre; voc&ecirc; pode redistribu&iacute;-lo
  20 +e/ou modific&aacute;-lo sob os termos da Licen&ccedil;a P&uacute;blica Geral
  21 +GNU conforme publicada pela Free Software Foundation;
  22 +
  23 +Este programa &eacute; distribu&iacute;do na expectativa de que seja &uacute;til,
  24 +por&eacute;m, SEM NENHUMA GARANTIA; nem mesmo a garantia impl&iacute;cita
  25 +de COMERCIABILIDADE OU ADEQUA&Ccedil;&Atilde;O A UMA FINALIDADE ESPEC&Iacute;FICA.
  26 +Consulte a Licen&ccedil;a P&uacute;blica Geral do GNU para mais detalhes.
  27 +Voc&ecirc; deve ter recebido uma c&oacute;pia da Licen&ccedil;a P&uacute;blica Geral do
  28 +GNU junto com este programa; se n&atilde;o, escreva para a
  29 +Free Software Foundation, Inc., no endere&ccedil;o
  30 +59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.
  31 +*/
  32 +if(typeof(i3GEOF) === 'undefined'){
  33 + var i3GEOF = {};
  34 +}
  35 +/*
  36 +Class: i3GEOF.parametrossql
  37 +*/
  38 +i3GEOF.parametrossql = {
  39 + /*
  40 + Variavel: aguarde
  41 +
  42 + Objeto DOM com a imagem de aguarde existente no cabe&ccedil;alho da janela.
  43 + */
  44 + aguarde: "",
  45 + /*
  46 + Variavel: tema
  47 +
  48 + Codigo do layer adicionado ao mapa
  49 + */
  50 + tema: "",
  51 + /**
  52 + * Template no formato mustache. E preenchido na carga do javascript com o programa dependencias.php
  53 + */
  54 + MUSTACHE : "",
  55 + /**
  56 + * Susbtitutos para o template
  57 + */
  58 + mustacheHash : function() {
  59 + var dicionario = i3GEO.idioma.objetoIdioma(i3GEOF.parametrossql.dicionario);
  60 + return dicionario;
  61 + },
  62 + /*
  63 + Function: inicia
  64 +
  65 + Inicia a ferramenta. &Eacute; chamado por criaJanelaFlutuante
  66 +
  67 + Parametro:
  68 +
  69 + iddiv {String} - id do div que receber&aacute; o conteudo HTML da ferramenta
  70 +
  71 + camada - objeto contendo os dados do plugin
  72 + */
  73 + inicia: function(iddiv,camada){
  74 + $i(iddiv).innerHTML = i3GEOF.parametrossql.html();
  75 + var b,
  76 + f = i3GEOF.parametrossql.formulario(camada);
  77 + i3GEOF.parametrossql.tema = camada.name;
  78 + //i3GEOFparametrosSQLForm e definido no template mustache
  79 + $i("i3GEOFparametrosSQLForm").innerHTML = f;
  80 +
  81 + b = new YAHOO.widget.Button(
  82 + "i3GEOFparametrosSqlAplicar",
  83 + {onclick:{fn: function(){i3GEOF.parametrossql.aplicar(camada);}}}
  84 + );
  85 + b.addClass("rodar");
  86 +
  87 + },
  88 + /*
  89 + Function: html
  90 +
  91 + Gera o c&oacute;digo html para apresenta&ccedil;&atilde;o das op&ccedil;&otilde;es da ferramenta
  92 +
  93 + Retorno:
  94 +
  95 + String com o c&oacute;digo html
  96 + */
  97 + html:function() {
  98 + var ins = Mustache.render(i3GEOF.parametrossql.MUSTACHE, i3GEOF.parametrossql.mustacheHash());
  99 + return ins;
  100 + },
  101 + /*
  102 + Function: iniciaJanelaFlutuante
  103 +
  104 + Cria a janela flutuante para controle da ferramenta.
  105 + */
  106 + iniciaJanelaFlutuante: function(camada){
  107 + var minimiza,cabecalho,janela,divid,temp,titulo;
  108 + if($i("i3GEOF.parametrossql")){
  109 + i3GEOF.parametrossql.inicia("i3GEOF.parametrossql_corpo",camada);
  110 + return;
  111 + }
  112 + //funcao que sera executada ao ser clicado no cabe&ccedil;alho da janela
  113 + cabecalho = function(){
  114 + };
  115 + minimiza = function(){
  116 + i3GEO.janela.minimiza("i3GEOF.parametrossql");
  117 + };
  118 + //cria a janela flutuante
  119 + titulo = "<a class=ajuda_usuario style='margin-left:40px;' target=_blank href='" + i3GEO.configura.locaplic + "/ajuda_usuario.php?idcategoria=5&idajuda=35' >&nbsp;&nbsp;&nbsp;</a>";
  120 + janela = i3GEO.janela.cria(
  121 + "290px",
  122 + "330px",
  123 + "",
  124 + "",
  125 + "",
  126 + titulo,
  127 + "i3GEOF.parametrossql",
  128 + false,
  129 + "hd",
  130 + cabecalho,
  131 + minimiza,
  132 + "",
  133 + true
  134 + );
  135 + divid = janela[2].id;
  136 + i3GEOF.parametrossql.aguarde = $i("i3GEOF.parametrossql_imagemCabecalho").style;
  137 + YAHOO.util.Event.addListener(janela[0].close, "click", i3GEOF.parametrossql.cancela);
  138 + i3GEOF.parametrossql.inicia(divid,camada);
  139 + },
  140 + formulario: function(camada){
  141 + //sobre os parametros ver em classe_plugini3geo
  142 + var parametros = camada.plugini3geo.parametros,
  143 + n = parametros.length,
  144 + i,
  145 + ins = "",
  146 + p,
  147 + j,
  148 + nj,
  149 + l;
  150 + for(i=0; i<n; i++){
  151 + p = parametros[i];
  152 + if(p.tipo != "" && p.titulo){
  153 + ins += "<p class='paragrafo'>"+p.titulo+":</p>";
  154 + if(p.tipo === "input"){
  155 + ins += "<div class='i3geoForm i3geoFormIconeEdita'>"
  156 + + "<input type='text' name='"+p.chave+"' value='"+p.valores+"' />"
  157 + + "</div><br>";
  158 + }
  159 + if(p.tipo === "select"){
  160 + ins += "<div class='styled-select' >"
  161 + + "<select name='"+p.chave+"' ><option value=''>---</option>";
  162 + l = p.valores.split(",");
  163 + nj = l.length;
  164 + for(j=0; j<nj; j++){
  165 + ins += "<option value='"+ l[j] +"'>"+ l[j] +"</option>";
  166 + }
  167 + ins += "</select></div><br>";
  168 + }
  169 + }
  170 + }
  171 + return ins;
  172 + },
  173 + aplicar: function(camada){
  174 + var fim,cp,p,onde = $i("i3GEOFparametrosSQLForm"),
  175 + campos,n,i,chaves = [], valores = [];
  176 + campos = onde.getElementsByTagName("input");
  177 + n = campos.length
  178 + for (i = 0; i<n; i++) {
  179 + chaves.push(campos[i].name);
  180 + valores.push(campos[i].value);
  181 + }
  182 + campos = onde.getElementsByTagName("select");
  183 + n = campos.length
  184 + for (i = 0; i<n; i++) {
  185 + chaves.push(campos[i].name);
  186 + valores.push(campos[i].value);
  187 + }
  188 + fim = function(){
  189 + i3GEO.atualiza();
  190 + };
  191 + p = i3GEO.configura.locaplic+"/ferramentas/parametrossql/exec.php?g_sid="+i3GEO.configura.sid
  192 + + "&funcao=aplicar"
  193 + + "&tema=" + camada.name
  194 + + "&chaves=" + chaves.join(",")
  195 + + "&valores=" + valores.join(",");
  196 + cp = new cpaint();
  197 + cp.set_response_type("JSON");
  198 + cp.call(p,"foo",fim);
  199 + },
  200 + cancela: function(){
  201 + var fim,cp,p;
  202 + fim = function(){
  203 + i3GEO.atualiza();
  204 + };
  205 + p = i3GEO.configura.locaplic+"/ferramentas/parametrossql/exec.php?g_sid="+i3GEO.configura.sid
  206 + + "&funcao=remover"
  207 + + "&tema=" + i3GEOF.parametrossql.tema;
  208 + cp = new cpaint();
  209 + cp.set_response_type("JSON");
  210 + cp.call(p,"foo",fim);
  211 + }
  212 +};
... ...
ferramentas/parametrossql/template_mst.html 0 → 100755
... ... @@ -0,0 +1,5 @@
  1 +<div style='margin-left: 5px;'>
  2 +<div id='i3GEOFparametrosSQLForm'></div>
  3 +<br><br>
  4 + <input id='i3GEOFparametrosSqlAplicar' type='button' value='Aplicar' />
  5 +</div>
0 6 \ No newline at end of file
... ...
temas/_lbiomashp.map
... ... @@ -6,23 +6,35 @@ MAP
6 6 DATA "/var/www/i3geo/aplicmap/dados/biomas.shp"
7 7 METADATA
8 8 "METAESTAT_ID_MEDIDA_VARIAVEL" ""
  9 + "TIP" "CD_LEGENDA"
9 10 "cache" ""
10 11 "CLASSE" "SIM"
  12 + "olopacity" ""
11 13 "permitekmz" "nao"
  14 + "gmopacity" ""
  15 + "gmstatus" ""
  16 + "ITENSDESC" "Teste de acentuação"
12 17 "METAESTAT_CODIGO_TIPO_REGIAO" ""
  18 + "arquivotemaoriginal" ""
  19 + "nomeoriginal" ""
  20 + "olstatus" ""
13 21 "permitedownload" "sim"
14 22 "metaestat" ""
15 23 "download" "SIM"
16   - "arquivokmz" ""
  24 + "itembuscarapida" ""
  25 + "ITENS" "CD_LEGENDA"
17 26 "arquivodownload" ""
18   - "permitekml" "sim"
  27 + "arquivokmz" ""
19 28 "permiteogc" "sim"
20   - "TEMA" "Biomas shapefile (acentuação)"
  29 + "permitekml" "sim"
21 30 "convcaracter" ""
  31 + "TEMA" "Biomas shapefile (acentuação)"
22 32 END # METADATA
23 33 NAME "_lbiomashp"
24 34 PROCESSING "ITEMS=CD_LEGENDA"
25   - STATUS OFF
  35 + PROCESSING "LABEL_NO_CLIP=True"
  36 + PROCESSING "POLYLINE_NO_CLIP=True"
  37 + STATUS DEFAULT
26 38 TEMPLATE "none.htm"
27 39 TILEITEM "location"
28 40 OPACITY 90
... ... @@ -32,50 +44,55 @@ MAP
32 44 NAME "CAATINGA"
33 45 EXPRESSION ('[CD_LEGENDA]'eq'CAATINGA')
34 46 STYLE
35   - COLOR 237 45 191
  47 + COLOR 123 72 59
36 48 OUTLINECOLOR 255 255 255
37 49 END # STYLE
  50 + TITLE ""
38 51 END # CLASS
39 52 CLASS
40 53 NAME "PAMPA"
41 54 EXPRESSION ('[CD_LEGENDA]'eq'PAMPA')
42 55 STYLE
43   - COLOR 2 254 241
  56 + COLOR 236 202 44
44 57 OUTLINECOLOR 255 255 255
45 58 END # STYLE
  59 + TITLE ""
46 60 END # CLASS
47 61 CLASS
48 62 NAME "CERRADO"
49 63 EXPRESSION ('[CD_LEGENDA]'eq'CERRADO')
50 64 STYLE
51   - COLOR 78 243 146
  65 + COLOR 251 205 116
52 66 OUTLINECOLOR 255 255 255
53 67 END # STYLE
  68 + TITLE ""
54 69 END # CLASS
55 70 CLASS
56 71 NAME "PANTANAL"
57 72 EXPRESSION ('[CD_LEGENDA]'eq'PANTANAL')
58 73 STYLE
59   - COLOR 169 139 38
  74 + COLOR 53 22 177
60 75 OUTLINECOLOR 255 255 255
61 76 END # STYLE
  77 + TITLE ""
62 78 END # CLASS
63 79 CLASS
64 80 NAME "AMAZÔNIA"
65   - EXPRESSION ('[CD_LEGENDA]'eq'AMAZONIA')
  81 + EXPRESSION ('[CD_LEGENDA]'eq'AMAZÔNIA')
66 82 STYLE
67   - COLOR 151 214 202
  83 + COLOR 201 67 148
68 84 OUTLINECOLOR 255 255 255
69 85 END # STYLE
70   - END # CLASS
  86 + TITLE ""
  87 + END # CLASS
71 88 CLASS
72   - NAME "MATA ATLANTICA"
73   - TITLE "Mata Atlântica"
74   - EXPRESSION ('[CD_LEGENDA]'eq'MATA ATLANTICA')
  89 + NAME "MATA ATLÂNTICA"
  90 + EXPRESSION ('[CD_LEGENDA]'eq'MATA ATLÂNTICA')
75 91 STYLE
76   - COLOR 22 193 134
  92 + COLOR 173 135 33
77 93 OUTLINECOLOR 255 255 255
78 94 END # STYLE
  95 + TITLE ""
79 96 END # CLASS
80 97 END # LAYER
81 98  
... ...
temas/_llocali.map
... ... @@ -6,50 +6,50 @@ MAP
6 6 DATA "/var/www/i3geo/aplicmap/dados/locali.shp"
7 7 METADATA
8 8 "METAESTAT_ID_MEDIDA_VARIAVEL" ""
9   - "TIP" "TIPO,NOMELOC,ANOCRIA"
10   - "LTEMPOITEMIMAGEM" ""
11 9 "cache" ""
12   - "CLASSE" "SIM"
13   - "LTEMPOITEMDESCRICAO" "TIPO"
  10 + "LTEMPOITEMIMAGEM" ""
  11 + "TIP" "TIPO,NOMELOC,ANOCRIA"
14 12 "olopacity" ""
15   - "LTEMPOITEMINICIO" "ANOCRIA"
  13 + "LTEMPOITEMDESCRICAO" "TIPO"
  14 + "CLASSE" "SIM"
16 15 "palletestep" ""
17   - "permitekmz" "sim"
18   - "LTEMPOITEMTIP" "ANOCRIA"
  16 + "LTEMPOITEMINICIO" "ANOCRIA"
19 17 "temporizador" ""
  18 + "LTEMPOITEMTIP" "ANOCRIA"
  19 + "permitekmz" "sim"
20 20 "gmopacity" ""
21 21 "gmstatus" ""
22   - "ITENSDESC" "Município,TIPO,Localidade,ANOCRIA"
23   - "iconetema" ""
24   - "LTEMPOITEMTITULO" "NOMELOC"
25 22 "description_template" ""
26   - "ITENSLINK" ",,,"
  23 + "LTEMPOITEMTITULO" "NOMELOC"
  24 + "iconetema" ""
  25 + "ITENSDESC" "Município,TIPO,Localidade,ANOCRIA"
27 26 "LTEMPOITEMLINK" ""
  27 + "ITENSLINK" ",,,"
28 28 "METAESTAT_CODIGO_TIPO_REGIAO" ""
29 29 "arquivotemaoriginal" ""
30 30 "palletefile" ""
31   - "nomeoriginal" ""
32 31 "olstatus" ""
33   - "permitedownload" "sim"
  32 + "nomeoriginal" ""
34 33 "LTEMPOFORMATODATA" "iso8601"
35   - "permitecomentario" "SIM"
  34 + "permitedownload" "sim"
36 35 "LTEMPOITEMICONE" ""
  36 + "permitecomentario" "SIM"
37 37 "metaestat" ""
38 38 "download" "SIM"
39 39 "itembuscarapida" "NOMELOC"
40   - "ITENS" "NOMEMUN,TIPO,NOMELOC,ANOCRIA"
41   - "arquivodownload" ""
42 40 "arquivokmz" ""
43   - "permitekml" "sim"
44   - "permiteogc" "sim"
  41 + "arquivodownload" ""
  42 + "ITENS" "NOMEMUN,TIPO,NOMELOC,ANOCRIA"
45 43 "transitioneffect" "NAO"
46   - "TEMA" "Localidades (usar com timeline)"
  44 + "permiteogc" "sim"
  45 + "permitekml" "sim"
47 46 "convcaracter" ""
  47 + "TEMA" "Localidades (usar com timeline) para teste"
48 48 "cortepixels" "40"
49   - "editorsql" ""
50 49 "LTEMPOCONVENCODE" "SIM"
51   - "LTEMPOITEMFIM" ""
  50 + "editorsql" ""
52 51 "legendaimg" ""
  52 + "LTEMPOITEMFIM" ""
53 53 END # METADATA
54 54 NAME "_llocali"
55 55 PROCESSING "LABEL_NO_CLIP=True"
... ... @@ -63,7 +63,6 @@ MAP
63 63 TILEITEM "location"
64 64 TYPE POINT
65 65 UNITS METERS
66   - #EXTENT -67.419006 -19.719276 -38.678772 -10.183143
67 66 CLASS
68 67 NAME "Vila"
69 68 EXPRESSION ('[TIPO]'eq'Vila')
... ...
temas/_lparametrossql.map 0 → 100644
... ... @@ -0,0 +1,71 @@
  1 +MAP
  2 + FONTSET "../symbols/fontes.txt"
  3 + SYMBOLSET "../symbols/simbolosv6.sym"
  4 + LAYER
  5 + CONNECTION "user=postgres password=postgres dbname=i3geosaude host=localhost port=5432"
  6 + CONNECTIONTYPE POSTGIS
  7 + DATA "the_geom from /*SE*/(SELECT (j.valorcalculado) AS pop_res_tot, co_municipio,no_cidade,co_uf,sg_uf,area_territorial,nu_ano_instalacao,/*SG*/the_geom as the_geom /*SG*/ FROM i3geo_metaestat.municipios AS regiao INNER JOIN ( SELECT munic AS cod_regiao,sum(pop_res_tot) AS valorcalculado FROM ibge.populacao_residente WHERE ano IN ('ANO_DADOS')AND pop_res_tot IS NOT NULL /*FA*//*FA*/ /*FAT*//*FAT*/ GROUP BY cod_regiao ) AS j ON j.cod_regiao::text = regiao.co_municipio::text /*FR*//*FR*/ )/*SE*/ as foo using unique co_municipio using srid=4326"
  8 + METADATA
  9 + "METAESTAT_ID_MEDIDA_VARIAVEL" ""
  10 + "CLASSE" "SIM"
  11 + "permitekmz" "nao"
  12 + "METAESTAT_CODIGO_TIPO_REGIAO" ""
  13 + "permitedownload" "sim"
  14 + "PLUGINI3GEO" '{"plugin":"parametrossql","parametros":[{"titulo" : "Ano dos dados ç","chave" : "ANO_DADOS","tipo" : "select","valores" : "1970,1980,2000"},{"titulo" : "","chave" : "","tipo" : "","valores" : ""},{"titulo" : "","chave" : "","tipo" : "","valores" : ""},{}]}'
  15 + "metaestat" ""
  16 + "permiteogc" "sim"
  17 + "permitekml" "sim"
  18 + "TEMA" "Teste de plugin parametrossql"
  19 + END # METADATA
  20 + NAME "_lparametrossql"
  21 + PROCESSING "LABEL_NO_CLIP=True"
  22 + PROCESSING "POLYLINE_NO_CLIP=True"
  23 + STATUS OFF
  24 + TEMPLATE "none.htm"
  25 + TILEITEM "location"
  26 + TYPE POLYGON
  27 + UNITS METERS
  28 + CLASS
  29 + NAME "<= 6008"
  30 + EXPRESSION ([pop_res_tot]<=6008)
  31 + STYLE
  32 + COLOR 255 255 199
  33 + OUTLINECOLOR 255 255 255
  34 + OUTLINEWIDTH 6
  35 + SIZE 6
  36 + END # STYLE
  37 + END # CLASS
  38 + CLASS
  39 + NAME "> 6008 e <= 11531"
  40 + EXPRESSION (([pop_res_tot]>6008)and([pop_res_tot]<=11531))
  41 + STYLE
  42 + COLOR 235 235 210
  43 + OUTLINECOLOR 255 255 255
  44 + OUTLINEWIDTH 11
  45 + SIZE 11
  46 + END # STYLE
  47 + END # CLASS
  48 + CLASS
  49 + NAME "> 11531 e <= 22638"
  50 + EXPRESSION (([pop_res_tot]>11531)and([pop_res_tot]<=22638))
  51 + STYLE
  52 + COLOR 216 216 220
  53 + OUTLINECOLOR 255 255 255
  54 + OUTLINEWIDTH 16
  55 + SIZE 16
  56 + END # STYLE
  57 + END # CLASS
  58 + CLASS
  59 + NAME "> 22638"
  60 + EXPRESSION ([pop_res_tot]>22638)
  61 + STYLE
  62 + COLOR 196 196 230
  63 + OUTLINECOLOR 255 255 255
  64 + OUTLINEWIDTH 21
  65 + SIZE 21
  66 + END # STYLE
  67 + END # CLASS
  68 + END # LAYER
  69 +
  70 +END # MAP
  71 +
... ...