Commit 27a438df07ac690dadcd622ca4ce6e35c4c94ad5
1 parent
824c374e
Exists in
master
and in
7 other branches
Corrige as operações de seleção e obtenção de atributos quando é utilizada a int…
…erface googlemaps e temas em projeções que não geográfica
Showing
7 changed files
with
67 additions
and
128 deletions
Show diff stats
classesphp/classe_atributos.php
| @@ -69,10 +69,18 @@ class Atributos | @@ -69,10 +69,18 @@ class Atributos | ||
| 69 | Nome do arquivo de seleção (.qy) | 69 | Nome do arquivo de seleção (.qy) |
| 70 | */ | 70 | */ |
| 71 | public $qyfile; | 71 | public $qyfile; |
| 72 | + /* | ||
| 73 | + Variavel: $projO | ||
| 74 | + | ||
| 75 | + Objeto projection original do mapa. Obtido apenas na interface Googlemaps | ||
| 76 | + */ | ||
| 77 | + public $projO; | ||
| 72 | /* | 78 | /* |
| 73 | Function: __construct | 79 | Function: __construct |
| 74 | 80 | ||
| 75 | -Cria um objeto Atributos | 81 | +Cria um objeto Atributos. |
| 82 | + | ||
| 83 | +O tipo de interface usada pelo mapa é obtido do metadata "interface". Se for a interface Googlemaps, é feita a alteração temporária da projeção do mapa. | ||
| 76 | 84 | ||
| 77 | parameters: | 85 | parameters: |
| 78 | 86 | ||
| @@ -100,8 +108,6 @@ $ext - (opcional) extensão geográfica que será aplicada ao mapa | @@ -100,8 +108,6 @@ $ext - (opcional) extensão geográfica que será aplicada ao mapa | ||
| 100 | if($tema != "" && @$this->mapa->getlayerbyname($tema)) | 108 | if($tema != "" && @$this->mapa->getlayerbyname($tema)) |
| 101 | { | 109 | { |
| 102 | $this->layer = $this->mapa->getlayerbyname($tema); | 110 | $this->layer = $this->mapa->getlayerbyname($tema); |
| 103 | - //if($this->layer->getProjection() == "" ) | ||
| 104 | - //{$this->layer->setProjection("init=epsg:4291");} | ||
| 105 | $this->nome = $tema; | 111 | $this->nome = $tema; |
| 106 | } | 112 | } |
| 107 | if($ext && $ext != ""){ | 113 | if($ext && $ext != ""){ |
| @@ -109,6 +115,10 @@ $ext - (opcional) extensão geográfica que será aplicada ao mapa | @@ -109,6 +115,10 @@ $ext - (opcional) extensão geográfica que será aplicada ao mapa | ||
| 109 | $extatual = $this->mapa->extent; | 115 | $extatual = $this->mapa->extent; |
| 110 | $extatual->setextent((min($e[0],$e[2])),(min($e[1],$e[3])),(max($e[0],$e[2])),(max($e[1],$e[3]))); | 116 | $extatual->setextent((min($e[0],$e[2])),(min($e[1],$e[3])),(max($e[0],$e[2])),(max($e[1],$e[3]))); |
| 111 | } | 117 | } |
| 118 | + if($this->mapa->getmetadata("interface") == "googlemaps"){ | ||
| 119 | + $this->projO = $this->mapa->getProjection(); | ||
| 120 | + $this->mapa->setProjection("init=epsg:4291"); | ||
| 121 | + } | ||
| 112 | } | 122 | } |
| 113 | } | 123 | } |
| 114 | /* | 124 | /* |
| @@ -120,7 +130,9 @@ Salva o mapfile atual | @@ -120,7 +130,9 @@ Salva o mapfile atual | ||
| 120 | function salva() | 130 | function salva() |
| 121 | { | 131 | { |
| 122 | if (connection_aborted()){exit();} | 132 | if (connection_aborted()){exit();} |
| 123 | - $this->mapa->save($this->arquivo); | 133 | + if($this->mapa->getmetadata("interface") == "googlemaps") |
| 134 | + {$this->mapa->setProjection($this->projO);} | ||
| 135 | + $this->mapa->save($this->arquivo); | ||
| 124 | } | 136 | } |
| 125 | 137 | ||
| 126 | /* | 138 | /* |
| @@ -764,14 +776,14 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado | @@ -764,14 +776,14 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado | ||
| 764 | } | 776 | } |
| 765 | foreach ($listatemas as $tema) | 777 | foreach ($listatemas as $tema) |
| 766 | { | 778 | { |
| 767 | - $resultados[$tema] = $this->identificaQBP2($tema,$xyarray[0],$xyarray[1],$this->arquivo,$resolucao,"","",false,$ext); | 779 | + $resultados[$tema] = $this->identificaQBP2($tema,$xyarray[0],$xyarray[1],"",$resolucao,"","",false,$ext); |
| 768 | } | 780 | } |
| 769 | } | 781 | } |
| 770 | //pesquisa todos os temas acrescentados no mapa | 782 | //pesquisa todos os temas acrescentados no mapa |
| 771 | if ($opcao == "todos") | 783 | if ($opcao == "todos") |
| 772 | { | 784 | { |
| 773 | foreach ($listatemas as $tema) | 785 | foreach ($listatemas as $tema) |
| 774 | - {$resultados[$tema] = $this->identificaQBP2($tema,$xyarray[0],$xyarray[1],$this->arquivo,$resolucao,"","",false,$ext);} | 786 | + {$resultados[$tema] = $this->identificaQBP2($tema,$xyarray[0],$xyarray[1],"",$resolucao,"","",false,$ext);} |
| 775 | } | 787 | } |
| 776 | //pesquisa apenas os temas visiveis | 788 | //pesquisa apenas os temas visiveis |
| 777 | if ($opcao == "ligados" || $opcao == "lista") | 789 | if ($opcao == "ligados" || $opcao == "lista") |
| @@ -790,7 +802,7 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado | @@ -790,7 +802,7 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado | ||
| 790 | foreach ($listatemas as $tema) | 802 | foreach ($listatemas as $tema) |
| 791 | { | 803 | { |
| 792 | $l = $this->mapa->getlayerbyname($tema); | 804 | $l = $this->mapa->getlayerbyname($tema); |
| 793 | - $resultados[$tema] = $this->identificaQBP2($tema,$xyarray[0],$xyarray[1],$this->arquivo,$resolucao,"","",false,$ext); | 805 | + $resultados[$tema] = $this->identificaQBP2($tema,$xyarray[0],$xyarray[1],"",$resolucao,"","",false,$ext); |
| 794 | } | 806 | } |
| 795 | //var_dump($resultados); | 807 | //var_dump($resultados); |
| 796 | } | 808 | } |
| @@ -806,7 +818,7 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado | @@ -806,7 +818,7 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado | ||
| 806 | { | 818 | { |
| 807 | if ($tl->status == MS_DEFAULT || $listaDeTemas != "") | 819 | if ($tl->status == MS_DEFAULT || $listaDeTemas != "") |
| 808 | { | 820 | { |
| 809 | - $resultados[$tema] = array("tips"=>$itemtip,"dados"=>$this->identificaQBP2($tema,$xyarray[0],$xyarray[1],$this->arquivo,$resolucao,$itemtip,"",true,$ext)); | 821 | + $resultados[$tema] = array("tips"=>$itemtip,"dados"=>$this->identificaQBP2($tema,$xyarray[0],$xyarray[1],"",$resolucao,$itemtip,"",true,$ext)); |
| 810 | $ltemp[] = $tema; | 822 | $ltemp[] = $tema; |
| 811 | } | 823 | } |
| 812 | } | 824 | } |
| @@ -1144,6 +1156,7 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado | @@ -1144,6 +1156,7 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado | ||
| 1144 | $layer->set("template","none.htm"); | 1156 | $layer->set("template","none.htm"); |
| 1145 | $pt = ms_newPointObj(); | 1157 | $pt = ms_newPointObj(); |
| 1146 | $pt->setXY($x, $y); | 1158 | $pt->setXY($x, $y); |
| 1159 | + | ||
| 1147 | // | 1160 | // |
| 1148 | //operação especial para o caso de wms | 1161 | //operação especial para o caso de wms |
| 1149 | // | 1162 | // |
classesphp/classe_selecao.php
| @@ -11,7 +11,7 @@ Licenca: | @@ -11,7 +11,7 @@ Licenca: | ||
| 11 | GPL2 | 11 | GPL2 |
| 12 | 12 | ||
| 13 | 13 | ||
| 14 | -I3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet | 14 | +i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet |
| 15 | 15 | ||
| 16 | Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil | 16 | Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil |
| 17 | Desenvolvedor: Edmar Moretti edmar.moretti@mma.gov.br | 17 | Desenvolvedor: Edmar Moretti edmar.moretti@mma.gov.br |
| @@ -68,11 +68,19 @@ class Selecao | @@ -68,11 +68,19 @@ class Selecao | ||
| 68 | Nome do arquivo de seleção (.qy) | 68 | Nome do arquivo de seleção (.qy) |
| 69 | */ | 69 | */ |
| 70 | public $qyfile; | 70 | public $qyfile; |
| 71 | + /* | ||
| 72 | + Variavel: $projO | ||
| 73 | + | ||
| 74 | + Objeto projection original do mapa. Obtido apenas na interface Googlemaps | ||
| 75 | + */ | ||
| 76 | + public $projO; | ||
| 71 | /* | 77 | /* |
| 72 | Function: __construct | 78 | Function: __construct |
| 73 | 79 | ||
| 74 | Cria um objeto Selecao | 80 | Cria um objeto Selecao |
| 75 | 81 | ||
| 82 | +O tipo de interface usada pelo mapa é obtido do metadata "interface". Se for a interface Googlemaps, é feita a alteração temporária da projeção do mapa. | ||
| 83 | + | ||
| 76 | parameters: | 84 | parameters: |
| 77 | 85 | ||
| 78 | $map_file - Endereço do mapfile no servidor. | 86 | $map_file - Endereço do mapfile no servidor. |
| @@ -105,6 +113,10 @@ $ext - extensão geográfica do mapa | @@ -105,6 +113,10 @@ $ext - extensão geográfica do mapa | ||
| 105 | $extatual = $this->mapa->extent; | 113 | $extatual = $this->mapa->extent; |
| 106 | $extatual->setextent((min($e[0],$e[2])),(min($e[1],$e[3])),(max($e[0],$e[2])),(max($e[1],$e[3]))); | 114 | $extatual->setextent((min($e[0],$e[2])),(min($e[1],$e[3])),(max($e[0],$e[2])),(max($e[1],$e[3]))); |
| 107 | } | 115 | } |
| 116 | + if($this->mapa->getmetadata("interface") == "googlemaps"){ | ||
| 117 | + $this->projO = $this->mapa->getProjection(); | ||
| 118 | + $this->mapa->setProjection("init=epsg:4291"); | ||
| 119 | + } | ||
| 108 | } | 120 | } |
| 109 | /* | 121 | /* |
| 110 | function: salva | 122 | function: salva |
| @@ -114,6 +126,8 @@ Salva o mapfile atual | @@ -114,6 +126,8 @@ Salva o mapfile atual | ||
| 114 | function salva() | 126 | function salva() |
| 115 | { | 127 | { |
| 116 | if (connection_aborted()){exit();} | 128 | if (connection_aborted()){exit();} |
| 129 | + if($this->mapa->getmetadata("interface") == "googlemaps") | ||
| 130 | + {$this->mapa->setProjection($this->projO);} | ||
| 117 | $this->mapa->save($this->arquivo); | 131 | $this->mapa->save($this->arquivo); |
| 118 | } | 132 | } |
| 119 | /* | 133 | /* |
classesphp/classe_temas.php
| @@ -378,6 +378,10 @@ Calcula a extensão geográfica de um tema e ajusta o mapa para essa extensão. | @@ -378,6 +378,10 @@ Calcula a extensão geográfica de um tema e ajusta o mapa para essa extensão. | ||
| 378 | function zoomTema() | 378 | function zoomTema() |
| 379 | { | 379 | { |
| 380 | if(!$this->layer){return "erro";} | 380 | if(!$this->layer){return "erro";} |
| 381 | + if($this->mapa->getmetadata("interface") == "googlemaps"){ | ||
| 382 | + $projO = $this->mapa->getProjection(); | ||
| 383 | + $this->mapa->setProjection("init=epsg:4291"); | ||
| 384 | + } | ||
| 381 | $prjMapa = ""; | 385 | $prjMapa = ""; |
| 382 | $prjTema = ""; | 386 | $prjTema = ""; |
| 383 | if($this->layer->type != MS_LAYER_RASTER) | 387 | if($this->layer->type != MS_LAYER_RASTER) |
| @@ -411,6 +415,8 @@ Calcula a extensão geográfica de um tema e ajusta o mapa para essa extensão. | @@ -411,6 +415,8 @@ Calcula a extensão geográfica de um tema e ajusta o mapa para essa extensão. | ||
| 411 | $extatual->setextent($ret[0],$ret[1],$ret[2],$ret[3]); | 415 | $extatual->setextent($ret[0],$ret[1],$ret[2],$ret[3]); |
| 412 | //echo "oi";exit; | 416 | //echo "oi";exit; |
| 413 | } | 417 | } |
| 418 | + if($this->mapa->getmetadata("interface") == "googlemaps") | ||
| 419 | + {$this->mapa->setProjection($projO);} | ||
| 414 | return("ok"); | 420 | return("ok"); |
| 415 | } | 421 | } |
| 416 | /* | 422 | /* |
| @@ -987,9 +993,13 @@ Calcula a extensão geográfica dos elementos selecionados de um tema e ajusta o m | @@ -987,9 +993,13 @@ Calcula a extensão geográfica dos elementos selecionados de um tema e ajusta o m | ||
| 987 | function zoomSel() | 993 | function zoomSel() |
| 988 | { | 994 | { |
| 989 | if(!$this->layer){return "erro";} | 995 | if(!$this->layer){return "erro";} |
| 996 | + if($this->mapa->getmetadata("interface") == "googlemaps"){ | ||
| 997 | + $projO = $this->mapa->getProjection(); | ||
| 998 | + $this->mapa->setProjection("init=epsg:4291"); | ||
| 999 | + } | ||
| 990 | $extatual = $this->mapa->extent; | 1000 | $extatual = $this->mapa->extent; |
| 991 | - $prjMapa = ""; | ||
| 992 | - $prjTema = ""; | 1001 | + $prjMapa = $this->mapa->getProjection(); |
| 1002 | + $prjTema = $this->layer->getProjection(); | ||
| 993 | carregaquery($this->arquivo,&$this->layer,&$this->mapa); | 1003 | carregaquery($this->arquivo,&$this->layer,&$this->mapa); |
| 994 | $sopen = $this->layer->open(); | 1004 | $sopen = $this->layer->open(); |
| 995 | if($sopen == MS_FAILURE){return "erro";} | 1005 | if($sopen == MS_FAILURE){return "erro";} |
| @@ -1026,6 +1036,8 @@ Calcula a extensão geográfica dos elementos selecionados de um tema e ajusta o m | @@ -1026,6 +1036,8 @@ Calcula a extensão geográfica dos elementos selecionados de um tema e ajusta o m | ||
| 1026 | } | 1036 | } |
| 1027 | $extatual->setextent($ret->minx,$ret->miny,$ret->maxx,$ret->maxy); | 1037 | $extatual->setextent($ret->minx,$ret->miny,$ret->maxx,$ret->maxy); |
| 1028 | } | 1038 | } |
| 1039 | + if($this->mapa->getmetadata("interface") == "googlemaps") | ||
| 1040 | + {$this->mapa->setProjection($projO);} | ||
| 1029 | return("ok"); | 1041 | return("ok"); |
| 1030 | } | 1042 | } |
| 1031 | /* | 1043 | /* |
classesphp/funcoes_gerais.php
| @@ -1348,7 +1348,6 @@ function pegaItens($layer,$mapa="") | @@ -1348,7 +1348,6 @@ function pegaItens($layer,$mapa="") | ||
| 1348 | // | 1348 | // |
| 1349 | //no caso de WMS ou WFS | 1349 | //no caso de WMS ou WFS |
| 1350 | // | 1350 | // |
| 1351 | - | ||
| 1352 | if($layer->connectiontype == 7){ | 1351 | if($layer->connectiontype == 7){ |
| 1353 | $url = $layer->connection; | 1352 | $url = $layer->connection; |
| 1354 | $temp = explode("?",$url); | 1353 | $temp = explode("?",$url); |
classesphp/mapa_controle.php
| @@ -140,8 +140,10 @@ if ($funcao != "criaMapa") | @@ -140,8 +140,10 @@ if ($funcao != "criaMapa") | ||
| 140 | //isso é necessário pois a variável "interface" pode ser utilizada como parâmetro em algumas funções ajax | 140 | //isso é necessário pois a variável "interface" pode ser utilizada como parâmetro em algumas funções ajax |
| 141 | //nesses casos, é necessário recuperar o valor correto e não da sessão | 141 | //nesses casos, é necessário recuperar o valor correto e não da sessão |
| 142 | // | 142 | // |
| 143 | -$_SESSION["interface"] = $interfaceTemp; | ||
| 144 | -$interface = $interfaceTemp; | 143 | +if(isset($interfaceTemp) && $interfaceTemp != ""){ |
| 144 | + $_SESSION["interface"] = $interfaceTemp; | ||
| 145 | + $interface = $interfaceTemp; | ||
| 146 | +} | ||
| 145 | // | 147 | // |
| 146 | //verifica se deve ativar o debug | 148 | //verifica se deve ativar o debug |
| 147 | // | 149 | // |
| @@ -503,16 +505,7 @@ Salva o mapa acrescentando um novo layer com os pontos. | @@ -503,16 +505,7 @@ Salva o mapa acrescentando um novo layer com os pontos. | ||
| 503 | include_once("classe_analise.php"); | 505 | include_once("classe_analise.php"); |
| 504 | copiaSeguranca($map_file); | 506 | copiaSeguranca($map_file); |
| 505 | $m = new Analise($map_file,$tema,$locaplic,$ext); | 507 | $m = new Analise($map_file,$tema,$locaplic,$ext); |
| 506 | - /* | ||
| 507 | - if($interface == "googlemaps") | ||
| 508 | - { | ||
| 509 | - $projMapa = $m->mapa->getProjection(); | ||
| 510 | - $m->mapa->setProjection("init=epsg:4291"); | ||
| 511 | - } | ||
| 512 | - */ | ||
| 513 | $retorno = $m->criaCentroide($locaplic); | 508 | $retorno = $m->criaCentroide($locaplic); |
| 514 | - //if($interface == "googlemaps") | ||
| 515 | - //{$m->mapa->setProjection($projMapa);} | ||
| 516 | $m->salva(); | 509 | $m->salva(); |
| 517 | $_SESSION["contadorsalva"]++; | 510 | $_SESSION["contadorsalva"]++; |
| 518 | break; | 511 | break; |
| @@ -1447,14 +1440,7 @@ Gera graficos automaticamente para os elementos de um tema | @@ -1447,14 +1440,7 @@ Gera graficos automaticamente para os elementos de um tema | ||
| 1447 | include_once("classe_temas.php"); | 1440 | include_once("classe_temas.php"); |
| 1448 | copiaSeguranca($map_file); | 1441 | copiaSeguranca($map_file); |
| 1449 | $m = new Temas($map_file,$tema,$locaplic); | 1442 | $m = new Temas($map_file,$tema,$locaplic); |
| 1450 | - if($interface == "googlemaps") | ||
| 1451 | - { | ||
| 1452 | - $projMapa = $m->mapa->getProjection(); | ||
| 1453 | - $m->mapa->setProjection("init=epsg:4291"); | ||
| 1454 | - } | ||
| 1455 | $m->graficotema($lista,$tamanho,$tipo,$outlinecolor,$offset); | 1443 | $m->graficotema($lista,$tamanho,$tipo,$outlinecolor,$offset); |
| 1456 | - if($interface == "googlemaps") | ||
| 1457 | - {$m->mapa->setProjection($projMapa);} | ||
| 1458 | $m->salva(); | 1444 | $m->salva(); |
| 1459 | $_SESSION["contadorsalva"]++; | 1445 | $_SESSION["contadorsalva"]++; |
| 1460 | redesenhaMapa(); | 1446 | redesenhaMapa(); |
| @@ -1475,11 +1461,6 @@ Altera uma classe de um tema, aplicando uma nova classificação ou modificando pa | @@ -1475,11 +1461,6 @@ Altera uma classe de um tema, aplicando uma nova classificação ou modificando pa | ||
| 1475 | include_once("classe_alteraclasse.php"); | 1461 | include_once("classe_alteraclasse.php"); |
| 1476 | copiaSeguranca($map_file); | 1462 | copiaSeguranca($map_file); |
| 1477 | $m = new Alteraclasse($map_file,$tema,"",$ext); | 1463 | $m = new Alteraclasse($map_file,$tema,"",$ext); |
| 1478 | - if($interface == "googlemaps") | ||
| 1479 | - { | ||
| 1480 | - $projMapa = $m->mapa->getProjection(); | ||
| 1481 | - $m->mapa->setProjection("init=epsg:4291"); | ||
| 1482 | - } | ||
| 1483 | if ($opcao == "aplicacoresrgb") | 1464 | if ($opcao == "aplicacoresrgb") |
| 1484 | { | 1465 | { |
| 1485 | $cores = str_replace("rgb","",$cores); | 1466 | $cores = str_replace("rgb","",$cores); |
| @@ -1515,8 +1496,6 @@ Altera uma classe de um tema, aplicando uma nova classificação ou modificando pa | @@ -1515,8 +1496,6 @@ Altera uma classe de um tema, aplicando uma nova classificação ou modificando pa | ||
| 1515 | } | 1496 | } |
| 1516 | if ($opcao == "simbolounico") | 1497 | if ($opcao == "simbolounico") |
| 1517 | {$retorno = $m->simbolounico();} | 1498 | {$retorno = $m->simbolounico();} |
| 1518 | - if($interface == "googlemaps") | ||
| 1519 | - {$m->mapa->setProjection($projMapa);} | ||
| 1520 | $salvo = $m->salva(); | 1499 | $salvo = $m->salva(); |
| 1521 | $_SESSION["contadorsalva"]++; | 1500 | $_SESSION["contadorsalva"]++; |
| 1522 | break; | 1501 | break; |
| @@ -1705,18 +1684,7 @@ Os valores para o gráfico são obtidos do tema indicado na classe. Para cada novo | @@ -1705,18 +1684,7 @@ Os valores para o gráfico são obtidos do tema indicado na classe. Para cada novo | ||
| 1705 | include_once("classe_shp.php"); | 1684 | include_once("classe_shp.php"); |
| 1706 | copiaSeguranca($map_file); | 1685 | copiaSeguranca($map_file); |
| 1707 | $m = new SHP($map_file,$tema,$locaplic); | 1686 | $m = new SHP($map_file,$tema,$locaplic); |
| 1708 | - if($interface == "googlemaps") | ||
| 1709 | - { | ||
| 1710 | - $projMapa = $m->mapa->getProjection(); | ||
| 1711 | - $m->mapa->setProjection("init=epsg:4291"); | ||
| 1712 | - $m->salva(); | ||
| 1713 | - } | ||
| 1714 | $retorno = $m->insereSHPgrafico($x,$y,$itens,$width,$inclinacao,$shadow_height); | 1687 | $retorno = $m->insereSHPgrafico($x,$y,$itens,$width,$inclinacao,$shadow_height); |
| 1715 | - if($interface == "googlemaps") | ||
| 1716 | - { | ||
| 1717 | - $m->mapa->setProjection($projMapa); | ||
| 1718 | - $m->salva(); | ||
| 1719 | - } | ||
| 1720 | $_SESSION["contadorsalva"]++; | 1688 | $_SESSION["contadorsalva"]++; |
| 1721 | break; | 1689 | break; |
| 1722 | /* | 1690 | /* |
| @@ -2117,8 +2085,6 @@ A pesquisa em temas é feita apenas quando existir o metadata itembuscarapida | @@ -2117,8 +2085,6 @@ A pesquisa em temas é feita apenas quando existir o metadata itembuscarapida | ||
| 2117 | if($lista != ""){ | 2085 | if($lista != ""){ |
| 2118 | include_once("classe_atributos.php"); | 2086 | include_once("classe_atributos.php"); |
| 2119 | $m = new Atributos($map_file); | 2087 | $m = new Atributos($map_file); |
| 2120 | - if($interface == "googlemaps") | ||
| 2121 | - {$m->mapa->setProjection("init=epsg:4291");} | ||
| 2122 | $dados = $m->buscaRegistros($palavra,$lista,"qualquer","mapa"); | 2088 | $dados = $m->buscaRegistros($palavra,$lista,"qualquer","mapa"); |
| 2123 | foreach($dados as $tema){ | 2089 | foreach($dados as $tema){ |
| 2124 | $rs = $tema["resultado"]; | 2090 | $rs = $tema["resultado"]; |
| @@ -2154,8 +2120,6 @@ Procura valores em uma tabela que aderem a uma palavra de busca. | @@ -2154,8 +2120,6 @@ Procura valores em uma tabela que aderem a uma palavra de busca. | ||
| 2154 | include_once("classe_atributos.php"); | 2120 | include_once("classe_atributos.php"); |
| 2155 | if(!isset($tema)){$tema = "";} | 2121 | if(!isset($tema)){$tema = "";} |
| 2156 | $m = new Atributos($map_file,$tema,"",$ext); | 2122 | $m = new Atributos($map_file,$tema,"",$ext); |
| 2157 | - if($interface == "googlemaps") | ||
| 2158 | - {$m->mapa->setProjection("init=epsg:4291");} | ||
| 2159 | $retorno = $m->buscaRegistros($palavra,$lista,$tipo,$onde); | 2123 | $retorno = $m->buscaRegistros($palavra,$lista,$tipo,$onde); |
| 2160 | break; | 2124 | break; |
| 2161 | /* | 2125 | /* |
| @@ -2171,19 +2135,8 @@ Identifica elementos no mapa. | @@ -2171,19 +2135,8 @@ Identifica elementos no mapa. | ||
| 2171 | if (!isset($tema)){$tema = "";} | 2135 | if (!isset($tema)){$tema = "";} |
| 2172 | if (!isset($resolucao)){$resolucao = 5;} | 2136 | if (!isset($resolucao)){$resolucao = 5;} |
| 2173 | include_once("classe_atributos.php"); | 2137 | include_once("classe_atributos.php"); |
| 2174 | - $m = new Atributos($map_file,$tema); | ||
| 2175 | - if($interface == "googlemaps") | ||
| 2176 | - { | ||
| 2177 | - $projMapa = $m->mapa->getProjection(); | ||
| 2178 | - $m->mapa->setProjection("init=epsg:4291"); | ||
| 2179 | - $m->salva(); | ||
| 2180 | - } | 2138 | + $m = new Atributos($map_file,$tema); |
| 2181 | $retorno = $m->identifica($opcao,$xy,$resolucao); | 2139 | $retorno = $m->identifica($opcao,$xy,$resolucao); |
| 2182 | - if($interface == "googlemaps") | ||
| 2183 | - { | ||
| 2184 | - $m->mapa->setProjection($projMapa); | ||
| 2185 | - $m->salva(); | ||
| 2186 | - } | ||
| 2187 | break; | 2140 | break; |
| 2188 | /* | 2141 | /* |
| 2189 | Valor: IDENTIFICA2 | 2142 | Valor: IDENTIFICA2 |
| @@ -2199,18 +2152,7 @@ Identifica elementos no mapa. | @@ -2199,18 +2152,7 @@ Identifica elementos no mapa. | ||
| 2199 | if(!isset($ext)) | 2152 | if(!isset($ext)) |
| 2200 | {$ext = "";} | 2153 | {$ext = "";} |
| 2201 | $m = new Atributos($map_file,$tema,"",$ext); | 2154 | $m = new Atributos($map_file,$tema,"",$ext); |
| 2202 | - if($interface == "googlemaps") | ||
| 2203 | - { | ||
| 2204 | - $projMapa = $m->mapa->getProjection(); | ||
| 2205 | - $m->mapa->setProjection("init=epsg:4291"); | ||
| 2206 | - $m->salva(); | ||
| 2207 | - } | ||
| 2208 | $retorno = $m->identifica2($opcao,$xy,$resolucao,$ext,$listaDeTemas); | 2155 | $retorno = $m->identifica2($opcao,$xy,$resolucao,$ext,$listaDeTemas); |
| 2209 | - if($interface == "googlemaps") | ||
| 2210 | - { | ||
| 2211 | - $m->mapa->setProjection($projMapa); | ||
| 2212 | - $m->salva(); | ||
| 2213 | - } | ||
| 2214 | break; | 2156 | break; |
| 2215 | /* | 2157 | /* |
| 2216 | Valor: IDENTIFICAUNICO | 2158 | Valor: IDENTIFICAUNICO |
| @@ -2225,19 +2167,8 @@ Identifica elementos no mapa retornando apenas o valor de um único item. | @@ -2225,19 +2167,8 @@ Identifica elementos no mapa retornando apenas o valor de um único item. | ||
| 2225 | if(!isset($ext)) | 2167 | if(!isset($ext)) |
| 2226 | {$ext = "";} | 2168 | {$ext = "";} |
| 2227 | $m = new Atributos($map_file,$tema,"",$ext); | 2169 | $m = new Atributos($map_file,$tema,"",$ext); |
| 2228 | - if($interface == "googlemaps") | ||
| 2229 | - { | ||
| 2230 | - $projMapa = $m->mapa->getProjection(); | ||
| 2231 | - $m->mapa->setProjection("init=epsg:4291"); | ||
| 2232 | - $m->salva(); | ||
| 2233 | - } | ||
| 2234 | $xy = explode(",",$xy); | 2170 | $xy = explode(",",$xy); |
| 2235 | $retorno = $m->identificaQBP($tema,$xy[0],$xy[1],$map_file,$resolucao,$item,$tiporetorno="unico"); | 2171 | $retorno = $m->identificaQBP($tema,$xy[0],$xy[1],$map_file,$resolucao,$item,$tiporetorno="unico"); |
| 2236 | - if($interface == "googlemaps") | ||
| 2237 | - { | ||
| 2238 | - $m->mapa->setProjection($projMapa); | ||
| 2239 | - $m->salva(); | ||
| 2240 | - } | ||
| 2241 | break; | 2172 | break; |
| 2242 | /* | 2173 | /* |
| 2243 | Valor: ESTATISTICA | 2174 | Valor: ESTATISTICA |
| @@ -2272,8 +2203,6 @@ Pega todos os valores dos itens de uma tabela de um tema. | @@ -2272,8 +2203,6 @@ Pega todos os valores dos itens de uma tabela de um tema. | ||
| 2272 | */ | 2203 | */ |
| 2273 | case "LISTAREGISTROS": | 2204 | case "LISTAREGISTROS": |
| 2274 | include_once("classe_atributos.php"); | 2205 | include_once("classe_atributos.php"); |
| 2275 | - if(isset($ext) && $ext != "" && $interface == "googlemaps" && $geo == false) | ||
| 2276 | - {$ext = projetaExt($map_file,$ext);} | ||
| 2277 | $m = new Atributos($map_file,$tema,"",$ext); | 2206 | $m = new Atributos($map_file,$tema,"",$ext); |
| 2278 | if(!isset($tipo)){$tipo = "";} | 2207 | if(!isset($tipo)){$tipo = "";} |
| 2279 | if(!isset($inicio)){$inicio = 0;} | 2208 | if(!isset($inicio)){$inicio = 0;} |
| @@ -2336,8 +2265,6 @@ Muda a extensão geográfica do mapa. | @@ -2336,8 +2265,6 @@ Muda a extensão geográfica do mapa. | ||
| 2336 | if(!isset($geo)) | 2265 | if(!isset($geo)) |
| 2337 | {$geo = false;} | 2266 | {$geo = false;} |
| 2338 | $m = new Navegacao($map_file); | 2267 | $m = new Navegacao($map_file); |
| 2339 | - if(isset($ext) && $ext != "" && $interface == "googlemaps" && $geo == false) | ||
| 2340 | - {$ext = projetaExt($map_file,$ext);} | ||
| 2341 | $m->mudaExtensao($ext); | 2268 | $m->mudaExtensao($ext); |
| 2342 | $m->salva(); | 2269 | $m->salva(); |
| 2343 | $_SESSION["contadorsalva"]++; | 2270 | $_SESSION["contadorsalva"]++; |
| @@ -2706,11 +2633,6 @@ Seleciona elementos utilizando um ponto. | @@ -2706,11 +2633,6 @@ Seleciona elementos utilizando um ponto. | ||
| 2706 | foreach($temas as $tema) | 2633 | foreach($temas as $tema) |
| 2707 | { | 2634 | { |
| 2708 | $m = new Selecao($map_file,$tema,$ext); | 2635 | $m = new Selecao($map_file,$tema,$ext); |
| 2709 | - if($interface == "googlemaps") | ||
| 2710 | - { | ||
| 2711 | - $projMapa = $m->mapa->getProjection(); | ||
| 2712 | - $m->mapa->setProjection("init=epsg:4291"); | ||
| 2713 | - } | ||
| 2714 | $ok[] = $m->selecaoPT($xy,$tipo,$tolerancia); | 2636 | $ok[] = $m->selecaoPT($xy,$tipo,$tolerancia); |
| 2715 | } | 2637 | } |
| 2716 | $_SESSION["contadorsalva"]++; | 2638 | $_SESSION["contadorsalva"]++; |
| @@ -2730,11 +2652,6 @@ Seleciona elementos utilizando a extensão do mapa. | @@ -2730,11 +2652,6 @@ Seleciona elementos utilizando a extensão do mapa. | ||
| 2730 | foreach($temas as $tema) | 2652 | foreach($temas as $tema) |
| 2731 | { | 2653 | { |
| 2732 | $m = new Selecao($map_file,$tema,$ext); | 2654 | $m = new Selecao($map_file,$tema,$ext); |
| 2733 | - if($interface == "googlemaps") | ||
| 2734 | - { | ||
| 2735 | - $projMapa = $m->mapa->getProjection(); | ||
| 2736 | - $m->mapa->setProjection("init=epsg:4291"); | ||
| 2737 | - } | ||
| 2738 | $ok[] = $m->selecaoEXT($tipo); | 2655 | $ok[] = $m->selecaoEXT($tipo); |
| 2739 | } | 2656 | } |
| 2740 | //$retorno = implode(",",$ok); | 2657 | //$retorno = implode(",",$ok); |
| @@ -2754,12 +2671,7 @@ Seleciona elementos utilizando um retângulo. | @@ -2754,12 +2671,7 @@ Seleciona elementos utilizando um retângulo. | ||
| 2754 | $temas = explode(",",$tema); | 2671 | $temas = explode(",",$tema); |
| 2755 | foreach($temas as $tema) | 2672 | foreach($temas as $tema) |
| 2756 | { | 2673 | { |
| 2757 | - $m = new Selecao($map_file,$tema,$ext); | ||
| 2758 | - if($interface == "googlemaps") | ||
| 2759 | - { | ||
| 2760 | - $projMapa = $m->mapa->getProjection(); | ||
| 2761 | - $m->mapa->setProjection("init=epsg:4291"); | ||
| 2762 | - } | 2674 | + $m = new Selecao($map_file,$tema,$ext); |
| 2763 | $ok[] = $m->selecaoBOX($tipo,$ext); | 2675 | $ok[] = $m->selecaoBOX($tipo,$ext); |
| 2764 | } | 2676 | } |
| 2765 | $_SESSION["contadorsalva"]++; | 2677 | $_SESSION["contadorsalva"]++; |
| @@ -2809,12 +2721,7 @@ Sleciona elementos de um tema com base em outro tema. | @@ -2809,12 +2721,7 @@ Sleciona elementos de um tema com base em outro tema. | ||
| 2809 | $temas = explode(",",$tema); | 2721 | $temas = explode(",",$tema); |
| 2810 | foreach($temas as $tema) | 2722 | foreach($temas as $tema) |
| 2811 | { | 2723 | { |
| 2812 | - $m = new Selecao($map_file,$tema); | ||
| 2813 | - if($interface == "googlemaps") | ||
| 2814 | - { | ||
| 2815 | - $projMapa = $m->mapa->getProjection(); | ||
| 2816 | - $m->mapa->setProjection("init=epsg:4291"); | ||
| 2817 | - } | 2724 | + $m = new Selecao($map_file,$tema); |
| 2818 | $ok[] = $m->selecaoTema($temao,$tipo); | 2725 | $ok[] = $m->selecaoTema($temao,$tipo); |
| 2819 | } | 2726 | } |
| 2820 | $retorno = implode(",",$ok); | 2727 | $retorno = implode(",",$ok); |
| @@ -3101,14 +3008,7 @@ function selecaoPoli($xs,$ys,$tema,$tipo) | @@ -3101,14 +3008,7 @@ function selecaoPoli($xs,$ys,$tema,$tipo) | ||
| 3101 | foreach($temas as $tema) | 3008 | foreach($temas as $tema) |
| 3102 | { | 3009 | { |
| 3103 | $m = new Selecao($map_file,$tema); | 3010 | $m = new Selecao($map_file,$tema); |
| 3104 | - if($interface == "googlemaps") | ||
| 3105 | - { | ||
| 3106 | - $projMapa = $m->mapa->getProjection(); | ||
| 3107 | - $m->mapa->setProjection("init=epsg:4291"); | ||
| 3108 | - } | ||
| 3109 | $ok[] = $m->selecaoPorPoligono($tipo,$xs,$ys); | 3011 | $ok[] = $m->selecaoPorPoligono($tipo,$xs,$ys); |
| 3110 | - if($interface == "googlemaps") | ||
| 3111 | - {$m->mapa->setProjection($projMapa);} | ||
| 3112 | $m->salva(); | 3012 | $m->salva(); |
| 3113 | $_SESSION["contadorsalva"]++; | 3013 | $_SESSION["contadorsalva"]++; |
| 3114 | } | 3014 | } |
| @@ -3144,8 +3044,9 @@ function redesenhaMapa() | @@ -3144,8 +3044,9 @@ function redesenhaMapa() | ||
| 3144 | // | 3044 | // |
| 3145 | //na interface googlemaps não é necessário gerar a imagem | 3045 | //na interface googlemaps não é necessário gerar a imagem |
| 3146 | // | 3046 | // |
| 3147 | - if (isset($interface) && ($interface == "googlemaps" || $interface == "openlayers" || $interface == "googleearth")) | ||
| 3148 | - { | 3047 | + if (isset($interface) && ($interface == "padrao" || $interface == "flamingo")) |
| 3048 | + {$res = $m->redesenhaCorpo($tipoimagem,$utilizacgi,$locmapserv);} | ||
| 3049 | + else{ | ||
| 3149 | $e = $m->mapa->extent; | 3050 | $e = $m->mapa->extent; |
| 3150 | $ext = $e->minx." ".$e->miny." ".$e->maxx." ".$e->maxy; | 3051 | $ext = $e->minx." ".$e->miny." ".$e->maxx." ".$e->maxy; |
| 3151 | $res["mapimagem"] = ""; | 3052 | $res["mapimagem"] = ""; |
| @@ -3160,9 +3061,6 @@ function redesenhaMapa() | @@ -3160,9 +3061,6 @@ function redesenhaMapa() | ||
| 3160 | $res["mappath"] = ""; | 3061 | $res["mappath"] = ""; |
| 3161 | $res["mapurl"] = ""; | 3062 | $res["mapurl"] = ""; |
| 3162 | } | 3063 | } |
| 3163 | - else{ | ||
| 3164 | - $res = $m->redesenhaCorpo($tipoimagem,$utilizacgi,$locmapserv); | ||
| 3165 | - } | ||
| 3166 | $res["mensagens"] = $m->pegaMensagens(); | 3064 | $res["mensagens"] = $m->pegaMensagens(); |
| 3167 | $res["tempo"] = microtime(1) - $tempo; | 3065 | $res["tempo"] = microtime(1) - $tempo; |
| 3168 | restauraCon($map_file,$postgis_mapa); | 3066 | restauraCon($map_file,$postgis_mapa); |
classesphp/mapa_inicia.php
| @@ -5,14 +5,14 @@ Title: mapa_inicia.php | @@ -5,14 +5,14 @@ Title: mapa_inicia.php | ||
| 5 | Inicia um novo mapa. | 5 | Inicia um novo mapa. |
| 6 | 6 | ||
| 7 | Gera as imagens necessárias para abrir o mapa e calcula um conjunto de variáveis necessárias | 7 | Gera as imagens necessárias para abrir o mapa e calcula um conjunto de variáveis necessárias |
| 8 | -ao funcionamento do i3Geo. | 8 | +ao funcionamento do i3Geo. Os dados são devolvidos como um objeto json. Conforme a interface |
| 9 | +que será utilizada pelo mapa, são feitos ajustes específicos. | ||
| 9 | 10 | ||
| 10 | Licenca: | 11 | Licenca: |
| 11 | 12 | ||
| 12 | GPL2 | 13 | GPL2 |
| 13 | 14 | ||
| 14 | - | ||
| 15 | -I3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet | 15 | +i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet |
| 16 | 16 | ||
| 17 | Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil | 17 | Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil |
| 18 | Desenvolvedor: Edmar Moretti edmar.moretti@mma.gov.br | 18 | Desenvolvedor: Edmar Moretti edmar.moretti@mma.gov.br |
| @@ -42,6 +42,8 @@ Inicia um mapa e obtém os parâmetros necessários para o funcionamento da interfa | @@ -42,6 +42,8 @@ Inicia um mapa e obtém os parâmetros necessários para o funcionamento da interfa | ||
| 42 | 42 | ||
| 43 | Globais: | 43 | Globais: |
| 44 | 44 | ||
| 45 | +$interface - nome da interface que será utilizada pelo mapa padrao|openlayers|googlemaps|googleearth|flamingo . O valor de $interface é também armazenado no metadata "interface" do objeto Map, podendo ser utilizada em outros programas do i3Geo. | ||
| 46 | + | ||
| 45 | $openid - indica se o usuário foi ou não autenticado em alguma rede social (veja i3geo/pacotes/openid) | 47 | $openid - indica se o usuário foi ou não autenticado em alguma rede social (veja i3geo/pacotes/openid) |
| 46 | 48 | ||
| 47 | $interfacePadrao - interface definida em ms_configura.php | 49 | $interfacePadrao - interface definida em ms_configura.php |
| @@ -230,6 +232,7 @@ function iniciaMapa() | @@ -230,6 +232,7 @@ function iniciaMapa() | ||
| 230 | $of->set("imagemode",MS_IMAGEMODE_RGBA); | 232 | $of->set("imagemode",MS_IMAGEMODE_RGBA); |
| 231 | $of->setOption("QUANTIZE_FORCE","OFF"); | 233 | $of->setOption("QUANTIZE_FORCE","OFF"); |
| 232 | $of->set("driver","AGG/PNG"); | 234 | $of->set("driver","AGG/PNG"); |
| 235 | + $m->mapa->setmetadata("interface",$interface); | ||
| 233 | $m->salva(); | 236 | $m->salva(); |
| 234 | 237 | ||
| 235 | $nomes = nomeRandomico(12); | 238 | $nomes = nomeRandomico(12); |
ferramentas/busca/index.js.php
| @@ -225,7 +225,7 @@ i3GEOF.busca = { | @@ -225,7 +225,7 @@ i3GEOF.busca = { | ||
| 225 | {tipo = "qualquer";} | 225 | {tipo = "qualquer";} |
| 226 | if ($i("i3GEObuscaregiao").checked === true) | 226 | if ($i("i3GEObuscaregiao").checked === true) |
| 227 | {onde = "regiao";} | 227 | {onde = "regiao";} |
| 228 | - palavra = removeAcentos(palavra); | 228 | + palavra = i3GEO.util.removeAcentos(palavra); |
| 229 | p = i3GEO.configura.locaplic+"/classesphp/mapa_controle.php?g_sid="+i3GEO.configura.sid+"&funcao=listavaloresitens&palavra="+palavra+"&lista="+listai.toString()+"&tipo="+tipo+"&onde="+onde+"&ext="+i3GEO.parametros.mapexten; | 229 | p = i3GEO.configura.locaplic+"/classesphp/mapa_controle.php?g_sid="+i3GEO.configura.sid+"&funcao=listavaloresitens&palavra="+palavra+"&lista="+listai.toString()+"&tipo="+tipo+"&onde="+onde+"&ext="+i3GEO.parametros.mapexten; |
| 230 | cp = new cpaint(); | 230 | cp = new cpaint(); |
| 231 | cp.set_response_type("json"); | 231 | cp.set_response_type("json"); |