Commit aa736ba260c73a2300724dfbc347df9276a868c6
1 parent
946a1c7a
Exists in
master
and in
7 other branches
Adaptação da rotina de cálculo de distância para OL3
Showing
1 changed file
with
412 additions
and
228 deletions
Show diff stats
js/analise.js
| @@ -21,18 +21,18 @@ | @@ -21,18 +21,18 @@ | ||
| 21 | */ | 21 | */ |
| 22 | 22 | ||
| 23 | /** | 23 | /** |
| 24 | - * | 24 | + * |
| 25 | * Licença | 25 | * Licença |
| 26 | - * | 26 | + * |
| 27 | * GPL2 | 27 | * GPL2 |
| 28 | - * | 28 | + * |
| 29 | * i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet | 29 | * i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet |
| 30 | - * | 30 | + * |
| 31 | * Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com | 31 | * Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil Desenvolvedor: Edmar Moretti edmar.moretti@gmail.com |
| 32 | - * | 32 | + * |
| 33 | * Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo sob os termos da Licença | 33 | * Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo sob os termos da Licença |
| 34 | * Pública Geral GNU conforme publicada pela Free Software Foundation; | 34 | * Pública Geral GNU conforme publicada pela Free Software Foundation; |
| 35 | - * | 35 | + * |
| 36 | * Este programa é distribuído na expectativa de que seja útil, porém, SEM NENHUMA GARANTIA; nem mesmo a | 36 | * Este programa é distribuído na expectativa de que seja útil, porém, SEM NENHUMA GARANTIA; nem mesmo a |
| 37 | * garantia implícita de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença | 37 | * garantia implícita de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. Consulte a Licença |
| 38 | * Pública Geral do GNU para mais detalhes. Você deve ter recebido uma cópia da Licença Pública Geral do | 38 | * Pública Geral do GNU para mais detalhes. Você deve ter recebido uma cópia da Licença Pública Geral do |
| @@ -53,19 +53,19 @@ i3GEO.analise = | @@ -53,19 +53,19 @@ i3GEO.analise = | ||
| 53 | }, | 53 | }, |
| 54 | /** | 54 | /** |
| 55 | * Classe: i3GEO.analise.dialogo | 55 | * Classe: i3GEO.analise.dialogo |
| 56 | - * | 56 | + * |
| 57 | * Abre as telas de diálogo das opções de análise | 57 | * Abre as telas de diálogo das opções de análise |
| 58 | - * | 58 | + * |
| 59 | * Exemplo: | 59 | * Exemplo: |
| 60 | - * | 60 | + * |
| 61 | * Para abrir a mensagem de diálogo de geração de buffer, utilize | 61 | * Para abrir a mensagem de diálogo de geração de buffer, utilize |
| 62 | - * | 62 | + * |
| 63 | * i3GEO.analise.dialogo.buffer() | 63 | * i3GEO.analise.dialogo.buffer() |
| 64 | */ | 64 | */ |
| 65 | dialogo : { | 65 | dialogo : { |
| 66 | /** | 66 | /** |
| 67 | * Function: markercluster | 67 | * Function: markercluster |
| 68 | - * | 68 | + * |
| 69 | * Ferramenta mapa agrupamento de pontos | 69 | * Ferramenta mapa agrupamento de pontos |
| 70 | */ | 70 | */ |
| 71 | markercluster : function() { | 71 | markercluster : function() { |
| @@ -78,7 +78,7 @@ i3GEO.analise = | @@ -78,7 +78,7 @@ i3GEO.analise = | ||
| 78 | }, | 78 | }, |
| 79 | /** | 79 | /** |
| 80 | * Function: heatmap | 80 | * Function: heatmap |
| 81 | - * | 81 | + * |
| 82 | * Ferramenta mapa de calor | 82 | * Ferramenta mapa de calor |
| 83 | */ | 83 | */ |
| 84 | heatmap : function() { | 84 | heatmap : function() { |
| @@ -91,11 +91,11 @@ i3GEO.analise = | @@ -91,11 +91,11 @@ i3GEO.analise = | ||
| 91 | }, | 91 | }, |
| 92 | /** | 92 | /** |
| 93 | * Function: saiku | 93 | * Function: saiku |
| 94 | - * | 94 | + * |
| 95 | * Ferramenta SAIKU em nova aba do navegador | 95 | * Ferramenta SAIKU em nova aba do navegador |
| 96 | */ | 96 | */ |
| 97 | saiku : function() { | 97 | saiku : function() { |
| 98 | - if(i3GEO.parametros.statusFerramentas && i3GEO.parametros.statusFerramentas.saiku === false){ | 98 | + if (i3GEO.parametros.statusFerramentas && i3GEO.parametros.statusFerramentas.saiku === false) { |
| 99 | i3GEO.janela.tempoMsg($trad("naoInstalado")); | 99 | i3GEO.janela.tempoMsg($trad("naoInstalado")); |
| 100 | return; | 100 | return; |
| 101 | } | 101 | } |
| @@ -103,11 +103,11 @@ i3GEO.analise = | @@ -103,11 +103,11 @@ i3GEO.analise = | ||
| 103 | }, | 103 | }, |
| 104 | /** | 104 | /** |
| 105 | * Function: saikuMapa | 105 | * Function: saikuMapa |
| 106 | - * | 106 | + * |
| 107 | * Ferramenta SAIKU em uma janela interna | 107 | * Ferramenta SAIKU em uma janela interna |
| 108 | */ | 108 | */ |
| 109 | saikuMapa : function() { | 109 | saikuMapa : function() { |
| 110 | - if(i3GEO.parametros.statusFerramentas && i3GEO.parametros.statusFerramentas.saiku === false){ | 110 | + if (i3GEO.parametros.statusFerramentas && i3GEO.parametros.statusFerramentas.saiku === false) { |
| 111 | i3GEO.janela.tempoMsg($trad("naoInstalado")); | 111 | i3GEO.janela.tempoMsg($trad("naoInstalado")); |
| 112 | return; | 112 | return; |
| 113 | } | 113 | } |
| @@ -119,7 +119,7 @@ i3GEO.analise = | @@ -119,7 +119,7 @@ i3GEO.analise = | ||
| 119 | "i3GEOF.saiku.iniciaJanelaFlutuante2()"); | 119 | "i3GEOF.saiku.iniciaJanelaFlutuante2()"); |
| 120 | }, | 120 | }, |
| 121 | /** | 121 | /** |
| 122 | - * | 122 | + * |
| 123 | * Ferramenta graficointerativo versao flash | 123 | * Ferramenta graficointerativo versao flash |
| 124 | */ | 124 | */ |
| 125 | graficoInterativo : function() { | 125 | graficoInterativo : function() { |
| @@ -127,7 +127,7 @@ i3GEO.analise = | @@ -127,7 +127,7 @@ i3GEO.analise = | ||
| 127 | }, | 127 | }, |
| 128 | /** | 128 | /** |
| 129 | * Function: graficoInterativo1 | 129 | * Function: graficoInterativo1 |
| 130 | - * | 130 | + * |
| 131 | * Ferramenta gráfico interativo | 131 | * Ferramenta gráfico interativo |
| 132 | */ | 132 | */ |
| 133 | graficoInterativo1 : function() { | 133 | graficoInterativo1 : function() { |
| @@ -140,7 +140,7 @@ i3GEO.analise = | @@ -140,7 +140,7 @@ i3GEO.analise = | ||
| 140 | }, | 140 | }, |
| 141 | /** | 141 | /** |
| 142 | * Function: linhaDoTempo | 142 | * Function: linhaDoTempo |
| 143 | - * | 143 | + * |
| 144 | * Ferramenta linha do tempo | 144 | * Ferramenta linha do tempo |
| 145 | */ | 145 | */ |
| 146 | linhaDoTempo : function() { | 146 | linhaDoTempo : function() { |
| @@ -174,9 +174,15 @@ i3GEO.analise = | @@ -174,9 +174,15 @@ i3GEO.analise = | ||
| 174 | doc = document.frames("i3GEOF.linhaDoTempoi").document; | 174 | doc = document.frames("i3GEOF.linhaDoTempoi").document; |
| 175 | } | 175 | } |
| 176 | } | 176 | } |
| 177 | - doc.getElementById("tl") ? window.parent["i3GEOF.linhaDoTempoi"].carregaDados() : i3GEO.eventos.removeEventos("NAVEGAMAPA",["i3GEO.analise.atualizaLinhaDoTempo()"]); | 177 | + doc.getElementById("tl") ? window.parent["i3GEOF.linhaDoTempoi"].carregaDados() : i3GEO.eventos.removeEventos( |
| 178 | + "NAVEGAMAPA", | ||
| 179 | + [ | ||
| 180 | + "i3GEO.analise.atualizaLinhaDoTempo()" | ||
| 181 | + ]); | ||
| 178 | } catch (e) { | 182 | } catch (e) { |
| 179 | - i3GEO.eventos.removeEventos("NAVEGAMAPA",["i3GEO.analise.atualizaLinhaDoTempo()"]); | 183 | + i3GEO.eventos.removeEventos("NAVEGAMAPA", [ |
| 184 | + "i3GEO.analise.atualizaLinhaDoTempo()" | ||
| 185 | + ]); | ||
| 180 | } | 186 | } |
| 181 | }; | 187 | }; |
| 182 | i3GEO.eventos.adicionaEventos("NAVEGAMAPA", [ | 188 | i3GEO.eventos.adicionaEventos("NAVEGAMAPA", [ |
| @@ -190,7 +196,7 @@ i3GEO.analise = | @@ -190,7 +196,7 @@ i3GEO.analise = | ||
| 190 | }, | 196 | }, |
| 191 | /** | 197 | /** |
| 192 | * Function: perfil | 198 | * Function: perfil |
| 193 | - * | 199 | + * |
| 194 | * Ferramenta perfil | 200 | * Ferramenta perfil |
| 195 | */ | 201 | */ |
| 196 | perfil : function() { | 202 | perfil : function() { |
| @@ -198,11 +204,11 @@ i3GEO.analise = | @@ -198,11 +204,11 @@ i3GEO.analise = | ||
| 198 | }, | 204 | }, |
| 199 | /** | 205 | /** |
| 200 | * Function: melhorcaminho | 206 | * Function: melhorcaminho |
| 201 | - * | 207 | + * |
| 202 | * Ferramenta melhor caminho | 208 | * Ferramenta melhor caminho |
| 203 | */ | 209 | */ |
| 204 | melhorcaminho : function() { | 210 | melhorcaminho : function() { |
| 205 | - if(i3GEO.parametros.statusFerramentas && i3GEO.parametros.statusFerramentas.melhorcaminho === false){ | 211 | + if (i3GEO.parametros.statusFerramentas && i3GEO.parametros.statusFerramentas.melhorcaminho === false) { |
| 206 | i3GEO.janela.tempoMsg($trad("naoInstalado")); | 212 | i3GEO.janela.tempoMsg($trad("naoInstalado")); |
| 207 | return; | 213 | return; |
| 208 | } | 214 | } |
| @@ -210,7 +216,7 @@ i3GEO.analise = | @@ -210,7 +216,7 @@ i3GEO.analise = | ||
| 210 | }, | 216 | }, |
| 211 | /** | 217 | /** |
| 212 | * Function: gradePontos | 218 | * Function: gradePontos |
| 213 | - * | 219 | + * |
| 214 | * Ferramenta grade de pontos | 220 | * Ferramenta grade de pontos |
| 215 | */ | 221 | */ |
| 216 | gradePontos : function() { | 222 | gradePontos : function() { |
| @@ -218,7 +224,7 @@ i3GEO.analise = | @@ -218,7 +224,7 @@ i3GEO.analise = | ||
| 218 | }, | 224 | }, |
| 219 | /** | 225 | /** |
| 220 | * Function: gradePol | 226 | * Function: gradePol |
| 221 | - * | 227 | + * |
| 222 | * Ferramenta grade de polígonos | 228 | * Ferramenta grade de polígonos |
| 223 | */ | 229 | */ |
| 224 | gradePol : function() { | 230 | gradePol : function() { |
| @@ -226,7 +232,7 @@ i3GEO.analise = | @@ -226,7 +232,7 @@ i3GEO.analise = | ||
| 226 | }, | 232 | }, |
| 227 | /** | 233 | /** |
| 228 | * Function: gradeHex | 234 | * Function: gradeHex |
| 229 | - * | 235 | + * |
| 230 | * Ferramenta grade de hexágonos | 236 | * Ferramenta grade de hexágonos |
| 231 | */ | 237 | */ |
| 232 | gradeHex : function() { | 238 | gradeHex : function() { |
| @@ -234,7 +240,7 @@ i3GEO.analise = | @@ -234,7 +240,7 @@ i3GEO.analise = | ||
| 234 | }, | 240 | }, |
| 235 | /** | 241 | /** |
| 236 | * Function: analisaGeometrias | 242 | * Function: analisaGeometrias |
| 237 | - * | 243 | + * |
| 238 | * Ferramenta de análise de geometrias | 244 | * Ferramenta de análise de geometrias |
| 239 | */ | 245 | */ |
| 240 | analisaGeometrias : function() { | 246 | analisaGeometrias : function() { |
| @@ -247,7 +253,7 @@ i3GEO.analise = | @@ -247,7 +253,7 @@ i3GEO.analise = | ||
| 247 | }, | 253 | }, |
| 248 | /** | 254 | /** |
| 249 | * Function: pontosdistri | 255 | * Function: pontosdistri |
| 250 | - * | 256 | + * |
| 251 | * Ferramenta de cálculo de distribuição de pontos | 257 | * Ferramenta de cálculo de distribuição de pontos |
| 252 | */ | 258 | */ |
| 253 | pontosdistri : function() { | 259 | pontosdistri : function() { |
| @@ -260,7 +266,7 @@ i3GEO.analise = | @@ -260,7 +266,7 @@ i3GEO.analise = | ||
| 260 | }, | 266 | }, |
| 261 | /** | 267 | /** |
| 262 | * Function: pontoempoligono | 268 | * Function: pontoempoligono |
| 263 | - * | 269 | + * |
| 264 | * Ferramenta ponto em polígono | 270 | * Ferramenta ponto em polígono |
| 265 | */ | 271 | */ |
| 266 | pontoempoligono : function() { | 272 | pontoempoligono : function() { |
| @@ -273,7 +279,7 @@ i3GEO.analise = | @@ -273,7 +279,7 @@ i3GEO.analise = | ||
| 273 | }, | 279 | }, |
| 274 | /** | 280 | /** |
| 275 | * Function: centromassa | 281 | * Function: centromassa |
| 276 | - * | 282 | + * |
| 277 | * Ferramenta centro médio | 283 | * Ferramenta centro médio |
| 278 | */ | 284 | */ |
| 279 | centromassa : function() { | 285 | centromassa : function() { |
| @@ -286,7 +292,7 @@ i3GEO.analise = | @@ -286,7 +292,7 @@ i3GEO.analise = | ||
| 286 | }, | 292 | }, |
| 287 | /** | 293 | /** |
| 288 | * Function: nptPol | 294 | * Function: nptPol |
| 289 | - * | 295 | + * |
| 290 | * Ferramenta número de pontos em polígono | 296 | * Ferramenta número de pontos em polígono |
| 291 | */ | 297 | */ |
| 292 | nptPol : function() { | 298 | nptPol : function() { |
| @@ -299,7 +305,7 @@ i3GEO.analise = | @@ -299,7 +305,7 @@ i3GEO.analise = | ||
| 299 | }, | 305 | }, |
| 300 | /** | 306 | /** |
| 301 | * Function: buffer | 307 | * Function: buffer |
| 302 | - * | 308 | + * |
| 303 | * Ferramenta buffer | 309 | * Ferramenta buffer |
| 304 | */ | 310 | */ |
| 305 | buffer : function() { | 311 | buffer : function() { |
| @@ -312,7 +318,7 @@ i3GEO.analise = | @@ -312,7 +318,7 @@ i3GEO.analise = | ||
| 312 | }, | 318 | }, |
| 313 | /** | 319 | /** |
| 314 | * Function: distanciaptpt | 320 | * Function: distanciaptpt |
| 315 | - * | 321 | + * |
| 316 | * Ferramenta distância entre pontos | 322 | * Ferramenta distância entre pontos |
| 317 | */ | 323 | */ |
| 318 | distanciaptpt : function() { | 324 | distanciaptpt : function() { |
| @@ -325,7 +331,7 @@ i3GEO.analise = | @@ -325,7 +331,7 @@ i3GEO.analise = | ||
| 325 | }, | 331 | }, |
| 326 | /** | 332 | /** |
| 327 | * Function: centroide | 333 | * Function: centroide |
| 328 | - * | 334 | + * |
| 329 | * Ferramenta centróide | 335 | * Ferramenta centróide |
| 330 | */ | 336 | */ |
| 331 | centroide : function() { | 337 | centroide : function() { |
| @@ -338,7 +344,7 @@ i3GEO.analise = | @@ -338,7 +344,7 @@ i3GEO.analise = | ||
| 338 | }, | 344 | }, |
| 339 | /** | 345 | /** |
| 340 | * Function: dissolve | 346 | * Function: dissolve |
| 341 | - * | 347 | + * |
| 342 | * Ferramenta dissolve bordas comuns | 348 | * Ferramenta dissolve bordas comuns |
| 343 | */ | 349 | */ |
| 344 | dissolve : function() { | 350 | dissolve : function() { |
| @@ -351,7 +357,7 @@ i3GEO.analise = | @@ -351,7 +357,7 @@ i3GEO.analise = | ||
| 351 | }, | 357 | }, |
| 352 | /** | 358 | /** |
| 353 | * Function: agrupaElementos | 359 | * Function: agrupaElementos |
| 354 | - * | 360 | + * |
| 355 | * Ferramenta agrupa elementos | 361 | * Ferramenta agrupa elementos |
| 356 | */ | 362 | */ |
| 357 | agrupaElementos : function() { | 363 | agrupaElementos : function() { |
| @@ -365,7 +371,7 @@ i3GEO.analise = | @@ -365,7 +371,7 @@ i3GEO.analise = | ||
| 365 | }, | 371 | }, |
| 366 | /** | 372 | /** |
| 367 | * Section: medeDistancia | 373 | * Section: medeDistancia |
| 368 | - * | 374 | + * |
| 369 | * Ativa e controla a opção de medição de distâncias. A medida é feita quando o | 375 | * Ativa e controla a opção de medição de distâncias. A medida é feita quando o |
| 370 | * usuário clica no mapa com esta opção ativa. Quando o botão e acionado, abre-se a janela que mostra o | 376 | * usuário clica no mapa com esta opção ativa. Quando o botão e acionado, abre-se a janela que mostra o |
| 371 | * resultado da medida, o ícone que segue o mouse é alterado. Para mostrar o resultado do cálculo, é | 377 | * resultado da medida, o ícone que segue o mouse é alterado. Para mostrar o resultado do cálculo, é |
| @@ -386,7 +392,7 @@ i3GEO.analise = | @@ -386,7 +392,7 @@ i3GEO.analise = | ||
| 386 | ultimaMedida : "", | 392 | ultimaMedida : "", |
| 387 | /** | 393 | /** |
| 388 | * Function: inicia | 394 | * Function: inicia |
| 389 | - * | 395 | + * |
| 390 | * Inicia a operação de medição, abrindo a janela de resultados e criando os componentes | 396 | * Inicia a operação de medição, abrindo a janela de resultados e criando os componentes |
| 391 | * necessários. São registrados os eventos de clique sobre o mapa e fechamento da janela de resultados | 397 | * necessários. São registrados os eventos de clique sobre o mapa e fechamento da janela de resultados |
| 392 | */ | 398 | */ |
| @@ -408,19 +414,30 @@ i3GEO.analise = | @@ -408,19 +414,30 @@ i3GEO.analise = | ||
| 408 | novoel = document.createElement("div"); | 414 | novoel = document.createElement("div"); |
| 409 | novoel.id = "mostradistancia"; | 415 | novoel.id = "mostradistancia"; |
| 410 | ins = | 416 | ins = |
| 411 | - '<div class="hd" style="font-size:11px"><div class="i3GeoTituloJanela">'+$trad("distAprox")+'<a class=ajuda_usuario target=_blank href="' | ||
| 412 | - + i3GEO.configura.locaplic + '/ajuda_usuario.php?idcategoria=6&idajuda=50" ><b> </b></a></div></div>' | 417 | + '<div class="hd" style="font-size:11px"><div class="i3GeoTituloJanela">' + $trad("distAprox") |
| 418 | + + '<a class=ajuda_usuario target=_blank href="' | ||
| 419 | + + i3GEO.configura.locaplic | ||
| 420 | + + '/ajuda_usuario.php?idcategoria=6&idajuda=50" ><b> </b></a></div></div>' | ||
| 413 | + '<div class="bd" style="text-align:left;padding:3px;" >' | 421 | + '<div class="bd" style="text-align:left;padding:3px;" >' |
| 414 | + '<div style="text-align:left;padding:3px;" id="mostradistancia_calculo" ></div>' | 422 | + '<div style="text-align:left;padding:3px;" id="mostradistancia_calculo" ></div>' |
| 415 | + '<div style="text-align:left;padding:3px;" id="mostradistancia_calculo_movel" ></div>' | 423 | + '<div style="text-align:left;padding:3px;" id="mostradistancia_calculo_movel" ></div>' |
| 416 | + '<div style="text-align:left;font-size:10px" >' | 424 | + '<div style="text-align:left;font-size:10px" >' |
| 417 | - + '<span style="color:navy;cursor:pointer;text-align:left;" >' + '<table class="lista7" style="width:250px">' + '<tr>' | ||
| 418 | - + '<td><input style="cursor:pointer" type="checkbox" id="pararraios" checked /></td>' + '<td>Raios</td>' | ||
| 419 | - + '<td> </td>' + '<td><input style="cursor:pointer" type="checkbox" id="parartextos" checked /></td>' | ||
| 420 | - + '<td>Textos<td>' + '<td> Estilo:</td>' + '<td><div class=styled-select style="width:85px;">' | ||
| 421 | - + i3GEO.desenho.caixaEstilos() + '</div></td></tr>' | 425 | + + '<span style="color:navy;cursor:pointer;text-align:left;" >' |
| 426 | + + '<table class="lista7" style="width:250px">' | ||
| 427 | + + '<tr>' | ||
| 428 | + + '<td><input style="cursor:pointer" type="checkbox" id="pararraios" checked /></td>' | ||
| 429 | + + '<td>Raios</td>' | ||
| 430 | + + '<td> </td>' | ||
| 431 | + + '<td><input style="cursor:pointer" type="checkbox" id="parartextos" checked /></td>' | ||
| 432 | + + '<td>Textos<td>' | ||
| 433 | + + '<td> Estilo:</td>' | ||
| 434 | + + '<td><div class=styled-select style="width:85px;">' | ||
| 435 | + + i3GEO.desenho.caixaEstilos() | ||
| 436 | + + '</div></td></tr>' | ||
| 422 | + '<tr><td></td><td></td>' | 437 | + '<tr><td></td><td></td>' |
| 423 | - + '<td></td><td></td><td></td><td></td><td> <input id=i3GEObotaoPerfil size="22" type="button" value="perfil"></td><td> <input id=i3GEObotaoDistWkt size="22" type="button" value="incorporar"></td></tr></table></span>' + '</div>' + '</div>'; | 438 | + + '<td></td><td></td><td></td><td></td><td> <input id=i3GEObotaoPerfil size="22" type="button" value="perfil"></td><td> <input id=i3GEObotaoDistWkt size="22" type="button" value="incorporar"></td></tr></table></span>' |
| 439 | + + '</div>' | ||
| 440 | + + '</div>'; | ||
| 424 | novoel.innerHTML = ins; | 441 | novoel.innerHTML = ins; |
| 425 | novoel.style.borderColor = "gray"; | 442 | novoel.style.borderColor = "gray"; |
| 426 | document.body.appendChild(novoel); | 443 | document.body.appendChild(novoel); |
| @@ -496,146 +513,162 @@ i3GEO.analise = | @@ -496,146 +513,162 @@ i3GEO.analise = | ||
| 496 | * Funcoes especificas da interface openlayers | 513 | * Funcoes especificas da interface openlayers |
| 497 | */ | 514 | */ |
| 498 | openlayers : { | 515 | openlayers : { |
| 516 | + draw : "", | ||
| 517 | + featureListener : null, | ||
| 518 | + //numero de pontos da geometria atual | ||
| 519 | + //utilizado para saber se houve um clique ou nao | ||
| 520 | + numpontos : 0, | ||
| 521 | + removeControle : function() { | ||
| 522 | + i3geoOL.removeInteraction(i3GEO.analise.medeDistancia.openlayers.draw); | ||
| 523 | + i3GEO.analise.medeDistancia.openlayers.draw = ""; | ||
| 524 | + }, | ||
| 499 | /** | 525 | /** |
| 500 | * Inicializa o processo Cria a variavel para guardar os pontos Executa a funcao de inicializacao do desenho, que cria o | 526 | * Inicializa o processo Cria a variavel para guardar os pontos Executa a funcao de inicializacao do desenho, que cria o |
| 501 | * layer para receber os graficos | 527 | * layer para receber os graficos |
| 502 | */ | 528 | */ |
| 503 | inicia : function() { | 529 | inicia : function() { |
| 504 | - var linha, estilo = i3GEO.desenho.estilos[i3GEO.desenho.estiloPadrao], controle = | ||
| 505 | - i3geoOL.getControlsBy("id", "i3GeoMedeDistancia"); | 530 | + var m = i3GEO.analise.medeDistancia.openlayers; |
| 506 | i3GEO.desenho[i3GEO.Interface["ATUAL"]].inicia(); | 531 | i3GEO.desenho[i3GEO.Interface["ATUAL"]].inicia(); |
| 507 | - i3GEO.analise.medeDistancia.pontos = { | ||
| 508 | - xpt : [], | ||
| 509 | - ypt : [], | ||
| 510 | - dist : [] | ||
| 511 | - }; | ||
| 512 | - if (controle.length === 0) { | ||
| 513 | - linha = | ||
| 514 | - new OpenLayers.Control.DrawFeature(i3GEO.desenho.layergrafico, OpenLayers.Handler.Path, { | ||
| 515 | - autoActivate : true, | ||
| 516 | - id : "i3GeoMedeDistancia", | ||
| 517 | - type : OpenLayers.Control.TYPE_TOOL, | ||
| 518 | - callbacks : { | ||
| 519 | - done : function(feature) { | ||
| 520 | - var t, f = new OpenLayers.Feature.Vector(feature, { | ||
| 521 | - origem : "medeDistancia" | ||
| 522 | - }, { | ||
| 523 | - graphicName : "square", | ||
| 524 | - pointRadius : 10, | ||
| 525 | - graphicOpacity : 1, | ||
| 526 | - strokeWidth : estilo.linewidth, | ||
| 527 | - strokeColor : estilo.linecolor | ||
| 528 | - }); | ||
| 529 | - i3GEO.desenho.layergrafico.addFeatures([ | ||
| 530 | - f | ||
| 531 | - ]); | ||
| 532 | - if (i3GEO.Interface) { | ||
| 533 | - i3GEO.Interface.openlayers.sobeLayersGraficos(); | ||
| 534 | - } | ||
| 535 | - i3GEO.analise.medeDistancia.openlayers.mostraParcial(0, 0, 0); | ||
| 536 | - i3GEO.analise.medeDistancia.ultimoWkt = i3GEO.analise.medeDistancia.pontos2wkt(); | ||
| 537 | - t = i3GEO.analise.medeDistancia.openlayers.somaDist(); | ||
| 538 | - t = t.toFixed(3) + " km"; | ||
| 539 | - i3GEO.analise.medeDistancia.ultimaMedida = t; | ||
| 540 | - i3GEO.analise.medeDistancia.openlayers.inicia(); | ||
| 541 | - }, | ||
| 542 | - modify : function(point) { | ||
| 543 | - var n, x1, y1, x2, y2, trecho, parcial, direcao; | ||
| 544 | - n = i3GEO.analise.medeDistancia.pontos.ypt.length; | ||
| 545 | - if (n > 0) { | ||
| 546 | - x1 = i3GEO.analise.medeDistancia.pontos.xpt[n - 1]; | ||
| 547 | - y1 = i3GEO.analise.medeDistancia.pontos.ypt[n - 1]; | ||
| 548 | - x2 = point.x; | ||
| 549 | - y2 = point.y; | ||
| 550 | - // projeta | ||
| 551 | - if (i3GEO.Interface.openlayers.googleLike) { | ||
| 552 | - temp = i3GEO.util.extOSM2Geo(x1 + " " + y1 + " " + x2 + " " + y2); | ||
| 553 | - temp = temp.split(" "); | ||
| 554 | - x1 = temp[0]; | ||
| 555 | - y1 = temp[1]; | ||
| 556 | - x2 = temp[2]; | ||
| 557 | - y2 = temp[3]; | ||
| 558 | - } | ||
| 559 | - trecho = i3GEO.calculo.distancia(x1, y1, x2, y2); | ||
| 560 | - parcial = i3GEO.analise.medeDistancia.openlayers.somaDist(); | ||
| 561 | - direcao = i3GEO.calculo.direcao(x1, y1, x2, y2); | ||
| 562 | - direcao = i3GEO.calculo.dd2dms(direcao, direcao); | ||
| 563 | - direcao = direcao[0]; | ||
| 564 | - i3GEO.analise.medeDistancia.openlayers.mostraParcial(trecho, parcial, direcao); | ||
| 565 | - } | ||
| 566 | - }, | ||
| 567 | - point : function(point) { | ||
| 568 | - var n, x1, y1, x2, y2, trecho, temp, circ, label, raio, pontoRaio, | ||
| 569 | - // registra os pontos e calcula a distancia | ||
| 570 | - total = 0; | ||
| 571 | - i3GEO.analise.medeDistancia.pontos.xpt.push(point.x); | ||
| 572 | - i3GEO.analise.medeDistancia.pontos.ypt.push(point.y); | ||
| 573 | - i3GEO.analise.pontos.xpt.push(point.x); | ||
| 574 | - i3GEO.analise.pontos.ypt.push(point.y); | ||
| 575 | - n = i3GEO.analise.medeDistancia.pontos.ypt.length; | ||
| 576 | - if (n > 1) { | ||
| 577 | - x1 = i3GEO.analise.medeDistancia.pontos.xpt[n - 2]; | ||
| 578 | - y1 = i3GEO.analise.medeDistancia.pontos.ypt[n - 2]; | ||
| 579 | - x2 = point.x; | ||
| 580 | - y2 = point.y; | ||
| 581 | - raio = point.distanceTo(new OpenLayers.Geometry.Point(x1, y1)); | ||
| 582 | - pontoRaio = new OpenLayers.Geometry.Point(x1, y1); | ||
| 583 | - // projeta | ||
| 584 | - if (i3GEO.Interface.openlayers.googleLike) { | ||
| 585 | - temp = i3GEO.util.extOSM2Geo(x1 + " " + y1 + " " + x2 + " " + y2); | ||
| 586 | - temp = temp.split(" "); | ||
| 587 | - x1 = temp[0]; | ||
| 588 | - y1 = temp[1]; | ||
| 589 | - x2 = temp[2]; | ||
| 590 | - y2 = temp[3]; | ||
| 591 | - } | ||
| 592 | - trecho = i3GEO.calculo.distancia(x1, y1, x2, y2); | ||
| 593 | - i3GEO.analise.medeDistancia.pontos.dist.push(trecho); | ||
| 594 | - total = i3GEO.analise.medeDistancia.openlayers.somaDist(); | ||
| 595 | - i3GEO.analise.medeDistancia.openlayers.mostraTotal(trecho, total); | ||
| 596 | - // raio | ||
| 597 | - if ($i("pararraios") && $i("pararraios").checked === true) { | ||
| 598 | - circ = | ||
| 599 | - new OpenLayers.Feature.Vector(OpenLayers.Geometry.Polygon.createRegularPolygon( | ||
| 600 | - pontoRaio, | ||
| 601 | - raio, | ||
| 602 | - 30), { | ||
| 603 | - origem : "medeDistanciaExcluir" | ||
| 604 | - }, { | ||
| 605 | - fill : false, | ||
| 606 | - strokeColor : estilo.circcolor, | ||
| 607 | - strokeWidth : 1 | ||
| 608 | - }); | ||
| 609 | - i3GEO.desenho.layergrafico.addFeatures([ | ||
| 610 | - circ | ||
| 611 | - ]); | ||
| 612 | - } | ||
| 613 | - // desenha ponto | ||
| 614 | - if ($i("parartextos") && $i("parartextos").checked === true) { | ||
| 615 | - label = new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(point.x, point.y), { | ||
| 616 | - origem : "medeDistanciaExcluir" | ||
| 617 | - }, { | ||
| 618 | - graphicName : "square", | ||
| 619 | - pointRadius : 3, | ||
| 620 | - strokeColor : "black", | ||
| 621 | - graphicOpacity : 1, | ||
| 622 | - strokeWidth : 1, | ||
| 623 | - fillColor : "white", | ||
| 624 | - label : trecho.toFixed(3), | ||
| 625 | - labelAlign : "rb", | ||
| 626 | - fontColor : estilo.textcolor, | ||
| 627 | - fontSize : 12, | ||
| 628 | - fontWeight : "bold" | ||
| 629 | - }); | ||
| 630 | - i3GEO.desenho.layergrafico.addFeatures([ | ||
| 631 | - label | ||
| 632 | - ]); | ||
| 633 | - } | ||
| 634 | - } | ||
| 635 | - } | ||
| 636 | - } | 532 | + m.removeControle(); |
| 533 | + m.draw = new ol.interaction.Draw({ | ||
| 534 | + type : "LineString" | ||
| 535 | + }); | ||
| 536 | + i3GEO.Interface.openlayers.interacoes[0].setActive(false); | ||
| 537 | + m.draw.on("drawend", function(evt) { | ||
| 538 | + evt.feature.setProperties({ | ||
| 539 | + origem : "medeDistancia" | ||
| 540 | + }); | ||
| 541 | + var m = i3GEO.analise.medeDistancia.openlayers; | ||
| 542 | + i3GEO.desenho.layergrafico.getSource().addFeature(evt.feature); | ||
| 543 | + m.draw.setActive(false); | ||
| 544 | + m.draw.setActive(true); | ||
| 545 | + }); | ||
| 546 | + i3GEO.analise.medeDistancia.openlayers.draw.on('drawstart', function(evt) { | ||
| 547 | + i3GEO.analise.medeDistancia.pontos = { | ||
| 548 | + xpt : [], | ||
| 549 | + ypt : [], | ||
| 550 | + dist : [] | ||
| 551 | + }; | ||
| 552 | + // set sketch | ||
| 553 | + var m = i3GEO.analise.medeDistancia.openlayers, | ||
| 554 | + sketch = evt.feature; | ||
| 555 | + | ||
| 556 | + m.numpontos = 1; | ||
| 557 | + | ||
| 558 | + m.featureListener = sketch.getGeometry().on('change', function(evt) { | ||
| 559 | + var ponto, | ||
| 560 | + geom = evt.target, | ||
| 561 | + coords = geom.getCoordinates(); | ||
| 562 | + n = coords.length, | ||
| 563 | + m = i3GEO.analise.medeDistancia.openlayers; | ||
| 564 | + ponto = new ol.geom.Point(coords[n-1]); | ||
| 565 | + if(m.numpontos === n-1){ | ||
| 566 | + //clicou | ||
| 567 | + m.numpontos = n; | ||
| 568 | + m.point(ponto); | ||
| 569 | + } | ||
| 570 | + else{ | ||
| 571 | + m.modify(ponto); | ||
| 572 | + } | ||
| 573 | + }); | ||
| 574 | + }); | ||
| 575 | + i3geoOL.addInteraction(m.draw); | ||
| 576 | + }, | ||
| 577 | + modify : function(point) { | ||
| 578 | + var n, x1, y1, x2, y2, trecho, parcial, direcao, | ||
| 579 | + coord = point.getCoordinates(); | ||
| 580 | + n = i3GEO.analise.medeDistancia.pontos.ypt.length; | ||
| 581 | + if (n > 0) { | ||
| 582 | + x1 = i3GEO.analise.medeDistancia.pontos.xpt[n - 1]; | ||
| 583 | + y1 = i3GEO.analise.medeDistancia.pontos.ypt[n - 1]; | ||
| 584 | + x2 = coord[0]; | ||
| 585 | + y2 = coord[1]; | ||
| 586 | + // projeta | ||
| 587 | + if (i3GEO.Interface.openlayers.googleLike) { | ||
| 588 | + temp = i3GEO.util.extOSM2Geo(x1 + " " + y1 + " " + x2 + " " + y2); | ||
| 589 | + temp = temp.split(" "); | ||
| 590 | + x1 = temp[0]; | ||
| 591 | + y1 = temp[1]; | ||
| 592 | + x2 = temp[2]; | ||
| 593 | + y2 = temp[3]; | ||
| 594 | + } | ||
| 595 | + trecho = i3GEO.calculo.distancia(x1, y1, x2, y2); | ||
| 596 | + parcial = i3GEO.analise.medeDistancia.openlayers.somaDist(); | ||
| 597 | + direcao = i3GEO.calculo.direcao(x1, y1, x2, y2); | ||
| 598 | + direcao = i3GEO.calculo.dd2dms(direcao, direcao); | ||
| 599 | + direcao = direcao[0]; | ||
| 600 | + i3GEO.analise.medeDistancia.openlayers.mostraParcial(trecho, parcial, direcao); | ||
| 601 | + } | ||
| 602 | + }, | ||
| 603 | + point : function(point) { | ||
| 604 | + var n, x1, y1, x2, y2, trecho, temp, circ, label, raio, pontoRaio, | ||
| 605 | + coord = point.getCoordinates(); | ||
| 606 | + total = 0; | ||
| 607 | + i3GEO.analise.medeDistancia.pontos.xpt.push(coord[0]); | ||
| 608 | + i3GEO.analise.medeDistancia.pontos.ypt.push(coord[1]); | ||
| 609 | + i3GEO.analise.pontos.xpt.push(coord[0]); | ||
| 610 | + i3GEO.analise.pontos.ypt.push(coord[1]); | ||
| 611 | + n = i3GEO.analise.medeDistancia.pontos.ypt.length; | ||
| 612 | + if (n > 1) { | ||
| 613 | + x1 = i3GEO.analise.medeDistancia.pontos.xpt[n - 2]; | ||
| 614 | + y1 = i3GEO.analise.medeDistancia.pontos.ypt[n - 2]; | ||
| 615 | + x2 = coord[0]; | ||
| 616 | + y2 = coord[1]; | ||
| 617 | + //raio = point.distanceTo(new OpenLayers.Geometry.Point(x1, y1)); | ||
| 618 | + //pontoRaio = new OpenLayers.Geometry.Point(x1, y1); | ||
| 619 | + // projeta | ||
| 620 | + if (i3GEO.Interface.openlayers.googleLike) { | ||
| 621 | + temp = i3GEO.util.extOSM2Geo(x1 + " " + y1 + " " + x2 + " " + y2); | ||
| 622 | + temp = temp.split(" "); | ||
| 623 | + x1 = temp[0]; | ||
| 624 | + y1 = temp[1]; | ||
| 625 | + x2 = temp[2]; | ||
| 626 | + y2 = temp[3]; | ||
| 627 | + } | ||
| 628 | + trecho = i3GEO.calculo.distancia(x1, y1, x2, y2); | ||
| 629 | + i3GEO.analise.medeDistancia.pontos.dist.push(trecho); | ||
| 630 | + total = i3GEO.analise.medeDistancia.openlayers.somaDist(); | ||
| 631 | + i3GEO.analise.medeDistancia.openlayers.mostraTotal(trecho, total); | ||
| 632 | + /* | ||
| 633 | + // raio | ||
| 634 | + if ($i("pararraios") && $i("pararraios").checked === true) { | ||
| 635 | + circ = | ||
| 636 | + new OpenLayers.Feature.Vector(OpenLayers.Geometry.Polygon.createRegularPolygon( | ||
| 637 | + pontoRaio, | ||
| 638 | + raio, | ||
| 639 | + 30), { | ||
| 640 | + origem : "medeDistanciaExcluir" | ||
| 641 | + }, { | ||
| 642 | + fill : false, | ||
| 643 | + strokeColor : estilo.circcolor, | ||
| 644 | + strokeWidth : 1 | ||
| 645 | + }); | ||
| 646 | + i3GEO.desenho.layergrafico.addFeatures([ | ||
| 647 | + circ | ||
| 648 | + ]); | ||
| 649 | + } | ||
| 650 | + // desenha ponto | ||
| 651 | + if ($i("parartextos") && $i("parartextos").checked === true) { | ||
| 652 | + label = new OpenLayers.Feature.Vector(new OpenLayers.Geometry.Point(point.x, point.y), { | ||
| 653 | + origem : "medeDistanciaExcluir" | ||
| 654 | + }, { | ||
| 655 | + graphicName : "square", | ||
| 656 | + pointRadius : 3, | ||
| 657 | + strokeColor : "black", | ||
| 658 | + graphicOpacity : 1, | ||
| 659 | + strokeWidth : 1, | ||
| 660 | + fillColor : "white", | ||
| 661 | + label : trecho.toFixed(3), | ||
| 662 | + labelAlign : "rb", | ||
| 663 | + fontColor : estilo.textcolor, | ||
| 664 | + fontSize : 12, | ||
| 665 | + fontWeight : "bold" | ||
| 637 | }); | 666 | }); |
| 638 | - i3geoOL.addControl(linha); | 667 | + i3GEO.desenho.layergrafico.addFeatures([ |
| 668 | + label | ||
| 669 | + ]); | ||
| 670 | + } | ||
| 671 | + */ | ||
| 639 | } | 672 | } |
| 640 | }, | 673 | }, |
| 641 | /** | 674 | /** |
| @@ -654,22 +687,30 @@ i3GEO.analise = | @@ -654,22 +687,30 @@ i3GEO.analise = | ||
| 654 | * atributo "origem" Os raios e pontos sao sempre removidos | 687 | * atributo "origem" Os raios e pontos sao sempre removidos |
| 655 | */ | 688 | */ |
| 656 | fechaJanela : function() { | 689 | fechaJanela : function() { |
| 657 | - var temp, controle = i3geoOL.getControlsBy("id", "i3GeoMedeDistancia"), f = | ||
| 658 | - i3GEO.desenho.layergrafico.getFeaturesByAttribute("origem", "medeDistancia"); | ||
| 659 | - if (controle.length > 0) { | ||
| 660 | - controle[0].deactivate(); | ||
| 661 | - i3geoOL.removeControl(controle[0]); | 690 | + var m = i3GEO.analise.medeDistancia.openlayers; |
| 691 | + ol.Observable.unByKey(m.featureListener); | ||
| 692 | + m.featureListener = null; | ||
| 693 | + m.removeControle(); | ||
| 694 | + m.numpontos = 0; | ||
| 695 | + i3GEO.eventos.cliquePerm.ativa(); | ||
| 696 | + | ||
| 697 | + var features, n, f, i, remover = [], temp; | ||
| 698 | + features = i3GEO.desenho.layergrafico.getSource().getFeatures(); | ||
| 699 | + n = features.length; | ||
| 700 | + for (i = 0; i < n; i++) { | ||
| 701 | + f = features[i]; | ||
| 702 | + if (f.getProperties().origem === "medeDistancia" || f.getProperties().origem === "medeDistanciaExcluir") { | ||
| 703 | + remover.push(f); | ||
| 704 | + } | ||
| 662 | } | 705 | } |
| 663 | - if (f && f.length > 0) { | 706 | + if (remover.length > 0) { |
| 664 | temp = window.confirm($trad("x94")); | 707 | temp = window.confirm($trad("x94")); |
| 665 | if (temp) { | 708 | if (temp) { |
| 666 | - i3GEO.desenho.layergrafico.destroyFeatures(f); | 709 | + for (r in remover) { |
| 710 | + i3GEO.desenho.layergrafico.getSource().removeFeature(remover[r]); | ||
| 711 | + } | ||
| 667 | } | 712 | } |
| 668 | } | 713 | } |
| 669 | - f = i3GEO.desenho.layergrafico.getFeaturesByAttribute("origem", "medeDistanciaExcluir"); | ||
| 670 | - if (f && f.length > 0) { | ||
| 671 | - i3GEO.desenho.layergrafico.destroyFeatures(f); | ||
| 672 | - } | ||
| 673 | }, | 714 | }, |
| 674 | /** | 715 | /** |
| 675 | * Mostra a totalizacao das linhas ja digitalizadas | 716 | * Mostra a totalizacao das linhas ja digitalizadas |
| @@ -678,8 +719,19 @@ i3GEO.analise = | @@ -678,8 +719,19 @@ i3GEO.analise = | ||
| 678 | var mostra = $i("mostradistancia_calculo"), texto; | 719 | var mostra = $i("mostradistancia_calculo"), texto; |
| 679 | if (mostra) { | 720 | if (mostra) { |
| 680 | texto = | 721 | texto = |
| 681 | - "<b>" + $trad("x96") + ":</b> " + total.toFixed(3) + " km" + "<br><b>" + $trad("x96") + ":</b> " | ||
| 682 | - + (total * 1000).toFixed(2) + " m" + "<br>" + $trad("x25") + ": " + i3GEO.calculo.metododistancia; | 722 | + "<b>" + $trad("x96") |
| 723 | + + ":</b> " | ||
| 724 | + + total.toFixed(3) | ||
| 725 | + + " km" | ||
| 726 | + + "<br><b>" | ||
| 727 | + + $trad("x96") | ||
| 728 | + + ":</b> " | ||
| 729 | + + (total * 1000).toFixed(2) | ||
| 730 | + + " m" | ||
| 731 | + + "<br>" | ||
| 732 | + + $trad("x25") | ||
| 733 | + + ": " | ||
| 734 | + + i3GEO.calculo.metododistancia; | ||
| 683 | mostra.innerHTML = texto; | 735 | mostra.innerHTML = texto; |
| 684 | } | 736 | } |
| 685 | }, | 737 | }, |
| @@ -690,8 +742,19 @@ i3GEO.analise = | @@ -690,8 +742,19 @@ i3GEO.analise = | ||
| 690 | var mostra = $i("mostradistancia_calculo_movel"), texto; | 742 | var mostra = $i("mostradistancia_calculo_movel"), texto; |
| 691 | if (mostra) { | 743 | if (mostra) { |
| 692 | texto = | 744 | texto = |
| 693 | - "<b>" + $trad("x95") + ":</b> " + trecho.toFixed(3) + " km" + "<br><b>" + $trad("x97") + ":</b> " | ||
| 694 | - + (parcial + trecho).toFixed(3) + " km" + "<br><b>" + $trad("x23") + " (DMS):</b> " + direcao; | 745 | + "<b>" + $trad("x95") |
| 746 | + + ":</b> " | ||
| 747 | + + trecho.toFixed(3) | ||
| 748 | + + " km" | ||
| 749 | + + "<br><b>" | ||
| 750 | + + $trad("x97") | ||
| 751 | + + ":</b> " | ||
| 752 | + + (parcial + trecho).toFixed(3) | ||
| 753 | + + " km" | ||
| 754 | + + "<br><b>" | ||
| 755 | + + $trad("x23") | ||
| 756 | + + " (DMS):</b> " | ||
| 757 | + + direcao; | ||
| 695 | mostra.innerHTML = texto; | 758 | mostra.innerHTML = texto; |
| 696 | } | 759 | } |
| 697 | } | 760 | } |
| @@ -885,8 +948,19 @@ i3GEO.analise = | @@ -885,8 +948,19 @@ i3GEO.analise = | ||
| 885 | var mostra = $i("mostradistancia_calculo"), texto; | 948 | var mostra = $i("mostradistancia_calculo"), texto; |
| 886 | if (mostra) { | 949 | if (mostra) { |
| 887 | texto = | 950 | texto = |
| 888 | - "<b>" + $trad("x96") + ":</b> " + total.toFixed(3) + " km" + "<br><b>" + $trad("x96") + ":</b> " | ||
| 889 | - + (total * 1000).toFixed(2) + " m" + "<br>" + $trad("x25") + ": " + i3GEO.calculo.metododistancia; | 951 | + "<b>" + $trad("x96") |
| 952 | + + ":</b> " | ||
| 953 | + + total.toFixed(3) | ||
| 954 | + + " km" | ||
| 955 | + + "<br><b>" | ||
| 956 | + + $trad("x96") | ||
| 957 | + + ":</b> " | ||
| 958 | + + (total * 1000).toFixed(2) | ||
| 959 | + + " m" | ||
| 960 | + + "<br>" | ||
| 961 | + + $trad("x25") | ||
| 962 | + + ": " | ||
| 963 | + + i3GEO.calculo.metododistancia; | ||
| 890 | mostra.innerHTML = texto; | 964 | mostra.innerHTML = texto; |
| 891 | } | 965 | } |
| 892 | }, | 966 | }, |
| @@ -897,8 +971,19 @@ i3GEO.analise = | @@ -897,8 +971,19 @@ i3GEO.analise = | ||
| 897 | var mostra = $i("mostradistancia_calculo_movel"), texto; | 971 | var mostra = $i("mostradistancia_calculo_movel"), texto; |
| 898 | if (mostra) { | 972 | if (mostra) { |
| 899 | texto = | 973 | texto = |
| 900 | - "<b>" + $trad("x95") + ":</b> " + trecho.toFixed(3) + " km" + "<br><b>" + $trad("x97") + ":</b> " | ||
| 901 | - + (parcial + trecho).toFixed(3) + " km" + "<br><b>" + $trad("x23") + " (DMS):</b> " + direcao; | 974 | + "<b>" + $trad("x95") |
| 975 | + + ":</b> " | ||
| 976 | + + trecho.toFixed(3) | ||
| 977 | + + " km" | ||
| 978 | + + "<br><b>" | ||
| 979 | + + $trad("x97") | ||
| 980 | + + ":</b> " | ||
| 981 | + + (parcial + trecho).toFixed(3) | ||
| 982 | + + " km" | ||
| 983 | + + "<br><b>" | ||
| 984 | + + $trad("x23") | ||
| 985 | + + " (DMS):</b> " | ||
| 986 | + + direcao; | ||
| 902 | mostra.innerHTML = texto; | 987 | mostra.innerHTML = texto; |
| 903 | } | 988 | } |
| 904 | } | 989 | } |
| @@ -998,9 +1083,15 @@ i3GEO.analise = | @@ -998,9 +1083,15 @@ i3GEO.analise = | ||
| 998 | if (temp) { | 1083 | if (temp) { |
| 999 | i3GEO.desenho.googleearth.removePlacemark("divGeometriasTemp"); | 1084 | i3GEO.desenho.googleearth.removePlacemark("divGeometriasTemp"); |
| 1000 | } | 1085 | } |
| 1001 | - i3GEO.eventos.removeEventos("MOUSECLIQUE",["i3GEO.analise.medeDistancia.googleearth.clique()"]); | ||
| 1002 | - i3GEO.eventos.removeEventos("MOUSEMOVE",["i3GEO.analise.medeDistancia.movimento.googleearth()"]); | ||
| 1003 | - i3GEO.eventos.removeEventos("NAVEGAMAPA",["i3GEO.analise.medeDistancia.fechaJanela()"]); | 1086 | + i3GEO.eventos.removeEventos("MOUSECLIQUE", [ |
| 1087 | + "i3GEO.analise.medeDistancia.googleearth.clique()" | ||
| 1088 | + ]); | ||
| 1089 | + i3GEO.eventos.removeEventos("MOUSEMOVE", [ | ||
| 1090 | + "i3GEO.analise.medeDistancia.movimento.googleearth()" | ||
| 1091 | + ]); | ||
| 1092 | + i3GEO.eventos.removeEventos("NAVEGAMAPA", [ | ||
| 1093 | + "i3GEO.analise.medeDistancia.fechaJanela()" | ||
| 1094 | + ]); | ||
| 1004 | }, | 1095 | }, |
| 1005 | /** | 1096 | /** |
| 1006 | * Mostra a totalizacao das linhas ja digitalizadas | 1097 | * Mostra a totalizacao das linhas ja digitalizadas |
| @@ -1009,8 +1100,19 @@ i3GEO.analise = | @@ -1009,8 +1100,19 @@ i3GEO.analise = | ||
| 1009 | var mostra = $i("mostradistancia_calculo"), texto; | 1100 | var mostra = $i("mostradistancia_calculo"), texto; |
| 1010 | if (mostra) { | 1101 | if (mostra) { |
| 1011 | texto = | 1102 | texto = |
| 1012 | - "<b>" + $trad("x96") + ":</b> " + total.toFixed(3) + " km" + "<br><b>" + $trad("x96") + ":</b> " | ||
| 1013 | - + (total * 1000).toFixed(2) + " m" + "<br>" + $trad("x25") + ": " + i3GEO.calculo.metododistancia; | 1103 | + "<b>" + $trad("x96") |
| 1104 | + + ":</b> " | ||
| 1105 | + + total.toFixed(3) | ||
| 1106 | + + " km" | ||
| 1107 | + + "<br><b>" | ||
| 1108 | + + $trad("x96") | ||
| 1109 | + + ":</b> " | ||
| 1110 | + + (total * 1000).toFixed(2) | ||
| 1111 | + + " m" | ||
| 1112 | + + "<br>" | ||
| 1113 | + + $trad("x25") | ||
| 1114 | + + ": " | ||
| 1115 | + + i3GEO.calculo.metododistancia; | ||
| 1014 | mostra.innerHTML = texto; | 1116 | mostra.innerHTML = texto; |
| 1015 | } | 1117 | } |
| 1016 | }, | 1118 | }, |
| @@ -1021,8 +1123,19 @@ i3GEO.analise = | @@ -1021,8 +1123,19 @@ i3GEO.analise = | ||
| 1021 | var mostra = $i("mostradistancia_calculo_movel"), texto; | 1123 | var mostra = $i("mostradistancia_calculo_movel"), texto; |
| 1022 | if (mostra) { | 1124 | if (mostra) { |
| 1023 | texto = | 1125 | texto = |
| 1024 | - "<b>" + $trad("x95") + ":</b> " + trecho.toFixed(3) + " km" + "<br><b>" + $trad("x97") + ":</b> " | ||
| 1025 | - + (parcial + trecho).toFixed(3) + " km" + "<br><b>" + $trad("x23") + " (DMS):</b> " + direcao; | 1126 | + "<b>" + $trad("x95") |
| 1127 | + + ":</b> " | ||
| 1128 | + + trecho.toFixed(3) | ||
| 1129 | + + " km" | ||
| 1130 | + + "<br><b>" | ||
| 1131 | + + $trad("x97") | ||
| 1132 | + + ":</b> " | ||
| 1133 | + + (parcial + trecho).toFixed(3) | ||
| 1134 | + + " km" | ||
| 1135 | + + "<br><b>" | ||
| 1136 | + + $trad("x23") | ||
| 1137 | + + " (DMS):</b> " | ||
| 1138 | + + direcao; | ||
| 1026 | mostra.innerHTML = texto; | 1139 | mostra.innerHTML = texto; |
| 1027 | } | 1140 | } |
| 1028 | } | 1141 | } |
| @@ -1030,14 +1143,14 @@ i3GEO.analise = | @@ -1030,14 +1143,14 @@ i3GEO.analise = | ||
| 1030 | }, | 1143 | }, |
| 1031 | /** | 1144 | /** |
| 1032 | * Section: medeArea | 1145 | * Section: medeArea |
| 1033 | - * | 1146 | + * |
| 1034 | * Ativa e controla a opão de medição de área. | 1147 | * Ativa e controla a opão de medição de área. |
| 1035 | - * | 1148 | + * |
| 1036 | * A medida é feita quando o usuário clica no mapa com esta opção ativa | 1149 | * A medida é feita quando o usuário clica no mapa com esta opção ativa |
| 1037 | - * | 1150 | + * |
| 1038 | * Quando o botão é acionado, abre-se a janela que mostra o resultado da medida, o ícone que segue o mouse | 1151 | * Quando o botão é acionado, abre-se a janela que mostra o resultado da medida, o ícone que segue o mouse |
| 1039 | * é alterado. | 1152 | * é alterado. |
| 1040 | - * | 1153 | + * |
| 1041 | * Para mostrar o resultado do cálculo, é incluido um div específico. | 1154 | * Para mostrar o resultado do cálculo, é incluido um div específico. |
| 1042 | */ | 1155 | */ |
| 1043 | medeArea : { | 1156 | medeArea : { |
| @@ -1055,10 +1168,10 @@ i3GEO.analise = | @@ -1055,10 +1168,10 @@ i3GEO.analise = | ||
| 1055 | ultimaMedida : "", | 1168 | ultimaMedida : "", |
| 1056 | /** | 1169 | /** |
| 1057 | * Function: inicia | 1170 | * Function: inicia |
| 1058 | - * | 1171 | + * |
| 1059 | * Inicia a operação de medição, abrindo a janela de resultados e criando os componentes | 1172 | * Inicia a operação de medição, abrindo a janela de resultados e criando os componentes |
| 1060 | * necessários | 1173 | * necessários |
| 1061 | - * | 1174 | + * |
| 1062 | * São registrados os eventos de clique sobre o mapa e fechamento da janela de resultados | 1175 | * São registrados os eventos de clique sobre o mapa e fechamento da janela de resultados |
| 1063 | */ | 1176 | */ |
| 1064 | inicia : function() { | 1177 | inicia : function() { |
| @@ -1075,14 +1188,17 @@ i3GEO.analise = | @@ -1075,14 +1188,17 @@ i3GEO.analise = | ||
| 1075 | novoel = document.createElement("div"); | 1188 | novoel = document.createElement("div"); |
| 1076 | novoel.id = "mostraarea"; | 1189 | novoel.id = "mostraarea"; |
| 1077 | ins = | 1190 | ins = |
| 1078 | - '<div class="hd" ><div class="i3GeoTituloJanela">'+$trad("areaAprox")+'<a class=ajuda_usuario target=_blank href="' + i3GEO.configura.locaplic | 1191 | + '<div class="hd" ><div class="i3GeoTituloJanela">' + $trad("areaAprox") |
| 1192 | + + '<a class=ajuda_usuario target=_blank href="' | ||
| 1193 | + + i3GEO.configura.locaplic | ||
| 1079 | + '"/ajuda_usuario.php?idcategoria=6&idajuda=51" ><b> </b></a></div></div>' | 1194 | + '"/ajuda_usuario.php?idcategoria=6&idajuda=51" ><b> </b></a></div></div>' |
| 1080 | + '<div class="bd" style="text-align:left;padding:3px;font-size:10px" >' | 1195 | + '<div class="bd" style="text-align:left;padding:3px;font-size:10px" >' |
| 1081 | // + '<label class=paragrafo style="float:left;top:5px;position:relative;">Estilo:</label>' | 1196 | // + '<label class=paragrafo style="float:left;top:5px;position:relative;">Estilo:</label>' |
| 1082 | // + '<div class=styled-select style="width:70px;">' + i3GEO.desenho.caixaEstilos() + '</div><br>' | 1197 | // + '<div class=styled-select style="width:70px;">' + i3GEO.desenho.caixaEstilos() + '</div><br>' |
| 1083 | + '<div style="text-align:left;padding:3px;font-size:10px" id="mostraarea_calculo" ></div>' | 1198 | + '<div style="text-align:left;padding:3px;font-size:10px" id="mostraarea_calculo" ></div>' |
| 1084 | + '<div style="text-align:left;padding:3px;font-size:10px" id="mostraarea_calculo_parcial" ></div>' | 1199 | + '<div style="text-align:left;padding:3px;font-size:10px" id="mostraarea_calculo_parcial" ></div>' |
| 1085 | - + '<br><input id=i3GEObotaoAreaWkt size="22" type="button" value="incorporar">' + '</div>'; | 1200 | + + '<br><input id=i3GEObotaoAreaWkt size="22" type="button" value="incorporar">' |
| 1201 | + + '</div>'; | ||
| 1086 | novoel.innerHTML = ins; | 1202 | novoel.innerHTML = ins; |
| 1087 | novoel.style.borderColor = "gray"; | 1203 | novoel.style.borderColor = "gray"; |
| 1088 | document.body.appendChild(novoel); | 1204 | document.body.appendChild(novoel); |
| @@ -1332,9 +1448,24 @@ i3GEO.analise = | @@ -1332,9 +1448,24 @@ i3GEO.analise = | ||
| 1332 | var mostra = $i("mostraarea_calculo"), texto; | 1448 | var mostra = $i("mostraarea_calculo"), texto; |
| 1333 | if (mostra) { | 1449 | if (mostra) { |
| 1334 | texto = | 1450 | texto = |
| 1335 | - "<b>" + $trad("d21at") + ":</b> " + (area / 1000000).toFixed(3) + " km2" + "<br><b>" + $trad("d21at") | ||
| 1336 | - + ":</b> " + (area / 10000).toFixed(2) + " ha" + "<br><b>" + $trad("x98") + ":</b> " + (per).toFixed(2) | ||
| 1337 | - + " km" + "<br>" + $trad("x25") + ": " + i3GEO.calculo.metododistancia; | 1451 | + "<b>" + $trad("d21at") |
| 1452 | + + ":</b> " | ||
| 1453 | + + (area / 1000000).toFixed(3) | ||
| 1454 | + + " km2" | ||
| 1455 | + + "<br><b>" | ||
| 1456 | + + $trad("d21at") | ||
| 1457 | + + ":</b> " | ||
| 1458 | + + (area / 10000).toFixed(2) | ||
| 1459 | + + " ha" | ||
| 1460 | + + "<br><b>" | ||
| 1461 | + + $trad("x98") | ||
| 1462 | + + ":</b> " | ||
| 1463 | + + (per).toFixed(2) | ||
| 1464 | + + " km" | ||
| 1465 | + + "<br>" | ||
| 1466 | + + $trad("x25") | ||
| 1467 | + + ": " | ||
| 1468 | + + i3GEO.calculo.metododistancia; | ||
| 1338 | mostra.innerHTML = texto; | 1469 | mostra.innerHTML = texto; |
| 1339 | i3GEO.analise.medeArea.ultimaMedida = (area / 1000000).toFixed(3) + " km2"; | 1470 | i3GEO.analise.medeArea.ultimaMedida = (area / 1000000).toFixed(3) + " km2"; |
| 1340 | } | 1471 | } |
| @@ -1346,10 +1477,29 @@ i3GEO.analise = | @@ -1346,10 +1477,29 @@ i3GEO.analise = | ||
| 1346 | var mostra = $i("mostraarea_calculo_parcial"), texto; | 1477 | var mostra = $i("mostraarea_calculo_parcial"), texto; |
| 1347 | if (mostra) { | 1478 | if (mostra) { |
| 1348 | texto = | 1479 | texto = |
| 1349 | - "<b>" + $trad("d21at") + ":</b> " + (area / 1000000).toFixed(3) + " km2" + "<br><b>" + $trad("d21at") | ||
| 1350 | - + ":</b> " + (area / 10000).toFixed(2) + " ha" + "<br><b>" + $trad("x95") + ":</b> " + trecho.toFixed(3) | ||
| 1351 | - + " km" + "<br><b>" + $trad("x98") + ":</b> " + (per).toFixed(3) + " km" + "<br><b>" + $trad("x23") | ||
| 1352 | - + " (DMS):</b> " + direcao; | 1480 | + "<b>" + $trad("d21at") |
| 1481 | + + ":</b> " | ||
| 1482 | + + (area / 1000000).toFixed(3) | ||
| 1483 | + + " km2" | ||
| 1484 | + + "<br><b>" | ||
| 1485 | + + $trad("d21at") | ||
| 1486 | + + ":</b> " | ||
| 1487 | + + (area / 10000).toFixed(2) | ||
| 1488 | + + " ha" | ||
| 1489 | + + "<br><b>" | ||
| 1490 | + + $trad("x95") | ||
| 1491 | + + ":</b> " | ||
| 1492 | + + trecho.toFixed(3) | ||
| 1493 | + + " km" | ||
| 1494 | + + "<br><b>" | ||
| 1495 | + + $trad("x98") | ||
| 1496 | + + ":</b> " | ||
| 1497 | + + (per).toFixed(3) | ||
| 1498 | + + " km" | ||
| 1499 | + + "<br><b>" | ||
| 1500 | + + $trad("x23") | ||
| 1501 | + + " (DMS):</b> " | ||
| 1502 | + + direcao; | ||
| 1353 | mostra.innerHTML = texto; | 1503 | mostra.innerHTML = texto; |
| 1354 | } | 1504 | } |
| 1355 | } | 1505 | } |
| @@ -1523,9 +1673,24 @@ i3GEO.analise = | @@ -1523,9 +1673,24 @@ i3GEO.analise = | ||
| 1523 | var mostra = $i("mostraarea_calculo"), texto; | 1673 | var mostra = $i("mostraarea_calculo"), texto; |
| 1524 | if (mostra) { | 1674 | if (mostra) { |
| 1525 | texto = | 1675 | texto = |
| 1526 | - "<b>" + $trad("d21at") + ":</b> " + (area / 1000000).toFixed(3) + " km2" + "<br><b>" + $trad("d21at") | ||
| 1527 | - + ":</b> " + (area / 10000).toFixed(2) + " ha" + "<br><b>" + $trad("x98") + ":</b> " + (per).toFixed(2) | ||
| 1528 | - + " km" + "<br>" + $trad("x25") + ": " + i3GEO.calculo.metododistancia; | 1676 | + "<b>" + $trad("d21at") |
| 1677 | + + ":</b> " | ||
| 1678 | + + (area / 1000000).toFixed(3) | ||
| 1679 | + + " km2" | ||
| 1680 | + + "<br><b>" | ||
| 1681 | + + $trad("d21at") | ||
| 1682 | + + ":</b> " | ||
| 1683 | + + (area / 10000).toFixed(2) | ||
| 1684 | + + " ha" | ||
| 1685 | + + "<br><b>" | ||
| 1686 | + + $trad("x98") | ||
| 1687 | + + ":</b> " | ||
| 1688 | + + (per).toFixed(2) | ||
| 1689 | + + " km" | ||
| 1690 | + + "<br>" | ||
| 1691 | + + $trad("x25") | ||
| 1692 | + + ": " | ||
| 1693 | + + i3GEO.calculo.metododistancia; | ||
| 1529 | mostra.innerHTML = texto; | 1694 | mostra.innerHTML = texto; |
| 1530 | i3GEO.analise.medeArea.ultimaMedida = (area / 1000000).toFixed(3) + " km2"; | 1695 | i3GEO.analise.medeArea.ultimaMedida = (area / 1000000).toFixed(3) + " km2"; |
| 1531 | } | 1696 | } |
| @@ -1537,10 +1702,29 @@ i3GEO.analise = | @@ -1537,10 +1702,29 @@ i3GEO.analise = | ||
| 1537 | var mostra = $i("mostraarea_calculo_parcial"), texto; | 1702 | var mostra = $i("mostraarea_calculo_parcial"), texto; |
| 1538 | if (mostra) { | 1703 | if (mostra) { |
| 1539 | texto = | 1704 | texto = |
| 1540 | - "<b>" + $trad("d21at") + ":</b> " + (area / 1000000).toFixed(3) + " km2" + "<br><b>" + $trad("d21at") | ||
| 1541 | - + ":</b> " + (area / 10000).toFixed(2) + " ha" + "<br><b>" + $trad("x95") + ":</b> " + trecho.toFixed(3) | ||
| 1542 | - + " km" + "<br><b>" + $trad("x98") + ":</b> " + (per).toFixed(3) + " km" + "<br><b>" + $trad("x23") | ||
| 1543 | - + " (DMS):</b> " + direcao; | 1705 | + "<b>" + $trad("d21at") |
| 1706 | + + ":</b> " | ||
| 1707 | + + (area / 1000000).toFixed(3) | ||
| 1708 | + + " km2" | ||
| 1709 | + + "<br><b>" | ||
| 1710 | + + $trad("d21at") | ||
| 1711 | + + ":</b> " | ||
| 1712 | + + (area / 10000).toFixed(2) | ||
| 1713 | + + " ha" | ||
| 1714 | + + "<br><b>" | ||
| 1715 | + + $trad("x95") | ||
| 1716 | + + ":</b> " | ||
| 1717 | + + trecho.toFixed(3) | ||
| 1718 | + + " km" | ||
| 1719 | + + "<br><b>" | ||
| 1720 | + + $trad("x98") | ||
| 1721 | + + ":</b> " | ||
| 1722 | + + (per).toFixed(3) | ||
| 1723 | + + " km" | ||
| 1724 | + + "<br><b>" | ||
| 1725 | + + $trad("x23") | ||
| 1726 | + + " (DMS):</b> " | ||
| 1727 | + + direcao; | ||
| 1544 | mostra.innerHTML = texto; | 1728 | mostra.innerHTML = texto; |
| 1545 | } | 1729 | } |
| 1546 | } | 1730 | } |