save($temp);
substituiCon($temp,$postgis_mapa);
$of = $map->outputformat;
$of->set("driver","GDAL/GTiff");
$of->set("imagemode","RGB");
$map = ms_newMapObj($temp);
if($map->getmetadata("interface") == "googlemaps")
{
$proj4 = pegaProjecaoDefault("proj4");
$map->setProjection($proj4);
$map->set("units",MS_METERS);
$map->preparequery();
$map->set("scaledenom",$map->scaledenom * 100000);
}
//$legenda =$map->legend;
//$legenda->set("status",MS_EMBED);
//altera o nome das classes vazias
$temas = $map->getalllayernames();
foreach ($temas as $tema)
{
$layer = $map->getlayerbyname($tema);
if (($layer->data != "") && (strtolower($layer->getmetadata("escondido")) != "sim") && (strtolower($layer->getmetadata("tema")) != "nao"))
{
if ($layer->numclasses > 0)
{
$classe = $layer->getclass(0);
if (($classe->name == "") || ($classe->name == " "))
{$classe->set("name",$layer->getmetadata("tema"));}
}
}
if ($layer->getmetadata("classe") == "NAO")
{
$nclasses = $layer->numclasses;
if ($nclasses > 0)
{
for($i=0;$i<$nclasses;$i++)
{
$classe = $layer->getclass($i);
$classe->set("name","classeNula");
}
}
}
}
$map->save($temp);
removeLinha("classeNula",$temp);
$map = ms_newMapObj($temp);
$o = $map->outputformat;
if($mapexten != ""){
$ext = explode(" ",$mapexten);
$extatual = $map->extent;
$extatual->setextent($ext[0],$ext[1],$ext[2],$ext[3]);
}
//$legenda = $map->legend;
//$legenda->set("status",MS_EMBED);
$o->set("imagemode",MS_IMAGEMODE_RGB);
$protocolo = explode("/",$_SERVER['SERVER_PROTOCOL']);
//mapa
$imgo = $map->draw();
if($imgo->imagepath == "")
{echo "Erro IMAGEPATH vazio";exit;}
$nomer = ($imgo->imagepath)."mapa".$nomes.".tif";
$imgo->saveImage($nomer);
$nomemapa = strtolower($protocolo[0])."://".$_SERVER['HTTP_HOST'].($imgo->imageurl).basename($nomer);
//legenda
//corrige o titulo da legenda
$numlayers = $map->numlayers;
for ($j=0;$j < $numlayers;$j++){
$l = $map->getlayer($j);
if($l->type != 3 && $l->type != 4){
$nclass = $l->numclasses;
for($i=0;$i<$nclass;$i++){
$classe = $l->getclass($i);
if($classe->title === ""){
$classe->title = $classe->name;
}
}
}
}
$imgo = $map->drawlegend();
$nomer = ($imgo->imagepath)."legenda".$nomes.".tif";
$imgo->saveImage($nomer);
$nomelegenda = strtolower($protocolo[0])."://".$_SERVER['HTTP_HOST'].($imgo->imageurl).basename($nomer);
//escala
$imgo = $map->drawscalebar();
$nomer = ($imgo->imagepath)."escala".$nomes.".tif";
$imgo->saveImage($nomer);
$nomeescala = strtolower($protocolo[0])."://".$_SERVER['HTTP_HOST'].($imgo->imageurl).basename($nomer);
//referência
$o = $map->reference->outlinecolor;
$o->setrgb(255,0,0);
$map->preparequery();
$imgo = $map->drawreferencemap();
$nomer = ($imgo->imagepath)."ref".$nomes.".tif";
$imgo->saveImage($nomer);
$nomeref = strtolower($protocolo[0])."://".$_SERVER['HTTP_HOST'].($imgo->imageurl).basename($nomer);
echo "Utilize a opção de alteração das propriedades do mapa para ajustar a legenda, tamanho e outras características antes de gerar os arquivos.
";
echo "Arquivos gerados:
";
echo "Mapa
";
echo "Barra de escala
";
echo "Mapa de referência
";
echo "Legenda
";
?>