Commit 4c4a50ba22a729c81ec5029f745d9fad538e0a0a

Authored by Edmar Moretti
1 parent 8ae2738d

--no commit message

classesphp/classe_legenda.php
@@ -231,6 +231,20 @@ string de variaveis no formato javascript que permitem montar a legenda. @@ -231,6 +231,20 @@ string de variaveis no formato javascript que permitem montar a legenda.
231 */ 231 */
232 function legendaGrafica() 232 function legendaGrafica()
233 { 233 {
  234 + $nomeslayers = $this->mapa->getalllayernames();
  235 + foreach ($nomeslayers as $nomelayer)
  236 + {
  237 + $layer = $this->mapa->getlayerbyname($nomelayer);
  238 + if (($layer->data != "") && (strtoupper($layer->getmetadata("escondido")) != "SIM") && (strtoupper($layer->getmetadata("tema")) != "NAO"))
  239 + {
  240 + if ($layer->numclasses > 0)
  241 + {
  242 + $classe = $layer->getclass(0);
  243 + if (($classe->name == "") || ($classe->name == " "))
  244 + {$classe->set("name",$layer->getmetadata("tema"));}
  245 + }
  246 + }
  247 + }
234 $nomeImagem = nomeRandomico(); 248 $nomeImagem = nomeRandomico();
235 $imgo = $this->mapa->drawlegend(); 249 $imgo = $this->mapa->drawlegend();
236 $nomer = ($imgo->imagepath)."leg".$nomeImagem.".png"; 250 $nomer = ($imgo->imagepath)."leg".$nomeImagem.".png";
@@ -586,8 +600,22 @@ array - "imagecolor"=>$imagecolor,"transparent"=>transparent,"position"=>$positi @@ -586,8 +600,22 @@ array - "imagecolor"=>$imagecolor,"transparent"=>transparent,"position"=>$positi
586 $transparent = $legenda->transparent; 600 $transparent = $legenda->transparent;
587 $imagecolor = corRGB($legenda->imagecolor); 601 $imagecolor = corRGB($legenda->imagecolor);
588 $label = $legenda->label; 602 $label = $legenda->label;
  603 + $font = $label->font;
  604 + if($font == MS_BITMAP)
  605 + {
  606 + $l = $label->size;
  607 + if ($l == MS_TINY){$t = 5;}
  608 + if ($l == MS_SMALL){$t = 7;}
  609 + if ($l == MS_MEDIUM){$t = 10;}
  610 + if ($l == MS_LARGE){$t = 12;}
  611 + if ($l == MS_GIANT){$t = 14;}
  612 + $labelsize = $t;
  613 + }
  614 + else
589 $labelsize = $label->size; 615 $labelsize = $label->size;
590 - return(array("imagecolor"=>$imagecolor,"transparent"=>transparent,"position"=>$position,"status"=>$status,"outlinecolor"=>$outlinecolor,"keyspacingy"=>$keyspacingy,"keyspacingx"=>$keyspacingx,"keysizey"=>$keysizey,"keysizex"=>$keysizex,"height"=>$height,"width"=>$width,"labelsize"=>$labelsize)); 616 +
  617 + $tipofonte = $label->type;
  618 + return(array("tipofonte"=>$tipofonte,"font"=>$font,"imagecolor"=>$imagecolor,"transparent"=>transparent,"position"=>$position,"status"=>$status,"outlinecolor"=>$outlinecolor,"keyspacingy"=>$keyspacingy,"keyspacingx"=>$keyspacingx,"keysizey"=>$keysizey,"keysizex"=>$keysizex,"height"=>$height,"width"=>$width,"labelsize"=>$labelsize));
591 } 619 }
592 /* 620 /*
593 function: aplicaParametrosLegImg 621 function: aplicaParametrosLegImg
@@ -616,7 +644,7 @@ $heigt @@ -616,7 +644,7 @@ $heigt
616 644
617 $width 645 $width
618 */ 646 */
619 - function aplicaParametrosLegImg($imagecolor,$position,$status,$outlinecolor,$keyspacingy,$keyspacingx,$keysizey,$keysizex,$height,$width,$labelsize) 647 + function aplicaParametrosLegImg($fonte,$imagecolor,$position,$status,$outlinecolor,$keyspacingy,$keyspacingx,$keysizey,$keysizex,$height,$width,$labelsize)
620 { 648 {
621 $legenda = $this->mapa->legend; 649 $legenda = $this->mapa->legend;
622 $legenda->set("height",$height); 650 $legenda->set("height",$height);
@@ -642,7 +670,24 @@ $width @@ -642,7 +670,24 @@ $width
642 $cor = explode(",",$imagecolor); 670 $cor = explode(",",$imagecolor);
643 $corres->setRGB($cor[0],$cor[1],$cor[2]); 671 $corres->setRGB($cor[0],$cor[1],$cor[2]);
644 $label = $legenda->label; 672 $label = $legenda->label;
645 - $label->set("size",$labelsize); 673 +
  674 + if ($fonte != "bitmap")
  675 + {
  676 + $label->set("type",MS_TRUETYPE);
  677 + $label->set("font",$fonte);
  678 + $label->set("size",$labelsize);
  679 + }
  680 + else
  681 + {
  682 + $label->set("type",MS_BITMAP);
  683 + $t = MS_TINY;
  684 + if ($labelsize > 5 ){$t = MS_TINY;}
  685 + if ($labelsize >= 7 ){$t = MS_SMALL;}
  686 + if ($labelsize >= 10 ){$t = MS_MEDIUM;}
  687 + if ($labelsize >= 12 ){$t = MS_LARGE;}
  688 + if ($labelsize >= 14 ){$t = MS_GIANT;}
  689 + $label->set("size",$t);
  690 + }
646 return("ok"); 691 return("ok");
647 } 692 }
648 } 693 }
classesphp/mapa_controle.php
@@ -2204,6 +2204,21 @@ Include: @@ -2204,6 +2204,21 @@ Include:
2204 $cp->set_data($r); 2204 $cp->set_data($r);
2205 break; 2205 break;
2206 /* 2206 /*
  2207 +Property: testaLegenda
  2208 +
  2209 +Testa os parâmetros de definiçăo da legenda inserida no mapa.
  2210 +
  2211 +Include:
  2212 +<classe_legenda.php>
  2213 +*/
  2214 + case "testaLegenda":
  2215 + include_once("classe_legenda.php");
  2216 + copy($map_file,str_replace(".map","testeleg.map",$map_file));
  2217 + $m = new Legenda(str_replace(".map","testeleg.map",$map_file));
  2218 + $m->aplicaParametrosLegImg($fonte,$imagecolor,$position,$status,$outlinecolor,$keyspacingy,$keyspacingx,$keysizey,$keysizex,$height,$width,$labelsize);
  2219 + $cp->set_data($m->legendaGrafica());
  2220 + break;
  2221 +/*
2207 Property: contagemclasse 2222 Property: contagemclasse
2208 2223
2209 Acrescenta a contagem de elementos em cada classe. 2224 Acrescenta a contagem de elementos em cada classe.
@@ -2263,7 +2278,7 @@ Include: @@ -2263,7 +2278,7 @@ Include:
2263 $utilizacgi = "nao"; 2278 $utilizacgi = "nao";
2264 } 2279 }
2265 $m = new Legenda($map_file); 2280 $m = new Legenda($map_file);
2266 - $cp->set_data($m->aplicaParametrosLegImg($imagecolor,$position,$status,$outlinecolor,$keyspacingy,$keyspacingx,$keysizey,$keysizex,$height,$width,$labelsize)); 2281 + $cp->set_data($m->aplicaParametrosLegImg($fonte,$imagecolor,$position,$status,$outlinecolor,$keyspacingy,$keyspacingx,$keysizey,$keysizex,$height,$width,$labelsize));
2267 $m->salva(); 2282 $m->salva();
2268 break; 2283 break;
2269 /* 2284 /*
@@ -2340,9 +2355,14 @@ Include: @@ -2340,9 +2355,14 @@ Include:
2340 case "selecaopt": 2355 case "selecaopt":
2341 include_once("classe_selecao.php"); 2356 include_once("classe_selecao.php");
2342 copiaSeguranca($map_file); 2357 copiaSeguranca($map_file);
2343 - $m = new Selecao($map_file,$tema);  
2344 if(!isset($xy)){$xy = "";} 2358 if(!isset($xy)){$xy = "";}
2345 - $cp->set_data($m->selecaoPT($xy,$tipo,$tolerancia)); 2359 + $temas = explode(",",$tema);
  2360 + foreach($temas as $tema)
  2361 + {
  2362 + $m = new Selecao($map_file,$tema);
  2363 + $ok[] = $m->selecaoPT($xy,$tipo,$tolerancia);
  2364 + }
  2365 + $cp->set_data(implode(",",$ok));
2346 break; 2366 break;
2347 /* 2367 /*
2348 Property: selecaoext 2368 Property: selecaoext
@@ -2355,8 +2375,13 @@ Include: @@ -2355,8 +2375,13 @@ Include:
2355 case "selecaoext": 2375 case "selecaoext":
2356 include_once("classe_selecao.php"); 2376 include_once("classe_selecao.php");
2357 copiaSeguranca($map_file); 2377 copiaSeguranca($map_file);
2358 - $m = new Selecao($map_file,$tema);  
2359 - $cp->set_data($m->selecaoEXT($tipo)); 2378 + $temas = explode(",",$tema);
  2379 + foreach($temas as $tema)
  2380 + {
  2381 + $m = new Selecao($map_file,$tema);
  2382 + $ok[] = $m->selecaoEXT($tipo);
  2383 + }
  2384 + $cp->set_data(implode(",",$ok));
2360 break; 2385 break;
2361 /* 2386 /*
2362 Property: selecaobox 2387 Property: selecaobox
@@ -2369,8 +2394,13 @@ Include: @@ -2369,8 +2394,13 @@ Include:
2369 case "selecaobox": 2394 case "selecaobox":
2370 include_once("classe_selecao.php"); 2395 include_once("classe_selecao.php");
2371 copiaSeguranca($map_file); 2396 copiaSeguranca($map_file);
2372 - $m = new Selecao($map_file,$tema);  
2373 - $cp->set_data($m->selecaoBOX($tipo,$ext)); 2397 + $temas = explode(",",$tema);
  2398 + foreach($temas as $tema)
  2399 + {
  2400 + $m = new Selecao($map_file,$tema);
  2401 + $ok[] = $m->selecaoBOX($tipo,$ext);
  2402 + }
  2403 + $cp->set_data(implode(",",$ok));
2374 break; 2404 break;
2375 2405
2376 /* 2406 /*
@@ -2398,8 +2428,13 @@ Include: @@ -2398,8 +2428,13 @@ Include:
2398 case "selecaotema": 2428 case "selecaotema":
2399 include_once("classe_selecao.php"); 2429 include_once("classe_selecao.php");
2400 copiaSeguranca($map_file); 2430 copiaSeguranca($map_file);
2401 - $m = new Selecao($map_file,$tema);  
2402 - $cp->set_data($m->selecaoTema($temao,$tipo)); 2431 + $temas = explode(",",$tema);
  2432 + foreach($temas as $tema)
  2433 + {
  2434 + $m = new Selecao($map_file,$tema);
  2435 + $ok[] = $m->selecaoTema($temao,$tipo);
  2436 + }
  2437 + $cp->set_data(implode(",",$ok));
2403 break; 2438 break;
2404 /* 2439 /*
2405 Property: selecaoPoli 2440 Property: selecaoPoli
@@ -2603,9 +2638,14 @@ function selecaoPoli($xs,$ys,$tema,$tipo) @@ -2603,9 +2638,14 @@ function selecaoPoli($xs,$ys,$tema,$tipo)
2603 { 2638 {
2604 global $map_file,$cp; 2639 global $map_file,$cp;
2605 include_once("classe_selecao.php"); 2640 include_once("classe_selecao.php");
2606 - $m = new Selecao($map_file,$tema);  
2607 - $cp->set_data($m->selecaoPorPoligono($tipo,$xs,$ys));  
2608 - $m->salva(); 2641 + $temas = explode(",",$tema);
  2642 + foreach($temas as $tema)
  2643 + {
  2644 + $m = new Selecao($map_file,$tema);
  2645 + $ok[] = $m->selecaoPorPoligono($tipo,$xs,$ys);
  2646 + $m->salva();
  2647 + }
  2648 + $cp->set_data(implode(",",$ok));
2609 } 2649 }
2610 /* 2650 /*
2611 Function: redesenhaMapa 2651 Function: redesenhaMapa