Commit f3e27dd10d6aa8533ba885795891fab0a54201a1
1 parent
1d766e30
Exists in
master
and in
7 other branches
Atualização da documentação e das rotinas que processam projetos gvsig. Agora, t…
…odas as vistas de um projeto são adicionadas ao mapa quando se usa um arquivo gvsig
Showing
8 changed files
with
74 additions
and
52 deletions
Show diff stats
classesphp/classe_mapa.php
| @@ -976,15 +976,16 @@ $random - indica se os nomes dos novos layers serão modificados ou nao | @@ -976,15 +976,16 @@ $random - indica se os nomes dos novos layers serão modificados ou nao | ||
| 976 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); | 976 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); |
| 977 | $gm = new gvsig2mapfile($nomemap); | 977 | $gm = new gvsig2mapfile($nomemap); |
| 978 | $gvsigview = $gm->getViewsNames(); | 978 | $gvsigview = $gm->getViewsNames(); |
| 979 | - $gvsigview = $gvsigview[0]; | ||
| 980 | - $dataView = $gm->getViewData($gvsigview); | ||
| 981 | - $adicionar = array(); | ||
| 982 | - foreach($dataView["layerNames"] as $t){ | ||
| 983 | - if(!in_array($t,$this->nomes)){ | ||
| 984 | - $adicionar[] = $t; | 979 | + foreach($gvsigview as $gv){ |
| 980 | + $dataView = $gm->getViewData($gvsigview); | ||
| 981 | + $adicionar = array(); | ||
| 982 | + foreach($dataView["layerNames"] as $t){ | ||
| 983 | + if(!in_array($t,$this->nomes)){ | ||
| 984 | + $adicionar[] = $t; | ||
| 985 | + } | ||
| 985 | } | 986 | } |
| 987 | + $this->mapa = $gm->addLayers($this->mapa,$gv,$adicionar); | ||
| 986 | } | 988 | } |
| 987 | - $this->mapa = $gm->addLayers($this->mapa,$gvsigview,$adicionar); | ||
| 988 | foreach($adicionar as $nome){ | 989 | foreach($adicionar as $nome){ |
| 989 | $l = $this->mapa->getlayerbyname($nome); | 990 | $l = $this->mapa->getlayerbyname($nome); |
| 990 | //reposiciona o layer se for o caso | 991 | //reposiciona o layer se for o caso |
classesphp/funcoes_gerais.php
| @@ -1530,6 +1530,7 @@ Include: | @@ -1530,6 +1530,7 @@ Include: | ||
| 1530 | function downloadTema2($map_file,$tema,$locaplic,$dir_tmp,$postgis_mapa) | 1530 | function downloadTema2($map_file,$tema,$locaplic,$dir_tmp,$postgis_mapa) |
| 1531 | { | 1531 | { |
| 1532 | ini_set("max_execution_time","1800"); | 1532 | ini_set("max_execution_time","1800"); |
| 1533 | + $temas = array(); | ||
| 1533 | if(file_exists($locaplic."/ms_configura.php")){ | 1534 | if(file_exists($locaplic."/ms_configura.php")){ |
| 1534 | include($locaplic."/ms_configura.php"); | 1535 | include($locaplic."/ms_configura.php"); |
| 1535 | } | 1536 | } |
| @@ -1628,10 +1629,12 @@ function downloadTema2($map_file,$tema,$locaplic,$dir_tmp,$postgis_mapa) | @@ -1628,10 +1629,12 @@ function downloadTema2($map_file,$tema,$locaplic,$dir_tmp,$postgis_mapa) | ||
| 1628 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); | 1629 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); |
| 1629 | $gm = new gvsig2mapfile($locaplic."/temas/".$tema.".gvp"); | 1630 | $gm = new gvsig2mapfile($locaplic."/temas/".$tema.".gvp"); |
| 1630 | $gvsigview = $gm->getViewsNames(); | 1631 | $gvsigview = $gm->getViewsNames(); |
| 1631 | - $gvsigview = $gvsigview[0]; | ||
| 1632 | - $dataView = $gm->getViewData($gvsigview); | ||
| 1633 | - $map = $gm->addLayers($map,$gvsigview,$dataView["layerNames"]); | ||
| 1634 | - $temas = $gm->nomesLayersAdicionados; | 1632 | + foreach($gvsigview as $gv){ |
| 1633 | + $dataView = $gm->getViewData($gvsigview); | ||
| 1634 | + $map = $gm->addLayers($map,$gvsigview,$dataView["layerNames"]); | ||
| 1635 | + $temas = array_merge($temas,$gm->nomesLayersAdicionados); | ||
| 1636 | + } | ||
| 1637 | + //$temas = $gm->nomesLayersAdicionados; | ||
| 1635 | } | 1638 | } |
| 1636 | // | 1639 | // |
| 1637 | //salva o mapfile com um outro nome para evitar que o mapa atual, se estiver aberto, seja modificado | 1640 | //salva o mapfile com um outro nome para evitar que o mapa atual, se estiver aberto, seja modificado |
geraminiatura.php
| @@ -241,12 +241,13 @@ function verificaMiniatura($map,$tipo,$admin=false) | @@ -241,12 +241,13 @@ function verificaMiniatura($map,$tipo,$admin=false) | ||
| 241 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); | 241 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); |
| 242 | $gm = new gvsig2mapfile($tema); | 242 | $gm = new gvsig2mapfile($tema); |
| 243 | $gvsigview = $gm->getViewsNames(); | 243 | $gvsigview = $gm->getViewsNames(); |
| 244 | - $gvsigview = $gvsigview[0]; | ||
| 245 | - $dataView = $gm->getViewData($gvsigview); | 244 | + foreach($gvsigview as $v){ |
| 245 | + $dataView = $gm->getViewData($v); | ||
| 246 | + $mapa = $gm->addLayers($mapa,$v,$dataView["layerNames"]); | ||
| 247 | + } | ||
| 246 | $next = $dataView["extent"]; | 248 | $next = $dataView["extent"]; |
| 247 | $ext = $mapa->extent; | 249 | $ext = $mapa->extent; |
| 248 | - $ext->setextent($next[0],$next[1],$next[2],$next[3]); | ||
| 249 | - $mapa = $gm->addLayers($mapa,$gvsigview,$dataView["layerNames"]); | 250 | + $ext->setextent($next[0],$next[1],$next[2],$next[3]); |
| 250 | } | 251 | } |
| 251 | if ($tipo == "mini" || $tipo == "todos"){ | 252 | if ($tipo == "mini" || $tipo == "todos"){ |
| 252 | $mapa->setsize(50,50); | 253 | $mapa->setsize(50,50); |
ms_criamapa.php
| @@ -125,9 +125,9 @@ image_wms - tipo de imagem disponível | @@ -125,9 +125,9 @@ image_wms - tipo de imagem disponível | ||
| 125 | 125 | ||
| 126 | versao_wms - Versão do WMS (necessário quando da inclusão de uma camada WMS diretamente pela URL) | 126 | versao_wms - Versão do WMS (necessário quando da inclusão de uma camada WMS diretamente pela URL) |
| 127 | 127 | ||
| 128 | -gvsiggvp - (depreciado na versão 4.7) endereço no servidor do arquivo de projeto gvSig (gvp) que será utilizado para construir o mapa (experimental) | 128 | +gvsiggvp - (depreciado na versão 4.7 - utilize o parametro temasa) endereço no servidor do arquivo de projeto gvSig (gvp) que será utilizado para construir o mapa (experimental) |
| 129 | 129 | ||
| 130 | -gvsigview - (depreciado na versão 4.7) nome da view do projeto gvSig. Se nao for especificado, sera considerada a primeira view existente no projeto. Exemplo (http://localhost/i3geo/ms_criamapa.php?gvsiggvp=c:\temp\teste.gvp&gvsigview=Untitled - 0) | 130 | +gvsigview - lista com nomes de views existentes no projeto gvSig separado por virgula. Se for vazio, serao adicionadas todas as views. Exemplo (http://localhost/i3geo/ms_criamapa.php?gvsiggvp=c:\temp\teste.gvp&gvsigview=Untitled - 0) |
| 131 | */ | 131 | */ |
| 132 | 132 | ||
| 133 | //$_COOKIE = array(); | 133 | //$_COOKIE = array(); |
| @@ -680,12 +680,13 @@ function incluiTemasIniciais(){ | @@ -680,12 +680,13 @@ function incluiTemasIniciais(){ | ||
| 680 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); | 680 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); |
| 681 | $gm = new gvsig2mapfile($arqtemp); | 681 | $gm = new gvsig2mapfile($arqtemp); |
| 682 | $gvsigview = $gm->getViewsNames(); | 682 | $gvsigview = $gm->getViewsNames(); |
| 683 | - $gvsigview = $gvsigview[0]; | ||
| 684 | - $dataView = $gm->getViewData($gvsigview); | 683 | + foreach($gvsigview as $v){ |
| 684 | + $dataView = $gm->getViewData($v); | ||
| 685 | + $mapn = $gm->addLayers($mapn,$v,$dataView["layerNames"]); | ||
| 686 | + } | ||
| 685 | $next = $dataView["extent"]; | 687 | $next = $dataView["extent"]; |
| 686 | $ext = $mapn->extent; | 688 | $ext = $mapn->extent; |
| 687 | $ext->setextent($next[0],$next[1],$next[2],$next[3]); | 689 | $ext->setextent($next[0],$next[1],$next[2],$next[3]); |
| 688 | - $mapn = $gm->addLayers($mapn,$gvsigview,$dataView["layerNames"]); | ||
| 689 | } | 690 | } |
| 690 | } | 691 | } |
| 691 | } | 692 | } |
| @@ -1111,18 +1112,26 @@ function incluiMapaGvsig($gvsiggvp,$gvsigview=""){ | @@ -1111,18 +1112,26 @@ function incluiMapaGvsig($gvsiggvp,$gvsigview=""){ | ||
| 1111 | $gm = new gvsig2mapfile($gvsiggvp); | 1112 | $gm = new gvsig2mapfile($gvsiggvp); |
| 1112 | if(empty($gvsigview)){ | 1113 | if(empty($gvsigview)){ |
| 1113 | $gvsigview = $gm->getViewsNames(); | 1114 | $gvsigview = $gm->getViewsNames(); |
| 1114 | - $gvsigview = $gvsigview[0]; | 1115 | + //$gvsigview = $gvsigview[0]; |
| 1116 | + } | ||
| 1117 | + else{ | ||
| 1118 | + $gvsigview = str_replace(" ",",",$gvsigview); | ||
| 1119 | + $gvsigview = explode(",",$gvsigview); | ||
| 1115 | } | 1120 | } |
| 1116 | - $dataView = $gm->getViewData($gvsigview); | ||
| 1117 | - $numlayers = $mapn->numlayers; | ||
| 1118 | - for ($i=0;$i < $numlayers;$i++){ | ||
| 1119 | - $layer = $mapn->getlayer($i); | ||
| 1120 | - $layer->set("status",MS_DELETE); | 1121 | + $numlayers = $mapn->numlayers; |
| 1122 | + for ($i=0;$i < $numlayers;$i++){ | ||
| 1123 | + $layer = $mapn->getlayer($i); | ||
| 1124 | + $layer->set("status",MS_DELETE); | ||
| 1125 | + } | ||
| 1126 | + foreach($gvsigview as $v){ | ||
| 1127 | + if($v != ""){ | ||
| 1128 | + $dataView = $gm->getViewData($v); | ||
| 1129 | + $mapn = $gm->addLayers($mapn,$gvsigview,$dataView["layerNames"]); | ||
| 1130 | + } | ||
| 1121 | } | 1131 | } |
| 1122 | $next = $dataView["extent"]; | 1132 | $next = $dataView["extent"]; |
| 1123 | $ext = $mapn->extent; | 1133 | $ext = $mapn->extent; |
| 1124 | $ext->setextent($next[0],$next[1],$next[2],$next[3]); | 1134 | $ext->setextent($next[0],$next[1],$next[2],$next[3]); |
| 1125 | - $mapn = $gm->addLayers($mapn,$gvsigview,$dataView["layerNames"]); | ||
| 1126 | } | 1135 | } |
| 1127 | /* | 1136 | /* |
| 1128 | Captura e mostra os erros de processamento do mapserver | 1137 | Captura e mostra os erros de processamento do mapserver |
ogc.php
| @@ -323,9 +323,10 @@ if ($tipo == "" || $tipo == "metadados"){ | @@ -323,9 +323,10 @@ if ($tipo == "" || $tipo == "metadados"){ | ||
| 323 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); | 323 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); |
| 324 | $gm = new gvsig2mapfile($locaplic."/temas/".$tx.".gvp"); | 324 | $gm = new gvsig2mapfile($locaplic."/temas/".$tx.".gvp"); |
| 325 | $gvsigview = $gm->getViewsNames(); | 325 | $gvsigview = $gm->getViewsNames(); |
| 326 | - $gvsigview = $gvsigview[0]; | ||
| 327 | - $dataView = $gm->getViewData($gvsigview); | ||
| 328 | - $oMap = $gm->addLayers($oMap,$gvsigview,$dataView["layerNames"]); | 326 | + foreach($gvsigview as $gv){ |
| 327 | + $dataView = $gm->getViewData($gv); | ||
| 328 | + $oMap = $gm->addLayers($oMap,$gv,$dataView["layerNames"]); | ||
| 329 | + } | ||
| 329 | $numlayers = $oMap->numlayers; | 330 | $numlayers = $oMap->numlayers; |
| 330 | $layers = array(); | 331 | $layers = array(); |
| 331 | //$layers[] = "default"; | 332 | //$layers[] = "default"; |
pacotes/gvsig/gvsig2mapfile/upload.htm
| @@ -13,13 +13,13 @@ | @@ -13,13 +13,13 @@ | ||
| 13 | <img src='../../../imagens/i3geo1bw.jpg' > | 13 | <img src='../../../imagens/i3geo1bw.jpg' > |
| 14 | <p class="paragrafo" > | 14 | <p class="paragrafo" > |
| 15 | <a href='http://softwarepublico.gov.br'>http://softwarepublico.gov.br</a><br> | 15 | <a href='http://softwarepublico.gov.br'>http://softwarepublico.gov.br</a><br> |
| 16 | -<a href='http://svn.softwarepublico.gov.br/trac/i3geo/browser/i3geo/pacotes/gvsig/gvsig2mapfile' >Código fonte</a><br> | 16 | +<a href='http://svn.softwarepublico.gov.br/trac/i3geo/browser/i3geo/pacotes/gvsig/gvsig2mapfile' >Código fonte</a><br> |
| 17 | <form id=i3GEOupload target="i3GEOuploadiframe" action="upload.php" method="post" ENCTYPE="multipart/form-data"> | 17 | <form id=i3GEOupload target="i3GEOuploadiframe" action="upload.php" method="post" ENCTYPE="multipart/form-data"> |
| 18 | - <p class="paragrafo" >Arquivo de projeto gvSig (.gvp). Será utilizada a primeira "view" existente no projeto.<br> | ||
| 19 | - A conversão ainda é experimental, caso ocorra algum erro, envie o seu projeto para o e-mail: edmar.moretti@gmail.com<br> | ||
| 20 | - Não há garantias de sigilo em relação ao arquivo enviado ao servidor. Evite utilizar dados restritos, como endereços e senhas.<br> | ||
| 21 | - No caso de camadas baseadas em conexões com banco de dados, a senha colocada em CONNECTION é igual ao nome do usuário, uma vez | ||
| 22 | - que não é armazenada no arquivo .gvp<br><br> | 18 | + <p class="paragrafo" >Arquivo de projeto gvSig (.gvp). Serão utilizadas todas as vistas existentes no projeto.<br> |
| 19 | + A conversão ainda é experimental, caso ocorra algum erro, envie o seu projeto para o e-mail: edmar.moretti@gmail.com<br> | ||
| 20 | + Não há garantias de sigilo em relação ao arquivo enviado ao servidor. Evite utilizar dados restritos, como endereços e senhas.<br> | ||
| 21 | + No caso de camadas baseadas em conexões com banco de dados, a senha colocada em CONNECTION é igual ao nome do usuário, uma vez | ||
| 22 | + que não é armazenada no arquivo .gvp. No final da lista de vistas e layers deve aparecer o mapfile gerado<br><br> | ||
| 23 | <input type="file" size=42 name="i3GEOuploadfile" style="top:0px;left:0px;cursor:pointer;"></p> | 23 | <input type="file" size=42 name="i3GEOuploadfile" style="top:0px;left:0px;cursor:pointer;"></p> |
| 24 | <input type="submit" value="Upload" size=12 name="submit"> | 24 | <input type="submit" value="Upload" size=12 name="submit"> |
| 25 | <input type="hidden" name="MAX_FILE_SIZE" value="100000"> | 25 | <input type="hidden" name="MAX_FILE_SIZE" value="100000"> |
pacotes/gvsig/gvsig2mapfile/upload.php
| @@ -43,26 +43,32 @@ if (isset($_FILES['i3GEOuploadfile']['name'])) | @@ -43,26 +43,32 @@ if (isset($_FILES['i3GEOuploadfile']['name'])) | ||
| 43 | if($status != 1) | 43 | if($status != 1) |
| 44 | {ob_clean();echo "Ocorreu um erro no envio do arquivo";exit;} | 44 | {ob_clean();echo "Ocorreu um erro no envio do arquivo";exit;} |
| 45 | 45 | ||
| 46 | - if($status == 1) | ||
| 47 | - { | 46 | + if($status == 1){ |
| 48 | //echo $Arquivon; | 47 | //echo $Arquivon; |
| 48 | + $nomefim = str_replace(".gvp",".map",$Arquivon); | ||
| 49 | + echo "#arquivo final: $nomefim <br>"; | ||
| 49 | $gm = new gvsig2mapfile($Arquivon); | 50 | $gm = new gvsig2mapfile($Arquivon); |
| 50 | - $views = $gm->getViewsNames(); | ||
| 51 | - $dataView = $gm->getViewData($views[0]); | ||
| 52 | $numlayers = $mapn->numlayers; | 51 | $numlayers = $mapn->numlayers; |
| 53 | - for ($i=0;$i < $numlayers;$i++) | ||
| 54 | - { | ||
| 55 | - $layer = $mapn->getlayer($i); | ||
| 56 | - $layer->set("status",MS_DELETE); | 52 | + for ($i=0;$i < $numlayers;$i++){ |
| 53 | + $layer = $mapn->getlayer($i); | ||
| 54 | + $layer->set("status",MS_DELETE); | ||
| 55 | + } | ||
| 56 | + $views = $gm->getViewsNames(); | ||
| 57 | + foreach($views as $v){ | ||
| 58 | + echo "#vista: ".$v; | ||
| 59 | + $dataView = $gm->getViewData($v); | ||
| 60 | + $layernames = $dataView["layerNames"]; | ||
| 61 | + echo "<br>#layers: ".implode(", ",$layernames)."<br>"; | ||
| 62 | + $mapn = $gm->addLayers($mapn,$v,$layernames); | ||
| 63 | + $mapn->save($nomefim); | ||
| 57 | } | 64 | } |
| 58 | $next = $dataView["extent"]; | 65 | $next = $dataView["extent"]; |
| 59 | $ext = $mapn->extent; | 66 | $ext = $mapn->extent; |
| 60 | $ext->setextent($next[0],$next[1],$next[2],$next[3]); | 67 | $ext->setextent($next[0],$next[1],$next[2],$next[3]); |
| 61 | 68 | ||
| 62 | - $mapn = $gm->addLayers($mapn,$views[0],$dataView["layerNames"]); | ||
| 63 | - $mapn->save(str_replace(".gvp",".map",$Arquivon)); | 69 | + $mapn->save($nomefim); |
| 64 | $handle = fopen(str_replace(".gvp",".map",$Arquivon), "r"); | 70 | $handle = fopen(str_replace(".gvp",".map",$Arquivon), "r"); |
| 65 | - echo "<html>"; | 71 | + echo "<html>#mapfile: <br>"; |
| 66 | while (!feof($handle)) | 72 | while (!feof($handle)) |
| 67 | { | 73 | { |
| 68 | $linha = fgets($handle); | 74 | $linha = fgets($handle); |
testamapfile.php
| @@ -310,15 +310,16 @@ function verifica($map,$solegenda){ | @@ -310,15 +310,16 @@ function verifica($map,$solegenda){ | ||
| 310 | $gvsiggvp = $locaplic."/".$tema; | 310 | $gvsiggvp = $locaplic."/".$tema; |
| 311 | } | 311 | } |
| 312 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); | 312 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); |
| 313 | - $gm = new gvsig2mapfile($gvsiggvp); | 313 | + $gm = new gvsig2mapfile($gvsiggvp); |
| 314 | $gvsigview = $gm->getViewsNames(); | 314 | $gvsigview = $gm->getViewsNames(); |
| 315 | - $gvsigview = $gvsigview[0]; | ||
| 316 | - $dataView = $gm->getViewData($gvsigview); | ||
| 317 | - $numlayers = $mapn->numlayers; | 315 | + foreach($gvsigview as $v){ |
| 316 | + $dataView = $gm->getViewData($v); | ||
| 317 | + $mapa = $gm->addLayers($mapa,$v,$dataView["layerNames"]); | ||
| 318 | + } | ||
| 318 | $next = $dataView["extent"]; | 319 | $next = $dataView["extent"]; |
| 319 | $ext = $mapa->extent; | 320 | $ext = $mapa->extent; |
| 320 | $ext->setextent($next[0],$next[1],$next[2],$next[3]); | 321 | $ext->setextent($next[0],$next[1],$next[2],$next[3]); |
| 321 | - $mapa = $gm->addLayers($mapa,$gvsigview,$dataView["layerNames"]); | 322 | + |
| 322 | } | 323 | } |
| 323 | if ($tipo == "mini"){ | 324 | if ($tipo == "mini"){ |
| 324 | $mapa->setsize(50,50); | 325 | $mapa->setsize(50,50); |