From 75c24e4a3be173866c50a2832fa99849312fbb14 Mon Sep 17 00:00:00 2001 From: Edmar Moretti Date: Fri, 20 Mar 2009 14:05:32 +0000 Subject: [PATCH] Reformulada a ferramenta de inclusão de grade de coordenadas, incluindo-se novos parâmetros para definição dos textos da grade. --- classesjs/classe_mapa.js | 2 +- classesjs/compactados/classe_mapa_compacto.js | 2 +- classesjs/i3geo_tudo_compacto.js | 2 +- classesjs/i3geo_tudo_compacto.js.php | 2 +- classesphp/classe_mapa.php | 32 ++++++++++++++++++++++++++++++-- classesphp/mapa_controle.php | 2 +- ferramentas/gradecoord/index.htm | 34 ++++++++++++++++++++++++++++------ ferramentas/gradecoord/index.js | 28 +++++++++++++++++++++++++++- 8 files changed, 90 insertions(+), 14 deletions(-) diff --git a/classesjs/classe_mapa.js b/classesjs/classe_mapa.js index 753b8b0..76c5f66 100644 --- a/classesjs/classe_mapa.js +++ b/classesjs/classe_mapa.js @@ -557,7 +557,7 @@ i3GEO.mapa = { Abre a janela que gera grade de coordenadas */ gradeCoord: function() - {i3GEO.janela.cria("350px","280px",i3GEO.configura.locaplic+"/ferramentas/gradecoord/index.htm","","","Grade de coordenadas");}, + {i3GEO.janela.cria("350px","330px",i3GEO.configura.locaplic+"/ferramentas/gradecoord/index.htm","","","Grade de coordenadas");}, /* Function: cliqueTexto diff --git a/classesjs/compactados/classe_mapa_compacto.js b/classesjs/compactados/classe_mapa_compacto.js index 3521744..e2c4f11 100644 --- a/classesjs/compactados/classe_mapa_compacto.js +++ b/classesjs/compactados/classe_mapa_compacto.js @@ -1 +1 @@ -if(typeof(i3GEO)=='undefined'){i3GEO=new Array()}i3GEO.mapa={GEOXML:new Array(),ajustaPosicao:function(elemento){if(arguments.length==0){return}try{imagemxi=0;imagemyi=0;imagemxref=0;imagemyref=0;var dc=$i("i3geo");if(!dc){return}if(dc.style.left){imagemxi+=parseInt(dc.style.left)}if(dc.style.top){imagemyi+=parseInt(dc.style.top)}var dc=$i(elemento);while((dc.offsetParent)&&(dc.offsetParent.id!="i3geo")){dc=dc.offsetParent;imagemxi=imagemxi+dc.offsetLeft;imagemyi=imagemyi+dc.offsetTop}var c=$i(i3GEO.interface.IDCORPO);if(c){c.style.position="absolute";$left(i3GEO.interface.IDCORPO,imagemxi);$top(i3GEO.interface.IDCORPO,imagemyi);if($i("i3geo").style.left){$left(i3GEO.interface.IDCORPO,imagemxi-parseInt($i("i3geo").style.left))}if($i("i3geo").style.top){$top(i3GEO.interface.IDCORPO,imagemyi-parseInt($i("i3geo").style.top))}}}catch(e){alert("Ocorreu um erro. i3GEO.mapa.ajustaPosicao"+e)}},ativaLogo:function(){i3GEO.php.ativalogo(i3GEO.atualiza)},insereToponimo:function(){if(g_tipoacao=="textofid"){var doc=(navm)?document.frames("wdocai").document:$i("wdocai").contentDocument;texto=doc.getElementById("texto").value;var f=doc.getElementById("fonte").value;var t=doc.getElementById("tamanho").value;var a=doc.getElementById("angulo").value;var cf=doc.getElementById("fundoc").value;if(cf==""){cf="off"}var cs=doc.getElementById("sombra").value;if(cs==""){cs="off"}var xs=doc.getElementById("sombrax").value;var ys=doc.getElementById("sombray").value;var c=doc.getElementById("frente").value;var m=doc.getElementById("mascara").value;if(m==""){m="off"}var fcs=doc.getElementById("frentes").value;if(fcs==""){fcs="off"}var fxs=doc.getElementById("frentex").value;var fys=doc.getElementById("frentey").value;var forca=doc.getElementById("force").value;var md=doc.getElementById("mindistance").value;var mf=doc.getElementById("minfeaturesize").value;var ox=doc.getElementById("offsetx").value;var oy=doc.getElementById("offsety").value;var pl=doc.getElementById("partials").value;var pos=doc.getElementById("position").value;var digi=function(retorno){if(texto==""){i3GEO.janela.fechaAguarde("i3GEO.atualiza");texto=retorno.data}if(texto!=" "){i3GEO.janela.abreAguarde("i3GEO.atualiza",$trad("o1"));i3GEO.php.insereAnnotation(i3GEO.atualiza,g_nomepin+"topo",objposicaocursor.ddx+" "+objposicaocursor.ddy,texto,pos,pl,ox,oy,mf,md,forca,fcs,fxs,fys,m,c,ys,xs,cs,cf,a,t,f)}};if(doc.getElementById("tipoInsere").value=="digitando"){digi.call()}else{texto="";if((doc.getElementById("temasLigados"))&&(doc.getElementById("itemsel"))){var tema=doc.getElementById("temasLigados").value;var item=doc.getElementById("itemsel").value;i3GEO.janela.abreAguarde("i3GEO.atualiza",$trad("o1"));i3GEO.php.identificaunico(digi,objposicaocursor.ddx+","+objposicaocursor.ddy,tema,item)}}}else{i3GEO.eventos.MOUSECLIQUE.remove("i3GEO.mapa.insereToponimo()")}},insereKml:function(pan,url){if(arguments.length==1){var i=$i("i3geo_urlkml");if(i){var url=i.value}else{var url=""}}if(url==""){return}var ngeoxml="geoXml_"+i3GEO.mapa.GEOXML.length;i3GEO.mapa.GEOXML.push(ngeoxml);var zoom=function(){if(pan){eval("var ll = "+ngeoxml+".getDefaultCenter()");eval(ngeoxml+".gotoDefaultViewport(i3GeoMap)")}};eval(ngeoxml+" = new GGeoXml(url,zoom)");eval("i3GeoMap.addOverlay("+ngeoxml+")");i3GEO.mapa.criaNoArvoreGoogle(ngeoxml)},criaNoArvoreGoogle:function(nomeOverlay){var root=i3GEO.arvoreDeCamadas.ARVORE.getRoot();var node=i3GEO.arvoreDeCamadas.ARVORE.getNodeByProperty("idkml","raiz");if(!node){var titulo="
Google Maps
";var d={html:titulo,idkml:"raiz"};var node=new YAHOO.widget.HTMLNode(d,root,true,true)}html="";html+=" "+url+"";var d={html:html};var nodekml=new YAHOO.widget.HTMLNode(d,node,true,true);nodekml.isleaf=true;i3GEO.arvoreDeCamadas.ARVORE.draw();i3GEO.arvoreDeCamadas.ARVORE.collapseAll();node.expand()},ativaDesativaOverlayGoogle:function(obj){if(!obj.checked){eval("i3GeoMap.removeOverlay("+obj.value+")")}else eval("i3GeoMap.addOverlay("+obj.value+")")},inserePonto:function(){if(g_tipoacao=="inserexy"){var doc=(navm)?document.frames("wdocai").document:$i("wdocai").contentDocument;if(doc.getElementById("resultado")){var ins=doc.getElementById("resultado").innerHTML;ins=ins+"
"+objposicaocursor.ddx+" "+objposicaocursor.ddy+"

";doc.getElementById("resultado").innerHTML=ins}var item="";var valoritem="";if((doc.getElementById("valorItem"))&&(doc.getElementById("itemtema"))){var item=doc.getElementById("itemtema").value;var valoritem=doc.getElementById("valorItem").value}if(g_nomepin==""){alert("Nenhum tema definido para editar")}else{i3GEO.janela.abreAguarde("i3GEO.atualiza",$trad("o1"));i3GEO.php.insereSHP(i3GEO.atualiza,g_nomepin,item,valoritem,objposicaocursor.ddx+" "+objposicaocursor.ddy)}}},insereGrafico:function(){if(g_tipoacao=="inseregrafico"){var doc=(navm)?document.frames("wdocai").document:$i("wdocai").contentDocument;var tema=doc.getElementById("temasLigados").value;var width=doc.getElementById("w").value;var inclinacao=doc.getElementById("inclinacao").value;var shadow_height=doc.getElementById("sombra").value;if(tema==""){alert("Nenhum tema definido para pegar os dados")}else{var listadeitens=new Array();var g=doc.getElementById("listai");var iguias=g.getElementsByTagName("input");var i=iguias.length-1;if(i>=0){do{if(iguias[i].checked==true){var it=iguias[i].id;var c=doc.getElementById("cor"+it).value;listadeitens.push(it+","+c)}}while(i--)}var itens=listadeitens.join("*");if(itens==""){alert("Nenhum item foi escolhido")}else{i3GEO.janela.abreAguarde("i3GEO.atualiza",$trad("o1"));i3GEO.php.insereSHPgrafico(i3GEO.atualiza,tema,objposicaocursor.ddx,objposicaocursor.ddy,itens,shadow_height,width,inclinacao)}}}},recupera:{TENTATIVA:0,inicia:function(){i3GEO.mapa.ajustaPosicao();i3GEO.janela.fechaAguarde();if(i3GEO.mapa.recupera.TENTATIVA==0){i3GEO.mapa.recupera.TENTATIVA++;i3GEO.mapa.recupera.restaura()}},restaura:function(){i3GEO.php.recuperamapa(i3GEO.atualiza)}},legendaHTML:{ID:"",cria:function(id){if(arguments.length==0){var id=""}i3GEO.mapa.legendaHTML.ID=id;if(i3GEO.eventos.NAVEGAMAPA.toString().search("i3GEO.mapa.legendaHTML.atualiza()")<0){i3GEO.eventos.NAVEGAMAPA.push("i3GEO.mapa.legendaHTML.atualiza()")}i3GEO.mapa.legendaHTML.atualiza()},atualiza:function(){var temp=function(retorno){if(i3GEO.mapa.legendaHTML.ID!=""&&$i(i3GEO.mapa.legendaHTML.ID)){if((retorno.data!="erro")&&(retorno.data!=undefined)){var s=i3GEO.configura.locaplic+"/imagens/solta.gif";$i(i3GEO.mapa.legendaHTML.ID).innerHTML="
"+retorno.data.legenda+"
"}}if($i("wlegenda")){$i("wlegenda").innerHTML=retorno.data.legenda;var elementos=$i("wlegenda").getElementsByTagName("input");for(i=0;i";html+=" "+url+"";var d={html:html};var nodekml=new YAHOO.widget.HTMLNode(d,node,true,true);nodekml.isleaf=true;i3GEO.arvoreDeCamadas.ARVORE.draw();i3GEO.arvoreDeCamadas.ARVORE.collapseAll();node.expand()},ativaDesativaOverlayGoogle:function(obj){if(!obj.checked){eval("i3GeoMap.removeOverlay("+obj.value+")")}else eval("i3GeoMap.addOverlay("+obj.value+")")},inserePonto:function(){if(g_tipoacao=="inserexy"){var doc=(navm)?document.frames("wdocai").document:$i("wdocai").contentDocument;if(doc.getElementById("resultado")){var ins=doc.getElementById("resultado").innerHTML;ins=ins+"
"+objposicaocursor.ddx+" "+objposicaocursor.ddy+"

";doc.getElementById("resultado").innerHTML=ins}var item="";var valoritem="";if((doc.getElementById("valorItem"))&&(doc.getElementById("itemtema"))){var item=doc.getElementById("itemtema").value;var valoritem=doc.getElementById("valorItem").value}if(g_nomepin==""){alert("Nenhum tema definido para editar")}else{i3GEO.janela.abreAguarde("i3GEO.atualiza",$trad("o1"));i3GEO.php.insereSHP(i3GEO.atualiza,g_nomepin,item,valoritem,objposicaocursor.ddx+" "+objposicaocursor.ddy)}}},insereGrafico:function(){if(g_tipoacao=="inseregrafico"){var doc=(navm)?document.frames("wdocai").document:$i("wdocai").contentDocument;var tema=doc.getElementById("temasLigados").value;var width=doc.getElementById("w").value;var inclinacao=doc.getElementById("inclinacao").value;var shadow_height=doc.getElementById("sombra").value;if(tema==""){alert("Nenhum tema definido para pegar os dados")}else{var listadeitens=new Array();var g=doc.getElementById("listai");var iguias=g.getElementsByTagName("input");var i=iguias.length-1;if(i>=0){do{if(iguias[i].checked==true){var it=iguias[i].id;var c=doc.getElementById("cor"+it).value;listadeitens.push(it+","+c)}}while(i--)}var itens=listadeitens.join("*");if(itens==""){alert("Nenhum item foi escolhido")}else{i3GEO.janela.abreAguarde("i3GEO.atualiza",$trad("o1"));i3GEO.php.insereSHPgrafico(i3GEO.atualiza,tema,objposicaocursor.ddx,objposicaocursor.ddy,itens,shadow_height,width,inclinacao)}}}},recupera:{TENTATIVA:0,inicia:function(){i3GEO.mapa.ajustaPosicao();i3GEO.janela.fechaAguarde();if(i3GEO.mapa.recupera.TENTATIVA==0){i3GEO.mapa.recupera.TENTATIVA++;i3GEO.mapa.recupera.restaura()}},restaura:function(){i3GEO.php.recuperamapa(i3GEO.atualiza)}},legendaHTML:{ID:"",cria:function(id){if(arguments.length==0){var id=""}i3GEO.mapa.legendaHTML.ID=id;if(i3GEO.eventos.NAVEGAMAPA.toString().search("i3GEO.mapa.legendaHTML.atualiza()")<0){i3GEO.eventos.NAVEGAMAPA.push("i3GEO.mapa.legendaHTML.atualiza()")}i3GEO.mapa.legendaHTML.atualiza()},atualiza:function(){var temp=function(retorno){if(i3GEO.mapa.legendaHTML.ID!=""&&$i(i3GEO.mapa.legendaHTML.ID)){if((retorno.data!="erro")&&(retorno.data!=undefined)){var s=i3GEO.configura.locaplic+"/imagens/solta.gif";$i(i3GEO.mapa.legendaHTML.ID).innerHTML="
"+retorno.data.legenda+"
"}}if($i("wlegenda")){$i("wlegenda").innerHTML=retorno.data.legenda;var elementos=$i("wlegenda").getElementsByTagName("input");for(i=0;iarquivo)."qy")) @@ -698,17 +698,45 @@ $incluitexto - sim|nao if($incluitexto == "sim") { $label = $classe->label; + $label->set("size",$tamanhotexto); $label->set("type",MS_BITMAP); + + if ($fonte != "bitmap") + { + $label->set("type",MS_TRUETYPE); + $label->set("font",$fonte); + $label->set("size",$tamanhotexto); + } + else + { + $label->set("type",MS_BITMAP); + $t = MS_TINY; + if ($tamanhotexto > 5 ){$t = MS_TINY;} + if ($tamanhotexto >= 7 ){$t = MS_SMALL;} + if ($tamanhotexto >= 10 ){$t = MS_MEDIUM;} + if ($tamanhotexto >= 12 ){$t = MS_LARGE;} + if ($tamanhotexto >= 14 ){$t = MS_GIANT;} + $label->set("size",$t); + } + $label->set("buffer",0); $label->set("force",MS_FALSE); - $label->set("partials",MS_TRUE); + $label->set("partials",MS_FALSE); $label->set("position",MS_CC); $corl = $label->color; $cortexto = explode(",",$cortexto); $corl->setrgb($cortexto[0],$cortexto[1],$cortexto[2]); $label->set("offsetx",0); $label->set("offsety",0); + if($mascara != "") + corE($label,$mascara,"outlinecolor"); + if($shadowcolor != "") + { + corE($label,$shadowcolor,"shadowcolor"); + $label->set("shadowsizex",$shadowsizex); + $label->set("shadowsizey",$shadowsizey); + } } return ("ok"); } diff --git a/classesphp/mapa_controle.php b/classesphp/mapa_controle.php index c658a0c..bbf5017 100644 --- a/classesphp/mapa_controle.php +++ b/classesphp/mapa_controle.php @@ -467,7 +467,7 @@ Include: include_once("classe_mapa.php"); copiaSeguranca($map_file); $m = new Mapa($map_file); - $cp->set_data($m->gradeCoord($intervalo,$corlinha,$larguralinha,$tipolinha,$tamanhotexto,$cortexto,$incluitexto)); + $cp->set_data($m->gradeCoord($intervalo,$corlinha,$larguralinha,$tipolinha,$tamanhotexto,$fonte,$cortexto,$incluitexto,$mascara,$shadowcolor,$shadowsizex,$shadowsizey)); $m->salva(); redesenhaMapa(); break; diff --git a/ferramentas/gradecoord/index.htm b/ferramentas/gradecoord/index.htm index a0cb365..a6f04f4 100644 --- a/ferramentas/gradecoord/index.htm +++ b/ferramentas/gradecoord/index.htm @@ -42,11 +42,33 @@ Tamanho do texto: - + + + + + Fonte: + + + + + Cor da máscara de um pixel de entorno: + + + aquarela.gif + + + + Cor da sombra: + + + aquarela.gif + + + + Deslocamento da sombra: + + x + y @@ -59,7 +81,7 @@
A grade será adicionada como um novo tema no mapa. -Vc pode inserir mais de uma grade, e excluir as que desejar.
+Vc pode inserir mais de uma grade, e excluir as que desejar. Nas opções de cor, utilize -1,-1,-1 para não considerar o parâmetro. diff --git a/ferramentas/gradecoord/index.js b/ferramentas/gradecoord/index.js index ea0b697..36deb7e 100644 --- a/ferramentas/gradecoord/index.js +++ b/ferramentas/gradecoord/index.js @@ -29,7 +29,27 @@ YAHOO.example.init = function () new YAHOO.widget.Button("botao1"); } YAHOO.util.Event.onContentReady("botao1", onPushButtonsMarkupReady); -}() +}() +//preenche a lista de fontes +var p = g_locaplic+"/classesphp/mapa_controle.php?g_sid="+g_sid+"&funcao=listatruetype" +var cp = new cpaint(); +//cp.set_debug(2) +cp.set_response_type("JSON"); +cp.call(p,"listaTrueType",listafontesf); + +//monta a lista de fontes +function listafontesf(retorno) +{ + var retorno = retorno.data + var lista = retorno.split(",") + var ins = "" + $i("listaf").innerHTML = ins + aguarde("none") +} function executa() { if (($i("intervalo").value == 0) || ($i("intervalo").value == "")) @@ -50,6 +70,12 @@ function executa() p += "&tamanhotexto="+$i("tamanhotexto").value p += "&cortexto="+$i("cortexto").value p += "&incluitexto="+$i("incluitexto").value + p += "&mascara="+$i("mascara_i").value + p += "&shadowcolor="+$i("shadowcolor").value + p += "&shadowsizex="+$i("shadowsizex").value + p += "&shadowsizey="+$i("shadowsizey").value + p += "&fonte="+$i("fonte").value + var cp = new cpaint(); //cp.set_debug(2) cp.set_response_type("JSON"); -- libgit2 0.21.2