Commit 9d98180275859e71c284622183886e562264cc31

Authored by Edmar Moretti
1 parent e5c922d8

--no commit message

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 +
... ...