Commit efcda52dfbedceecb3b7fb59efd8413bb3aa83e3

Authored by Edmar Moretti
1 parent 805aa566

--no commit message

admin/admin.db
No preview for this file type
classesphp/classe_analise.php
@@ -98,7 +98,7 @@ $ext - Extensão geográfica do mapa @@ -98,7 +98,7 @@ $ext - Extensão geográfica do mapa
98 $this->mapa = ms_newMapObj($map_file); 98 $this->mapa = ms_newMapObj($map_file);
99 $this->arquivo = $map_file; 99 $this->arquivo = $map_file;
100 if($tema != "" && @$this->mapa->getlayerbyname($tema)) 100 if($tema != "" && @$this->mapa->getlayerbyname($tema))
101 - $this->layer = $this->mapa->getlayerbyname($tema); 101 + {$this->layer = $this->mapa->getlayerbyname($tema);}
102 $this->nome = $tema; 102 $this->nome = $tema;
103 $this->diretorio = dirname($this->arquivo); 103 $this->diretorio = dirname($this->arquivo);
104 if($ext && $ext != ""){ 104 if($ext && $ext != ""){
@@ -949,9 +949,9 @@ $locaplic - Localização do I3geo. @@ -949,9 +949,9 @@ $locaplic - Localização do I3geo.
949 { 949 {
950 set_time_limit(180); 950 set_time_limit(180);
951 if(file_exists($this->locaplic."/pacotes/phpxbase/api_conversion.php")) 951 if(file_exists($this->locaplic."/pacotes/phpxbase/api_conversion.php"))
952 - include_once($this->locaplic."/pacotes/phpxbase/api_conversion.php"); 952 + {include_once($this->locaplic."/pacotes/phpxbase/api_conversion.php");}
953 else 953 else
954 - include_once "../pacotes/phpxbase/api_conversion.php"; 954 + {include_once "../pacotes/phpxbase/api_conversion.php";}
955 $layerPt = $this->mapa->getlayerbyname($temaPt); 955 $layerPt = $this->mapa->getlayerbyname($temaPt);
956 $layerPt->set("template","none.htm"); 956 $layerPt->set("template","none.htm");
957 $layerPt->set("tolerance",0); 957 $layerPt->set("tolerance",0);
@@ -967,7 +967,6 @@ $locaplic - Localização do I3geo. @@ -967,7 +967,6 @@ $locaplic - Localização do I3geo.
967 { 967 {
968 if($layerPt->getProjection() == "" ) 968 if($layerPt->getProjection() == "" )
969 {$layerPt->setProjection("init=epsg:4291");} 969 {$layerPt->setProjection("init=epsg:4291");}
970 - $layerPt->setProjection("init=epsg:4291");  
971 } 970 }
972 $layerPt->queryByrect($this->mapa->extent); 971 $layerPt->queryByrect($this->mapa->extent);
973 } 972 }
@@ -976,17 +975,16 @@ $locaplic - Localização do I3geo. @@ -976,17 +975,16 @@ $locaplic - Localização do I3geo.
976 //pega um shape especifico 975 //pega um shape especifico
977 $sopen = $layerPt->open(); 976 $sopen = $layerPt->open();
978 if($sopen == MS_FAILURE){return "erro";} 977 if($sopen == MS_FAILURE){return "erro";}
  978 + $spts = array();
979 for ($i = 0; $i < $res_count; ++$i) 979 for ($i = 0; $i < $res_count; ++$i)
980 { 980 {
981 $result = $layerPt->getResult($i); 981 $result = $layerPt->getResult($i);
982 $shp_index = $result->shapeindex; 982 $shp_index = $result->shapeindex;
983 $shape = $layerPt->getfeature($shp_index,-1); 983 $shape = $layerPt->getfeature($shp_index,-1);
984 - $pontos[] = $shape; 984 + $spts[] = $shape;
985 } 985 }
986 $layerPt->close(); 986 $layerPt->close();
987 //gera o novo arquivo shape file 987 //gera o novo arquivo shape file
988 - // cria o shapefile  
989 - $novoshpf = ms_newShapefileObj($nomeshp, MS_SHP_POINT);  
990 // cria o dbf 988 // cria o dbf
991 $def = array(); 989 $def = array();
992 foreach ($itemspt as $ni) 990 foreach ($itemspt as $ni)
@@ -994,16 +992,26 @@ $locaplic - Localização do I3geo. @@ -994,16 +992,26 @@ $locaplic - Localização do I3geo.
994 //pega os itens dos temas poligonais 992 //pega os itens dos temas poligonais
995 $layersPol = array(); 993 $layersPol = array();
996 $temas = explode(",",$temasPo); 994 $temas = explode(",",$temasPo);
997 - foreach ($temas as $tema)  
998 - {  
999 - $l = $this->mapa->getlayerbyname($tema);  
1000 - $layers[] = $l;  
1001 - } 995 + $layers = array();
1002 $nomesitens = array(); //guarda os nomes dos temas e seus itens 996 $nomesitens = array(); //guarda os nomes dos temas e seus itens
1003 $conta = 0; 997 $conta = 0;
1004 - foreach ($layers as $layer) 998 + $listaItens = array();
  999 + foreach ($temas as $tema)
1005 { 1000 {
  1001 + $layer = $this->mapa->getlayerbyname($tema);
  1002 + $layer->set("template","none.htm");
  1003 + $layer->set("status",MS_DEFAULT);
  1004 + if($layer->type == MS_LAYER_RASTER)
  1005 + {
  1006 + $lineo = $spts[0]->line(0);
  1007 + $pt = $lineo->point(0);
  1008 + $layer->queryByPoint($pt, 0, 0);
  1009 + }
  1010 + $layers[] = $layer;
1006 $items = pegaItens($layer); 1011 $items = pegaItens($layer);
  1012 + if(!$items)
  1013 + {return "erro ao obter a lista de itens do tema $layer->name";}
  1014 + $listaItens[$layer->name] = $items;
1007 foreach ($items as $ni) 1015 foreach ($items as $ni)
1008 { 1016 {
1009 $def[] = array("I".$conta,"C","254"); 1017 $def[] = array("I".$conta,"C","254");
@@ -1011,22 +1019,21 @@ $locaplic - Localização do I3geo. @@ -1011,22 +1019,21 @@ $locaplic - Localização do I3geo.
1011 $conta = $conta + 1; 1019 $conta = $conta + 1;
1012 } 1020 }
1013 } 1021 }
1014 - if(!function_exists(dbase_create)) 1022 + if(!function_exists("dbase_create"))
1015 {$db = xbase_create($nomeshp.".dbf", $def);xbase_close($db);} 1023 {$db = xbase_create($nomeshp.".dbf", $def);xbase_close($db);}
1016 else 1024 else
1017 {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db);} 1025 {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db);}
1018 //acrescenta os pontos no novo shapefile 1026 //acrescenta os pontos no novo shapefile
1019 $dbname = $nomeshp.".dbf"; 1027 $dbname = $nomeshp.".dbf";
1020 - $db=xbase_open($dbname,2);  
1021 - foreach($pontos as $ponto) 1028 + $db=xbase_open($dbname,2);
  1029 + // cria o shapefile
  1030 + $novoshpf = ms_newShapefileObj($nomeshp, MS_SHP_POINT);
  1031 + foreach($spts as $spt)
1022 { 1032 {
1023 - $sopen = $layerPt->open();  
1024 - if($sopen == MS_FAILURE){return "erro";}  
1025 foreach ($itemspt as $ni) 1033 foreach ($itemspt as $ni)
1026 - {$reg[] = $ponto->values[$ni];}  
1027 - $layerPt->close();  
1028 - $novoshpf->addShape($ponto);  
1029 - $lineo = $ponto->line(0); 1034 + {$reg[] = $spt->values[$ni];}
  1035 + $novoshpf->addShape($spt);
  1036 + $lineo = $spt->line(0);
1030 $pt = $lineo->point(0); 1037 $pt = $lineo->point(0);
1031 //faz a pesquisa 1038 //faz a pesquisa
1032 foreach ($layers as $layer) 1039 foreach ($layers as $layer)
@@ -1035,8 +1042,7 @@ $locaplic - Localização do I3geo. @@ -1035,8 +1042,7 @@ $locaplic - Localização do I3geo.
1035 $layer->set("toleranceunits",MS_PIXELS); 1042 $layer->set("toleranceunits",MS_PIXELS);
1036 $layer->set("tolerance",1); 1043 $layer->set("tolerance",1);
1037 $ident = @$layer->queryByPoint($pt, 0, 0); 1044 $ident = @$layer->queryByPoint($pt, 0, 0);
1038 - $itens = pegaItens($layer);  
1039 - $res_count = $layer->getNumresults(); 1045 + $itens = $listaItens[$layer->name];
1040 $sopen = $layer->open(); 1046 $sopen = $layer->open();
1041 if($sopen == MS_FAILURE){return "erro";} 1047 if($sopen == MS_FAILURE){return "erro";}
1042 if ($res_count > 0) 1048 if ($res_count > 0)
classesphp/classe_atributos.php
@@ -778,7 +778,7 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado @@ -778,7 +778,7 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado
778 { 778 {
779 $l = $this->mapa->getlayerbyname($tema); 779 $l = $this->mapa->getlayerbyname($tema);
780 if($l->status == MS_DEFAULT) 780 if($l->status == MS_DEFAULT)
781 - $novalista[] = $tema; 781 + {$novalista[] = $tema;}
782 $listatemas = $novalista; 782 $listatemas = $novalista;
783 } 783 }
784 } 784 }
@@ -1036,7 +1036,7 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado @@ -1036,7 +1036,7 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado
1036 else 1036 else
1037 { 1037 {
1038 $descisarray = pegaItens($layer); 1038 $descisarray = pegaItens($layer);
1039 - $itsarray = pegaItens($layer); 1039 + $itsarray = $descisarray;
1040 $lksarray = array(); 1040 $lksarray = array();
1041 } 1041 }
1042 } 1042 }
@@ -1213,7 +1213,7 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado @@ -1213,7 +1213,7 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado
1213 { 1213 {
1214 $layer->set("toleranceunits",MS_PIXELS); 1214 $layer->set("toleranceunits",MS_PIXELS);
1215 $layer->set("tolerance",$resolucao); 1215 $layer->set("tolerance",$resolucao);
1216 - $ident = @$layer->queryByPoint($pt, 0, 0); //0.01); 1216 + $ident = @$layer->queryByPoint($pt, 0, 0); //0.01);
1217 } 1217 }
1218 //error_reporting(E_ALL); 1218 //error_reporting(E_ALL);
1219 if (($layer->type == MS_LAYER_POINT) || ($layer->type == MS_LAYER_LINE) || ($layer->type == MS_LAYER_CHART)) 1219 if (($layer->type == MS_LAYER_POINT) || ($layer->type == MS_LAYER_LINE) || ($layer->type == MS_LAYER_CHART))
@@ -1238,6 +1238,7 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado @@ -1238,6 +1238,7 @@ $listaDeTemas - (opcional) Lista com os códigos dos temas que serão identificado
1238 $locimg = $layer->getmetadata("IMGLOC"); //indica o local onde estão os ícones 1238 $locimg = $layer->getmetadata("IMGLOC"); //indica o local onde estão os ícones
1239 $tips = $layer->getmetadata("TIP"); 1239 $tips = $layer->getmetadata("TIP");
1240 $itensLayer = pegaItens($layer); 1240 $itensLayer = pegaItens($layer);
  1241 + //var_dump($itensLayer);exit;
1241 $nitens = count($itensLayer); 1242 $nitens = count($itensLayer);
1242 if($itens == "") 1243 if($itens == "")
1243 {$itens = $itensLayer;} 1244 {$itens = $itensLayer;}
classesphp/funcoes_gerais.php
@@ -1337,9 +1337,10 @@ function pegaItens($layer) @@ -1337,9 +1337,10 @@ function pegaItens($layer)
1337 { 1337 {
1338 $sopen = $layer->open(); 1338 $sopen = $layer->open();
1339 if($sopen != MS_FAILURE) 1339 if($sopen != MS_FAILURE)
1340 - $items = $layer->getItems(); 1340 + {$items = $layer->getItems();}
1341 else 1341 else
1342 - $items = array(); 1342 + {$items = array();}
  1343 + $layer->close();
1343 return $items; 1344 return $items;
1344 } 1345 }
1345 /* 1346 /*
@@ -1359,7 +1360,8 @@ Retorno: @@ -1359,7 +1360,8 @@ Retorno:
1359 */ 1360 */
1360 function buscaRapida($servico,$palavra) 1361 function buscaRapida($servico,$palavra)
1361 { 1362 {
1362 - if (function_exists('ereg')) 1363 + //error_reporting(E_ALL);
  1364 + if(!function_exists('preg_match'))
1363 { 1365 {
1364 include_once('../pacotes/SOAPdepreciado/nusoap.php'); 1366 include_once('../pacotes/SOAPdepreciado/nusoap.php');
1365 new Xsoapclient($servico."?wsdl","wsdl"); 1367 new Xsoapclient($servico."?wsdl","wsdl");
@@ -1369,7 +1371,6 @@ function buscaRapida($servico,$palavra) @@ -1369,7 +1371,6 @@ function buscaRapida($servico,$palavra)
1369 include_once('../pacotes/SOAP/nusoap.php'); 1371 include_once('../pacotes/SOAP/nusoap.php');
1370 $soapclient = new nusoap_client($servico); 1372 $soapclient = new nusoap_client($servico);
1371 } 1373 }
1372 -  
1373 $vv = "erro"; 1374 $vv = "erro";
1374 $vv = $soapclient->call("procurar",array("palavra"=>$palavra,"tipoBusca"=>"qualquer")); 1375 $vv = $soapclient->call("procurar",array("palavra"=>$palavra,"tipoBusca"=>"qualquer"));
1375 if($vv == ""){$vv = "erro";} 1376 if($vv == ""){$vv = "erro";}
classesphp/mapa_controle.php
@@ -403,7 +403,7 @@ Salva o mapa acrescentando um novo layer com o resultado. @@ -403,7 +403,7 @@ Salva o mapa acrescentando um novo layer com o resultado.
403 case "PONTOEMPOLIGONO": 403 case "PONTOEMPOLIGONO":
404 include_once("classe_analise.php"); 404 include_once("classe_analise.php");
405 copiaSeguranca($map_file); 405 copiaSeguranca($map_file);
406 - $m = new Analise($map_file,$tema,$locaplic,$ext); 406 + $m = new Analise($map_file,$temaPt,$locaplic,$ext);
407 if($interface == "googlemaps") 407 if($interface == "googlemaps")
408 { 408 {
409 $projMapa = $m->mapa->getProjection(); 409 $projMapa = $m->mapa->getProjection();
ferramentas/analisageometrias/index.js.php
@@ -138,7 +138,7 @@ i3GEOF.analisaGeometrias = { @@ -138,7 +138,7 @@ i3GEOF.analisaGeometrias = {
138 ins += '<div id=i3GEOinseregraficoguiasYUI class="yui-navset" style="top:0px;cursor:pointer;left:0px;">'; 138 ins += '<div id=i3GEOinseregraficoguiasYUI class="yui-navset" style="top:0px;cursor:pointer;left:0px;">';
139 ins += ' <ul class="yui-nav" style="border-width:0pt 0pt 0px;border-color:rgb(240,240,240);border-bottom-color:white;">'; 139 ins += ' <ul class="yui-nav" style="border-width:0pt 0pt 0px;border-color:rgb(240,240,240);border-bottom-color:white;">';
140 ins += ' <li><a href="#ancora"><em><div id="i3GEOanalisageometrias1" style="text-align:center;left:0px;" >Capturar</div></em></a></li>'; 140 ins += ' <li><a href="#ancora"><em><div id="i3GEOanalisageometrias1" style="text-align:center;left:0px;" >Capturar</div></em></a></li>';
141 - ins += ' <li><a href="#ancora"><em><div id="i3GEOanalisageometrias2" style="text-align:center;left:0px;" >Listar</div></em></a></li>'; 141 + ins += ' <li><a href="#ancora"><em><div id="i3GEOanalisageometrias2" style="text-align:center;left:0px;" >Listar e escolher</div></em></a></li>';
142 ins += ' <li><a href="#ancora"><em><div id="i3GEOanalisageometrias3" style="text-align:center;left:0px;" >Analisar</div></em></a></li>'; 142 ins += ' <li><a href="#ancora"><em><div id="i3GEOanalisageometrias3" style="text-align:center;left:0px;" >Analisar</div></em></a></li>';
143 ins += ' </ul>'; 143 ins += ' </ul>';
144 ins += '</div>'; 144 ins += '</div>';
@@ -168,7 +168,7 @@ i3GEOF.analisaGeometrias = { @@ -168,7 +168,7 @@ i3GEOF.analisaGeometrias = {
168 ins += ' <option value="" selected >---</option>'; 168 ins += ' <option value="" selected >---</option>';
169 ins += ' <option value=area >&Aacute;rea</option>'; 169 ins += ' <option value=area >&Aacute;rea</option>';
170 ins += ' <option value=perimetro >Per&iacute;metro</option>'; 170 ins += ' <option value=perimetro >Per&iacute;metro</option>';
171 - ins += ' </select><input id=i3GEOanalisageometriasbotaocalculo type=button value=" "/></p>'; 171 + ins += ' </select><input id=i3GEOanalisageometriasbotaocalculo type=button value="Aplicar"/></p>';
172 ins += ' <p class=paragrafo >Operações que criam novas geometrias a partir de duas ou mais geometrias:'; 172 ins += ' <p class=paragrafo >Operações que criam novas geometrias a partir de duas ou mais geometrias:';
173 ins += ' <p class=paragrafo ><select id=i3GEOanalisageometriasselecaofuncoes style="position:relative;top:-3px;" >'; 173 ins += ' <p class=paragrafo ><select id=i3GEOanalisageometriasselecaofuncoes style="position:relative;top:-3px;" >';
174 ins += ' <option value="" selected >---</option>'; 174 ins += ' <option value="" selected >---</option>';
@@ -177,13 +177,13 @@ i3GEOF.analisaGeometrias = { @@ -177,13 +177,13 @@ i3GEOF.analisaGeometrias = {
177 ins += ' <option value=difference >Diferen&ccedil;a</option>'; 177 ins += ' <option value=difference >Diferen&ccedil;a</option>';
178 ins += ' <option value=symdifference >Diferen&ccedil;a inversa</option>'; 178 ins += ' <option value=symdifference >Diferen&ccedil;a inversa</option>';
179 ins += ' <option value=convexhull >Convexo</option>'; 179 ins += ' <option value=convexhull >Convexo</option>';
180 - ins += ' </select><input id=i3GEOanalisageometriasbotaofuncoes type=button value=" "/></p>'; 180 + ins += ' </select><input id=i3GEOanalisageometriasbotaofuncoes type=button value="Aplicar"/></p>';
181 ins += ' <p class=paragrafo >Operações que atuam sobre uma única geometria:'; 181 ins += ' <p class=paragrafo >Operações que atuam sobre uma única geometria:';
182 ins += ' <p class=paragrafo ><select id=i3GEOanalisageometriasselecaofuncoes1 style="position:relative;top:-3px;" >'; 182 ins += ' <p class=paragrafo ><select id=i3GEOanalisageometriasselecaofuncoes1 style="position:relative;top:-3px;" >';
183 ins += ' <option value="" selected >---</option>'; 183 ins += ' <option value="" selected >---</option>';
184 ins += ' <option value=convexhull >Convexo</option>'; 184 ins += ' <option value=convexhull >Convexo</option>';
185 ins += ' <option value=boundary >Entorno</option>'; 185 ins += ' <option value=boundary >Entorno</option>';
186 - ins += ' </select><input id=i3GEOanalisageometriasbotaofuncoes1 type=button value=" "/></p>'; 186 + ins += ' </select><input id=i3GEOanalisageometriasbotaofuncoes1 type=button value="Aplicar"/></p>';
187 ins += ' <div id=i3GEOanalisageometriasmen2 style="text-align:left;left:0px" >'; 187 ins += ' <div id=i3GEOanalisageometriasmen2 style="text-align:left;left:0px" >';
188 ins += ' <p class=paragrafo >As opera&ccedil;&otilde;es de an&aacute;lise s&atilde;o executadas sobre as geometrias selecionadas.'; 188 ins += ' <p class=paragrafo >As opera&ccedil;&otilde;es de an&aacute;lise s&atilde;o executadas sobre as geometrias selecionadas.';
189 ins += ' <p class=paragrafo >Para maiores informações, veja: <a href="http://www.opengeospatial.org/standards/sfs" target=blank >OGC</a>, <a href="http://postgis.refractions.net/docs/ch06.html" target=blank >PostGis, </a>e <a href="http://www.vividsolutions.com/jts/tests/index.html" target=blank >JTS</a>'; 189 ins += ' <p class=paragrafo >Para maiores informações, veja: <a href="http://www.opengeospatial.org/standards/sfs" target=blank >OGC</a>, <a href="http://postgis.refractions.net/docs/ch06.html" target=blank >PostGis, </a>e <a href="http://www.vividsolutions.com/jts/tests/index.html" target=blank >JTS</a>';
@@ -232,6 +232,7 @@ i3GEOF.analisaGeometrias = { @@ -232,6 +232,7 @@ i3GEOF.analisaGeometrias = {
232 }; 232 };
233 YAHOO.util.Event.addListener(janela[0].close, "click", temp); 233 YAHOO.util.Event.addListener(janela[0].close, "click", temp);
234 i3GEOF.analisaGeometrias.inicia(divid); 234 i3GEOF.analisaGeometrias.inicia(divid);
  235 + i3GEO.util.mudaCursor(i3GEO.configura.cursores,"pointer",i3GEO.Interface.IDMAPA,i3GEO.configura.locaplic);
235 }, 236 },
236 /* 237 /*
237 Function: ativaFoco 238 Function: ativaFoco
ferramentas/centromassa/index.js.php
@@ -182,18 +182,20 @@ i3GEOF.centromassa = { @@ -182,18 +182,20 @@ i3GEOF.centromassa = {
182 i3GEO.util.comboTemas( 182 i3GEO.util.comboTemas(
183 "i3GEOFcentromassaPontos", 183 "i3GEOFcentromassaPontos",
184 function(retorno){ 184 function(retorno){
185 - $i("i3GEOcentromassaDivPontos").innerHTML = retorno.dados; 185 + $i("i3GEOcentromassaDivPontos").innerHTML = retorno.dados;
  186 + var c = $i("i3GEOFcentromassaPontos");
186 $i("i3GEOcentromassaDivPontos").style.display = "block"; 187 $i("i3GEOcentromassaDivPontos").style.display = "block";
187 - if ($i("i3GEOFcentromassaPontos")){  
188 - $i("i3GEOFcentromassaPontos").onchange = function(){ 188 + if (c){
  189 + c.onchange = function(){
189 $i("i3GEOondeItens").style.display = "block"; 190 $i("i3GEOondeItens").style.display = "block";
190 $i("i3GEOondeItens").innerHTML = "Aguarde..."; 191 $i("i3GEOondeItens").innerHTML = "Aguarde...";
191 - i3GEO.mapa.ativaTema($i("i3GEOcentromassaPontos").value); 192 + i3GEO.mapa.ativaTema(c.value);
192 i3GEOF.centromassa.comboItens(); 193 i3GEOF.centromassa.comboItens();
193 }; 194 };
194 } 195 }
195 if(i3GEO.temaAtivo !== ""){ 196 if(i3GEO.temaAtivo !== ""){
196 - $i("i3GEOFcentromassaPontos").value = i3GEO.temaAtivo; 197 + if(c)
  198 + {c.value = i3GEO.temaAtivo;}
197 $i("i3GEOondeItens").style.display = "block"; 199 $i("i3GEOondeItens").style.display = "block";
198 $i("i3GEOondeItens").innerHTML = "Aguarde..."; 200 $i("i3GEOondeItens").innerHTML = "Aguarde...";
199 i3GEOF.centromassa.comboItens(); 201 i3GEOF.centromassa.comboItens();