コード例 #1
0
ファイル: mapa_controle.php プロジェクト: edmarmoretti/i3geo
     <class.palette.php>
     */
 /*
  Valor: VERPALETA
 
 Gera cores tendo como base uma cor inicial e uma cor final.
 
 <class.palette.php>
 */
 case "VERPALETA":
     include_once "class.palette.php";
     $cori = $_pg["cori"];
     $corf = $_pg["corf"];
     $numclasses = $_pg["numclasses"];
     $cori = RGB2hex(explode(",", $cori));
     $corf = RGB2hex(explode(",", $corf));
     $myPalette = new palette(array($cori, $corf), $numclasses + 1);
     foreach ($myPalette->colorRGB as $cores) {
         $res[] = $cores[0] . "," . $cores[1] . "," . $cores[2];
     }
     $retorno = implode("*", $res);
     break;
     /*
      Section: Edi&ccedil;&atilde;o
     
     Cria arquivos shapefile ou altera suas caracter&iacute;sticas.
     
     <classe_shp.php>
     */
     /*
      Valor: SPHPT2SHP
コード例 #2
0
ファイル: colorpicker.php プロジェクト: rhempen/cms
    for ($x = 0; $x < $cols; $x++) {
        $hexcolor = RGB2hex($gray, $gray, $gray);
        echo '<td bgcolor="#' . $hexcolor . '"><img id="img' . $hexcolor . '" src="spacer.gif" alt="#' . $hexcolor . '" width="' . $cellsize . '" height="' . $cellsize . '" onMouseOver="imgOn(this)" onClick="selColor(\'' . $hexcolor . '\')" onDblClick="returnColor(\'' . $hexcolor . '\')" style="cursor: pointer;"></td>' . "\n";
        $gray += $graystep;
    }
    echo '</tr>' . "\n";
}
echo '</table>';
CheckMaxWidthBR($currentwidth, $maxwidth, $cols, $cellsize, $cellpadding, $cellspacing);
// NOTE: "round($r) <= 0xFF" is needed instead of just "$r <= 0xFF" because of floating-point rounding errors
for ($r = 0x0; round($r) <= 0xff; $r += 0xff / ($totalsegments - 1 - 1)) {
    echo '<table border="0" cellspacing="' . $cellspacing . '" cellpadding="' . $cellpadding . '" align="left">' . "\n";
    for ($g = 0x0; round($g) <= 0xff; $g += 0xff / ($rows - 1)) {
        echo '  <tr>' . "\n";
        for ($b = 0x0; round($b) <= 0xff; $b += 0xff / ($cols - 1)) {
            $hexcolor = RGB2hex($r, $g, $b);
            echo '<td bgcolor="#' . $hexcolor . '"><img id="img' . $hexcolor . '" src="spacer.gif" alt="#' . $hexcolor . '" width="' . $cellsize . '" height="' . $cellsize . '" onMouseOver="imgOn(this)" onClick="selColor(\'' . $hexcolor . '\')" onDblClick="returnColor(\'' . $hexcolor . '\')" style="cursor: pointer;"></td>' . "\n";
        }
        echo '  </tr>' . "\n";
    }
    echo '</table>';
    CheckMaxWidthBR($currentwidth, $maxwidth, $cols, $cellsize, $cellpadding, $cellspacing);
}
echo '<br clear="all">';
?>
    <table width="<?php 
echo $maxwidth;
?>
" border="0" cellpadding="0" cellspacing="0">
      <form name="colorpicker" onSubmit="okClick(); return false;" action="">
        <tr>
コード例 #3
0
ファイル: classe_analise.php プロジェクト: edmarmoretti/i3geo
 function analiseDistriPt($locaplic, $dir_tmp, $R_path, $numclasses, $tipo, $cori, $corf, $tmpurl, $sigma = "", $limitepontos = "TRUE", $tema2 = "", $extendelimite = 5, $item = "")
 {
     set_time_limit(120);
     //
     // pega os dados do tema dois para as fun&ccedil;&otilde;es que o utilizam
     //
     $dados1 = $this->gravaCoordenadasPt($this->nome, $limitepontos, $extendelimite, $item);
     $nomearq = $dados1["prefixoarquivo"];
     $dimx = $dados1["dimx"];
     $dimy = $dados1["dimy"];
     $dimz = $dados1["dimz"];
     if (isset($tema2) && $tema2 != "") {
         $dados2 = $this->gravaCoordenadasPt($tema2, $limitepontos, $extendelimite);
         $nomearq2 = $dados2["prefixoarquivo"];
         $dimx2 = $dados2["dimx"];
         $dimy2 = $dados2["dimy"];
     }
     switch ($tipo) {
         // cluster espacial
         case "cluster":
             $this->mapaCluster($nomearq, $nomearq2, $dimx, $dimy, $dir_tmp, $R_path, $locaplic);
             return "ok";
             break;
             // delaunay e voronoi
         // delaunay e voronoi
         case "deldir":
             // error_reporting(0);
             $this->mapaDeldir($nomearq, $dir_tmp, $R_path, $locaplic);
             $this->deldirDir2shp($nomearq . "dirsgs", $dir_tmp, $locaplic);
             $this->deldirDel2shp($nomearq . "delsgs", $dir_tmp, $locaplic);
             return "ok";
             break;
         case "kernel":
             $this->mapaKernel($nomearq, $dimx, $dimy, $dir_tmp, $R_path, $locaplic, $sigma);
             break;
         case "densidade":
             $this->mapaDensidade($nomearq, $dimx, $dimy, $dir_tmp, $R_path, $locaplic, $dimz);
             break;
         case "distancia":
             $this->mapaDistancia($nomearq, $dimx, $dimy, $dir_tmp, $R_path, $locaplic);
             break;
         case "relatorio":
             $r = $this->mapaRelatorioAnaliseDist($nomearq, $dimx, $dimy, $dir_tmp, $R_path, $locaplic);
             return $tmpurl . basename($this->diretorio) . "/" . basename($nomearq) . '.htm';
             break;
     }
     // cria a imagem
     $minmax = $this->criaImagemR($nomearq);
     // cria as cores
     include_once "class.palette.php";
     $cori = RGB2hex(explode(",", $cori));
     $corf = RGB2hex(explode(",", $corf));
     $myPalette = new palette(array($cori, $corf), $numclasses + 1);
     // cria os parametros das classes
     $cls = $this->classesRasterI($minmax[0], $minmax[1], $numclasses, $myPalette->colorRGB);
     if (count($cls) != $numclasses) {
         return "erro.";
     }
     // adiciona o novo tema
     if (file_exists($nomearq . ".png")) {
         $novolayer = criaLayer($this->mapa, MS_LAYER_RASTER, MS_DEFAULT, $tipo . " (" . $this->nome . ")", $metaClasse = "SIM");
         $novolayer->set("data", $nomearq . ".png");
         $novolayer->set("template", "none.htm");
         $novolayer->setmetadata("download", "sim");
         // classes
         $numclassesatual = $novolayer->numclasses;
         for ($i = 0; $i < $numclassesatual; ++$i) {
             $classe = $novolayer->getClass($i);
             $classe->set("status", MS_DELETE);
         }
         for ($i = 0; $i < $numclasses; ++$i) {
             $classe = ms_newClassObj($novolayer);
             $novoestilo = ms_newStyleObj($classe);
             $ncor = $novoestilo->color;
             $cores = $cls[$i]["cores"];
             $ncor->setrgb($cores[0], $cores[1], $cores[2]);
             $classe->setexpression($cls[$i]["expressao"]);
             $classe->set("name", $cls[$i]["nomeclasse"]);
         }
         $of = $this->mapa->outputformat;
         // $of->set("imagemode",MS_IMAGEMODE_RGB);
         //
         // reposiciona o layer
         //
         $layer = $this->mapa->getlayerbyname($this->nome);
         if ($layer != "") {
             $temp = ms_newLayerObj($this->mapa, $novolayer);
             $novolayer->set("status", MS_DELETE);
             $temp = ms_newLayerObj($this->mapa, $layer);
             $layer->set("status", MS_DELETE);
         } else {
             $indicel = $novolayer->index;
             $numlayers = $this->mapa->numlayers;
             $nummove = 0;
             for ($i = $numlayers - 1; $i > 0; $i--) {
                 $layerAbaixo = $this->mapa->getlayer($i);
                 $tipo = $layerAbaixo->type;
                 if ($tipo != 2 && $tipo != 3) {
                     $nummove++;
                 }
             }
             if ($nummove > 2) {
                 for ($i = 0; $i <= $nummove - 3; ++$i) {
                     $this->mapa->movelayerup($indicel);
                 }
             }
         }
     } else {
         return "erro";
     }
     if (file_exists($this->qyfile)) {
         unlink($this->qyfile);
     }
     return $novolayer->name;
 }
コード例 #4
0
 function alteraCoresClasses($cori, $corf)
 {
     if (!$this->layer) {
         return "erro";
     }
     if (file_exists($this->locaplic . "/class.palette.php")) {
         include_once $this->locaplic . "/class.palette.php";
     } else {
         include_once "class.palette.php";
     }
     $cori = RGB2hex(explode(",", $cori));
     $corf = RGB2hex(explode(",", $corf));
     $numclasses = $this->layer->numclasses;
     $myPalette = new palette(array($cori, $corf), $numclasses + 1);
     $cores = $myPalette->colorRGB;
     for ($i = 0; $i < $numclasses; ++$i) {
         $classe = $this->layer->getclass($i);
         $estilo = $classe->getstyle(0);
         $corpaleta = $cores[$i];
         if ($this->layer->type == MS_LAYER_LINE) {
             $cor = $estilo->outlinecolor;
             $cor->setrgb($corpaleta[0], $corpaleta[1], $corpaleta[2]);
         }
         $cor = $estilo->color;
         $cor->setrgb($corpaleta[0], $corpaleta[1], $corpaleta[2]);
     }
     $this->layer->setMetaData("cache", "");
     return "ok";
 }