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"); |