diff --git a/classesjs/classe_configura.js b/classesjs/classe_configura.js index c62953f..f300c38 100644 --- a/classesjs/classe_configura.js +++ b/classesjs/classe_configura.js @@ -695,7 +695,7 @@ i3GEO.configura = { funcaoonclick:function(){ if(i3GEO.Interface.ATUAL === "googlemaps"){ //alert("Pressione a tecla CTRL junto com o botão esquerdo do mouse"); - i3GEO.janela.mensagemSimples("Pressione a tecla CTRL junto com o botão esquerdo do mouse e arraste para definir a área de zoom","?"); + i3GEO.janela.tempoMsg("Pressione a tecla CTRL junto com o botão esquerdo do mouse e arraste para definir a área de zoom"); g_tipoacao='pan'; g_operacao='navega'; i3GEO.barraDeBotoes.ativaIcone("pan"); diff --git a/classesphp/classe_alteraclasse.php b/classesphp/classe_alteraclasse.php index d319940..f6ca9b3 100644 --- a/classesphp/classe_alteraclasse.php +++ b/classesphp/classe_alteraclasse.php @@ -55,7 +55,7 @@ class Alteraclasse Objeto layer */ - protected $layer; + public $layer; /* Variavel: $nome @@ -81,8 +81,9 @@ $tema - nome do tema $this->mapa = ms_newMapObj($map_file); $this->arquivo = $map_file; $this->layer = ""; - if($tema != "" && @$this->mapa->getlayerbyname($tema)) - $this->layer = $this->mapa->getlayerbyname($tema); + if($tema != "" && @$this->mapa->getlayerbyname($tema)){ + $this->layer = $this->mapa->getlayerbyname($tema); + } $this->nome = $tema; if($ext && $ext != ""){ $e = explode(" ",$ext); diff --git a/ferramentas/metaestat/alterarep.js b/ferramentas/metaestat/alterarep.js index c182763..a30c33f 100644 --- a/ferramentas/metaestat/alterarep.js +++ b/ferramentas/metaestat/alterarep.js @@ -70,6 +70,11 @@ i3GEOF.alterarep = { {onclick:{fn: function(){i3GEOF.alterarep.circulos("variacor");}}} ); $i("i3geoalterarepCirculos1-button").style.width = 230 + "px"; + new YAHOO.widget.Button( + "i3geoalterarepCirculos2", + {onclick:{fn: function(){i3GEOF.alterarep.circulos("continuo");}}} + ); + $i("i3geoalterarepCirculos2-button").style.width = 230 + "px"; }, //utiliza o dicionario compartilhado iniciaDicionario: function(){ @@ -118,8 +123,9 @@ i3GEOF.alterarep = { var ins = "" + '
'+ ' Círculos representando os valores'+ - '

'+ - ' '+ + '

'+ + '

'+ + ' '+ '

'; return ins; }, @@ -132,11 +138,15 @@ i3GEOF.alterarep = { var p = i3GEO.configura.locaplic+"/ferramentas/metaestat/analise.php?g_sid="+i3GEO.configura.sid + "&tema="+$i("i3geoCartoAnaliseCamadasCombo").value, temp = function(retorno){ - i3GEO.janela.fechaAguarde("alterarep1"); - var atualiza = function(){ + i3GEO.janela.fechaAguarde("alterarep1"); + if(retorno.data == ""){ + i3GEO.janela.tempoMsg("A camada escolhida não permite essa operação"); + return; + } + var atualiza = function(){ i3GEO.atualiza(); - i3GEOF.metaestat.CAMADAS.push(retorno.layer); - i3GEO.mapa.ativaTema(retorno.layer); + i3GEOF.metaestat.CAMADAS.push(retorno.data); + //i3GEO.mapa.ativaTema(retorno.data); i3GEOF.metaestat.analise.comboCamadas(); }; i3GEO.php.adtema(atualiza,retorno.mapfile); @@ -148,6 +158,9 @@ i3GEOF.alterarep = { if(tipo == "variacor"){ p += "&funcao=classes2circulos1"; } + if(tipo == "continuo"){ + p += "&funcao=classes2circulos2"; + } i3GEO.util.ajaxGet(p,temp); }, corj: function(obj){ diff --git a/ferramentas/metaestat/analise.php b/ferramentas/metaestat/analise.php index 9bcb812..162d3d8 100644 --- a/ferramentas/metaestat/analise.php +++ b/ferramentas/metaestat/analise.php @@ -86,6 +86,9 @@ switch (strtoupper($funcao)){ break; case "CLASSES2CIRCULOS1": $retorno = classes2circulos($map_file,$tema,"variacor"); + break; + case "CLASSES2CIRCULOS2": + $retorno = classes2circulos($map_file,$tema,"continuo"); break; } if (!connection_aborted()){ @@ -94,18 +97,26 @@ if (!connection_aborted()){ else {exit();} function classes2circulos($map_file,$tema,$tipo){ + $nome = basename($map_file).$tema.$tipo; $mapa = ms_newMapObj($map_file); + $teste = $mapa->getlayerbyname($nome); + if($teste != ""){ + return ""; + } $l = $mapa->getlayerbyname($tema); + if($l->getmetadata("METAESTAT_DERIVADO") == "sim"){ + return ""; + } $layer = ms_newLayerObj($mapa,$l); $l->set("status",MS_OFF); $layer->set("status",MS_DEFAULT); $layer->set("opacity",50); - $nome = $layer->name.nomeRandomico(4); + $layer->set("name",$nome); + $meta = new Metaestat(); if($layer->type != MS_LAYER_POINT){ $layer->set("type",0); - $m = new Metaestat(); - $regiao = $m->listaTipoRegiao($layer->getmetadata("METAESTAT_CODIGO_TIPO_REGIAO")); + $regiao = $meta->listaTipoRegiao($layer->getmetadata("METAESTAT_CODIGO_TIPO_REGIAO")); //repare que existe uma virgula apos o nome da coluna com a geometria, isso e necessario para substituir a string correta if($regiao["colunacentroide"] != ""){ $stringgeo = "g.".$regiao["colunageo"].","; @@ -117,9 +128,14 @@ function classes2circulos($map_file,$tema,$tipo){ } $layer->set("data",$data); } - $layer->setmetadata("tema",$layer->getmetadata("tema")." - circ"); $numclasses = $layer->numclasses; if($tipo == "variatamanho" || $tipo == "variacor"){ + if($tipo == "variatamanho"){ + $layer->setmetadata("tema",$layer->getmetadata("tema")." - circ"); + } + if($tipo == "variacor"){ + $layer->setmetadata("tema",$layer->getmetadata("tema")." - ponto"); + } if ($numclasses > 0){ for ($i=0; $i < $numclasses; ++$i) { $classe = $layer->getClass($i); @@ -134,6 +150,47 @@ function classes2circulos($map_file,$tema,$tipo){ } } } + if($tipo == "continuo"){ + $nometemp = str_replace(basename($map_file),nomeRandomico(5).basename($map_file),$map_file); + $mapa->save($nometemp); + //$mapatemp = ms_newMapObj($nometemp); + $medidavariavel = $meta->listaMedidaVariavel("",$layer->getmetadata("ID_MEDIDA_VARIAVEL")); + include_once("../../classesphp/classe_alteraclasse.php"); + $m = new Alteraclasse($nometemp,$layer->name,"",""); + $valores = $m->pegaValores($m->mapa,$m->layer,$medidavariavel["colunavalor"],true,0); + $min = min($valores); + $max = max($valores); + $layer->setmetadata("tema",$layer->getmetadata("tema")." - cont"); + $layer->set("type",MS_LAYER_CHART); + $layer->set("opacity",60); + $layer->setprocessing("CHART_TYPE=pie"); + $layer->setprocessing("CHART_SIZE_RANGE=".$medidavariavel["colunavalor"]." 10 150 ".$min." ".$max); + if ($numclasses > 0){ + for ($i=0; $i < $numclasses; ++$i) { + $classe = $layer->getClass($i); + $classe->set("status",MS_DELETE); + } + } + $classe = ms_newClassObj($layer); + $novoestilo = ms_newStyleObj($classe); + //$novoestilo->set("symbolname","ponto"); + $novoestilo->set("size","6"); + $ncor = $novoestilo->color; + $ncor->setrgb(247,145,29); + $ncor = $novoestilo->outlinecolor; + $ncor->setrgb(255,255,255); + //$novoestilo->setbinding(MS_STYLE_BINDING_SIZE, $medidavariavel["colunavalor"]); + // + $classe = ms_newClassObj($layer); + $novoestilo = ms_newStyleObj($classe); + //$novoestilo->set("symbolname","ponto"); + $novoestilo->set("size","6"); + $ncor = $novoestilo->color; + $ncor->setrgb(247,145,29); + $ncor = $novoestilo->outlinecolor; + $ncor->setrgb(255,255,255);; + } + $layer->setmetadata("METAESTAT_DERIVADO","sim"); $mapa->save($map_file); return $nome; } -- libgit2 0.21.2