From 4309250a3937d762271002faa7b2dd3d596cd53b Mon Sep 17 00:00:00 2001 From: Edmar Moretti Date: Tue, 7 Jun 2011 16:32:45 +0000 Subject: [PATCH] Inclusão da função gráfico de perfil em outras ferramentas --- classesjs/classe_util.js | 2 +- classesphp/classe_atributos.php | 1 + classesphp/classe_shp.php | 47 +++++++++++++++++++++++++++++++++++++++++++++-- classesphp/mapa_controle.php | 12 ++++++++++++ ferramentas/inserexy2/index.js.php | 45 ++++++++++++++++++++++++++++++++++++++++++--- ferramentas/selecao/index.js.php | 53 +++++++++++++++++++++++++++++++++++++++++++++++++++-- imagens/gisicons/grafico-perfil.png | Bin 0 -> 557 bytes 7 files changed, 152 insertions(+), 8 deletions(-) create mode 100644 imagens/gisicons/grafico-perfil.png diff --git a/classesjs/classe_util.js b/classesjs/classe_util.js index ae6be43..d1cb4f9 100644 --- a/classesjs/classe_util.js +++ b/classesjs/classe_util.js @@ -1506,7 +1506,7 @@ i3GEO.util = { nome = retorno[i].tema; tema = retorno[i].name; } - if(retorno[i].escondido.toLowerCase() !== "sim") + if(retorno[i].escondido !== "sim") {comboTemas += "";} } comboTemas += ""; diff --git a/classesphp/classe_atributos.php b/classesphp/classe_atributos.php index 3266aa1..534f5df 100644 --- a/classesphp/classe_atributos.php +++ b/classesphp/classe_atributos.php @@ -276,6 +276,7 @@ Pega todos os valores dos itens de uma tabela de um tema. O range de busca pode ser limitado. parameters: + $itemtema - Tema que será processado. $tipo - Tipo de abrangência espacial (brasil ou mapa). diff --git a/classesphp/classe_shp.php b/classesphp/classe_shp.php index 00bbe7e..c49c711 100644 --- a/classesphp/classe_shp.php +++ b/classesphp/classe_shp.php @@ -302,10 +302,13 @@ Include: /* function: listaPontosShape -Lista as coordenadas dos pontos de um shapefile +Lista as coordenadas dos pontos de um layer + +Funciona apenas com elementos do tipo ponto return: -string - xy + +array - xy */ function listaPontosShape() { @@ -333,6 +336,46 @@ string - xy return $xy; } /* +function: listaPontosShapeSel + +Lista as coordenadas dos elementos selecionados de um layer + +Funciona com elementos pontuais ou lineares + +return: + +array - xy +*/ + function listaPontosShapeSel() + { + //error_reporting(E_ALL); + if(!$this->layer){return "erro";} + $this->layer->set("template","none.htm"); + $this->layer->setfilter(""); + $existesel = carregaquery($this->arquivo,&$this->layer,&$this->mapa); + $sopen = $this->layer->open(); + if($sopen == MS_FAILURE){return "erro";} + $res_count = $this->layer->getNumresults(); + $xy = array(); + for ($i = 0; $i < $res_count; ++$i) + { + $result = $this->layer->getResult($i); + $shp_index = $result->shapeindex; + $shape = $this->layer->getfeature($shp_index,-1); + $nlinhas = $shape->numlines; + for($j = 0;$j < $nlinhas; ++$j){ + $lin = $shape->line($j); + $npontos = $lin->numpoints; + for($k = 0;$k < $npontos; ++$k){ + $pt = $lin->point($k); + $xy[] = array("x"=>$pt->x,"y"=>$pt->y); + } + } + } + $fechou = $this->layer->close(); + return $xy; + } +/* function: ultimoXY Obtém as coordenadas xy do último ponto existente no layer. O último ponto é considerado entre aqueles que estão visíveis no mapa atual diff --git a/classesphp/mapa_controle.php b/classesphp/mapa_controle.php index 54032db..b103738 100644 --- a/classesphp/mapa_controle.php +++ b/classesphp/mapa_controle.php @@ -1634,6 +1634,18 @@ Lista os pontos dos elementos de um arquivo shp. $retorno = $m->listaPontosShape(); break; /* +Valor: LISTAPONTOSSHAPESEL + +Lista os pontos dos elementos selecionados de um layer + +listaPontosShapeSel> +*/ + case "LISTAPONTOSSHAPESEL": + include_once("classe_shp.php"); + $m = new SHP($map_file,$tema); + $retorno = $m->listaPontosShapeSel(); + break; +/* Valor: CRIASHPVAZIO Cria um shapefile vazio e acrescenta como tema ao mapa. diff --git a/ferramentas/inserexy2/index.js.php b/ferramentas/inserexy2/index.js.php index 7a4ba7a..4f2881f 100644 --- a/ferramentas/inserexy2/index.js.php +++ b/ferramentas/inserexy2/index.js.php @@ -18,7 +18,7 @@ Licenca: GPL2 -I3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet +i3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet Direitos Autorais Reservados (c) 2006 Ministério do Meio Ambiente Brasil Desenvolvedor: Edmar Moretti edmar.moretti@mma.gov.br @@ -101,6 +101,11 @@ i3GEOF.inserexy = { {onclick:{fn: i3GEOF.inserexy.criatemaeditavel}} ); new YAHOO.widget.Button( + "i3GEOinserexybotaoperfil", + {onclick:{fn: i3GEOF.inserexy.graficoPerfil}} + ); + + new YAHOO.widget.Button( "i3GEOinserexybotao2", {onclick:{fn: i3GEOF.inserexy.inserir}} ); @@ -163,6 +168,7 @@ i3GEOF.inserexy = { '
' + '

' + '

' + + '

' + '