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 | 976 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); |
| 977 | 977 | $gm = new gvsig2mapfile($nomemap); |
| 978 | 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 | 989 | foreach($adicionar as $nome){ |
| 989 | 990 | $l = $this->mapa->getlayerbyname($nome); |
| 990 | 991 | //reposiciona o layer se for o caso | ... | ... |
classesphp/funcoes_gerais.php
| ... | ... | @@ -1530,6 +1530,7 @@ Include: |
| 1530 | 1530 | function downloadTema2($map_file,$tema,$locaplic,$dir_tmp,$postgis_mapa) |
| 1531 | 1531 | { |
| 1532 | 1532 | ini_set("max_execution_time","1800"); |
| 1533 | + $temas = array(); | |
| 1533 | 1534 | if(file_exists($locaplic."/ms_configura.php")){ |
| 1534 | 1535 | include($locaplic."/ms_configura.php"); |
| 1535 | 1536 | } |
| ... | ... | @@ -1628,10 +1629,12 @@ function downloadTema2($map_file,$tema,$locaplic,$dir_tmp,$postgis_mapa) |
| 1628 | 1629 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); |
| 1629 | 1630 | $gm = new gvsig2mapfile($locaplic."/temas/".$tema.".gvp"); |
| 1630 | 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 | 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 | 241 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); |
| 242 | 242 | $gm = new gvsig2mapfile($tema); |
| 243 | 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 | 248 | $next = $dataView["extent"]; |
| 247 | 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 | 252 | if ($tipo == "mini" || $tipo == "todos"){ |
| 252 | 253 | $mapa->setsize(50,50); | ... | ... |
ms_criamapa.php
| ... | ... | @@ -125,9 +125,9 @@ image_wms - tipo de imagem disponível |
| 125 | 125 | |
| 126 | 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 | 133 | //$_COOKIE = array(); |
| ... | ... | @@ -680,12 +680,13 @@ function incluiTemasIniciais(){ |
| 680 | 680 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); |
| 681 | 681 | $gm = new gvsig2mapfile($arqtemp); |
| 682 | 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 | 687 | $next = $dataView["extent"]; |
| 686 | 688 | $ext = $mapn->extent; |
| 687 | 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 | 1112 | $gm = new gvsig2mapfile($gvsiggvp); |
| 1112 | 1113 | if(empty($gvsigview)){ |
| 1113 | 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 | 1132 | $next = $dataView["extent"]; |
| 1123 | 1133 | $ext = $mapn->extent; |
| 1124 | 1134 | $ext->setextent($next[0],$next[1],$next[2],$next[3]); |
| 1125 | - $mapn = $gm->addLayers($mapn,$gvsigview,$dataView["layerNames"]); | |
| 1126 | 1135 | } |
| 1127 | 1136 | /* |
| 1128 | 1137 | Captura e mostra os erros de processamento do mapserver | ... | ... |
ogc.php
| ... | ... | @@ -323,9 +323,10 @@ if ($tipo == "" || $tipo == "metadados"){ |
| 323 | 323 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); |
| 324 | 324 | $gm = new gvsig2mapfile($locaplic."/temas/".$tx.".gvp"); |
| 325 | 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 | 330 | $numlayers = $oMap->numlayers; |
| 330 | 331 | $layers = array(); |
| 331 | 332 | //$layers[] = "default"; | ... | ... |
pacotes/gvsig/gvsig2mapfile/upload.htm
| ... | ... | @@ -13,13 +13,13 @@ |
| 13 | 13 | <img src='../../../imagens/i3geo1bw.jpg' > |
| 14 | 14 | <p class="paragrafo" > |
| 15 | 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 | 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 | 23 | <input type="file" size=42 name="i3GEOuploadfile" style="top:0px;left:0px;cursor:pointer;"></p> |
| 24 | 24 | <input type="submit" value="Upload" size=12 name="submit"> |
| 25 | 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 | 43 | if($status != 1) |
| 44 | 44 | {ob_clean();echo "Ocorreu um erro no envio do arquivo";exit;} |
| 45 | 45 | |
| 46 | - if($status == 1) | |
| 47 | - { | |
| 46 | + if($status == 1){ | |
| 48 | 47 | //echo $Arquivon; |
| 48 | + $nomefim = str_replace(".gvp",".map",$Arquivon); | |
| 49 | + echo "#arquivo final: $nomefim <br>"; | |
| 49 | 50 | $gm = new gvsig2mapfile($Arquivon); |
| 50 | - $views = $gm->getViewsNames(); | |
| 51 | - $dataView = $gm->getViewData($views[0]); | |
| 52 | 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 | 65 | $next = $dataView["extent"]; |
| 59 | 66 | $ext = $mapn->extent; |
| 60 | 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 | 70 | $handle = fopen(str_replace(".gvp",".map",$Arquivon), "r"); |
| 65 | - echo "<html>"; | |
| 71 | + echo "<html>#mapfile: <br>"; | |
| 66 | 72 | while (!feof($handle)) |
| 67 | 73 | { |
| 68 | 74 | $linha = fgets($handle); | ... | ... |
testamapfile.php
| ... | ... | @@ -310,15 +310,16 @@ function verifica($map,$solegenda){ |
| 310 | 310 | $gvsiggvp = $locaplic."/".$tema; |
| 311 | 311 | } |
| 312 | 312 | include_once($locaplic."/pacotes/gvsig/gvsig2mapfile/class.gvsig2mapfile.php"); |
| 313 | - $gm = new gvsig2mapfile($gvsiggvp); | |
| 313 | + $gm = new gvsig2mapfile($gvsiggvp); | |
| 314 | 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 | 319 | $next = $dataView["extent"]; |
| 319 | 320 | $ext = $mapa->extent; |
| 320 | 321 | $ext->setextent($next[0],$next[1],$next[2],$next[3]); |
| 321 | - $mapa = $gm->addLayers($mapa,$gvsigview,$dataView["layerNames"]); | |
| 322 | + | |
| 322 | 323 | } |
| 323 | 324 | if ($tipo == "mini"){ |
| 324 | 325 | $mapa->setsize(50,50); | ... | ... |