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 | 69 | Nome do arquivo de seleção (.qy) |
70 | 70 | */ |
71 | 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 | 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 | 85 | parameters: |
78 | 86 | |
... | ... | @@ -100,8 +108,6 @@ $ext - (opcional) extensão geográfica que será aplicada ao mapa |
100 | 108 | if($tema != "" && @$this->mapa->getlayerbyname($tema)) |
101 | 109 | { |
102 | 110 | $this->layer = $this->mapa->getlayerbyname($tema); |
103 | - //if($this->layer->getProjection() == "" ) | |
104 | - //{$this->layer->setProjection("init=epsg:4291");} | |
105 | 111 | $this->nome = $tema; |
106 | 112 | } |
107 | 113 | if($ext && $ext != ""){ |
... | ... | @@ -109,6 +115,10 @@ $ext - (opcional) extensão geográfica que será aplicada ao mapa |
109 | 115 | $extatual = $this->mapa->extent; |
110 | 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 | 130 | function salva() |
121 | 131 | { |
122 | 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 | 776 | } |
765 | 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 | 782 | //pesquisa todos os temas acrescentados no mapa |
771 | 783 | if ($opcao == "todos") |
772 | 784 | { |
773 | 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 | 788 | //pesquisa apenas os temas visiveis |
777 | 789 | if ($opcao == "ligados" || $opcao == "lista") |
... | ... | @@ -790,7 +802,7 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado |
790 | 802 | foreach ($listatemas as $tema) |
791 | 803 | { |
792 | 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 | 807 | //var_dump($resultados); |
796 | 808 | } |
... | ... | @@ -806,7 +818,7 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado |
806 | 818 | { |
807 | 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 | 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 | 1156 | $layer->set("template","none.htm"); |
1145 | 1157 | $pt = ms_newPointObj(); |
1146 | 1158 | $pt->setXY($x, $y); |
1159 | + | |
1147 | 1160 | // |
1148 | 1161 | //operação especial para o caso de wms |
1149 | 1162 | // | ... | ... |
classesphp/classe_selecao.php
... | ... | @@ -11,7 +11,7 @@ Licenca: |
11 | 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 | 16 | Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil |
17 | 17 | Desenvolvedor: Edmar Moretti edmar.moretti@mma.gov.br |
... | ... | @@ -68,11 +68,19 @@ class Selecao |
68 | 68 | Nome do arquivo de seleção (.qy) |
69 | 69 | */ |
70 | 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 | 78 | Function: __construct |
73 | 79 | |
74 | 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 | 84 | parameters: |
77 | 85 | |
78 | 86 | $map_file - Endereço do mapfile no servidor. |
... | ... | @@ -105,6 +113,10 @@ $ext - extensão geográfica do mapa |
105 | 113 | $extatual = $this->mapa->extent; |
106 | 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 | 122 | function: salva |
... | ... | @@ -114,6 +126,8 @@ Salva o mapfile atual |
114 | 126 | function salva() |
115 | 127 | { |
116 | 128 | if (connection_aborted()){exit();} |
129 | + if($this->mapa->getmetadata("interface") == "googlemaps") | |
130 | + {$this->mapa->setProjection($this->projO);} | |
117 | 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 | 378 | function zoomTema() |
379 | 379 | { |
380 | 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 | 385 | $prjMapa = ""; |
382 | 386 | $prjTema = ""; |
383 | 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 | 415 | $extatual->setextent($ret[0],$ret[1],$ret[2],$ret[3]); |
412 | 416 | //echo "oi";exit; |
413 | 417 | } |
418 | + if($this->mapa->getmetadata("interface") == "googlemaps") | |
419 | + {$this->mapa->setProjection($projO);} | |
414 | 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 | 993 | function zoomSel() |
988 | 994 | { |
989 | 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 | 1000 | $extatual = $this->mapa->extent; |
991 | - $prjMapa = ""; | |
992 | - $prjTema = ""; | |
1001 | + $prjMapa = $this->mapa->getProjection(); | |
1002 | + $prjTema = $this->layer->getProjection(); | |
993 | 1003 | carregaquery($this->arquivo,&$this->layer,&$this->mapa); |
994 | 1004 | $sopen = $this->layer->open(); |
995 | 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 | 1036 | } |
1027 | 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 | 1041 | return("ok"); |
1030 | 1042 | } |
1031 | 1043 | /* | ... | ... |
classesphp/funcoes_gerais.php
classesphp/mapa_controle.php
... | ... | @@ -140,8 +140,10 @@ if ($funcao != "criaMapa") |
140 | 140 | //isso é necessário pois a variável "interface" pode ser utilizada como parâmetro em algumas funções ajax |
141 | 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 | 148 | //verifica se deve ativar o debug |
147 | 149 | // |
... | ... | @@ -503,16 +505,7 @@ Salva o mapa acrescentando um novo layer com os pontos. |
503 | 505 | include_once("classe_analise.php"); |
504 | 506 | copiaSeguranca($map_file); |
505 | 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 | 508 | $retorno = $m->criaCentroide($locaplic); |
514 | - //if($interface == "googlemaps") | |
515 | - //{$m->mapa->setProjection($projMapa);} | |
516 | 509 | $m->salva(); |
517 | 510 | $_SESSION["contadorsalva"]++; |
518 | 511 | break; |
... | ... | @@ -1447,14 +1440,7 @@ Gera graficos automaticamente para os elementos de um tema |
1447 | 1440 | include_once("classe_temas.php"); |
1448 | 1441 | copiaSeguranca($map_file); |
1449 | 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 | 1443 | $m->graficotema($lista,$tamanho,$tipo,$outlinecolor,$offset); |
1456 | - if($interface == "googlemaps") | |
1457 | - {$m->mapa->setProjection($projMapa);} | |
1458 | 1444 | $m->salva(); |
1459 | 1445 | $_SESSION["contadorsalva"]++; |
1460 | 1446 | redesenhaMapa(); |
... | ... | @@ -1475,11 +1461,6 @@ Altera uma classe de um tema, aplicando uma nova classificação ou modificando pa |
1475 | 1461 | include_once("classe_alteraclasse.php"); |
1476 | 1462 | copiaSeguranca($map_file); |
1477 | 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 | 1464 | if ($opcao == "aplicacoresrgb") |
1484 | 1465 | { |
1485 | 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 | 1496 | } |
1516 | 1497 | if ($opcao == "simbolounico") |
1517 | 1498 | {$retorno = $m->simbolounico();} |
1518 | - if($interface == "googlemaps") | |
1519 | - {$m->mapa->setProjection($projMapa);} | |
1520 | 1499 | $salvo = $m->salva(); |
1521 | 1500 | $_SESSION["contadorsalva"]++; |
1522 | 1501 | break; |
... | ... | @@ -1705,18 +1684,7 @@ Os valores para o gráfico são obtidos do tema indicado na classe. Para cada novo |
1705 | 1684 | include_once("classe_shp.php"); |
1706 | 1685 | copiaSeguranca($map_file); |
1707 | 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 | 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 | 1688 | $_SESSION["contadorsalva"]++; |
1721 | 1689 | break; |
1722 | 1690 | /* |
... | ... | @@ -2117,8 +2085,6 @@ A pesquisa em temas é feita apenas quando existir o metadata itembuscarapida |
2117 | 2085 | if($lista != ""){ |
2118 | 2086 | include_once("classe_atributos.php"); |
2119 | 2087 | $m = new Atributos($map_file); |
2120 | - if($interface == "googlemaps") | |
2121 | - {$m->mapa->setProjection("init=epsg:4291");} | |
2122 | 2088 | $dados = $m->buscaRegistros($palavra,$lista,"qualquer","mapa"); |
2123 | 2089 | foreach($dados as $tema){ |
2124 | 2090 | $rs = $tema["resultado"]; |
... | ... | @@ -2154,8 +2120,6 @@ Procura valores em uma tabela que aderem a uma palavra de busca. |
2154 | 2120 | include_once("classe_atributos.php"); |
2155 | 2121 | if(!isset($tema)){$tema = "";} |
2156 | 2122 | $m = new Atributos($map_file,$tema,"",$ext); |
2157 | - if($interface == "googlemaps") | |
2158 | - {$m->mapa->setProjection("init=epsg:4291");} | |
2159 | 2123 | $retorno = $m->buscaRegistros($palavra,$lista,$tipo,$onde); |
2160 | 2124 | break; |
2161 | 2125 | /* |
... | ... | @@ -2171,19 +2135,8 @@ Identifica elementos no mapa. |
2171 | 2135 | if (!isset($tema)){$tema = "";} |
2172 | 2136 | if (!isset($resolucao)){$resolucao = 5;} |
2173 | 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 | 2139 | $retorno = $m->identifica($opcao,$xy,$resolucao); |
2182 | - if($interface == "googlemaps") | |
2183 | - { | |
2184 | - $m->mapa->setProjection($projMapa); | |
2185 | - $m->salva(); | |
2186 | - } | |
2187 | 2140 | break; |
2188 | 2141 | /* |
2189 | 2142 | Valor: IDENTIFICA2 |
... | ... | @@ -2199,18 +2152,7 @@ Identifica elementos no mapa. |
2199 | 2152 | if(!isset($ext)) |
2200 | 2153 | {$ext = "";} |
2201 | 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 | 2155 | $retorno = $m->identifica2($opcao,$xy,$resolucao,$ext,$listaDeTemas); |
2209 | - if($interface == "googlemaps") | |
2210 | - { | |
2211 | - $m->mapa->setProjection($projMapa); | |
2212 | - $m->salva(); | |
2213 | - } | |
2214 | 2156 | break; |
2215 | 2157 | /* |
2216 | 2158 | Valor: IDENTIFICAUNICO |
... | ... | @@ -2225,19 +2167,8 @@ Identifica elementos no mapa retornando apenas o valor de um único item. |
2225 | 2167 | if(!isset($ext)) |
2226 | 2168 | {$ext = "";} |
2227 | 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 | 2170 | $xy = explode(",",$xy); |
2235 | 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 | 2172 | break; |
2242 | 2173 | /* |
2243 | 2174 | Valor: ESTATISTICA |
... | ... | @@ -2272,8 +2203,6 @@ Pega todos os valores dos itens de uma tabela de um tema. |
2272 | 2203 | */ |
2273 | 2204 | case "LISTAREGISTROS": |
2274 | 2205 | include_once("classe_atributos.php"); |
2275 | - if(isset($ext) && $ext != "" && $interface == "googlemaps" && $geo == false) | |
2276 | - {$ext = projetaExt($map_file,$ext);} | |
2277 | 2206 | $m = new Atributos($map_file,$tema,"",$ext); |
2278 | 2207 | if(!isset($tipo)){$tipo = "";} |
2279 | 2208 | if(!isset($inicio)){$inicio = 0;} |
... | ... | @@ -2336,8 +2265,6 @@ Muda a extensão geográfica do mapa. |
2336 | 2265 | if(!isset($geo)) |
2337 | 2266 | {$geo = false;} |
2338 | 2267 | $m = new Navegacao($map_file); |
2339 | - if(isset($ext) && $ext != "" && $interface == "googlemaps" && $geo == false) | |
2340 | - {$ext = projetaExt($map_file,$ext);} | |
2341 | 2268 | $m->mudaExtensao($ext); |
2342 | 2269 | $m->salva(); |
2343 | 2270 | $_SESSION["contadorsalva"]++; |
... | ... | @@ -2706,11 +2633,6 @@ Seleciona elementos utilizando um ponto. |
2706 | 2633 | foreach($temas as $tema) |
2707 | 2634 | { |
2708 | 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 | 2636 | $ok[] = $m->selecaoPT($xy,$tipo,$tolerancia); |
2715 | 2637 | } |
2716 | 2638 | $_SESSION["contadorsalva"]++; |
... | ... | @@ -2730,11 +2652,6 @@ Seleciona elementos utilizando a extensão do mapa. |
2730 | 2652 | foreach($temas as $tema) |
2731 | 2653 | { |
2732 | 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 | 2655 | $ok[] = $m->selecaoEXT($tipo); |
2739 | 2656 | } |
2740 | 2657 | //$retorno = implode(",",$ok); |
... | ... | @@ -2754,12 +2671,7 @@ Seleciona elementos utilizando um retângulo. |
2754 | 2671 | $temas = explode(",",$tema); |
2755 | 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 | 2675 | $ok[] = $m->selecaoBOX($tipo,$ext); |
2764 | 2676 | } |
2765 | 2677 | $_SESSION["contadorsalva"]++; |
... | ... | @@ -2809,12 +2721,7 @@ Sleciona elementos de um tema com base em outro tema. |
2809 | 2721 | $temas = explode(",",$tema); |
2810 | 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 | 2725 | $ok[] = $m->selecaoTema($temao,$tipo); |
2819 | 2726 | } |
2820 | 2727 | $retorno = implode(",",$ok); |
... | ... | @@ -3101,14 +3008,7 @@ function selecaoPoli($xs,$ys,$tema,$tipo) |
3101 | 3008 | foreach($temas as $tema) |
3102 | 3009 | { |
3103 | 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 | 3011 | $ok[] = $m->selecaoPorPoligono($tipo,$xs,$ys); |
3110 | - if($interface == "googlemaps") | |
3111 | - {$m->mapa->setProjection($projMapa);} | |
3112 | 3012 | $m->salva(); |
3113 | 3013 | $_SESSION["contadorsalva"]++; |
3114 | 3014 | } |
... | ... | @@ -3144,8 +3044,9 @@ function redesenhaMapa() |
3144 | 3044 | // |
3145 | 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 | 3050 | $e = $m->mapa->extent; |
3150 | 3051 | $ext = $e->minx." ".$e->miny." ".$e->maxx." ".$e->maxy; |
3151 | 3052 | $res["mapimagem"] = ""; |
... | ... | @@ -3160,9 +3061,6 @@ function redesenhaMapa() |
3160 | 3061 | $res["mappath"] = ""; |
3161 | 3062 | $res["mapurl"] = ""; |
3162 | 3063 | } |
3163 | - else{ | |
3164 | - $res = $m->redesenhaCorpo($tipoimagem,$utilizacgi,$locmapserv); | |
3165 | - } | |
3166 | 3064 | $res["mensagens"] = $m->pegaMensagens(); |
3167 | 3065 | $res["tempo"] = microtime(1) - $tempo; |
3168 | 3066 | restauraCon($map_file,$postgis_mapa); | ... | ... |
classesphp/mapa_inicia.php
... | ... | @@ -5,14 +5,14 @@ Title: mapa_inicia.php |
5 | 5 | Inicia um novo mapa. |
6 | 6 | |
7 | 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 | 11 | Licenca: |
11 | 12 | |
12 | 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 | 17 | Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil |
18 | 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 | 42 | |
43 | 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 | 47 | $openid - indica se o usuário foi ou não autenticado em alguma rede social (veja i3geo/pacotes/openid) |
46 | 48 | |
47 | 49 | $interfacePadrao - interface definida em ms_configura.php |
... | ... | @@ -230,6 +232,7 @@ function iniciaMapa() |
230 | 232 | $of->set("imagemode",MS_IMAGEMODE_RGBA); |
231 | 233 | $of->setOption("QUANTIZE_FORCE","OFF"); |
232 | 234 | $of->set("driver","AGG/PNG"); |
235 | + $m->mapa->setmetadata("interface",$interface); | |
233 | 236 | $m->salva(); |
234 | 237 | |
235 | 238 | $nomes = nomeRandomico(12); | ... | ... |
ferramentas/busca/index.js.php
... | ... | @@ -225,7 +225,7 @@ i3GEOF.busca = { |
225 | 225 | {tipo = "qualquer";} |
226 | 226 | if ($i("i3GEObuscaregiao").checked === true) |
227 | 227 | {onde = "regiao";} |
228 | - palavra = removeAcentos(palavra); | |
228 | + palavra = i3GEO.util.removeAcentos(palavra); | |
229 | 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 | 230 | cp = new cpaint(); |
231 | 231 | cp.set_response_type("json"); | ... | ... |