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