Ejemplo n.º 1
0
    /*
    Valor: ANALISEDISTRIPT
    
    Gera análise de distribuição de pontos.
    
    Executa script R para gerar a imagem.
    
    <Analise->analiseDistriPt>
    */
    case "ANALISEDISTRIPT":
        include_once dirname(__FILE__) . "/../../classesphp/classe_analise.php";
        copiaSeguranca($map_file);
        if (!isset($_GET["tema2"])) {
            $_GET["tema2"] = "";
        }
        if (!isset($_GET["limitepontos"])) {
            $_GET["limitepontos"] = "";
        }
        $m = new Analise($map_file, $tema, $locaplic, $ext);
        if (empty($_GET["item"])) {
            $_GET["item"] = "";
        }
        $retorno = $m->analiseDistriPt($locaplic, $dir_tmp, $R_path, $_GET["numclasses"], $_GET["tipo"], $_GET["cori"], $_GET["corf"], $tmpurl, $_GET["sigma"], $_GET["limitepontos"], $_GET["tema2"], $_GET["extendelimite"]);
        $m->salva();
        $_SESSION["contadorsalva"]++;
        break;
}
if (isset($map_file) && isset($postgis_mapa) && $map_file != "") {
    restauraCon($map_file, $postgis_mapa);
}
cpjson($retorno);
Ejemplo n.º 2
0
include_once dirname(__FILE__) . "/../safe.php";
verificaBlFerramentas(basename(dirname(__FILE__)), $i3geoBlFerramentas, false);
//
//faz a busca da fun&ccedil;&atilde;o que deve ser executada
//
$retorno = "";
//string que ser&aacute; retornada ao browser via JSON
switch (strtoupper($funcao)) {
    /*
    Valor: CRIACENTROIDE
    
    Gera centroide dos elementos selecionados de um tema.
    
    Salva o mapa acrescentando um novo layer com os pontos.
    
    <Analise->criaCentroide>
    */
    case "CRIACENTROIDE":
        include_once dirname(__FILE__) . "/../../classesphp/classe_analise.php";
        copiaSeguranca($map_file);
        $m = new Analise($map_file, $tema, $locaplic, $ext);
        $retorno = $m->criaCentroide($locaplic);
        $m->salva();
        $_SESSION["contadorsalva"]++;
        break;
}
if (isset($map_file) && isset($postgis_mapa) && $map_file != "") {
    restauraCon($map_file, $postgis_mapa);
}
cpjson($retorno);
Ejemplo n.º 3
0
 Converte marcadores em shapefile
 */
 case "MARCADORES2SHP":
     $marcadores = explode(":", $_COOKIE["marcadoresDoI3Geo"]);
     $marcas = array();
     foreach ($marcadores as $marcador) {
         $par = explode("|", $marcador);
         if (count($par) == 2) {
             $marcas[] = array("ext" => $par[1], "nome" => $par[0]);
         }
     }
     if (count($marcas) == 0) {
         $retorno = "";
     } else {
         include_once "classe_analise.php";
         $m = new Analise($map_file);
         $imgdir = basename($map_file);
         $dir_tmp = basename($imgdir);
         $res = $m->incmapageometrias($dir_tmp, $imgdir, $marcas, "marcadores");
         $retorno = $res;
     }
     break;
     /*
      Valor: GEO2UTM
     
     Retorna coordenadas utm a partir de coordenadas geo
     */
 /*
  Valor: GEO2UTM
 
 Retorna coordenadas utm a partir de coordenadas geo
Ejemplo n.º 4
0
include_once dirname(__FILE__) . "/../safe.php";
verificaBlFerramentas(basename(dirname(__FILE__)), $i3geoBlFerramentas, false);
//
//faz a busca da fun&ccedil;&atilde;o que deve ser executada
//
$retorno = "";
//string que ser&aacute; retornada ao browser via JSON
switch (strtoupper($funcao)) {
    /*
    Valor: DISTANCIAPTPT
    
    Calcula a distancia entre um ponto de origem e os pontos em um tema.
    
    S&atilde;o considerados apenas os pontos próximos definidos por um buffer.
    
    <Analise->distanciaptpt>
    */
    case "DISTANCIAPTPT":
        include_once dirname(__FILE__) . "/../../classesphp/classe_analise.php";
        copiaSeguranca($map_file);
        $m = new Analise($map_file, $_GET["temaorigem"], $locaplic, $ext);
        $temaoverlay = $m->criaBuffer($_GET["distancia"], $locaplic);
        $retorno = $m->distanciaptpt($_GET["temaorigem"], $_GET["temadestino"], $temaoverlay, $locaplic, $_GET["itemorigem"], $_GET["itemdestino"]);
        $m->salva();
        $_SESSION["contadorsalva"]++;
        break;
}
if (isset($map_file) && isset($postgis_mapa) && $map_file != "") {
    restauraCon($map_file, $postgis_mapa);
}
cpjson($retorno);
Ejemplo n.º 5
0
include_once dirname(__FILE__) . "/../safe.php";
verificaBlFerramentas(basename(dirname(__FILE__)), $i3geoBlFerramentas, false);
//
//faz a busca da fun&ccedil;&atilde;o que deve ser executada
//
$retorno = "";
//string que ser&aacute; retornada ao browser via JSON
switch (strtoupper($funcao)) {
    /*
    Valor: PONTOEMPOLIGONO
    
    Cruza um tema pontual com temas poligonais ou raster.
    
    Salva o mapa acrescentando um novo layer com o resultado.
    
    <Analise->pontoEmPoligono>
    */
    case "PONTOEMPOLIGONO":
        include_once dirname(__FILE__) . "/../../classesphp/classe_analise.php";
        copiaSeguranca($map_file);
        $m = new Analise($map_file, $_GET["temaPt"], $locaplic, $ext);
        $retorno = $m->pontoEmPoligono($_GET["temaPt"], $_GET["temasPo"], $locaplic);
        $m->salva();
        $_SESSION["contadorsalva"]++;
        break;
}
if (isset($map_file) && isset($postgis_mapa) && $map_file != "") {
    restauraCon($map_file, $postgis_mapa);
}
cpjson($retorno);
Ejemplo n.º 6
0
<?php

include_once dirname(__FILE__) . "/../safe.php";
verificaBlFerramentas(basename(dirname(__FILE__)), $i3geoBlFerramentas, false);
//
//faz a busca da fun&ccedil;&atilde;o que deve ser executada
//
$retorno = "";
//string que ser&aacute; retornada ao browser via JSON
switch (strtoupper($funcao)) {
    /*
    Valor: AGRUPAELEMENTOS
    Agrupa elementos em um pol&iacute;gono.
    Salva o mapa acrescentando um novo layer com o resultado.
    <Analise->agrupaElementos>
    */
    case "AGRUPAELEMENTOS":
        include_once dirname(__FILE__) . "/../../classesphp/classe_analise.php";
        copiaSeguranca($map_file);
        $m = new Analise($map_file, $tema);
        $retorno = $m->agrupaElementos($_GET["item"], $locaplic);
        $m->salva();
        $_SESSION["contadorsalva"]++;
        break;
}
if (isset($map_file) && isset($postgis_mapa) && $map_file != "") {
    restauraCon($map_file, $postgis_mapa);
}
cpjson($retorno);
Ejemplo n.º 7
0
     if ($shp->type == MS_SHAPE_POINT) {
         $tipo = "POINT";
     }
     if ($shp->type == MS_SHAPE_LINE) {
         $tipo = "LINE";
     }
     if ($shp->type == MS_SHAPE_POLYGON) {
         $tipo = "POLYGON";
     }
     $m->insereFeature($_GET["marca"], $_GET["tipo"], $_GET["xy"], $_GET["texto"], $_GET["position"], $_GET["partials"], $_GET["offsetx"], $_GET["offsety"], $_GET["minfeaturesize"], $_GET["mindistance"], $_GET["force"], $_GET["shadowcolor"], $_GET["shadowsizex"], $_GET["shadowsizey"], $_GET["outlinecolor"], $_GET["cor"], $_GET["sombray"], $_GET["sombrax"], $_GET["sombra"], $_GET["fundo"], $_GET["angulo"], $_GET["tamanho"], $_GET["fonte"], $_GET["wrap"], true, $_GET["nometema"]);
     $m->salva();
     redesenhaMapa();
     break;
 case "SHAPEFILE":
     include_once "../../classesphp/classe_analise.php";
     $m = new Analise($map_file, "");
     $nomeLayer = $m->aplicaFuncaoListaWKT(array($_GET["xy"]), "converteSHP", $dir_tmp, $imgdir);
     $l = $m->mapa->getlayerbyname($nomeLayer);
     $l->setmetadata("tema", $_GET["nometema"]);
     //verifica projecao
     $shp = ms_shapeObjFromWkt($_GET["xy"]);
     $c = $shp->getCentroid();
     $c = $c->x;
     if ($c > -181 && $c < 181) {
         $l->setprojection(pegaProjecaoDefault("proj4"));
     } else {
         $l->setprojection($m->mapa->getProjection());
     }
     $m->salva();
     redesenhaMapa();
     break;
Ejemplo n.º 8
0
/**
 * Gera uma imagem com a representacao das ocorrencias na forma de mapa de calor
 * A imagem e gerada usando o software R
 * A coluna que sera usada para calcular o mapa de calor e obtida do cadastro de variaveis. Por isso, o layer deve
 * ser original do METAESTAT
 * @param arquivo mapfile do mapa atual
 * @param nome do layer fonte dos dados
 */
function mapaDeCalor($map_file, $tema)
{
    global $locaplic, $dir_tmp, $R_path, $ext;
    $nome = basename($map_file) . $tema . "calor";
    $mapa = ms_newMapObj($map_file);
    $teste = $mapa->getlayerbyname($nome);
    if ($teste != "") {
        return "";
    }
    $layer = $mapa->getlayerbyname($tema);
    //verifica se o layer e original ou se foi alterado
    //se foi alterado, nao e possivel obter a coluna para calcular o mapa de calor
    if ($layer->getmetadata("METAESTAT_DERIVADO") == "sim") {
        return "";
    }
    $layer->set("status", MS_OFF);
    $mapa->save($map_file);
    $meta = new Metaestat();
    $medidavariavel = $meta->listaMedidaVariavel("", $layer->getmetadata("METAESTAT_ID_MEDIDA_VARIAVEL"));
    include_once dirname(__FILE__) . "/../../classesphp/classe_analise.php";
    $m = new Analise($map_file, $tema, $locaplic, $ext);
    $retorno = $m->analiseDistriPt($locaplic, $dir_tmp, $R_path, 50, "densidade", "243,217,173", "255,0,0", "", 0, true, "", 2, $medidavariavel["colunavalor"]);
    $m->salva();
    return $retorno;
}
Ejemplo n.º 9
0
include_once dirname(__FILE__) . "/../safe.php";
verificaBlFerramentas(basename(dirname(__FILE__)), $i3geoBlFerramentas, false);
//
//faz a busca da fun&ccedil;&atilde;o que deve ser executada
//
$retorno = "";
//string que ser&aacute; retornada ao browser via JSON
switch (strtoupper($funcao)) {
    /*
    Valor: DISSOLVEPOLIGONO
    
    Elimina divisas entre pol&iacute;gonos com o mesmo atributo.
    
    Salva o mapa acrescentando um novo layer com o resultado.
    
    <Analise->dissolvePoligono>
    */
    case "DISSOLVEPOLIGONO":
        include_once dirname(__FILE__) . "/../../classesphp/classe_analise.php";
        copiaSeguranca($map_file);
        $m = new Analise($map_file, $tema);
        $retorno = $m->dissolvePoligono($_GET["item"], $locaplic);
        $m->salva();
        $_SESSION["contadorsalva"]++;
        break;
}
if (isset($map_file) && isset($postgis_mapa) && $map_file != "") {
    restauraCon($map_file, $postgis_mapa);
}
cpjson($retorno);
Ejemplo n.º 10
0
include_once dirname(__FILE__) . "/../safe.php";
verificaBlFerramentas(basename(dirname(__FILE__)), $i3geoBlFerramentas, false);
//
//faz a busca da fun&ccedil;&atilde;o que deve ser executada
//
$retorno = "";
//string que ser&aacute; retornada ao browser via JSON
switch (strtoupper($funcao)) {
    /*
    Valor: NPTPOL
    
    Conta o n&uacute;mero de pontos em pol&iacute;gono cruzando dois temas.
    
    Salva o mapa acrescentando um novo layer com o resultado.
    
    <Analise->nptPol>
    */
    case "NPTPOL":
        include_once dirname(__FILE__) . "/../../classesphp/classe_analise.php";
        copiaSeguranca($map_file);
        $m = new Analise($map_file, $tema, $locaplic, $ext);
        $retorno = $m->nptPol($_GET["temaPt"], $_GET["temaPo"], $locaplic, $_GET["somaritem"]);
        $m->salva();
        $_SESSION["contadorsalva"]++;
        break;
}
if (isset($map_file) && isset($postgis_mapa) && $map_file != "") {
    restauraCon($map_file, $postgis_mapa);
}
cpjson($retorno);
Ejemplo n.º 11
0
switch (strtoupper($funcao)) {
    /*
    Valor: GRADEDEPONTOS
    
    Gera uma grade de pontos com espa&ccedil;amento regular definido em d&eacute;cimos de grau.
    
    Salva o mapa acrescentando um novo layer com a grade de coordenadas.
    
    <Analise->gradeDePontos>
    */
    case "GRADEDEPONTOS":
        include_once dirname(__FILE__) . "/../../classesphp/classe_analise.php";
        copiaSeguranca($map_file);
        if (!isset($tema)) {
            $tema = "";
        }
        $m = new Analise($map_file, $tema);
        if ($_GET["proj"] == "sim") {
            $_GET["proj"] = true;
        } else {
            $_GET["proj"] = false;
        }
        $retorno = $m->gradeDePontos($_GET["dd"], $_GET["px"], $_GET["py"], $locaplic, $_GET["nptx"], $_GET["npty"], $_GET["proj"]);
        $m->salva();
        $_SESSION["contadorsalva"]++;
        break;
}
if (isset($map_file) && isset($postgis_mapa) && $map_file != "") {
    restauraCon($map_file, $postgis_mapa);
}
cpjson($retorno);
Ejemplo n.º 12
0
$retorno = "";
//string que ser&aacute; retornada ao browser via JSON
switch (strtoupper($funcao)) {
    /*
    Valor: CRIABUFFER
    
    Gera entorno (buffer) nos elementos selecionados de um tema.
    
    Salva o mapa acrescentando um novo layer com o buffer.
    
    <Analise->criaBuffer>
    */
    case "CRIABUFFER":
        include_once dirname(__FILE__) . "/../../classesphp/classe_analise.php";
        copiaSeguranca($map_file);
        $m = new Analise($map_file, $tema, $locaplic, $ext);
        if (empty($_GET["multiplicar"])) {
            $_GET["multiplicar"] = 1;
        }
        $retorno = $m->criaBuffer($_GET["distancia"], $locaplic, $_GET["unir"], $_GET["wkt"], $_GET["multiplicar"], $_GET["itemdistancia"]);
        $m->salva();
        //$_SESSION["contadorsalva"]++;
        //limpa selecao
        $qyfile = str_replace(".map", ".qy", $map_file);
        if (file_exists($qyfile)) {
            unlink($qyfile);
        }
        $qyfile = str_replace(".map", "_qy.map", $map_file);
        if (file_exists($qyfile)) {
            unlink($qyfile);
        }
Ejemplo n.º 13
0
include_once dirname(__FILE__) . "/../safe.php";
verificaBlFerramentas(basename(dirname(__FILE__)), $i3geoBlFerramentas, false);
//
//faz a busca da fun&ccedil;&atilde;o que deve ser executada
//
$retorno = "";
//string que ser&aacute; retornada ao browser via JSON
switch (strtoupper($funcao)) {
    /*
    Valor: CENTROMASSA
    
    Calcula o centro m&eacute;dio de uma distribui&ccedil;&atilde;o de pontos.
    
    Salva o mapa acrescentando um novo layer com o ponto.
    
    <Analise->centroMassa>
    */
    case "CENTROMASSA":
        include_once dirname(__FILE__) . "/../../classesphp/classe_analise.php";
        copiaSeguranca($map_file);
        $m = new Analise($map_file, $tema, $locaplic, $ext);
        $retorno = $m->centroMassa($_GET["item"]);
        $m->salva();
        $_SESSION["contadorsalva"]++;
        break;
}
if (isset($map_file) && isset($postgis_mapa) && $map_file != "") {
    restauraCon($map_file, $postgis_mapa);
}
cpjson($retorno);