Commit 9d98180275859e71c284622183886e562264cc31
1 parent
e5c922d8
Exists in
master
and in
7 other branches
--no commit message
Showing
3 changed files
with
159 additions
and
126 deletions
Show diff stats
ogc.php
| ... | ... | @@ -77,6 +77,8 @@ ogc.php?tema=bioma |
| 77 | 77 | ogc.php?tema=/var/www/i3geo/aplicmap/geral1debianv6.map&layers=mundo |
| 78 | 78 | |
| 79 | 79 | */ |
| 80 | +set_time_limit(0); | |
| 81 | +ini_set('memory_limit', '512M'); | |
| 80 | 82 | $_GET = array_merge($_GET,$_POST); |
| 81 | 83 | // |
| 82 | 84 | //caso nenhum parametros tenha sido enviado |
| ... | ... | @@ -166,7 +168,8 @@ if(!isset($tema) && isset($typename)){ |
| 166 | 168 | if(!file_exists($tema)){ |
| 167 | 169 | $_GET["layers"] = $tema; |
| 168 | 170 | $_GET["LAYERS"] = $tema; |
| 169 | -} | |
| 171 | +} | |
| 172 | + | |
| 170 | 173 | $layers = $tema; |
| 171 | 174 | // |
| 172 | 175 | //verifica o OUTPUTFORMAT e o cache de arquivo |
| ... | ... | @@ -284,13 +287,15 @@ $arrayget["Z"] = ""; |
| 284 | 287 | $arrayget["X"] = ""; |
| 285 | 288 | $arrayget["Y"] = ""; |
| 286 | 289 | $arrayget["tms"] = ""; |
| 287 | -$nomeMapfileTmp = $dir_tmp."/ogc_".md5(implode("",$arrayget))."_".$agora.".map"; | |
| 290 | +$nomeMapfileTmp = $dir_tmp."/ogc_".md5(implode("",$arrayget))."_".$agora.".map"; | |
| 291 | + | |
| 288 | 292 | //essa variavel e usada para definir se a imagem final gerada devera ser cortada ou nao |
| 289 | 293 | $cortePixels = 0; |
| 290 | 294 | if(file_exists($nomeMapfileTmp) && $tipo == ""){ |
| 291 | 295 | $oMap = ms_newMapobj($nomeMapfileTmp); |
| 292 | 296 | } |
| 293 | 297 | else{ |
| 298 | + | |
| 294 | 299 | if(empty($ogcwsmap)){ |
| 295 | 300 | $oMap = ms_newMapobj($locaplic."/aplicmap/ogcwsv".$versao.".map"); |
| 296 | 301 | } |
| ... | ... | @@ -322,7 +327,8 @@ else{ |
| 322 | 327 | $oMap->setmetadata("wms_srs","EPSG:4326"); |
| 323 | 328 | } |
| 324 | 329 | $e = $oMap->extent; |
| 325 | - $extensaoMap = ($e->minx)." ".($e->miny)." ".($e->maxx)." ".($e->maxy); | |
| 330 | + $extensaoMap = ($e->minx)." ".($e->miny)." ".($e->maxx)." ".($e->maxy); | |
| 331 | + | |
| 326 | 332 | //gera o mapa |
| 327 | 333 | if ($tema != ""){ |
| 328 | 334 | $listatema = explode(" ",$tema); |
| ... | ... | @@ -335,6 +341,7 @@ else{ |
| 335 | 341 | $temai3geo = false; |
| 336 | 342 | $nmap->setmetadata("ows_enable_request","*"); |
| 337 | 343 | } |
| 344 | + | |
| 338 | 345 | foreach ($listatema as $tx){ |
| 339 | 346 | $extensao = ".map"; |
| 340 | 347 | if($temai3geo == true && file_exists($locaplic."/temas/".$tx.".php")){ |
| ... | ... | @@ -344,10 +351,13 @@ else{ |
| 344 | 351 | $extensao = ".gvp"; |
| 345 | 352 | } |
| 346 | 353 | if($extensao == ".map"){ |
| 354 | + | |
| 347 | 355 | //cria o mapfile com base no sistema de metadados estatisticos |
| 348 | 356 | //verifica se o id_medida_variavel existe no mapfile e nao foi passado como um parametro |
| 349 | - if(!isset($id_medida_variavel) && $temai3geo == true){ | |
| 357 | + if(!isset($id_medida_variavel) && $temai3geo == true){ | |
| 358 | + | |
| 350 | 359 | $nmap = ms_newMapobj($locaplic."/temas/".$tx.".map"); |
| 360 | + | |
| 351 | 361 | $l = $nmap->getlayer(0); |
| 352 | 362 | $teste = $l->getmetadata("METAESTAT_ID_MEDIDA_VARIAVEL"); |
| 353 | 363 | if($teste != "" && $l->data == ""){ |
| ... | ... | @@ -363,11 +373,13 @@ else{ |
| 363 | 373 | $nmap = ms_newMapobj($mapfileMetaestat["mapfile"]); |
| 364 | 374 | $nmap->setmetadata("ows_enable_request","*"); |
| 365 | 375 | $req->setParameter("LAYERS", "ogcmetaestat".$id_medida_variavel); |
| 366 | - } | |
| 376 | + } | |
| 377 | + | |
| 367 | 378 | if($temai3geo == true){ |
| 368 | 379 | $nmap = ms_newMapobj($locaplic."/temas/".$tx.".map"); |
| 369 | 380 | $nmap->setmetadata("ows_enable_request","*"); |
| 370 | 381 | } |
| 382 | + | |
| 371 | 383 | if($temai3geo == false || empty($layers)){ |
| 372 | 384 | $ts = $nmap->getalllayernames(); |
| 373 | 385 | $nmap->setmetadata("ows_enable_request","*"); |
| ... | ... | @@ -375,13 +387,16 @@ else{ |
| 375 | 387 | else{ |
| 376 | 388 | $ts = explode(",",str_replace(" ",",",$layers)); |
| 377 | 389 | } |
| 390 | + | |
| 378 | 391 | foreach ($ts as $t){ |
| 379 | 392 | $l = $nmap->getlayerbyname($t); |
| 380 | 393 | if($l == ""){ |
| 381 | 394 | $l = $nmap->getlayer(0); |
| 382 | 395 | } |
| 383 | - $permite = $l->getmetadata("permiteogc"); | |
| 396 | + $permite = $l->getmetadata("permiteogc"); | |
| 397 | + | |
| 384 | 398 | if(strtolower($permite) != "nao"){ |
| 399 | + | |
| 385 | 400 | //necessário pq o mapfile pode ter todos os layers como default |
| 386 | 401 | if($temai3geo == false){ |
| 387 | 402 | $l->set("status",MS_OFF); |
| ... | ... | @@ -631,13 +646,15 @@ else{ |
| 631 | 646 | $oMap->setFontSet($locaplic."/symbols/".basename($oMap->fontsetfilename)); |
| 632 | 647 | // |
| 633 | 648 | //caso seja download ou json ou csv |
| 634 | - // | |
| 649 | + // | |
| 650 | + | |
| 635 | 651 | processaOutputformatMapfile(); |
| 636 | 652 | |
| 637 | 653 | $oMap->save($nomeMapfileTmp); |
| 638 | 654 | validaAcessoTemas($nomeMapfileTmp,true); |
| 639 | 655 | $oMap = ms_newMapobj($nomeMapfileTmp); |
| 640 | 656 | } |
| 657 | + | |
| 641 | 658 | if(ob_get_contents ()){ |
| 642 | 659 | ob_end_clean(); |
| 643 | 660 | } |
| ... | ... | @@ -830,7 +847,8 @@ if(strtolower($req->getValueByName("REQUEST")) == "getlegendgraphic"){ |
| 830 | 847 | exit; |
| 831 | 848 | } |
| 832 | 849 | } |
| 833 | -} | |
| 850 | +} | |
| 851 | + | |
| 834 | 852 | if(strtolower($req->getValueByName("REQUEST")) == "getfeature"){ |
| 835 | 853 | $l = $oMap->getlayer(0); |
| 836 | 854 | if($req->getValueByName("TYPENAME") == "" || $req->getValueByName("TYPENAME") == "undefined"){ |
| ... | ... | @@ -852,7 +870,6 @@ if(strtolower($req->getValueByName("REQUEST")) == "getfeatureinfo"){ |
| 852 | 870 | $_GET["SRS"] = "EPSG:3857"; |
| 853 | 871 | } |
| 854 | 872 | } |
| 855 | - | |
| 856 | 873 | ms_ioinstallstdouttobuffer(); |
| 857 | 874 | // |
| 858 | 875 | //verifica parametro outputformat e ajusta a requisicao |
| ... | ... | @@ -878,22 +895,26 @@ elseif(!isset($OUTPUTFORMAT)){ |
| 878 | 895 | //$ogrOutput vem de ms_configura.php |
| 879 | 896 | |
| 880 | 897 | //precisa limpar o cabecalho |
| 881 | -if(strtolower($OUTPUTFORMAT) == "geojson" || strtolower($OUTPUTFORMAT) == "json"){ | |
| 898 | +if(strtolower($OUTPUTFORMAT) == "geojson" || strtolower($OUTPUTFORMAT) == "json"){ | |
| 882 | 899 | $arq = $dir_tmp."/".$tema.".json"; |
| 883 | 900 | if(isset($ogrOutput) && $ogrOutput == false){ |
| 884 | 901 | exportaGeojson(); |
| 885 | 902 | exit; |
| 886 | 903 | } |
| 887 | - $oMap->owsdispatch($req); | |
| 904 | + $oMap->owsdispatch($req); | |
| 905 | + | |
| 888 | 906 | $contenttype = ms_iostripstdoutbuffercontenttype(); |
| 889 | 907 | ms_iostripstdoutbuffercontentheaders(); |
| 890 | 908 | //grava em disco |
| 891 | 909 | $contents = ms_iogetstdoutbufferstring(); |
| 892 | 910 | file_put_contents($arq,$contents); |
| 893 | 911 | //envia para download |
| 912 | + | |
| 894 | 913 | header("Content-type: application/json; subtype=geojson"); |
| 914 | + | |
| 895 | 915 | ms_iogetStdoutBufferBytes(); |
| 896 | 916 | ms_ioresethandlers(); |
| 917 | + | |
| 897 | 918 | exit; |
| 898 | 919 | } |
| 899 | 920 | if(strtolower($OUTPUTFORMAT) == "shape-zip"){ | ... | ... |
temas/_cursoaeroporto.map
| 1 | -MAP | |
| 2 | - FONTSET "../symbols/fontes.txt" | |
| 3 | - SYMBOLSET "../symbols/simbolosv6.sym" | |
| 4 | - LAYER | |
| 5 | - DATA "/var/www/i3geo/aplicmap/dados/sc22/AEROPORTO_CAMPO_DE_POUSO.shp" | |
| 6 | - METADATA | |
| 7 | - "ltempoitemimagem" "" | |
| 8 | - "ltempoitemdescricao" "" | |
| 9 | - "CLASSE" "SIM" | |
| 10 | - "ltempoiteminicio" "" | |
| 11 | - "palletestep" "" | |
| 12 | - "ltempoitemtip" "" | |
| 13 | - "ltempoitemtitulo" "" | |
| 14 | - "description_template" "" | |
| 15 | - "ltempoitemlink" "" | |
| 16 | - "palletefile" "" | |
| 17 | - "ltempoformatodata" "" | |
| 18 | - "ltempoitemicone" "" | |
| 19 | - "PLUGINI3GEO" "" | |
| 20 | - "itembuscarapida" "" | |
| 21 | - "TEMA" "Aeroportos SC22ç" | |
| 22 | - "ltempoconvencode" "" | |
| 23 | - "editorsql" "" | |
| 24 | - "ltempoitemfim" "" | |
| 25 | - END # METADATA | |
| 26 | - NAME "_cursoaeroporto" | |
| 27 | - STATUS OFF | |
| 28 | - TEMPLATE "none.htm" | |
| 29 | - TILEITEM "location" | |
| 30 | - TYPE POINT | |
| 31 | - UNITS METERS | |
| 32 | - CLASS | |
| 33 | - NAME "" | |
| 34 | - STYLE | |
| 35 | - COLOR 255 0 0 | |
| 36 | - OUTLINECOLOR 0 0 0 | |
| 37 | - SIZE 15 | |
| 38 | - SYMBOL "ponto" | |
| 39 | - END # STYLE | |
| 40 | - END # CLASS | |
| 41 | - END # LAYER | |
| 42 | - | |
| 43 | -END # MAP | |
| 44 | - | |
| 1 | +MAP | |
| 2 | + FONTSET "../symbols/fontes.txt" | |
| 3 | + SYMBOLSET "../symbols/simbolosv6.sym" | |
| 4 | + LAYER | |
| 5 | + DATA "/var/www/i3geo/aplicmap/dados/sc22/AEROPORTO_CAMPO_DE_POUSO.shp" | |
| 6 | + METADATA | |
| 7 | + "ltempoitemimagem" "" | |
| 8 | + "CLASSE" "SIM" | |
| 9 | + "ltempoitemdescricao" "" | |
| 10 | + "palletestep" "" | |
| 11 | + "ltempoiteminicio" "" | |
| 12 | + "permitekmz" "" | |
| 13 | + "ltempoitemtip" "" | |
| 14 | + "description_template" "" | |
| 15 | + "ltempoitemtitulo" "" | |
| 16 | + "ltempoitemlink" "" | |
| 17 | + "palletefile" "" | |
| 18 | + "permitedownload" "" | |
| 19 | + "ltempoformatodata" "" | |
| 20 | + "ltempoitemicone" "" | |
| 21 | + "PLUGINI3GEO" "" | |
| 22 | + "itembuscarapida" "" | |
| 23 | + "arquivokmz" "" | |
| 24 | + "arquivodownload" "" | |
| 25 | + "permitekml" "SIM" | |
| 26 | + "permiteogc" "SIM" | |
| 27 | + "TEMA" "Aeroportos SC22ç" | |
| 28 | + "editorsql" "" | |
| 29 | + "ltempoconvencode" "" | |
| 30 | + "ltempoitemfim" "" | |
| 31 | + END # METADATA | |
| 32 | + NAME "_cursoaeroporto" | |
| 33 | + STATUS OFF | |
| 34 | + TEMPLATE "none.htm" | |
| 35 | + TILEITEM "location" | |
| 36 | + TYPE POINT | |
| 37 | + UNITS METERS | |
| 38 | + CLASS | |
| 39 | + NAME "" | |
| 40 | + STYLE | |
| 41 | + COLOR 255 0 0 | |
| 42 | + OUTLINECOLOR 0 0 0 | |
| 43 | + SIZE 15 | |
| 44 | + SYMBOL "ponto" | |
| 45 | + END # STYLE | |
| 46 | + END # CLASS | |
| 47 | + END # LAYER | |
| 48 | + | |
| 49 | +END # MAP | |
| 50 | + | ... | ... |
temas/_llocali.map
| 1 | -MAP | |
| 2 | - FONTSET "../symbols/fontes.txt" | |
| 3 | - SYMBOLSET "../symbols/simbolosv6.sym" | |
| 4 | - LAYER | |
| 5 | - CONNECTION "" | |
| 6 | - DATA "/var/www/i3geo/aplicmap/dados/locali.shp" | |
| 7 | - METADATA | |
| 8 | - "TIP" "TIPO,NOMELOC,ANOCRIA" | |
| 9 | - "cache" "SIM" | |
| 10 | - "CLASSE" "SIM" | |
| 11 | - "LTEMPOITEMDESCRICAO" "TIPO" | |
| 12 | - "LTEMPOITEMINICIO" "ANOCRIA" | |
| 13 | - "permitekmz" "sim" | |
| 14 | - "LTEMPOITEMTIP" "ANOCRIA" | |
| 15 | - "ITENSDESC" "Município,TIPO,Localidade,ANOCRIA" | |
| 16 | - "LTEMPOITEMTITULO" "NOMELOC" | |
| 17 | - "ITENSLINK" ",,," | |
| 18 | - "TILES" "SIM" | |
| 19 | - "permitedownload" "sim" | |
| 20 | - "LTEMPOFORMATODATA" "iso8601" | |
| 21 | - "permitecomentario" "SIM" | |
| 22 | - "download" "SIM" | |
| 23 | - "itembuscarapida" "NOMELOC" | |
| 24 | - "ITENS" "NOMEMUN,TIPO,NOMELOC,ANOCRIA" | |
| 25 | - "permitekml" "sim" | |
| 26 | - "permiteogc" "sim" | |
| 27 | - "transitioneffect" "NAO" | |
| 28 | - "TEMA" "Localidades (usar com timeline) para teste" | |
| 29 | - "cortepixels" "30" | |
| 30 | - "LTEMPOCONVENCODE" "SIM" | |
| 31 | - END # METADATA | |
| 32 | - NAME "_llocali" | |
| 33 | - PROCESSING "LABEL_NO_CLIP=True" | |
| 34 | - PROCESSING "POLYLINE_NO_CLIP=True" | |
| 35 | - STATUS DEFAULT | |
| 36 | - TEMPLATE "none.htm" | |
| 37 | - TYPE POINT | |
| 38 | - UNITS METERS | |
| 39 | - CLASS | |
| 40 | - NAME "Vila" | |
| 41 | - EXPRESSION ('[TIPO]'eq'Vila') | |
| 42 | - STYLE | |
| 43 | - COLOR 250 193 4 | |
| 44 | - SIZE 20 | |
| 45 | - SYMBOL "/var/www/i3geo/imagens/google/condominium.png" | |
| 46 | - END # STYLE | |
| 47 | - TITLE "" | |
| 48 | - END # CLASS | |
| 49 | - CLASS | |
| 50 | - NAME "Cidade" | |
| 51 | - EXPRESSION ('[TIPO]'eq'Cidade') | |
| 52 | - STYLE | |
| 53 | - COLOR 62 9 41 | |
| 54 | - OFFSET 0 -10 | |
| 55 | - SIZE 20 | |
| 56 | - SYMBOL "/var/www/i3geo/imagens/google/condominium1.png" | |
| 57 | - END # STYLE | |
| 58 | - TITLE "" | |
| 59 | - END # CLASS | |
| 60 | - CLASS | |
| 61 | - NAME "Capital" | |
| 62 | - EXPRESSION ('[TIPO]'eq'Capital') | |
| 63 | - STYLE | |
| 64 | - COLOR 112 203 244 | |
| 65 | - SIZE 9 | |
| 66 | - SYMBOL "vila" | |
| 67 | - END # STYLE | |
| 68 | - TITLE "" | |
| 69 | - END # CLASS | |
| 70 | - END # LAYER | |
| 71 | -END # MAP | |
| 1 | +MAP | |
| 2 | + FONTSET "../symbols/fontes.txt" | |
| 3 | + SYMBOLSET "../symbols/simbolosv6.sym" | |
| 4 | + LAYER | |
| 5 | + CONNECTION "" | |
| 6 | + DATA "/var/www/i3geo/aplicmap/dados/locali.shp" | |
| 7 | + METADATA | |
| 8 | + "METAESTAT_ID_MEDIDA_VARIAVEL" "" | |
| 9 | + "cache" "SIM" | |
| 10 | + "TIP" "TIPO,NOMELOC,ANOCRIA" | |
| 11 | + "LTEMPOITEMDESCRICAO" "TIPO" | |
| 12 | + "CLASSE" "SIM" | |
| 13 | + "LTEMPOITEMINICIO" "ANOCRIA" | |
| 14 | + "LTEMPOITEMTIP" "ANOCRIA" | |
| 15 | + "permitekmz" "sim" | |
| 16 | + "LTEMPOITEMTITULO" "NOMELOC" | |
| 17 | + "ITENSDESC" "Município,TIPO,Localidade,ANOCRIA" | |
| 18 | + "TILES" "SIM" | |
| 19 | + "ITENSLINK" ",,," | |
| 20 | + "METAESTAT_CODIGO_TIPO_REGIAO" "" | |
| 21 | + "LTEMPOFORMATODATA" "iso8601" | |
| 22 | + "permitedownload" "sim" | |
| 23 | + "permitecomentario" "SIM" | |
| 24 | + "metaestat" "" | |
| 25 | + "download" "SIM" | |
| 26 | + "itembuscarapida" "NOMELOC" | |
| 27 | + "ITENS" "NOMEMUN,TIPO,NOMELOC,ANOCRIA" | |
| 28 | + "transitioneffect" "NAO" | |
| 29 | + "permiteogc" "sim" | |
| 30 | + "permitekml" "sim" | |
| 31 | + "TEMA" "Localidades (usar com timeline) para teste" | |
| 32 | + "cortepixels" "30" | |
| 33 | + "LTEMPOCONVENCODE" "SIM" | |
| 34 | + END # METADATA | |
| 35 | + NAME "_llocali" | |
| 36 | + PROCESSING "LABEL_NO_CLIP=True" | |
| 37 | + PROCESSING "POLYLINE_NO_CLIP=True" | |
| 38 | + STATUS DEFAULT | |
| 39 | + TEMPLATE "none.htm" | |
| 40 | + TILEITEM "location" | |
| 41 | + TYPE POINT | |
| 42 | + UNITS METERS | |
| 43 | + CLASS | |
| 44 | + NAME "Vila" | |
| 45 | + EXPRESSION ('[TIPO]'eq'Vila') | |
| 46 | + STYLE | |
| 47 | + COLOR 250 193 4 | |
| 48 | + SIZE 20 | |
| 49 | + SYMBOL "/var/www/i3geo/imagens/google/condominium.png" | |
| 50 | + END # STYLE | |
| 51 | + TITLE "" | |
| 52 | + END # CLASS | |
| 53 | + CLASS | |
| 54 | + NAME "Cidade" | |
| 55 | + EXPRESSION ('[TIPO]'eq'Cidade') | |
| 56 | + STYLE | |
| 57 | + COLOR 62 9 41 | |
| 58 | + OFFSET 0 -10 | |
| 59 | + SIZE 20 | |
| 60 | + SYMBOL "/var/www/i3geo/imagens/google/condominium1.png" | |
| 61 | + END # STYLE | |
| 62 | + TITLE "" | |
| 63 | + END # CLASS | |
| 64 | + CLASS | |
| 65 | + NAME "Capital" | |
| 66 | + EXPRESSION ('[TIPO]'eq'Capital') | |
| 67 | + STYLE | |
| 68 | + COLOR 112 203 244 | |
| 69 | + SIZE 9 | |
| 70 | + SYMBOL "vila" | |
| 71 | + END # STYLE | |
| 72 | + TITLE "" | |
| 73 | + END # CLASS | |
| 74 | + END # LAYER | |
| 75 | + | |
| 76 | +END # MAP | |
| 77 | + | ... | ... |