From bd37511852903c6b97f8543b05d6da5ec357a7ba Mon Sep 17 00:00:00 2001 From: Edmar Moretti Date: Mon, 6 Feb 2012 21:46:24 +0000 Subject: [PATCH] Correção na obtenção de dados da tabela de atributos em camadas com projeção diferente do mapa (função de busca) --- admin/admin.db | Bin 75776 -> 0 bytes classesphp/classe_atributos.php | 17 ++++++++++++++--- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/admin/admin.db b/admin/admin.db index 4d6520f..dfb4ba6 100644 Binary files a/admin/admin.db and b/admin/admin.db differ diff --git a/classesphp/classe_atributos.php b/classesphp/classe_atributos.php index 4f63ae7..5caba27 100644 --- a/classesphp/classe_atributos.php +++ b/classesphp/classe_atributos.php @@ -488,8 +488,16 @@ $onde - Tipo de abrangência espacial (brasil ou mapa) $buscas = $buscas.$buscaUTF; $sopen = $l->open(); if($sopen == MS_FAILURE){return "erro";} - - $l->whichShapes($this->mapa->extent); + $prjMapa = $this->mapa->getProjection(); + $prjTema = $l->getProjection(); + $ret = $this->mapa->extent; + if (($prjTema != "") && ($prjMapa != $prjTema)) + { + $projInObj = ms_newprojectionobj($prjTema); + $projOutObj = ms_newprojectionobj($prjMapa); + $ret->project($projInObj, $projOutObj); + } + $l->whichShapes($ret); $fr = array(); while ($shape = $l->nextShape()) { @@ -521,7 +529,10 @@ $onde - Tipo de abrangência espacial (brasil ou mapa) } if ($encontrado == "sim") { - $novoreg["box"] = $this->extensaoShape($shape,$l); + $ret = $this->extensaoShape($shape,$l); + if (($prjTema != "") && ($prjMapa != $prjTema)) + {$ret->project($projInObj, $projOutObj);} + $novoreg["box"] = $ret; $novoreg["valores"] = $r; $encontrado = "nao"; $fr[] = $novoreg; -- libgit2 0.21.2