Commit 28be4dfbe83bba5d5ccbbb04ebfcfba59b6bf3a4
1 parent
6eba7ce7
Exists in
master
and in
7 other branches
Implantação de criação automática de classes em layers raster por meio de uma pa…
…lete de cores. Foram criados novos metadados para definir o arquivo com a palete e foram feitas alterações na função autoclasses.
Showing
7 changed files
with
195 additions
and
84 deletions
Show diff stats
admin/js/editormapfile.js
@@ -782,6 +782,10 @@ function montaEditorMetadados(dados) | @@ -782,6 +782,10 @@ function montaEditorMetadados(dados) | ||
782 | titulo:"Download",id:"",value:dados.download,tipo:"text",div:"<div id=cDownload ></div>"}, | 782 | titulo:"Download",id:"",value:dados.download,tipo:"text",div:"<div id=cDownload ></div>"}, |
783 | {ajuda:"Endereço de um arquivo para download dos dados (caminho completo no servidor). Se definido, o sistema irá usar esse arquivo ao invés de gerar os dados, quando o usuário clicar nas opções de download. Se não for definido, o arquivo de download é gerado diretamente do original, convertendo do banco ou copiando o arquivo definido em DATA.", | 783 | {ajuda:"Endereço de um arquivo para download dos dados (caminho completo no servidor). Se definido, o sistema irá usar esse arquivo ao invés de gerar os dados, quando o usuário clicar nas opções de download. Se não for definido, o arquivo de download é gerado diretamente do original, convertendo do banco ou copiando o arquivo definido em DATA.", |
784 | titulo:"Arquivo download",id:"arquivodownload",value:dados.arquivodownload,tipo:"text"}, | 784 | titulo:"Arquivo download",id:"arquivodownload",value:dados.arquivodownload,tipo:"text"}, |
785 | + {ajuda:"A palete é válida apenas para temas RASTER. Entre com o endereço do arquivo no servidor. Veja exemplo em i3geo/localhost/symbols/testepalete.txt", | ||
786 | + titulo:"Arquivo com palete de cores (opcional e serve apenas para temas raster)",id:"palletefile",value:dados.palletefile,tipo:"text"}, | ||
787 | + {ajuda:"Quantas cores em cada nível da palete. Veja exemplo em i3geo/localhost/symbols/testepalete.txt", | ||
788 | + titulo:"Passo (opcional e serve apenas para temas raster)",id:"palletestep",value:dados.palletestep,tipo:"text"}, | ||
785 | {ajuda:"Indica se as classes serão mostradas ou não na legenda. Por padrão é SIM.", | 789 | {ajuda:"Indica se as classes serão mostradas ou não na legenda. Por padrão é SIM.", |
786 | titulo:"Classe",id:"",value:dados.classe,tipo:"text",div:"<div id=cClasse ></div>"}, | 790 | titulo:"Classe",id:"",value:dados.classe,tipo:"text",div:"<div id=cClasse ></div>"}, |
787 | {ajuda:"Indica se o tema é mostrado no mapa mas não nas listas da legenda e na guia 'temas'", | 791 | {ajuda:"Indica se o tema é mostrado no mapa mas não nas listas da legenda e na guia 'temas'", |
@@ -1142,7 +1146,7 @@ function salvarDadosEditor(tipo,codigoMap,codigoLayer,indiceClasse,indiceEstilo, | @@ -1142,7 +1146,7 @@ function salvarDadosEditor(tipo,codigoMap,codigoLayer,indiceClasse,indiceEstilo, | ||
1142 | {alert("Valor de escala incorreto");return;} | 1146 | {alert("Valor de escala incorreto");return;} |
1143 | } | 1147 | } |
1144 | 1148 | ||
1145 | - var campos = new Array("arquivodownload","aplicaextensao","classestamanho","classessimbolo","classescor","classesnome","classesitem","mensagem","identifica","extensao","escondido","download","escala","tema","classe","tip","itenslink","itens","itensdesc") | 1149 | + var campos = new Array("palletefile","palettestep","arquivodownload","aplicaextensao","classestamanho","classessimbolo","classescor","classesnome","classesitem","mensagem","identifica","extensao","escondido","download","escala","tema","classe","tip","itenslink","itens","itensdesc") |
1146 | var par = "&codigoMap="+codigoMap+"&codigoLayer="+codigoLayer | 1150 | var par = "&codigoMap="+codigoMap+"&codigoLayer="+codigoLayer |
1147 | var prog = "../php/editormapfile.php?funcao=alterarMetadados" | 1151 | var prog = "../php/editormapfile.php?funcao=alterarMetadados" |
1148 | } | 1152 | } |
admin/php/editormapfile.php
@@ -529,6 +529,8 @@ function pegaMetadados() | @@ -529,6 +529,8 @@ function pegaMetadados() | ||
529 | $dados["classestamanho"] = $layer->getmetadata("classestamanho"); | 529 | $dados["classestamanho"] = $layer->getmetadata("classestamanho"); |
530 | $dados["aplicaextensao"] = $layer->getmetadata("aplicaextensao"); | 530 | $dados["aplicaextensao"] = $layer->getmetadata("aplicaextensao"); |
531 | $dados["arquivodownload"] = $layer->getmetadata("arquivodownload"); | 531 | $dados["arquivodownload"] = $layer->getmetadata("arquivodownload"); |
532 | + $dados["palletefile"] = $layer->getmetadata("palletefile"); | ||
533 | + $dados["palletestep"] = $layer->getmetadata("palletestep"); | ||
532 | $dados["codigoMap"] = $codigoMap; | 534 | $dados["codigoMap"] = $codigoMap; |
533 | $dados["codigoLayer"] = $codigoLayer; | 535 | $dados["codigoLayer"] = $codigoLayer; |
534 | $dados["colunas"] = implode(" ,",pegaItens($layer)); | 536 | $dados["colunas"] = implode(" ,",pegaItens($layer)); |
@@ -536,7 +538,7 @@ function pegaMetadados() | @@ -536,7 +538,7 @@ function pegaMetadados() | ||
536 | } | 538 | } |
537 | function alterarMetadados() | 539 | function alterarMetadados() |
538 | { | 540 | { |
539 | - global $arquivodownload,$codigoMap,$codigoLayer,$locaplic,$aplicaextensao,$classestamanho,$classessimbolo,$classescor,$classesnome,$classesitem,$mensagem,$identifica,$extensao,$escondido,$download,$escala,$tema,$classe,$tip,$itenslink,$itens,$itensdesc; | 541 | + global $palletestep,$palletefile,$arquivodownload,$codigoMap,$codigoLayer,$locaplic,$aplicaextensao,$classestamanho,$classessimbolo,$classescor,$classesnome,$classesitem,$mensagem,$identifica,$extensao,$escondido,$download,$escala,$tema,$classe,$tip,$itenslink,$itens,$itensdesc; |
540 | $dados = array(); | 542 | $dados = array(); |
541 | $mapfile = $locaplic."/temas/".$codigoMap.".map"; | 543 | $mapfile = $locaplic."/temas/".$codigoMap.".map"; |
542 | $mapa = ms_newMapObj($mapfile); | 544 | $mapa = ms_newMapObj($mapfile); |
@@ -560,6 +562,8 @@ function alterarMetadados() | @@ -560,6 +562,8 @@ function alterarMetadados() | ||
560 | $layer->setmetadata("classestamanho",$classestamanho); | 562 | $layer->setmetadata("classestamanho",$classestamanho); |
561 | $layer->setmetadata("aplicaextensao",$aplicaextensao); | 563 | $layer->setmetadata("aplicaextensao",$aplicaextensao); |
562 | $layer->setmetadata("arquivodownload",$arquivodownload); | 564 | $layer->setmetadata("arquivodownload",$arquivodownload); |
565 | + $layer->setmetadata("palletefile",$palletefile); | ||
566 | + $layer->setmetadata("palletestep",$palletestep); | ||
563 | $mapa->save($mapfile); | 567 | $mapa->save($mapfile); |
564 | removeCabecalho($mapfile); | 568 | removeCabecalho($mapfile); |
565 | return "ok"; | 569 | return "ok"; |
classesphp/funcoes_gerais.php
@@ -1972,102 +1972,164 @@ function autoClasses(&$nlayer,$mapa) | @@ -1972,102 +1972,164 @@ function autoClasses(&$nlayer,$mapa) | ||
1972 | $nlayer->set("connection",$postgis_mapa); | 1972 | $nlayer->set("connection",$postgis_mapa); |
1973 | $substituicon = "sim"; | 1973 | $substituicon = "sim"; |
1974 | } | 1974 | } |
1975 | - } | ||
1976 | - if($nlayer->getmetadata("classesitem") == "") | ||
1977 | - {return;} | ||
1978 | - $itemnome = $nlayer->getmetadata("classesnome"); | ||
1979 | - $itemid = $nlayer->getmetadata("classesitem"); | ||
1980 | - $itemcor = $nlayer->getmetadata("classescor"); | ||
1981 | - $itemsimbolo = $nlayer->getmetadata("classesimbolo"); | ||
1982 | - $itemtamanho = $nlayer->getmetadata("classestamanho"); | ||
1983 | - $classeoriginal = $nlayer->getclass(0); | ||
1984 | - // | ||
1985 | - //pega a extensao geografica que devera ser utilizada | 1975 | + } |
1986 | // | 1976 | // |
1987 | - $prjMapa = $mapa->getProjection(); | ||
1988 | - $prjTema = $nlayer->getProjection(); | ||
1989 | - $ret = $nlayer->getmetadata("extensao"); | ||
1990 | - if ($ret == "") | 1977 | + //gera classes automaticamente (temas vetoriais) |
1978 | + if($nlayer->getmetadata("classesitem") != "") | ||
1991 | { | 1979 | { |
1992 | - $ret = $nlayer->getextent(); | ||
1993 | - //reprojeta o retangulo | ||
1994 | - if (($prjTema != "") && ($prjMapa != $prjTema)) | 1980 | + $itemnome = $nlayer->getmetadata("classesnome"); |
1981 | + $itemid = $nlayer->getmetadata("classesitem"); | ||
1982 | + $itemcor = $nlayer->getmetadata("classescor"); | ||
1983 | + $itemsimbolo = $nlayer->getmetadata("classesimbolo"); | ||
1984 | + $itemtamanho = $nlayer->getmetadata("classestamanho"); | ||
1985 | + $classeoriginal = $nlayer->getclass(0); | ||
1986 | + // | ||
1987 | + //pega a extensao geografica que devera ser utilizada | ||
1988 | + // | ||
1989 | + $prjMapa = $mapa->getProjection(); | ||
1990 | + $prjTema = $nlayer->getProjection(); | ||
1991 | + $ret = $nlayer->getmetadata("extensao"); | ||
1992 | + if ($ret == "") | ||
1993 | + { | ||
1994 | + $ret = $nlayer->getextent(); | ||
1995 | + //reprojeta o retangulo | ||
1996 | + if (($prjTema != "") && ($prjMapa != $prjTema)) | ||
1997 | + { | ||
1998 | + $projInObj = ms_newprojectionobj($prjTema); | ||
1999 | + $projOutObj = ms_newprojectionobj($prjMapa); | ||
2000 | + $ret->project($projInObj, $projOutObj); | ||
2001 | + } | ||
2002 | + } | ||
2003 | + else | ||
1995 | { | 2004 | { |
1996 | - $projInObj = ms_newprojectionobj($prjTema); | ||
1997 | - $projOutObj = ms_newprojectionobj($prjMapa); | ||
1998 | - $ret->project($projInObj, $projOutObj); | 2005 | + $temp = explode(" ",$ret); |
2006 | + $ret = ms_newRectObj(); | ||
2007 | + $ret->setextent($temp[0],$temp[1],$temp[2],$temp[3]); | ||
2008 | + } | ||
2009 | + // | ||
2010 | + $sopen = $nlayer->open(); | ||
2011 | + if($sopen == MS_FAILURE){return "erro";} | ||
2012 | + | ||
2013 | + $status = $nlayer->whichShapes($ret); | ||
2014 | + $parametrosClasses = array(); | ||
2015 | + if ($status == 0) | ||
2016 | + { | ||
2017 | + while ($shape = $nlayer->nextShape()) | ||
2018 | + { | ||
2019 | + $id = trim($shape->values[$itemid]); | ||
2020 | + if (!$parametrosClasses[$id]) | ||
2021 | + { | ||
2022 | + $nome = ""; | ||
2023 | + if($itemnome != "") | ||
2024 | + $nome = trim($shape->values[$itemnome]); | ||
2025 | + $cor = ""; | ||
2026 | + if($itemcor != "") | ||
2027 | + $cor = explode(",",trim($shape->values[$itemcor])); | ||
2028 | + if(count($cor) != 3) | ||
2029 | + $cor = explode(" ",trim($shape->values[$itemcor])); | ||
2030 | + $tamanho = ""; | ||
2031 | + if($itemtamanho != "") | ||
2032 | + $tamanho = trim($shape->values[$itemtamanho]); | ||
2033 | + $simbolo = ""; | ||
2034 | + if($itemsimbolo != "") | ||
2035 | + $simbolo = trim($shape->values[$itemsimbolo]); | ||
2036 | + $parametrosClasses[$id] = array("nome"=>$nome,"cor"=>$cor,"tamanho"=>$tamanho,"simbolo"=>$simbolo); | ||
2037 | + } | ||
2038 | + } | ||
2039 | + $fechou = $nlayer->close(); | ||
2040 | + //echo "<pre>";var_dump($parametrosClasses); | ||
2041 | + if (count($parametrosClasses) > 0) | ||
2042 | + { | ||
2043 | + $ids = array_keys($parametrosClasses); | ||
2044 | + for($i=0;$i < count($parametrosClasses);++$i) | ||
2045 | + { | ||
2046 | + $p = $parametrosClasses[$ids[$i]]; | ||
2047 | + //echo "<pre>";var_dump($p); | ||
2048 | + $nclasse = ms_newClassObj($nlayer,$classeoriginal); | ||
2049 | + if($p["nome"] != "") | ||
2050 | + $nclasse->set("name",$p["nome"]); | ||
2051 | + $estilo = $nclasse->getstyle(0); | ||
2052 | + if($p["cor"] != "") | ||
2053 | + { | ||
2054 | + $cor = $p["cor"]; | ||
2055 | + $ncor = $estilo->color; | ||
2056 | + if($ncor == "") | ||
2057 | + $ncor = $estilo->outlinecolor; | ||
2058 | + $ncor->setrgb($cor[0],$cor[1],$cor[2]); | ||
2059 | + } | ||
2060 | + if($p["tamanho"] != "") | ||
2061 | + $estilo->set("size",$p["tamanho"]); | ||
2062 | + if($p["simbolo"] != "") | ||
2063 | + $estilo->set("symbolname",$p["simbolo"]); | ||
2064 | + $strE = "('[".$itemid."]'eq'".$ids[$i]."')"; | ||
2065 | + $nclasse->setexpression($strE); | ||
2066 | + } | ||
2067 | + $classeoriginal->set("status",MS_DELETE); | ||
2068 | + } | ||
1999 | } | 2069 | } |
2070 | + if($substituicon == "sim"){$nlayer->set("connection"," ");} | ||
2000 | } | 2071 | } |
2001 | - else | 2072 | + $pf = $nlayer->getmetadata("palletefile"); |
2073 | + if($pf != "") | ||
2002 | { | 2074 | { |
2003 | - $temp = explode(" ",$ret); | ||
2004 | - $ret = ms_newRectObj(); | ||
2005 | - $ret->setextent($temp[0],$temp[1],$temp[2],$temp[3]); | ||
2006 | - } | ||
2007 | - // | ||
2008 | - $sopen = $nlayer->open(); | ||
2009 | - if($sopen == MS_FAILURE){return "erro";} | ||
2010 | - | ||
2011 | - $status = $nlayer->whichShapes($ret); | ||
2012 | - $parametrosClasses = array(); | ||
2013 | - if ($status == 0) | ||
2014 | - { | ||
2015 | - while ($shape = $nlayer->nextShape()) | 2075 | + if(!file_exists($pf)){return;} |
2076 | + $ps = $nlayer->getmetadata("palletesteps"); | ||
2077 | + if ($ps == "") $ps=8; | ||
2078 | + // | ||
2079 | + //pega os valores do arquivo | ||
2080 | + // | ||
2081 | + $rules = array(); | ||
2082 | + $abre = fopen($pf, "r"); | ||
2083 | + $paletteRules = array(); | ||
2084 | + while (!feof($abre)) | ||
2016 | { | 2085 | { |
2017 | - $id = trim($shape->values[$itemid]); | ||
2018 | - if (!$parametrosClasses[$id]) | 2086 | + $line = trim(fgets($abre)); |
2087 | + $pos = strpos($line, "#"); | ||
2088 | + if ($pos === false || $pos > 0) | ||
2019 | { | 2089 | { |
2020 | - $nome = ""; | ||
2021 | - if($itemnome != "") | ||
2022 | - $nome = trim($shape->values[$itemnome]); | ||
2023 | - $cor = ""; | ||
2024 | - if($itemcor != "") | ||
2025 | - $cor = explode(",",trim($shape->values[$itemcor])); | ||
2026 | - if(count($cor) != 3) | ||
2027 | - $cor = explode(" ",trim($shape->values[$itemcor])); | ||
2028 | - $tamanho = ""; | ||
2029 | - if($itemtamanho != "") | ||
2030 | - $tamanho = trim($shape->values[$itemtamanho]); | ||
2031 | - $simbolo = ""; | ||
2032 | - if($itemsimbolo != "") | ||
2033 | - $simbolo = trim($shape->values[$itemsimbolo]); | ||
2034 | - $parametrosClasses[$id] = array("nome"=>$nome,"cor"=>$cor,"tamanho"=>$tamanho,"simbolo"=>$simbolo); | 2090 | + $paletteEntry = explode(" ",$line); |
2091 | + $rules[] = array( | ||
2092 | + "v0" => $paletteEntry[0], | ||
2093 | + "v1" => $paletteEntry[1], | ||
2094 | + "r0" => $paletteEntry[2], | ||
2095 | + "g0" => $paletteEntry[3], | ||
2096 | + "b0" => $paletteEntry[4], | ||
2097 | + "r1" => $paletteEntry[5], | ||
2098 | + "g1" => $paletteEntry[6], | ||
2099 | + "b1" => $paletteEntry[7] | ||
2100 | + ); | ||
2035 | } | 2101 | } |
2036 | } | 2102 | } |
2037 | - $fechou = $nlayer->close(); | ||
2038 | - //echo "<pre>";var_dump($parametrosClasses); | ||
2039 | - if (count($parametrosClasses) > 0) | 2103 | + fclose($abre); |
2104 | + foreach($rules as $rule) | ||
2040 | { | 2105 | { |
2041 | - $ids = array_keys($parametrosClasses); | ||
2042 | - for($i=0;$i < count($parametrosClasses);++$i) | 2106 | + $delta = ceil(($rule["v1"]-$rule["v0"])/$ps); |
2107 | + $legenda=true; | ||
2108 | + for($value=$rule["v0"]; $value<$rule["v1"]; $value+=$delta) | ||
2043 | { | 2109 | { |
2044 | - $p = $parametrosClasses[$ids[$i]]; | ||
2045 | - //echo "<pre>";var_dump($p); | ||
2046 | - $nclasse = ms_newClassObj($nlayer,$classeoriginal); | ||
2047 | - if($p["nome"] != "") | ||
2048 | - $nclasse->set("name",$p["nome"]); | ||
2049 | - $estilo = $nclasse->getstyle(0); | ||
2050 | - if($p["cor"] != "") | 2110 | + $class = ms_newClassObj($nlayer); |
2111 | + $style = ms_newStyleObj($class); | ||
2112 | + if ($legenda) | ||
2051 | { | 2113 | { |
2052 | - $cor = $p["cor"]; | ||
2053 | - $ncor = $estilo->color; | ||
2054 | - if($ncor == "") | ||
2055 | - $ncor = $estilo->outlinecolor; | ||
2056 | - $ncor->setrgb($cor[0],$cor[1],$cor[2]); | 2114 | + $class->set(name,round($value,0)); |
2115 | + $legenda=true; | ||
2057 | } | 2116 | } |
2058 | - if($p["tamanho"] != "") | ||
2059 | - $estilo->set("size",$p["tamanho"]); | ||
2060 | - if($p["simbolo"] != "") | ||
2061 | - $estilo->set("symbolname",$p["simbolo"]); | ||
2062 | - $strE = "('[".$itemid."]'eq'".$ids[$i]."')"; | ||
2063 | - $nclasse->setexpression($strE); | 2117 | + $expression="([pixel] > ".round($value,0)." AND [pixel] <= ".round($value+$delta,0).")"; |
2118 | + $class->setExpression($expression); | ||
2119 | + $rgb=getRGBpallete($rule,$value); | ||
2120 | + $style->color->setRGB($rgb[0],$rgb[1],$rgb[2]); | ||
2064 | } | 2121 | } |
2065 | - $classeoriginal->set("status",MS_DELETE); | ||
2066 | - } | 2122 | + } |
2067 | } | 2123 | } |
2068 | - if($substituicon == "sim"){$nlayer->set("connection"," ");} | ||
2069 | return; | 2124 | return; |
2070 | } | 2125 | } |
2126 | +function getRGBpallete($rule, $value){ | ||
2127 | + $escala=($value-$rule["v0"])/($rule["v1"]-$rule["v0"]); | ||
2128 | + $r=$rule["r0"] + round(($rule["r1"]-$rule["r0"])*$escala, 0); | ||
2129 | + $g=$rule["g0"] + round(($rule["g1"]-$rule["g0"])*$escala, 0); | ||
2130 | + $b=$rule["b0"] + round(($rule["b1"]-$rule["b0"])*$escala, 0); | ||
2131 | + return array($r,$g,$b); | ||
2132 | +} | ||
2071 | /* | 2133 | /* |
2072 | Function: removeAcentos | 2134 | Function: removeAcentos |
2073 | 2135 |
menutemas/admin.db
No preview for this file type
@@ -0,0 +1,13 @@ | @@ -0,0 +1,13 @@ | ||
1 | +# | ||
2 | +#utilize o formato | ||
3 | +#Z1 Z2 R1 G1 B1 R2 G2 B2 | ||
4 | +# | ||
5 | +-3000 -400 150 0 255 0 0 255 | ||
6 | +-400 -100 0 0 255 0 100 255 | ||
7 | +-100 0 0 100 255 0 255 255 | ||
8 | +0 1 0 255 255 0 150 0 | ||
9 | +10 3 0 150 0 0 255 0 | ||
10 | +3 5 0 255 0 255 255 0 | ||
11 | +5 8 255 255 0 255 120 0 | ||
12 | +8 14 255 120 0 255 0 0 | ||
13 | +14 26 255 0 0 60 30 0 | ||
0 | \ No newline at end of file | 14 | \ No newline at end of file |
@@ -0,0 +1,19 @@ | @@ -0,0 +1,19 @@ | ||
1 | +MAP | ||
2 | +SYMBOLSET ../symbols/simbolos.sym | ||
3 | +FONTSET "../symbols/fontes.txt" | ||
4 | +LAYER | ||
5 | + DATA "c://ms4w/Apache/htdocs/geodados/cinza.png" | ||
6 | + METADATA | ||
7 | + "DOWNLOAD" "sim" | ||
8 | + "tema" "teste palete" | ||
9 | + "extensao" "-45.3164908803 -18.728115624 -36.4701672412 -13.692240792" | ||
10 | + "palletefile" "c://ms4w/Apache/htdocs/i3geo/symbols/testepalete.txt" | ||
11 | + "palletestep" "20" | ||
12 | + END | ||
13 | + NAME "cinza" | ||
14 | + STATUS DEFAULT | ||
15 | + TEMPLATE "none.htm" | ||
16 | + TYPE RASTER | ||
17 | + UNITS METERS | ||
18 | + END | ||
19 | +END | ||
0 | \ No newline at end of file | 20 | \ No newline at end of file |
testamapfile.php
@@ -232,6 +232,7 @@ function verifica($map) | @@ -232,6 +232,7 @@ function verifica($map) | ||
232 | $sca->set("status",MS_OFF); | 232 | $sca->set("status",MS_OFF); |
233 | } | 233 | } |
234 | $objImagem = @$mapa->draw(); | 234 | $objImagem = @$mapa->draw(); |
235 | + $objImagemLegenda = @$mapa->drawLegend(); | ||
235 | if (!$objImagem) | 236 | if (!$objImagem) |
236 | { | 237 | { |
237 | echo "Problemas ao gerar o mapa<br>"; | 238 | echo "Problemas ao gerar o mapa<br>"; |
@@ -247,9 +248,16 @@ function verifica($map) | @@ -247,9 +248,16 @@ function verifica($map) | ||
247 | $nomec = ($objImagem->imagepath).nomeRandomico()."teste.png"; | 248 | $nomec = ($objImagem->imagepath).nomeRandomico()."teste.png"; |
248 | $objImagem->saveImage($nomec); | 249 | $objImagem->saveImage($nomec); |
249 | $nomer = ($objImagem->imageurl).basename($nomec); | 250 | $nomer = ($objImagem->imageurl).basename($nomec); |
251 | + | ||
252 | + $nomel = ($objImagemLegenda->imagepath).nomeRandomico()."testel.png"; | ||
253 | + $objImagemLegenda->saveImage($nomel); | ||
254 | + $nomerl = ($objImagemLegenda->imageurl).basename($nomel); | ||
255 | + | ||
256 | + | ||
250 | if(($tipo == "") || ($tipo == "todos")) | 257 | if(($tipo == "") || ($tipo == "todos")) |
251 | { | 258 | { |
252 | - echo "<img src=".$nomer." />"; | 259 | + echo "<img src=".$nomer." /><br>"; |
260 | + echo "<img src=".$nomerl." />"; | ||
253 | if($tipo == "todos") | 261 | if($tipo == "todos") |
254 | { | 262 | { |
255 | echo "<br>".$dados."<br>"; | 263 | echo "<br>".$dados."<br>"; |
@@ -264,7 +272,8 @@ function verifica($map) | @@ -264,7 +272,8 @@ function verifica($map) | ||
264 | echo "<br>Error in %s: %s<br>", $error->routine, $error->message; | 272 | echo "<br>Error in %s: %s<br>", $error->routine, $error->message; |
265 | $error = $error->next(); | 273 | $error = $error->next(); |
266 | } | 274 | } |
267 | - } | 275 | + } |
276 | + | ||
268 | } | 277 | } |
269 | else | 278 | else |
270 | { | 279 | { |
@@ -277,12 +286,12 @@ function verifica($map) | @@ -277,12 +286,12 @@ function verifica($map) | ||
277 | function zoomTema($nomelayer,&$mapa) | 286 | function zoomTema($nomelayer,&$mapa) |
278 | { | 287 | { |
279 | $layer = $mapa->getlayerbyname($nomelayer); | 288 | $layer = $mapa->getlayerbyname($nomelayer); |
280 | - if($layer->type > 2) | ||
281 | - {return;} | ||
282 | $prjMapa = $mapa->getProjection(); | 289 | $prjMapa = $mapa->getProjection(); |
283 | $prjTema = $layer->getProjection(); | 290 | $prjTema = $layer->getProjection(); |
284 | $extatual = $mapa->extent; | 291 | $extatual = $mapa->extent; |
285 | $ret = $layer->getmetadata("extensao"); | 292 | $ret = $layer->getmetadata("extensao"); |
293 | + if($layer->type > 2 && $ret == "") | ||
294 | + {return;} | ||
286 | $ct = $layer->connectiontype; | 295 | $ct = $layer->connectiontype; |
287 | if(($ret == "") && ($ct != 1)) | 296 | if(($ret == "") && ($ct != 1)) |
288 | {return;} | 297 | {return;} |