Commit 58e7affabc90896b21f8e99202ac4343212a413a
1 parent
b53cd23b
Exists in
master
and in
7 other branches
Incluida opção para aplicar automaticamente níveis de transparência às classes d…
…e um layer no editor de legenda
Showing
4 changed files
with
76 additions
and
9 deletions
Show diff stats
classesphp/classe_alteraclasse.php
@@ -430,6 +430,32 @@ A nova classe será uma cópia da classe 0. | @@ -430,6 +430,32 @@ A nova classe será uma cópia da classe 0. | ||
430 | return("ok"); | 430 | return("ok"); |
431 | } | 431 | } |
432 | /* | 432 | /* |
433 | +function: adicionaopacidade | ||
434 | + | ||
435 | +Adiciona opacidade variável de 0 a 100 conforme o número de classes | ||
436 | + | ||
437 | +*/ | ||
438 | + function adicionaopacidade() | ||
439 | + { | ||
440 | + //error_reporting(E_ALL); | ||
441 | + if(!$this->layer){return "erro";} | ||
442 | + $numclasses = $this->layer->numclasses; | ||
443 | + $n = intval(100 / $numclasses); | ||
444 | + for($i=0;$i<$numclasses;++$i) | ||
445 | + { | ||
446 | + $classe = $this->layer->getclass($i); | ||
447 | + $numestilos = $classe->numstyles; | ||
448 | + $o = $i * $n; | ||
449 | + for($j=0;$j<$numestilos;++$j) | ||
450 | + { | ||
451 | + $estilo = $classe->getstyle($j); | ||
452 | + $estilo->set("opacity",$o); | ||
453 | + } | ||
454 | + } | ||
455 | + $this->layer->setMetaData("cache",""); | ||
456 | + return("ok"); | ||
457 | + } | ||
458 | +/* | ||
433 | function: alteraCoresClasses | 459 | function: alteraCoresClasses |
434 | 460 | ||
435 | Altera as cores das classes existentes em um objeto layer gerando uma paleta de cores de acordo com um valor inicial e final. | 461 | Altera as cores das classes existentes em um objeto layer gerando uma paleta de cores de acordo com um valor inicial e final. |
classesphp/classe_legenda.php
@@ -545,6 +545,7 @@ string com o tipo do layer,id do estilo,outlinecolor,backgroundcolor,color,symbo | @@ -545,6 +545,7 @@ string com o tipo do layer,id do estilo,outlinecolor,backgroundcolor,color,symbo | ||
545 | $linha[] = corRGB($estilo->color); | 545 | $linha[] = corRGB($estilo->color); |
546 | $linha[] = $estilo->symbolname; | 546 | $linha[] = $estilo->symbolname; |
547 | $linha[] = $estilo->size; | 547 | $linha[] = $estilo->size; |
548 | + $linha[] = $estilo->opacity; | ||
548 | $linhas[] = $tipoLayer."#".implode("#",$linha); | 549 | $linhas[] = $tipoLayer."#".implode("#",$linha); |
549 | } | 550 | } |
550 | //retorna tipo do layer,id do estilo,outlinecolor,backgroundcolor,color,symbolname,size | 551 | //retorna tipo do layer,id do estilo,outlinecolor,backgroundcolor,color,symbolname,size |
@@ -568,9 +569,11 @@ $color - Cor da frente. | @@ -568,9 +569,11 @@ $color - Cor da frente. | ||
568 | 569 | ||
569 | $symbolname - Nome do símbolo. | 570 | $symbolname - Nome do símbolo. |
570 | 571 | ||
571 | -$size - Tamanho que será aplicado ao símbolo. | 572 | +$size - Tamanho que será aplicado ao símbolo. |
573 | + | ||
574 | +$opacidade - Opacidade | ||
572 | */ | 575 | */ |
573 | - function aplicaParametro($classe,$estilo,$outlinecolor,$backgroundcolor,$color,$symbolname,$size) | 576 | + function aplicaParametro($classe,$estilo,$outlinecolor,$backgroundcolor,$color,$symbolname,$size,$opacidade) |
574 | { | 577 | { |
575 | if(!$this->layer){return "erro";} | 578 | if(!$this->layer){return "erro";} |
576 | $classe = $this->layer->getclass($classe); | 579 | $classe = $this->layer->getclass($classe); |
@@ -597,12 +600,14 @@ $size - Tamanho que será aplicado ao símbolo. | @@ -597,12 +600,14 @@ $size - Tamanho que será aplicado ao símbolo. | ||
597 | {$estilo->set("symbolname",$symbolname);} | 600 | {$estilo->set("symbolname",$symbolname);} |
598 | if ((isset ($size)) && ($size != "-1")) | 601 | if ((isset ($size)) && ($size != "-1")) |
599 | {$estilo->set("size",$size);} | 602 | {$estilo->set("size",$size);} |
603 | + if(isset($opacidade)) | ||
604 | + {$estilo->set("opacity",$opacidade);} | ||
600 | if ($this->layer->getmetadata("sld") != "") | 605 | if ($this->layer->getmetadata("sld") != "") |
601 | { | 606 | { |
602 | $sld = $this->layer->getmetadata("sld"); | 607 | $sld = $this->layer->getmetadata("sld"); |
603 | reSLD($this->arquivo,$this->nome,$sld); | 608 | reSLD($this->arquivo,$this->nome,$sld); |
604 | } | 609 | } |
605 | - $this->layer->removeMetaData("cache"); | 610 | + $this->layer->setMetaData("cache",""); |
606 | return "ok"; | 611 | return "ok"; |
607 | } | 612 | } |
608 | /* | 613 | /* |
classesphp/mapa_controle.php
@@ -1378,7 +1378,9 @@ Altera uma classe de um tema, aplicando uma nova classificação ou modificando pa | @@ -1378,7 +1378,9 @@ Altera uma classe de um tema, aplicando uma nova classificação ou modificando pa | ||
1378 | { | 1378 | { |
1379 | $projMapa = $m->mapa->getProjection(); | 1379 | $projMapa = $m->mapa->getProjection(); |
1380 | $m->mapa->setProjection("init=epsg:4291"); | 1380 | $m->mapa->setProjection("init=epsg:4291"); |
1381 | - } | 1381 | + } |
1382 | + if ($opcao == "adicionaopacidade") | ||
1383 | + {$retorno = $m->adicionaopacidade();} | ||
1382 | if ($opcao == "adicionaclasse") | 1384 | if ($opcao == "adicionaclasse") |
1383 | {$retorno = $m->adicionaclasse();} | 1385 | {$retorno = $m->adicionaclasse();} |
1384 | if ($opcao == "valorunico") | 1386 | if ($opcao == "valorunico") |
@@ -2303,7 +2305,7 @@ Define as características de simbologia de uma classe, cria, adiciona e exclui e | @@ -2303,7 +2305,7 @@ Define as características de simbologia de uma classe, cria, adiciona e exclui e | ||
2303 | } | 2305 | } |
2304 | if ($opcao == "aplica") | 2306 | if ($opcao == "aplica") |
2305 | { | 2307 | { |
2306 | - $retorno = $m->aplicaParametro($classe,$estilo,$outlinecolor,$backgroundcolor,$color,$symbolname,$size); | 2308 | + $retorno = $m->aplicaParametro($classe,$estilo,$outlinecolor,$backgroundcolor,$color,$symbolname,$size,$opacidade); |
2307 | $m->salva(); | 2309 | $m->salva(); |
2308 | } | 2310 | } |
2309 | if ($opcao == "listaSimbolos") | 2311 | if ($opcao == "listaSimbolos") |
ferramentas/legenda/index.js.php
@@ -122,6 +122,10 @@ i3GEOF.legenda = { | @@ -122,6 +122,10 @@ i3GEOF.legenda = { | ||
122 | {onclick:{fn: i3GEOF.legenda.adicionaConta}} | 122 | {onclick:{fn: i3GEOF.legenda.adicionaConta}} |
123 | ); | 123 | ); |
124 | new YAHOO.widget.Button( | 124 | new YAHOO.widget.Button( |
125 | + "i3GEOlegendabotao15", | ||
126 | + {onclick:{fn: i3GEOF.legenda.adicionaOpacidade}} | ||
127 | + ); | ||
128 | + new YAHOO.widget.Button( | ||
125 | "i3GEOlegendabotao4", | 129 | "i3GEOlegendabotao4", |
126 | {onclick:{fn: i3GEOF.legenda.paleta}} | 130 | {onclick:{fn: i3GEOF.legenda.paleta}} |
127 | ); | 131 | ); |
@@ -184,9 +188,11 @@ i3GEOF.legenda = { | @@ -184,9 +188,11 @@ i3GEOF.legenda = { | ||
184 | '</div><br>'+ | 188 | '</div><br>'+ |
185 | '<div id=i3GEOlegendaguia1obj style="width:99%;text-align:left;">'+ | 189 | '<div id=i3GEOlegendaguia1obj style="width:99%;text-align:left;">'+ |
186 | ' <p class=paragrafo ><input id=i3GEOlegendabotao1 size="22" type="button" value="Aplicar alterações">'+ | 190 | ' <p class=paragrafo ><input id=i3GEOlegendabotao1 size="22" type="button" value="Aplicar alterações">'+ |
187 | - ' <input id=i3GEOlegendabotao2 size="22" type="button" value="Adicionar classe">' + | ||
188 | - ' <input id=i3GEOlegendabotao3 size="25" type="button" value="Adiciona contagem"></p>' + | ||
189 | - ' <table summary="" class=lista5 width="400px">' + | 191 | + ' <input id=i3GEOlegendabotao2 size="22" type="button" value="+ classe">' + |
192 | + ' <input id=i3GEOlegendabotao3 size="25" type="button" value="+ contagem">' + | ||
193 | + ' <input id=i3GEOlegendabotao15 size="25" type="button" value="Opacidade variável"></p>' + | ||
194 | + | ||
195 | + ' <table summary="" class=lista5 >' + | ||
190 | ' <tr>' + | 196 | ' <tr>' + |
191 | ' <td><input id=i3GEOlegendabotao4 type="button" size=15 value="Gerar cores"></td>' + | 197 | ' <td><input id=i3GEOlegendabotao4 type="button" size=15 value="Gerar cores"></td>' + |
192 | ' <td>de:</td>' + | 198 | ' <td>de:</td>' + |
@@ -482,6 +488,30 @@ i3GEOF.legenda = { | @@ -482,6 +488,30 @@ i3GEOF.legenda = { | ||
482 | cp.call(p,"alteraclasse",i3GEOF.legenda.mostralegenda); | 488 | cp.call(p,"alteraclasse",i3GEOF.legenda.mostralegenda); |
483 | }, | 489 | }, |
484 | /* | 490 | /* |
491 | + Function: adicionaOpacidade | ||
492 | + | ||
493 | + Adiciona opacidade variável em cada classe | ||
494 | + | ||
495 | + Veja: | ||
496 | + | ||
497 | + <ALTERACLASSE> | ||
498 | + */ | ||
499 | + adicionaOpacidade: function(){ | ||
500 | + var retorna = function(){ | ||
501 | + i3GEO.atualiza(); | ||
502 | + i3GEO.Interface.atualizaTema("",i3GEOF.legenda.tema); | ||
503 | + i3GEO.arvoreDeCamadas.atualizaLegenda(i3GEOF.legenda.tema); | ||
504 | + i3GEOF.legenda.aguarde.visibility = "hidden"; | ||
505 | + i3GEOF.legenda.mostralegenda(); | ||
506 | + }; | ||
507 | + if(i3GEOF.legenda.aguarde.visibility === "visible") | ||
508 | + {return;} | ||
509 | + var p = i3GEO.configura.locaplic+"/classesphp/mapa_controle.php?g_sid="+i3GEO.configura.sid+"&funcao=alteraclasse&opcao=adicionaopacidade"+"&tema="+i3GEOF.legenda.tema+"&ext="+i3GEO.parametros.mapexten, | ||
510 | + cp = new cpaint(); | ||
511 | + cp.set_response_type("JSON"); | ||
512 | + cp.call(p,"alteraclasse",retorna); | ||
513 | + }, | ||
514 | + /* | ||
485 | Function: paleta | 515 | Function: paleta |
486 | 516 | ||
487 | Gera as cores para as classes considerando um RGB inicial e um final | 517 | Gera as cores para as classes considerando um RGB inicial e um final |
@@ -873,6 +903,9 @@ i3GEOF.legenda = { | @@ -873,6 +903,9 @@ i3GEOF.legenda = { | ||
873 | "<tr><td style='text-align:left;'>Tamanho:</td><td>"+ | 903 | "<tr><td style='text-align:left;'>Tamanho:</td><td>"+ |
874 | $inputText("","","i3GEOlegendasizes","",12,linha[6]) + | 904 | $inputText("","","i3GEOlegendasizes","",12,linha[6]) + |
875 | "</td><td></td></tr>" + | 905 | "</td><td></td></tr>" + |
906 | + "<tr><td style='text-align:left;'>Opacidade:</td><td>"+ | ||
907 | + $inputText("","","i3GEOlegendaopacidade","",3,linha[7]) + | ||
908 | + "</td><td></td></tr>" + | ||
876 | "<tr><td style='text-align:left;'>Símbolo:</td><td>"+ | 909 | "<tr><td style='text-align:left;'>Símbolo:</td><td>"+ |
877 | $inputText("","","i3GEOlegendasymbolname","",12,linha[5]) + | 910 | $inputText("","","i3GEOlegendasymbolname","",12,linha[5]) + |
878 | "</td><td></td></tr></table>"; | 911 | "</td><td></td></tr></table>"; |
@@ -932,6 +965,7 @@ i3GEOF.legenda = { | @@ -932,6 +965,7 @@ i3GEOF.legenda = { | ||
932 | valido = "nao", | 965 | valido = "nao", |
933 | n = simbolos.length, | 966 | n = simbolos.length, |
934 | size = $i("i3GEOlegendasizes").value, | 967 | size = $i("i3GEOlegendasizes").value, |
968 | + opacidade = $i("i3GEOlegendaopacidade").value, | ||
935 | p,cp,fim; | 969 | p,cp,fim; |
936 | for (i=0;i<n;i++){ | 970 | for (i=0;i<n;i++){ |
937 | if(simbolos[i].title == symbolname) | 971 | if(simbolos[i].title == symbolname) |
@@ -942,7 +976,7 @@ i3GEOF.legenda = { | @@ -942,7 +976,7 @@ i3GEOF.legenda = { | ||
942 | i3GEOF.legenda.aguarde.visibility = "hidden"; | 976 | i3GEOF.legenda.aguarde.visibility = "hidden"; |
943 | return; | 977 | return; |
944 | } | 978 | } |
945 | - p = i3GEO.configura.locaplic+"/classesphp/mapa_controle.php?g_sid="+i3GEO.configura.sid+"&funcao=editasimbolo&opcao=aplica&tema="+i3GEOF.legenda.tema+"&classe="+i3GEOF.legenda.classe+"&estilo="+i3GEOF.legenda.estilo+"&outlinecolor="+outlinecolor+"&backgroundcolor="+backgroundcolor+"&color="+color+"&symbolname="+symbolname+"&size="+size; | 979 | + p = i3GEO.configura.locaplic+"/classesphp/mapa_controle.php?g_sid="+i3GEO.configura.sid+"&funcao=editasimbolo&opcao=aplica&tema="+i3GEOF.legenda.tema+"&classe="+i3GEOF.legenda.classe+"&estilo="+i3GEOF.legenda.estilo+"&outlinecolor="+outlinecolor+"&backgroundcolor="+backgroundcolor+"&color="+color+"&symbolname="+symbolname+"&size="+size+"&opacidade="+opacidade; |
946 | cp = new cpaint(); | 980 | cp = new cpaint(); |
947 | fim = function(){ | 981 | fim = function(){ |
948 | i3GEO.atualiza(); | 982 | i3GEO.atualiza(); |