Commit 74ebb5a9646b1d2aab6e6e7cc795efdcdccb1401
1 parent
8c68a47f
Exists in
master
and in
7 other branches
-
Showing
10 changed files
with
850 additions
and
653 deletions
Show diff stats
admin/admin.db
No preview for this file type
classesphp/classe_alteraclasse.php
... | ... | @@ -21,7 +21,7 @@ Este programa é distribuído na expectativa de que seja útil |
21 | 21 | porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita |
22 | 22 | de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. |
23 | 23 | Consulte a Licença Pública Geral do GNU para mais detalhes. |
24 | -Você deve ter recebido uma c�pia da Licença Pública Geral do | |
24 | +Você deve ter recebido uma copia da Licença Pública Geral do | |
25 | 25 | GNU junto com este programa; se não, escreva para a |
26 | 26 | Free Software Foundation, Inc., no endereço |
27 | 27 | 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. |
... | ... | @@ -213,6 +213,7 @@ $base64 sim|nao indica se as strings estao codificadas em base64 |
213 | 213 | { |
214 | 214 | $layerc = explode("-",$ids[$i]); //nome do layer é o indice 0 do array |
215 | 215 | $layer = $this->mapa->getlayerbyname($layerc[0]); |
216 | + $layer->setMetaData("cache",""); | |
216 | 217 | $ncl = $layer->numclasses; |
217 | 218 | if ($layerc[1] < $ncl) |
218 | 219 | { | ... | ... |
classesphp/classe_analise.php
1 | 1 | <?php |
2 | 2 | /* |
3 | -Title: classe_analise.php | |
3 | + Title: classe_analise.php | |
4 | 4 | |
5 | -Gera análises espaciais, como buffer, calculo de centróides, etc. | |
5 | +Gera análises espaciais, como buffer, calculo de centr�ides, etc. | |
6 | 6 | |
7 | 7 | Licenca: |
8 | 8 | |
... | ... | @@ -22,8 +22,8 @@ Este programa &eacute; distribu&iacute;do na expectativa de que seja &uacute;til |
22 | 22 | porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita |
23 | 23 | de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA. |
24 | 24 | Consulte a Licença Pública Geral do GNU para mais detalhes. |
25 | -Você deve ter recebido uma cópia da Licença Pública Geral do | |
26 | -GNU junto com este programa; se não, escreva para a | |
25 | +Você deve ter recebido uma c�pia da Licença Pública Geral do | |
26 | + GNU junto com este programa; se não, escreva para a | |
27 | 27 | Free Software Foundation, Inc., no endereço |
28 | 28 | 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA. |
29 | 29 | |
... | ... | @@ -32,110 +32,114 @@ Arquivo: |
32 | 32 | i3geo/classesphp/classe_analise.php |
33 | 33 | */ |
34 | 34 | /* |
35 | -Classe: Analise | |
35 | + Classe: Analise | |
36 | 36 | |
37 | 37 | */ |
38 | 38 | class Analise |
39 | 39 | { |
40 | 40 | /* |
41 | - Variavel: $mapa | |
41 | + Variavel: $mapa | |
42 | 42 | |
43 | 43 | Objeto mapa |
44 | 44 | */ |
45 | 45 | public $mapa; |
46 | 46 | /* |
47 | - Variavel: $arquivo | |
47 | + Variavel: $arquivo | |
48 | 48 | |
49 | 49 | Arquivo map file |
50 | 50 | */ |
51 | 51 | protected $arquivo; |
52 | 52 | /* |
53 | - Variavel: $layer | |
53 | + Variavel: $layer | |
54 | 54 | |
55 | 55 | Objeto layer |
56 | 56 | */ |
57 | 57 | protected $layer; |
58 | 58 | /* |
59 | - Variavel: $nome | |
59 | + Variavel: $nome | |
60 | 60 | |
61 | 61 | Nome do layer |
62 | 62 | */ |
63 | 63 | protected $nome; |
64 | 64 | /* |
65 | - Variavel: $diretorio | |
65 | + Variavel: $diretorio | |
66 | 66 | |
67 | - Diretório do arquivo map_file | |
67 | + Diret�rio do arquivo map_file | |
68 | 68 | */ |
69 | 69 | protected $diretorio; |
70 | 70 | /* |
71 | - Variavel: $qyfile | |
71 | + Variavel: $qyfile | |
72 | 72 | |
73 | 73 | Nome do arquivo de seleção (.qy) |
74 | 74 | */ |
75 | 75 | public $qyfile; |
76 | 76 | /* |
77 | - Variavel: $v | |
77 | + Variavel: $v | |
78 | 78 | |
79 | 79 | Versão atual do Mapserver (primeiro dígito) |
80 | 80 | */ |
81 | 81 | public $v; |
82 | 82 | /* |
83 | - Variavel: $dbaseExiste | |
83 | + Variavel: $dbaseExiste | |
84 | 84 | |
85 | 85 | Indica se a biblioteca dbase está carregada |
86 | 86 | */ |
87 | 87 | protected $dbaseExiste; |
88 | -/* | |
89 | -Function: __construct | |
88 | + /* | |
89 | + Function: __construct | |
90 | 90 | |
91 | -Cria um objeto Analise | |
91 | + Cria um objeto Analise | |
92 | 92 | |
93 | -parameters: | |
93 | + parameters: | |
94 | 94 | |
95 | -$map_file - Endereço do mapfile no servidor. | |
95 | + $map_file - Endereço do mapfile no servidor. | |
96 | 96 | |
97 | -$tema - Nome do tema que será processado | |
97 | + $tema - Nome do tema que será processado | |
98 | 98 | |
99 | -$ext - Extensão geográfica do mapa | |
100 | -*/ | |
99 | + $ext - Extensão geográfica do mapa | |
100 | + */ | |
101 | 101 | function __construct($map_file,$tema="",$locaplic="",$ext="") |
102 | 102 | { |
103 | - //error_reporting(0); | |
103 | + //error_reporting(0); | |
104 | 104 | $this->qyfile = str_replace(".map",".qy",$map_file); |
105 | - include_once(dirname(__FILE__)."/funcoes_gerais.php"); | |
105 | + include_once(dirname(__FILE__)."/funcoes_gerais.php"); | |
106 | 106 | if(empty($locaplic)){ |
107 | 107 | $locaplic = dirname(__FILE__)."/.."; |
108 | 108 | } |
109 | - $this->v = versao(); | |
109 | + $this->v = versao(); | |
110 | 110 | $this->v = $this->v["principal"]; |
111 | 111 | $this->dbaseExiste = false; |
112 | 112 | if(function_exists("dbase_create")) |
113 | - {$this->dbaseExiste = true;} | |
114 | - $this->locaplic = $locaplic; | |
115 | - $this->mapa = ms_newMapObj($map_file); | |
116 | - $this->arquivo = $map_file; | |
117 | - if($tema != "" && @$this->mapa->getlayerbyname($tema)) | |
118 | - {$this->layer = $this->mapa->getlayerbyname($tema);} | |
119 | - $this->nome = $tema; | |
120 | - $this->diretorio = dirname($this->arquivo); | |
113 | + { | |
114 | + $this->dbaseExiste = true; | |
115 | + } | |
116 | + $this->locaplic = $locaplic; | |
117 | + $this->mapa = ms_newMapObj($map_file); | |
118 | + $this->arquivo = $map_file; | |
119 | + if($tema != "" && @$this->mapa->getlayerbyname($tema)) | |
120 | + { | |
121 | + $this->layer = $this->mapa->getlayerbyname($tema); | |
122 | + } | |
123 | + $this->nome = $tema; | |
124 | + $this->diretorio = dirname($this->arquivo); | |
121 | 125 | if($ext && $ext != ""){ |
122 | 126 | $e = explode(" ",$ext); |
123 | 127 | $extatual = $this->mapa->extent; |
124 | 128 | $extatual->setextent((min($e[0],$e[2])),(min($e[1],$e[3])),(max($e[0],$e[2])),(max($e[1],$e[3]))); |
125 | 129 | } |
126 | 130 | } |
127 | -/* | |
128 | -Method: criaDefDb | |
131 | + /* | |
132 | + Method: criaDefDb | |
129 | 133 | |
130 | -Cria um array contendo as definições das colunas que serão criadas em uma tabela DBF conforme as exigências de arquivos dbf | |
134 | + Cria um array contendo as definições das colunas que serão criadas em uma tabela DBF conforme as exigências de arquivos dbf | |
131 | 135 | |
132 | -parameters: | |
136 | + parameters: | |
133 | 137 | |
134 | -$itens - array com os nomes originais das colunas | |
138 | + $itens - array com os nomes originais das colunas | |
135 | 139 | |
136 | -return: | |
137 | -{array} | |
138 | -*/ | |
140 | + return: | |
141 | + {array} | |
142 | + */ | |
139 | 143 | function criaDefDb($itens,$unico=true){ |
140 | 144 | $c = 0; |
141 | 145 | $def = array(); |
... | ... | @@ -151,71 +155,73 @@ return: |
151 | 155 | } |
152 | 156 | return $def; |
153 | 157 | } |
154 | -/* | |
155 | -Method: truncaS | |
158 | + /* | |
159 | + Method: truncaS | |
156 | 160 | |
157 | -Trunca o comprimento de uma string em 255 caracteres | |
161 | + Trunca o comprimento de uma string em 255 caracteres | |
158 | 162 | |
159 | -parameters: | |
163 | + parameters: | |
160 | 164 | |
161 | -$s - string | |
165 | + $s - string | |
162 | 166 | |
163 | -return | |
164 | -{string} | |
165 | -*/ | |
167 | + return | |
168 | + {string} | |
169 | + */ | |
166 | 170 | function truncaS($s){ |
167 | 171 | if(strlen($s) > 255){ |
168 | 172 | $s = substr($s,0,255); |
169 | 173 | } |
170 | 174 | return $s; |
171 | 175 | } |
172 | -/* | |
173 | -Method: salva | |
176 | + /* | |
177 | + Method: salva | |
174 | 178 | |
175 | -Salva o mapfile atual | |
176 | -*/ | |
179 | + Salva o mapfile atual | |
180 | + */ | |
177 | 181 | function salva() |
178 | 182 | { |
179 | - if (connection_aborted()){exit();} | |
180 | - $this->mapa->save($this->arquivo); | |
183 | + if (connection_aborted()){ | |
184 | + exit(); | |
185 | + } | |
186 | + $this->mapa->save($this->arquivo); | |
181 | 187 | } |
182 | 188 | |
183 | -/* | |
184 | -function: analiseDistriPt | |
189 | + /* | |
190 | + function: analiseDistriPt | |
185 | 191 | |
186 | -Gera análise de distribuição de pontos. | |
192 | + Gera análise de distribuição de pontos. | |
187 | 193 | |
188 | -Executa script R para gerar a imagem. | |
194 | + Executa script R para gerar a imagem. | |
189 | 195 | |
190 | -parameters: | |
196 | + parameters: | |
191 | 197 | |
192 | -$locaplic - Localização da aplicação I3Geo | |
198 | + $locaplic - Localização da aplicação I3Geo | |
193 | 199 | |
194 | -$dir_tmp - Diretório temporário do mapserver | |
200 | + $dir_tmp - Diret�rio temporário do mapserver | |
195 | 201 | |
196 | -$R_path - Onde fica o R | |
202 | + $R_path - Onde fica o R | |
197 | 203 | |
198 | -$numclasses - Número de classes que serão representadas | |
204 | + $numclasses - Número de classes que serão representadas | |
199 | 205 | |
200 | -$tipo - Tipo de análise. | |
206 | + $tipo - Tipo de análise. | |
201 | 207 | |
202 | -$cori - Cor inicial em rgb. | |
208 | + $cori - Cor inicial em rgb. | |
203 | 209 | |
204 | -$corf - Cor final em rgb. | |
210 | + $corf - Cor final em rgb. | |
205 | 211 | |
206 | -$tmpurl - Url com o nome da imagem final (apenas para relatorio) | |
212 | + $tmpurl - Url com o nome da imagem final (apenas para relatorio) | |
207 | 213 | |
208 | -$sigma - desvio padrão para a opção kernel | |
214 | + $sigma - desvio padrão para a opção kernel | |
209 | 215 | |
210 | -$limitepontos - "TRUE"|"FALSE" limita o resultado ao limite geográfico dos pontos se "TRUE" ou ao limite do mapa se "FALSE" | |
216 | + $limitepontos - "TRUE"|"FALSE" limita o resultado ao limite geográfico dos pontos se "TRUE" ou ao limite do mapa se "FALSE" | |
211 | 217 | |
212 | -$extendelimite - extende o limite dos pontos em um determinado percentual em relação a área final de abrangência | |
218 | + $extendelimite - extende o limite dos pontos em um determinado percentual em relação a área final de abrangência | |
213 | 219 | |
214 | -$item - item contendo os pesos utilizado na operacao de calculo de densidade (opcional) | |
220 | + $item - item contendo os pesos utilizado na operacao de calculo de densidade (opcional) | |
215 | 221 | |
216 | -Include: | |
217 | -<class.palette.php> | |
218 | -*/ | |
222 | + Include: | |
223 | + <class.palette.php> | |
224 | + */ | |
219 | 225 | function analiseDistriPt($locaplic,$dir_tmp,$R_path,$numclasses,$tipo,$cori,$corf,$tmpurl,$sigma="",$limitepontos="TRUE",$tema2="",$extendelimite=5,$item="") |
220 | 226 | { |
221 | 227 | set_time_limit(120); |
... | ... | @@ -236,30 +242,30 @@ Include: |
236 | 242 | switch ($tipo){ |
237 | 243 | //cluster espacial |
238 | 244 | case "cluster": |
239 | - $this->mapaCluster($nomearq,$nomearq2,$dimx,$dimy,$dir_tmp,$R_path,$locaplic); | |
240 | - return "ok"; | |
241 | - break; | |
242 | - //delaunay e voronoi | |
245 | + $this->mapaCluster($nomearq,$nomearq2,$dimx,$dimy,$dir_tmp,$R_path,$locaplic); | |
246 | + return "ok"; | |
247 | + break; | |
248 | + //delaunay e voronoi | |
243 | 249 | case "deldir": |
244 | 250 | //error_reporting(0); |
245 | 251 | $this->mapaDeldir($nomearq,$dir_tmp,$R_path,$locaplic); |
246 | 252 | $this->deldirDir2shp($nomearq."dirsgs",$dir_tmp,$locaplic); |
247 | 253 | $this->deldirDel2shp($nomearq."delsgs",$dir_tmp,$locaplic); |
248 | - return "ok"; | |
249 | - break; | |
254 | + return "ok"; | |
255 | + break; | |
250 | 256 | case "kernel": |
251 | 257 | $this->mapaKernel($nomearq,$dimx,$dimy,$dir_tmp,$R_path,$locaplic,$sigma); |
252 | - break; | |
258 | + break; | |
253 | 259 | case "densidade": |
254 | 260 | $this->mapaDensidade($nomearq,$dimx,$dimy,$dir_tmp,$R_path,$locaplic,$dimz); |
255 | - break; | |
261 | + break; | |
256 | 262 | case "distancia": |
257 | 263 | $this->mapaDistancia($nomearq,$dimx,$dimy,$dir_tmp,$R_path,$locaplic); |
258 | - break; | |
264 | + break; | |
259 | 265 | case "relatorio": |
260 | 266 | $r = $this->mapaRelatorioAnaliseDist($nomearq,$dimx,$dimy,$dir_tmp,$R_path,$locaplic); |
261 | 267 | return($tmpurl.basename($this->diretorio)."/".basename($nomearq).'.htm'); |
262 | - break; | |
268 | + break; | |
263 | 269 | } |
264 | 270 | //cria a imagem |
265 | 271 | $minmax = $this->criaImagemR($nomearq); |
... | ... | @@ -271,7 +277,9 @@ Include: |
271 | 277 | //cria os parametros das classes |
272 | 278 | $cls = $this->classesRasterI($minmax[0],$minmax[1],$numclasses,$myPalette->colorRGB); |
273 | 279 | |
274 | - if (count($cls) != $numclasses){return("erro.");} | |
280 | + if (count($cls) != $numclasses){ | |
281 | + return("erro."); | |
282 | + } | |
275 | 283 | //adiciona o novo tema |
276 | 284 | if (file_exists($nomearq.".png")){ |
277 | 285 | $novolayer = criaLayer($this->mapa,MS_LAYER_RASTER,MS_DEFAULT,($tipo." (".$this->nome.")"),$metaClasse="SIM"); |
... | ... | @@ -314,42 +322,49 @@ Include: |
314 | 322 | $layerAbaixo = $this->mapa->getlayer($i); |
315 | 323 | $tipo = $layerAbaixo->type; |
316 | 324 | if (($tipo != 2) && ($tipo != 3)) |
317 | - {$nummove++;} | |
325 | + { | |
326 | + $nummove++; | |
327 | + } | |
318 | 328 | } |
319 | 329 | if ($nummove > 2) |
320 | 330 | { |
321 | 331 | for ($i=0;$i<=($nummove - 3);++$i) |
322 | - {$this->mapa->movelayerup($indicel);} | |
332 | + { | |
333 | + $this->mapa->movelayerup($indicel); | |
334 | + } | |
323 | 335 | } |
324 | 336 | } |
325 | 337 | } |
326 | 338 | else |
327 | - {return("erro");} | |
339 | + {return("erro"); | |
340 | + } | |
328 | 341 | if(file_exists($this->qyfile)) |
329 | - {unlink($this->qyfile);} | |
342 | + { | |
343 | + unlink($this->qyfile); | |
344 | + } | |
330 | 345 | return($novolayer->name); |
331 | 346 | } |
332 | -/* | |
333 | -function: mapaRelatorioAnaliseDist | |
347 | + /* | |
348 | + function: mapaRelatorioAnaliseDist | |
334 | 349 | |
335 | -Gera um relatório da análise de distribuição de pontos. | |
350 | + Gera um relat�rio da análise de distribuição de pontos. | |
336 | 351 | |
337 | -Executa script R para gerar relatório . | |
352 | + Executa script R para gerar relat�rio . | |
338 | 353 | |
339 | -parameters: | |
354 | + parameters: | |
340 | 355 | |
341 | -$arqpt - Prefixo dos arquivos em disco com os pontos. | |
356 | + $arqpt - Prefixo dos arquivos em disco com os pontos. | |
342 | 357 | |
343 | -$dimx - Range em x no formato R c(-54,-53). | |
358 | + $dimx - Range em x no formato R c(-54,-53). | |
344 | 359 | |
345 | -$dimy - Range em y no formato R c(-25,-23). | |
360 | + $dimy - Range em y no formato R c(-25,-23). | |
346 | 361 | |
347 | -$dir_tmp - Diretório temporário do mapserver. | |
362 | + $dir_tmp - Diret�rio temporário do mapserver. | |
348 | 363 | |
349 | -$R_path - Onde fica o R. | |
364 | + $R_path - Onde fica o R. | |
350 | 365 | |
351 | -$locaplic - Onde fica o I3Geo. | |
352 | -*/ | |
366 | + $locaplic - Onde fica o I3Geo. | |
367 | + */ | |
353 | 368 | function mapaRelatorioAnaliseDist($arqpt,$dimx,$dimy,$dir_tmp,$R_path,$locaplic) |
354 | 369 | { |
355 | 370 | set_time_limit(180); |
... | ... | @@ -361,7 +376,7 @@ $locaplic - Onde fica o I3Geo. |
361 | 376 | { |
362 | 377 | $lib = '.libPaths("'.$locaplic.'/pacotes/rlib/win")'; |
363 | 378 | if(file_exists($locaplic.'/pacotes/rlib/win')) |
364 | - $rcode[] = $lib; | |
379 | + $rcode[] = $lib; | |
365 | 380 | $tipoimg = "png"; |
366 | 381 | } |
367 | 382 | else |
... | ... | @@ -455,29 +470,29 @@ $locaplic - Onde fica o I3Geo. |
455 | 470 | $rcode[] = 'close(zz)'; |
456 | 471 | $r = $this->executaR($rcode,$dir_tmp,$R_path); |
457 | 472 | } |
458 | -/* | |
459 | -function: mapaCluster | |
473 | + /* | |
474 | + function: mapaCluster | |
460 | 475 | |
461 | -Gera um mapa de cluster. | |
476 | + Gera um mapa de cluster. | |
462 | 477 | |
463 | -Executa script R para gerar os dados. | |
478 | + Executa script R para gerar os dados. | |
464 | 479 | |
465 | -parameters: | |
480 | + parameters: | |
466 | 481 | |
467 | -$arqpt - Prefixo dos arquivos em disco com os pontos. | |
482 | + $arqpt - Prefixo dos arquivos em disco com os pontos. | |
468 | 483 | |
469 | -$dimx - Range em x no formato R c(-54,-53). | |
484 | + $dimx - Range em x no formato R c(-54,-53). | |
470 | 485 | |
471 | -$dimy - Range em y no formato R c(-25,-23). | |
486 | + $dimy - Range em y no formato R c(-25,-23). | |
472 | 487 | |
473 | -$dir_tmp - Diretório temporário do mapserver. | |
488 | + $dir_tmp - Diretorio temporário do mapserver. | |
474 | 489 | |
475 | -$R_path - Onde fica o R. | |
490 | + $R_path - Onde fica o R. | |
476 | 491 | |
477 | -$locaplic - Onde fica o I3Geo. | |
492 | + $locaplic - Onde fica o I3Geo. | |
478 | 493 | |
479 | -$sigma - Bandwidth for kernel smoother in "smooth" option. | |
480 | -*/ | |
494 | + $sigma - Bandwidth for kernel smoother in "smooth" option. | |
495 | + */ | |
481 | 496 | function mapaCluster($arqpt,$arqpt2,$dimx,$dimy,$dir_tmp,$R_path,$locaplic) |
482 | 497 | { |
483 | 498 | $gfile_name = nomeRandomico(20); |
... | ... | @@ -493,7 +508,7 @@ $sigma - Bandwidth for kernel smoother in "smooth" option. |
493 | 508 | if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')){ |
494 | 509 | $lib = '.libPaths("'.$locaplic.'/pacotes/rlib/win")'; |
495 | 510 | if(file_exists($locaplic.'/pacotes/rlib/win')) |
496 | - $rcode[] = $lib; | |
511 | + $rcode[] = $lib; | |
497 | 512 | } |
498 | 513 | else{ |
499 | 514 | if(file_exists($locaplic."/pacotes/rlib/linux")){ |
... | ... | @@ -508,28 +523,28 @@ $sigma - Bandwidth for kernel smoother in "smooth" option. |
508 | 523 | return "ok"; |
509 | 524 | } |
510 | 525 | |
511 | -/* | |
512 | -function: mapaKernel | |
526 | + /* | |
527 | + function: mapaKernel | |
513 | 528 | |
514 | -Gera um mapa de kernel. | |
529 | + Gera um mapa de kernel. | |
515 | 530 | |
516 | -Executa script R para gerar a imagem. | |
531 | + Executa script R para gerar a imagem. | |
517 | 532 | |
518 | -parameters: | |
519 | -$arqpt - Prefixo dos arquivos em disco com os pontos. | |
533 | + parameters: | |
534 | + $arqpt - Prefixo dos arquivos em disco com os pontos. | |
520 | 535 | |
521 | -$dimx - Range em x no formato R c(-54,-53). | |
536 | + $dimx - Range em x no formato R c(-54,-53). | |
522 | 537 | |
523 | -$dimy - Range em y no formato R c(-25,-23). | |
538 | + $dimy - Range em y no formato R c(-25,-23). | |
524 | 539 | |
525 | -$dir_tmp - Diretório temporário do mapserver. | |
540 | + $dir_tmp - Diret�rio temporário do mapserver. | |
526 | 541 | |
527 | -$R_path - Onde fica o R. | |
542 | + $R_path - Onde fica o R. | |
528 | 543 | |
529 | -$locaplic - Onde fica o I3Geo. | |
544 | + $locaplic - Onde fica o I3Geo. | |
530 | 545 | |
531 | -$sigma - Bandwidth for kernel smoother in "smooth" option. | |
532 | -*/ | |
546 | + $sigma - Bandwidth for kernel smoother in "smooth" option. | |
547 | + */ | |
533 | 548 | function mapaKernel($arqpt,$dimx,$dimy,$dir_tmp,$R_path,$locaplic,$sigma=""){ |
534 | 549 | $gfile_name = nomeRandomico(20); |
535 | 550 | $graf = "png"; |
... | ... | @@ -538,7 +553,7 @@ $sigma - Bandwidth for kernel smoother in "smooth" option. |
538 | 553 | if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')){ |
539 | 554 | $lib = '.libPaths("'.$locaplic.'/pacotes/rlib/win")'; |
540 | 555 | if(file_exists($locaplic.'/pacotes/rlib/win')) |
541 | - $rcode[] = $lib; | |
556 | + $rcode[] = $lib; | |
542 | 557 | $tipoimg = "png"; |
543 | 558 | } |
544 | 559 | else{ |
... | ... | @@ -551,9 +566,12 @@ $sigma - Bandwidth for kernel smoother in "smooth" option. |
551 | 566 | $rcode[] = 'pt <- ppp(dadosx, dadosy, '.$dimx.','.$dimy.')'; |
552 | 567 | $rcode[] = 'img <- ksmooth.ppp(pt'; |
553 | 568 | if (is_numeric($sigma)) |
554 | - {$rcode[] = ',sigma='.$sigma.')';} | |
569 | + { | |
570 | + $rcode[] = ',sigma='.$sigma.')'; | |
571 | + } | |
555 | 572 | else |
556 | - {$rcode[] = ')';} | |
573 | + {$rcode[] = ')'; | |
574 | + } | |
557 | 575 | $rcode[] = 'cat(img$v,file="'.$arqpt.'img",fill=FALSE)'; |
558 | 576 | $rcode[] = 'cat(img$xstep,file="'.$arqpt.'h",fill=TRUE)'; |
559 | 577 | $rcode[] = 'cat(img$ystep,file="'.$arqpt.'h",append=TRUE,fill=TRUE)'; |
... | ... | @@ -564,28 +582,28 @@ $sigma - Bandwidth for kernel smoother in "smooth" option. |
564 | 582 | $r = $this->executaR($rcode,$dir_tmp,$R_path,$gfile_name); |
565 | 583 | return "ok"; |
566 | 584 | } |
567 | -/* | |
568 | -function: mapaDensidade | |
585 | + /* | |
586 | + function: mapaDensidade | |
569 | 587 | |
570 | -Gera um mapa de densidade de pontos. | |
588 | + Gera um mapa de densidade de pontos. | |
571 | 589 | |
572 | -Executa script R para gerar a imagem. | |
590 | + Executa script R para gerar a imagem. | |
573 | 591 | |
574 | -parameters: | |
575 | -$arqpt - Prefixo dos arquivos em disco com os pontos. | |
592 | + parameters: | |
593 | + $arqpt - Prefixo dos arquivos em disco com os pontos. | |
576 | 594 | |
577 | -$dimx - Range em x no formato R c(-54,-53). | |
595 | + $dimx - Range em x no formato R c(-54,-53). | |
578 | 596 | |
579 | -$dimy - Range em y no formato R c(-25,-23). | |
597 | + $dimy - Range em y no formato R c(-25,-23). | |
580 | 598 | |
581 | -$dir_tmp - Diretório temporário do mapserver. | |
599 | + $dir_tmp - Diret�rio temporário do mapserver. | |
582 | 600 | |
583 | -$R_path - Onde fica o R. | |
601 | + $R_path - Onde fica o R. | |
584 | 602 | |
585 | -$locaplic - Onde fica o I3Geo. | |
603 | + $locaplic - Onde fica o I3Geo. | |
586 | 604 | |
587 | -$dimz - arquivo opcional com os valores de z | |
588 | -*/ | |
605 | + $dimz - arquivo opcional com os valores de z | |
606 | + */ | |
589 | 607 | function mapaDensidade($arqpt,$dimx,$dimy,$dir_tmp,$R_path,$locaplic,$dimz=""){ |
590 | 608 | $gfile_name = nomeRandomico(20); |
591 | 609 | $graf = "png"; |
... | ... | @@ -595,7 +613,7 @@ $dimz - arquivo opcional com os valores de z |
595 | 613 | if (strtoupper(substr(PHP_OS, 0, 3) == 'WIN')){ |
596 | 614 | $lib = '.libPaths("'.$locaplic.'/pacotes/rlib/win")'; |
597 | 615 | if(file_exists($locaplic.'/pacotes/rlib/win')) |
598 | - $rcode[] = $lib; | |
616 | + $rcode[] = $lib; | |
599 | 617 | $tipoimg = "png"; |
600 | 618 | } |
601 | 619 | else{ |
... | ... | @@ -621,27 +639,27 @@ $dimz - arquivo opcional com os valores de z |
621 | 639 | $r = $this->executaR($rcode,$dir_tmp,$R_path,$gfile_name); |
622 | 640 | return "ok"; |
623 | 641 | } |
624 | -/* | |
625 | -function: mapaDistancia | |
642 | + /* | |
643 | + function: mapaDistancia | |
626 | 644 | |
627 | -Gera um mapa de distancia de pontos. | |
645 | + Gera um mapa de distancia de pontos. | |
628 | 646 | |
629 | -Executa script R para gerar a imagem. | |
647 | + Executa script R para gerar a imagem. | |
630 | 648 | |
631 | -parameters: | |
649 | + parameters: | |
632 | 650 | |
633 | -$arqpt - Prefixo dos arquivos em disco com os pontos. | |
651 | + $arqpt - Prefixo dos arquivos em disco com os pontos. | |
634 | 652 | |
635 | -$dimx - Range em x no formato R c(-54,-53). | |
653 | + $dimx - Range em x no formato R c(-54,-53). | |
636 | 654 | |
637 | -$dimy - Range em y no formato R c(-25,-23). | |
655 | + $dimy - Range em y no formato R c(-25,-23). | |
638 | 656 | |
639 | -$dir_tmp - Diretório temporário do mapserver. | |
657 | + $dir_tmp - Diretorio temporário do mapserver. | |
640 | 658 | |
641 | -$R_path - Onde fica o R. | |
659 | + $R_path - Onde fica o R. | |
642 | 660 | |
643 | -$locaplic - Onde fica o I3Geo. | |
644 | -*/ | |
661 | + $locaplic - Onde fica o I3Geo. | |
662 | + */ | |
645 | 663 | function mapaDistancia($arqpt,$dimx,$dimy,$dir_tmp,$R_path,$locaplic) |
646 | 664 | { |
647 | 665 | $gfile_name = nomeRandomico(20); |
... | ... | @@ -652,7 +670,7 @@ $locaplic - Onde fica o I3Geo. |
652 | 670 | { |
653 | 671 | $lib = '.libPaths("'.$locaplic.'/pacotes/rlib/win")'; |
654 | 672 | if(file_exists($locaplic.'/pacotes/rlib/win')) |
655 | - $rcode[] = $lib; | |
673 | + $rcode[] = $lib; | |
656 | 674 | $tipoimg = "png"; |
657 | 675 | } |
658 | 676 | else |
... | ... | @@ -675,25 +693,25 @@ $locaplic - Onde fica o I3Geo. |
675 | 693 | $r = $this->executaR($rcode,$dir_tmp,$R_path,$gfile_name); |
676 | 694 | return "ok"; |
677 | 695 | } |
678 | -/* | |
679 | -function: mapaDeldir | |
696 | + /* | |
697 | + function: mapaDeldir | |
680 | 698 | |
681 | -Calcula a triangulação de Delaunay e diagrama de Voronoi. | |
699 | + Calcula a triangulação de Delaunay e diagrama de Voronoi. | |
682 | 700 | |
683 | -Para funcionar, é necessário a instalação da biblioteca deldir do R. | |
701 | + Para funcionar, é necessário a instalação da biblioteca deldir do R. | |
684 | 702 | |
685 | -http://cran.r-project.org/web/packages/deldir | |
703 | + http://cran.r-project.org/web/packages/deldir | |
686 | 704 | |
687 | -parameters: | |
705 | + parameters: | |
688 | 706 | |
689 | -$arqpt - Prefixo dos arquivos em disco com os pontos. | |
707 | + $arqpt - Prefixo dos arquivos em disco com os pontos. | |
690 | 708 | |
691 | -$dir_tmp - Diretório temporário do mapserver. | |
709 | + $dir_tmp - Diret�rio temporário do mapserver. | |
692 | 710 | |
693 | -$R_path - Onde fica o R. | |
711 | + $R_path - Onde fica o R. | |
694 | 712 | |
695 | -$locaplic - Onde fica o I3Geo. | |
696 | -*/ | |
713 | + $locaplic - Onde fica o I3Geo. | |
714 | + */ | |
697 | 715 | function mapaDeldir($arqpt,$dir_tmp,$R_path,$locaplic) |
698 | 716 | { |
699 | 717 | $gfile_name = nomeRandomico(20); |
... | ... | @@ -703,7 +721,7 @@ $locaplic - Onde fica o I3Geo. |
703 | 721 | { |
704 | 722 | $lib = '.libPaths("'.$locaplic.'/pacotes/rlib/win")'; |
705 | 723 | if(file_exists($locaplic.'/pacotes/rlib/win')) |
706 | - $rcode[] = $lib; | |
724 | + $rcode[] = $lib; | |
707 | 725 | } |
708 | 726 | else |
709 | 727 | { |
... | ... | @@ -714,28 +732,28 @@ $locaplic - Onde fica o I3Geo. |
714 | 732 | } |
715 | 733 | } |
716 | 734 | $rcode[] = 'library(deldir)'; |
717 | - | |
735 | + | |
718 | 736 | $rcode[] = 'pt <- deldir(dadosx, dadosy)'; |
719 | 737 | $rcode[] = 'write.csv(pt$delsgs,file="'.$arqpt.'delsgs")'; |
720 | 738 | $rcode[] = 'write.csv(pt$dirsgs,file="'.$arqpt.'dirsgs")'; |
721 | 739 | $r = $this->executaR($rcode,$dir_tmp,$R_path,$gfile_name); |
722 | 740 | return "ok"; |
723 | 741 | } |
724 | -/* | |
725 | -function deldirDel2shp | |
742 | + /* | |
743 | + function deldirDel2shp | |
726 | 744 | |
727 | -Lê um arquivo CSV gerado pelo software R com os dados referentes à triangulação de Delaunay. | |
745 | + Lê um arquivo CSV gerado pelo software R com os dados referentes a triangulação de Delaunay. | |
728 | 746 | |
729 | -O arquivo CSV é lido e convertido em um shape file que é então adicionado ao mapa. | |
747 | + O arquivo CSV é lido e convertido em um shape file que é então adicionado ao mapa. | |
730 | 748 | |
731 | -Parametros: | |
749 | + Parametros: | |
732 | 750 | |
733 | -$nomearq - nome do arquivo CSV | |
751 | + $nomearq - nome do arquivo CSV | |
734 | 752 | |
735 | -$dir_tmp - diretório temporário do Mapserver | |
753 | + $dir_tmp - diretorio temporário do Mapserver | |
736 | 754 | |
737 | -$locaplic - diretório da aplicação i3geo | |
738 | -*/ | |
755 | + $locaplic - diretorio da aplicação i3geo | |
756 | + */ | |
739 | 757 | function deldirDel2shp($nomearq,$dir_tmp,$locaplic) |
740 | 758 | { |
741 | 759 | if (file_exists($nomearq)) |
... | ... | @@ -756,9 +774,12 @@ $locaplic - diretório da aplica&ccedil;&atilde;o i3geo |
756 | 774 | $def[] = array("ind1","N","5","0"); |
757 | 775 | $def[] = array("ind2","N","5","0"); |
758 | 776 | if($this->dbaseExiste == false) |
759 | - {$db = xbase_create($nomeshp.".dbf", $def);} | |
777 | + { | |
778 | + $db = xbase_create($nomeshp.".dbf", $def); | |
779 | + } | |
760 | 780 | else |
761 | - {$db = dbase_create($nomeshp.".dbf", $def);} | |
781 | + {$db = dbase_create($nomeshp.".dbf", $def); | |
782 | + } | |
762 | 783 | $dbname = $nomeshp.".dbf"; |
763 | 784 | //le o arquivo linha a linha, pulando a primeira |
764 | 785 | //acrescenta os pontos no shape file formando as linhas |
... | ... | @@ -789,15 +810,15 @@ $locaplic - diretório da aplica&ccedil;&atilde;o i3geo |
789 | 810 | $novoshpf->addShape($ShapeObj); |
790 | 811 | $registro = array($i1,$i2,$i3,$i4,$i5,$i6); |
791 | 812 | if($this->dbaseExiste == false) |
792 | - xbase_add_record($db,$registro); | |
813 | + xbase_add_record($db,$registro); | |
793 | 814 | else |
794 | - dbase_add_record($db,$registro); | |
815 | + dbase_add_record($db,$registro); | |
795 | 816 | } |
796 | 817 | } |
797 | 818 | if($this->dbaseExiste == false) |
798 | - xbase_close($db); | |
819 | + xbase_close($db); | |
799 | 820 | else |
800 | - dbase_close($db); | |
821 | + dbase_close($db); | |
801 | 822 | fclose($abre); |
802 | 823 | //adiciona no mapa atual o novo tema |
803 | 824 | $novolayer = criaLayer($this->mapa,MS_LAYER_LINE,MS_DEFAULT,("Delaunay (".$nomefinal.")"),$metaClasse="SIM"); |
... | ... | @@ -812,21 +833,21 @@ $locaplic - diretório da aplica&ccedil;&atilde;o i3geo |
812 | 833 | $cor->setrgb(255,50,0); |
813 | 834 | } |
814 | 835 | } |
815 | -/* | |
816 | -function deldirDir2shp | |
836 | + /* | |
837 | + function deldirDir2shp | |
817 | 838 | |
818 | -Lê um arquivo CSV gerado pelo software R com os dados referentes ao diagrama de Voronoi. | |
839 | + Lê um arquivo CSV gerado pelo software R com os dados referentes ao diagrama de Voronoi. | |
819 | 840 | |
820 | -O arquivo CSV é lido e convertido em um shape file que é então adicionado ao mapa. | |
841 | + O arquivo CSV é lido e convertido em um shape file que é então adicionado ao mapa. | |
821 | 842 | |
822 | -Parametros: | |
843 | + Parametros: | |
823 | 844 | |
824 | -$nomearq - nome do arquivo CSV | |
845 | + $nomearq - nome do arquivo CSV | |
825 | 846 | |
826 | -$dir_tmp - diretório temporário do Mapserver | |
847 | + $dir_tmp - diretorio temporário do Mapserver | |
827 | 848 | |
828 | -$locaplic - diretório da aplicação i3geo | |
829 | -*/ | |
849 | + $locaplic - diretorio da aplicação i3geo | |
850 | + */ | |
830 | 851 | function deldirDir2shp($nomearq,$dir_tmp,$locaplic) |
831 | 852 | { |
832 | 853 | if (file_exists($nomearq)) |
... | ... | @@ -856,9 +877,12 @@ $locaplic - diretório da aplica&ccedil;&atilde;o i3geo |
856 | 877 | $def[] = array("b1","C","6"); |
857 | 878 | $def[] = array("b2","C","6"); |
858 | 879 | if($this->dbaseExiste == false) |
859 | - {$dbLinhas = xbase_create($nomeshpLinhas.".dbf", $def);} | |
880 | + { | |
881 | + $dbLinhas = xbase_create($nomeshpLinhas.".dbf", $def); | |
882 | + } | |
860 | 883 | else |
861 | - {$dbLinhas = dbase_create($nomeshpLinhas.".dbf", $def);} | |
884 | + {$dbLinhas = dbase_create($nomeshpLinhas.".dbf", $def); | |
885 | + } | |
862 | 886 | $dbnameLinhas = $nomeshpLinhas.".dbf"; |
863 | 887 | // |
864 | 888 | // cria o dbf para o shapefile poligonal |
... | ... | @@ -866,12 +890,15 @@ $locaplic - diretório da aplica&ccedil;&atilde;o i3geo |
866 | 890 | $def = array(); |
867 | 891 | $def[] = array("area","N","12","5"); |
868 | 892 | if($this->dbaseExiste == false) |
869 | - {$dbPoligonos = xbase_create($nomeshpPoligonos.".dbf", $def);} | |
893 | + { | |
894 | + $dbPoligonos = xbase_create($nomeshpPoligonos.".dbf", $def); | |
895 | + } | |
870 | 896 | else |
871 | - {$dbPoligonos = dbase_create($nomeshpPoligonos.".dbf", $def);} | |
897 | + {$dbPoligonos = dbase_create($nomeshpPoligonos.".dbf", $def); | |
898 | + } | |
872 | 899 | $dbnamePoligonos = $nomeshpPoligonos.".dbf"; |
873 | 900 | // |
874 | - //constrói as linhas do diagrama | |
901 | + //constr�i as linhas do diagrama | |
875 | 902 | // |
876 | 903 | //le o arquivo linha a linha, pulando a primeira |
877 | 904 | //acrescenta os pontos no shape file formando as linhas |
... | ... | @@ -898,28 +925,32 @@ $locaplic - diretório da aplica&ccedil;&atilde;o i3geo |
898 | 925 | $poPoint2 = ms_newpointobj(); |
899 | 926 | $poPoint2->setXY($i3, $i4); |
900 | 927 | if(trim($i[7]) == "TRUE") |
901 | - {$borda[] = $poPoint1;} | |
928 | + { | |
929 | + $borda[] = $poPoint1; | |
930 | + } | |
902 | 931 | if(trim($i[8]) == "TRUE") |
903 | - {$borda[] = $poPoint2;} | |
932 | + { | |
933 | + $borda[] = $poPoint2; | |
934 | + } | |
904 | 935 | $linha = ms_newLineObj(); |
905 | 936 | $linha->add($poPoint1); |
906 | 937 | $linha->add($poPoint2); |
907 | 938 | if($poligonos[$i[5]]) |
908 | - $poligonos[$i[5]] = array_merge(array($linha),$poligonos[$i[5]]); | |
939 | + $poligonos[$i[5]] = array_merge(array($linha),$poligonos[$i[5]]); | |
909 | 940 | else |
910 | - $poligonos[$i[5]] = array($linha); | |
941 | + $poligonos[$i[5]] = array($linha); | |
911 | 942 | if($poligonos[$i[6]]) |
912 | - $poligonos[$i[6]] = array_merge(array($linha),$poligonos[$i[6]]); | |
943 | + $poligonos[$i[6]] = array_merge(array($linha),$poligonos[$i[6]]); | |
913 | 944 | else |
914 | - $poligonos[$i[6]] = array($linha); | |
945 | + $poligonos[$i[6]] = array($linha); | |
915 | 946 | $ShapeObj = ms_newShapeObj(MS_SHAPE_LINE); |
916 | 947 | $ShapeObj->add($linha); |
917 | 948 | $novoshpLinhas->addShape($ShapeObj); |
918 | 949 | $registro = array($i1,$i2,$i3,$i4,$i5,$i6,$i[7],$i[8]); |
919 | 950 | if($this->dbaseExiste == false) |
920 | - xbase_add_record($dbLinhas,$registro); | |
951 | + xbase_add_record($dbLinhas,$registro); | |
921 | 952 | else |
922 | - dbase_add_record($dbLinhas,$registro); | |
953 | + dbase_add_record($dbLinhas,$registro); | |
923 | 954 | } |
924 | 955 | } |
925 | 956 | // |
... | ... | @@ -929,19 +960,21 @@ $locaplic - diretório da aplica&ccedil;&atilde;o i3geo |
929 | 960 | { |
930 | 961 | $ShapeObjp = ms_newShapeObj(MS_SHAPE_LINE); |
931 | 962 | foreach ($p as $o) |
932 | - {$ShapeObjp->add($o);} | |
963 | + { | |
964 | + $ShapeObjp->add($o); | |
965 | + } | |
933 | 966 | $ns = $ShapeObjp->convexhull(); |
934 | 967 | $novoshpPoligonos->addShape($ns); |
935 | 968 | $registro = array($ns->getArea()); |
936 | 969 | if($this->dbaseExiste == false) |
937 | - xbase_add_record($dbPoligonos,$registro); | |
970 | + xbase_add_record($dbPoligonos,$registro); | |
938 | 971 | else |
939 | - dbase_add_record($dbPoligonos,$registro); | |
972 | + dbase_add_record($dbPoligonos,$registro); | |
940 | 973 | } |
941 | 974 | if($this->dbaseExiste == false) |
942 | - xbase_close($dbPoligonos); | |
975 | + xbase_close($dbPoligonos); | |
943 | 976 | else |
944 | - dbase_close($dbPoligonos); | |
977 | + dbase_close($dbPoligonos); | |
945 | 978 | // |
946 | 979 | //adiciona o layer com os polígonos no mapa |
947 | 980 | // |
... | ... | @@ -968,14 +1001,14 @@ $locaplic - diretório da aplica&ccedil;&atilde;o i3geo |
968 | 1001 | $novoshpLinhas->addShape($ShapeObj->convexhull()); |
969 | 1002 | $registro = array(0,0,0,0,0,0,0,0); |
970 | 1003 | if($this->dbaseExiste == false) |
971 | - xbase_add_record($dbLinhas,$registro); | |
1004 | + xbase_add_record($dbLinhas,$registro); | |
972 | 1005 | else |
973 | - dbase_add_record($dbLinhas,$registro); | |
1006 | + dbase_add_record($dbLinhas,$registro); | |
974 | 1007 | } |
975 | 1008 | if($this->dbaseExiste == false) |
976 | - xbase_close($dbLinhas); | |
1009 | + xbase_close($dbLinhas); | |
977 | 1010 | else |
978 | - dbase_close($dbLinhas); | |
1011 | + dbase_close($dbLinhas); | |
979 | 1012 | fclose($abre); |
980 | 1013 | $novolayer = criaLayer($this->mapa,MS_LAYER_LINE,MS_DEFAULT,("Voronoi (".$nomeLinhas.")"),$metaClasse="SIM"); |
981 | 1014 | $novolayer->set("data",$nomeshpLinhas.".shp"); |
... | ... | @@ -989,21 +1022,21 @@ $locaplic - diretório da aplica&ccedil;&atilde;o i3geo |
989 | 1022 | $cor->setrgb(255,210,0); |
990 | 1023 | } |
991 | 1024 | } |
992 | -/* | |
993 | -function: pontoEmPoligono | |
1025 | + /* | |
1026 | + function: pontoEmPoligono | |
994 | 1027 | |
995 | -Cruza um tema pontual com temas poligonais ou raster. | |
1028 | + Cruza um tema pontual com temas poligonais ou raster. | |
996 | 1029 | |
997 | -Salva o mapa acrescentando um novo layer com o resultado. | |
1030 | + Salva o mapa acrescentando um novo layer com o resultado. | |
998 | 1031 | |
999 | -parameters: | |
1032 | + parameters: | |
1000 | 1033 | |
1001 | -$temaPt - Tema de pontos que será utilizado. | |
1034 | + $temaPt - Tema de pontos que será utilizado. | |
1002 | 1035 | |
1003 | -$temaPo - Temas poligonais separados por virgula. | |
1036 | + $temaPo - Temas poligonais separados por virgula. | |
1004 | 1037 | |
1005 | -$locaplic - Localização do I3geo. | |
1006 | -*/ | |
1038 | + $locaplic - Localização do I3geo. | |
1039 | + */ | |
1007 | 1040 | function pontoEmPoligono($temaPt,$temasPo,$locaplic) |
1008 | 1041 | { |
1009 | 1042 | set_time_limit(3000); |
... | ... | @@ -1048,7 +1081,9 @@ $locaplic - Localiza&ccedil;&atilde;o do I3geo. |
1048 | 1081 | $layers[] = $layer; |
1049 | 1082 | |
1050 | 1083 | if(!$items) |
1051 | - {return "erro ao obter a lista de itens do tema $layer->name";} | |
1084 | + { | |
1085 | + return "erro ao obter a lista de itens do tema $layer->name"; | |
1086 | + } | |
1052 | 1087 | $listaItens[$layer->name] = $items; |
1053 | 1088 | foreach ($items as $ni) |
1054 | 1089 | { |
... | ... | @@ -1058,21 +1093,26 @@ $locaplic - Localiza&ccedil;&atilde;o do I3geo. |
1058 | 1093 | } |
1059 | 1094 | } |
1060 | 1095 | if($this->dbaseExiste == false) |
1061 | - {$db = xbase_create($nomeshp.".dbf", $def);xbase_close($db);} | |
1096 | + { | |
1097 | + $db = xbase_create($nomeshp.".dbf", $def);xbase_close($db); | |
1098 | + } | |
1062 | 1099 | else |
1063 | - {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db);} | |
1100 | + {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db); | |
1101 | + } | |
1064 | 1102 | //acrescenta os pontos no novo shapefile |
1065 | 1103 | $dbname = $nomeshp.".dbf"; |
1066 | 1104 | if($this->dbaseExiste == false) |
1067 | - $db=xbase_open($dbname,2); | |
1105 | + $db=xbase_open($dbname,2); | |
1068 | 1106 | else |
1069 | - $db=dbase_open($dbname,2); | |
1107 | + $db=dbase_open($dbname,2); | |
1070 | 1108 | // cria o shapefile |
1071 | 1109 | $novoshpf = ms_newShapefileObj($nomeshp, MS_SHP_POINT); |
1072 | 1110 | foreach($spts as $spt) |
1073 | 1111 | { |
1074 | 1112 | foreach ($itemspt as $ni) |
1075 | - {$reg[] = $this->truncaS($spt->values[$ni]);} | |
1113 | + { | |
1114 | + $reg[] = $this->truncaS($spt->values[$ni]); | |
1115 | + } | |
1076 | 1116 | $novoshpf->addShape($spt); |
1077 | 1117 | $lineo = $spt->line(0); |
1078 | 1118 | $pt = $lineo->point(0); |
... | ... | @@ -1087,11 +1127,15 @@ $locaplic - Localiza&ccedil;&atilde;o do I3geo. |
1087 | 1127 | if($ident == "MS_SUCCESS"){ |
1088 | 1128 | $itens = $listaItens[$layer->name]; |
1089 | 1129 | $sopen = $layer->open(); |
1090 | - if($sopen == MS_FAILURE){return "erro";} | |
1130 | + if($sopen == MS_FAILURE){ | |
1131 | + return "erro"; | |
1132 | + } | |
1091 | 1133 | if ($layer->getResult(0) !== FALSE) |
1092 | 1134 | { |
1093 | 1135 | if($this->v == 6) |
1094 | - {$shape = $layer->getShape($layer->getResult(0));} | |
1136 | + { | |
1137 | + $shape = $layer->getShape($layer->getResult(0)); | |
1138 | + } | |
1095 | 1139 | else{ |
1096 | 1140 | $result = $layer->getResult(0); |
1097 | 1141 | $shp_index = $result->shapeindex; |
... | ... | @@ -1101,33 +1145,39 @@ $locaplic - Localiza&ccedil;&atilde;o do I3geo. |
1101 | 1145 | { |
1102 | 1146 | $p = $this->truncaS($shape->values[$item]); |
1103 | 1147 | if(empty($p)) |
1104 | - {$p = "-";} | |
1148 | + { | |
1149 | + $p = "-"; | |
1150 | + } | |
1105 | 1151 | $reg[] = $p; |
1106 | 1152 | } |
1107 | 1153 | } |
1108 | 1154 | else |
1109 | 1155 | { |
1110 | 1156 | foreach ($itens as $item) |
1111 | - {$reg[] = "???";} | |
1157 | + { | |
1158 | + $reg[] = "???"; | |
1159 | + } | |
1112 | 1160 | } |
1113 | 1161 | } |
1114 | 1162 | else |
1115 | 1163 | { |
1116 | 1164 | foreach ($itens as $item) |
1117 | - {$reg[] = "???";} | |
1165 | + { | |
1166 | + $reg[] = "???"; | |
1167 | + } | |
1118 | 1168 | } |
1119 | 1169 | $layer->close(); |
1120 | 1170 | } |
1121 | 1171 | if($this->dbaseExiste == false) |
1122 | - xbase_add_record($db,$reg); | |
1172 | + xbase_add_record($db,$reg); | |
1123 | 1173 | else |
1124 | - dbase_add_record($db,$reg); | |
1174 | + dbase_add_record($db,$reg); | |
1125 | 1175 | $reg = array(); |
1126 | 1176 | } |
1127 | 1177 | if($this->dbaseExiste == false) |
1128 | - xbase_close($db); | |
1178 | + xbase_close($db); | |
1129 | 1179 | else |
1130 | - dbase_close($db); | |
1180 | + dbase_close($db); | |
1131 | 1181 | $novolayer = ms_newLayerObj($this->mapa, $layerPt); |
1132 | 1182 | $novolayer->set("data",$nomeshp.".shp"); |
1133 | 1183 | $novolayer->set("name",$nomefinal); |
... | ... | @@ -1136,184 +1186,216 @@ $locaplic - Localiza&ccedil;&atilde;o do I3geo. |
1136 | 1186 | $novolayer->setmetadata("DOWNLOAD","SIM"); |
1137 | 1187 | $novolayer->setmetadata("ITENS",""); |
1138 | 1188 | $novolayer->setmetadata("ITENSDESC",""); |
1189 | + $novolayer->setmetadata("CACHE",""); | |
1139 | 1190 | if(ms_GetVersionInt() > 50201) |
1140 | - {$novolayer->setconnectiontype(MS_SHAPEFILE);} | |
1191 | + { | |
1192 | + $novolayer->setconnectiontype(MS_SHAPEFILE); | |
1193 | + } | |
1141 | 1194 | else |
1142 | - {$novolayer->set("connectiontype",MS_SHAPEFILE);} | |
1195 | + {$novolayer->set("connectiontype",MS_SHAPEFILE); | |
1196 | + } | |
1143 | 1197 | if (file_exists($this->qyfile)) |
1144 | - {unlink ($this->qyfile);} | |
1198 | + { | |
1199 | + unlink ($this->qyfile); | |
1200 | + } | |
1145 | 1201 | return(implode(" ",$nomesitens)); |
1146 | 1202 | } |
1147 | -/* | |
1148 | -function: distanciaptpt | |
1203 | + /* | |
1204 | + function: distanciaptpt | |
1149 | 1205 | |
1150 | -Calcula a distancia entre um ponto de origem e os pontos em um tema. | |
1206 | + Calcula a distancia entre um ponto de origem e os pontos em um tema. | |
1151 | 1207 | |
1152 | -São considerados apenas os pontos dentro de um tema de overlay. | |
1208 | + São considerados apenas os pontos dentro de um tema de overlay. | |
1153 | 1209 | |
1154 | -parameters: | |
1210 | + parameters: | |
1155 | 1211 | |
1156 | -temaorigem - nome do layer com o ponto de origem | |
1212 | + temaorigem - nome do layer com o ponto de origem | |
1157 | 1213 | |
1158 | -temadestino - nome do tema com os pontos de destino | |
1214 | + temadestino - nome do tema com os pontos de destino | |
1159 | 1215 | |
1160 | -temaoverlay - tema que será utilizado para selecionar o tema de destino | |
1216 | + temaoverlay - tema que será utilizado para selecionar o tema de destino | |
1161 | 1217 | |
1162 | -locapli - endereço da aplicação i3geo | |
1218 | + locapli - endereço da aplicação i3geo | |
1163 | 1219 | |
1164 | -itemorigem - nome do item na tabela de atributos do tema de origem que será acrescentado ao tema que será criado | |
1220 | + itemorigem - nome do item na tabela de atributos do tema de origem que será acrescentado ao tema que será criado | |
1165 | 1221 | |
1166 | -itemdestino - nome do item na tabela de atributos do tema de origem que será acrescentado ao tema que será criado | |
1222 | + itemdestino - nome do item na tabela de atributos do tema de origem que será acrescentado ao tema que será criado | |
1167 | 1223 | |
1168 | -*/ | |
1169 | -function distanciaptpt($temaorigem,$temadestino,$temaoverlay,$locaplic,$itemorigem="",$itemdestino="") | |
1170 | -{ | |
1171 | - //error_reporting(0); | |
1172 | - set_time_limit(180); | |
1173 | - //para manipular dbf | |
1174 | - if($this->dbaseExiste == false){ | |
1175 | - include_once dirname(__FILE__)."/../pacotes/phpxbase/api_conversion.php"; | |
1176 | - } | |
1177 | - //define o nome do novo shapefile que será criado | |
1178 | - $nomefinal = nomeRandomico(); | |
1179 | - $nomeshp = $this->diretorio."/".$nomefinal; | |
1224 | + */ | |
1225 | + function distanciaptpt($temaorigem,$temadestino,$temaoverlay,$locaplic,$itemorigem="",$itemdestino="") | |
1226 | + { | |
1227 | + //error_reporting(0); | |
1228 | + set_time_limit(180); | |
1229 | + //para manipular dbf | |
1230 | + if($this->dbaseExiste == false){ | |
1231 | + include_once dirname(__FILE__)."/../pacotes/phpxbase/api_conversion.php"; | |
1232 | + } | |
1233 | + //define o nome do novo shapefile que será criado | |
1234 | + $nomefinal = nomeRandomico(); | |
1235 | + $nomeshp = $this->diretorio."/".$nomefinal; | |
1180 | 1236 | |
1181 | - $existesel = carregaquery2($this->arquivo,$this->layer,$this->mapa); | |
1182 | - if ($existesel == "nao") | |
1183 | - {return "errox";} | |
1237 | + $existesel = carregaquery2($this->arquivo,$this->layer,$this->mapa); | |
1238 | + if ($existesel == "nao") | |
1239 | + { | |
1240 | + return "errox"; | |
1241 | + } | |
1184 | 1242 | |
1185 | - $layerorigem = $this->mapa->getlayerbyname($temaorigem); | |
1186 | - $layerdestino = $this->mapa->getlayerbyname($temadestino); | |
1187 | - $layeroverlay = $this->mapa->getlayerbyname($temaoverlay); | |
1243 | + $layerorigem = $this->mapa->getlayerbyname($temaorigem); | |
1244 | + $layerdestino = $this->mapa->getlayerbyname($temadestino); | |
1245 | + $layeroverlay = $this->mapa->getlayerbyname($temaoverlay); | |
1188 | 1246 | |
1189 | - $shapesorigem = retornaShapesSelecionados($layerorigem,$this->arquivo,$this->mapa); | |
1190 | - if(count($shapesorigem) == 0){ | |
1191 | - return "erro"; | |
1192 | - } | |
1193 | - $layeroverlay->set("tolerance",0); | |
1194 | - $layerdestino->set("tolerance",0); | |
1195 | - $layeroverlay->queryByrect($this->mapa->extent); | |
1196 | - $layerdestino->queryByFeatures($layeroverlay->index); | |
1247 | + $shapesorigem = retornaShapesSelecionados($layerorigem,$this->arquivo,$this->mapa); | |
1248 | + if(count($shapesorigem) == 0){ | |
1249 | + return "erro"; | |
1250 | + } | |
1251 | + $layeroverlay->set("tolerance",0); | |
1252 | + $layerdestino->set("tolerance",0); | |
1253 | + $layeroverlay->queryByrect($this->mapa->extent); | |
1254 | + $layerdestino->queryByFeatures($layeroverlay->index); | |
1197 | 1255 | |
1198 | - $sopen = $layerdestino->open(); | |
1199 | - if($sopen == MS_FAILURE){return "erro";} | |
1200 | - $res_count = $layerdestino->getNumresults(); | |
1256 | + $sopen = $layerdestino->open(); | |
1257 | + if($sopen == MS_FAILURE){ | |
1258 | + return "erro"; | |
1259 | + } | |
1260 | + $res_count = $layerdestino->getNumresults(); | |
1201 | 1261 | |
1202 | - for ($i = 0; $i < $res_count; ++$i) | |
1203 | - { | |
1204 | - if($this->v == 6) | |
1205 | - {$shapesdestino[] = $layerdestino->getShape($layerdestino->getResult($i));} | |
1206 | - else{ | |
1207 | - $result = $layerdestino->getResult($i); | |
1208 | - $shp_index = $result->shapeindex; | |
1209 | - $shapesdestino[] = $layerdestino->getshape(-1, $shp_index); | |
1262 | + for ($i = 0; $i < $res_count; ++$i) | |
1263 | + { | |
1264 | + if($this->v == 6) | |
1265 | + { | |
1266 | + $shapesdestino[] = $layerdestino->getShape($layerdestino->getResult($i)); | |
1267 | + } | |
1268 | + else{ | |
1269 | + $result = $layerdestino->getResult($i); | |
1270 | + $shp_index = $result->shapeindex; | |
1271 | + $shapesdestino[] = $layerdestino->getshape(-1, $shp_index); | |
1272 | + } | |
1273 | + } | |
1274 | + $layerdestino->close(); | |
1275 | + $rect = $this->mapa->extent; | |
1276 | + $projInObj = $layerorigem->getProjection(); | |
1277 | + if ($projInObj == "") | |
1278 | + { | |
1279 | + $projInObj = ms_newprojectionobj("proj=latlong"); | |
1280 | + } | |
1281 | + $projOutObj = ms_newprojectionobj("proj=poly,ellps=GRS67,lat_0=".$rect->miny.",lon_0=".$rect->minx.",x_0=5000000,y_0=10000000"); | |
1282 | + $origemdestino = array(); | |
1283 | + if (count($shapesorigem)==0){ | |
1284 | + return "erro"; | |
1285 | + } | |
1286 | + if (count($shapesdestino)==0){ | |
1287 | + return "erro"; | |
1288 | + } | |
1289 | + $novoshpf = ms_newShapefileObj($nomeshp, MS_SHP_ARC); | |
1290 | + // cria o dbf | |
1291 | + $def[] = array("dist_m","N","10","2"); | |
1292 | + $def[] = array("origem","C","255"); | |
1293 | + $def[] = array("destino","C","255"); | |
1294 | + if($this->dbaseExiste == false) | |
1295 | + { | |
1296 | + $db = xbase_create($nomeshp.".dbf", $def);xbase_close($db); | |
1210 | 1297 | } |
1211 | - } | |
1212 | - $layerdestino->close(); | |
1213 | - $rect = $this->mapa->extent; | |
1214 | - $projInObj = $layerorigem->getProjection(); | |
1215 | - if ($projInObj == "") | |
1216 | - {$projInObj = ms_newprojectionobj("proj=latlong");} | |
1217 | - $projOutObj = ms_newprojectionobj("proj=poly,ellps=GRS67,lat_0=".$rect->miny.",lon_0=".$rect->minx.",x_0=5000000,y_0=10000000"); | |
1218 | - $origemdestino = array(); | |
1219 | - if (count($shapesorigem)==0){return "erro";} | |
1220 | - if (count($shapesdestino)==0){return "erro";} | |
1221 | - $novoshpf = ms_newShapefileObj($nomeshp, MS_SHP_ARC); | |
1222 | - // cria o dbf | |
1223 | - $def[] = array("dist_m","N","10","2"); | |
1224 | - $def[] = array("origem","C","255"); | |
1225 | - $def[] = array("destino","C","255"); | |
1226 | - if($this->dbaseExiste == false) | |
1227 | - {$db = xbase_create($nomeshp.".dbf", $def);xbase_close($db);} | |
1228 | - else | |
1229 | - {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db);} | |
1230 | - //acrescenta os pontos no novo shapefile | |
1231 | - $dbname = $nomeshp.".dbf"; | |
1232 | - if($this->dbaseExiste == false) | |
1233 | - $db=xbase_open($dbname,2); | |
1234 | - else | |
1235 | - $db=dbase_open($dbname,2); | |
1236 | - foreach ($shapesorigem as $sorigem) | |
1237 | - { | |
1238 | - if($itemorigem != "") | |
1239 | - {$valororigem = $sorigem->values[$itemorigem];} | |
1240 | 1298 | else |
1241 | - {$valororigem = "";} | |
1242 | - foreach ($shapesdestino as $sdestino) | |
1243 | - { | |
1244 | - $linha = ms_newLineObj(); | |
1245 | - $linha->add($sorigem->getCentroid()); | |
1246 | - $linha->add($sdestino->getCentroid()); | |
1247 | - if($itemdestino != "") | |
1248 | - {$valordestino = $sdestino->values[$itemdestino];} | |
1249 | - else | |
1250 | - {$valordestino = "";} | |
1251 | - $ShapeObj = ms_newShapeObj(MS_SHAPE_LINE); | |
1252 | - $ShapeObj->add($linha); | |
1253 | - $novoshpf->addShape($ShapeObj); | |
1254 | - $ShapeObj->project($projInObj, $projOutObj); | |
1255 | - $distancia = $ShapeObj->getLength(); | |
1256 | - $registro = array($distancia,$valororigem,$valordestino); | |
1257 | - if($this->dbaseExiste == false) | |
1258 | - xbase_add_record($db,$registro); | |
1299 | + {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db); | |
1300 | + } | |
1301 | + //acrescenta os pontos no novo shapefile | |
1302 | + $dbname = $nomeshp.".dbf"; | |
1303 | + if($this->dbaseExiste == false) | |
1304 | + $db=xbase_open($dbname,2); | |
1305 | + else | |
1306 | + $db=dbase_open($dbname,2); | |
1307 | + foreach ($shapesorigem as $sorigem) | |
1308 | + { | |
1309 | + if($itemorigem != "") | |
1310 | + { | |
1311 | + $valororigem = $sorigem->values[$itemorigem]; | |
1312 | + } | |
1259 | 1313 | else |
1260 | - dbase_add_record($db,$registro); | |
1314 | + {$valororigem = ""; | |
1315 | + } | |
1316 | + foreach ($shapesdestino as $sdestino) | |
1317 | + { | |
1318 | + $linha = ms_newLineObj(); | |
1319 | + $linha->add($sorigem->getCentroid()); | |
1320 | + $linha->add($sdestino->getCentroid()); | |
1321 | + if($itemdestino != "") | |
1322 | + { | |
1323 | + $valordestino = $sdestino->values[$itemdestino]; | |
1324 | + } | |
1325 | + else | |
1326 | + {$valordestino = ""; | |
1327 | + } | |
1328 | + $ShapeObj = ms_newShapeObj(MS_SHAPE_LINE); | |
1329 | + $ShapeObj->add($linha); | |
1330 | + $novoshpf->addShape($ShapeObj); | |
1331 | + $ShapeObj->project($projInObj, $projOutObj); | |
1332 | + $distancia = $ShapeObj->getLength(); | |
1333 | + $registro = array($distancia,$valororigem,$valordestino); | |
1334 | + if($this->dbaseExiste == false) | |
1335 | + xbase_add_record($db,$registro); | |
1336 | + else | |
1337 | + dbase_add_record($db,$registro); | |
1338 | + } | |
1339 | + } | |
1340 | + if($this->dbaseExiste == false) | |
1341 | + xbase_close($db); | |
1342 | + else | |
1343 | + dbase_close($db); | |
1344 | + //adiciona no mapa atual o novo tema | |
1345 | + $novolayer = criaLayer($this->mapa,MS_LAYER_LINE,MS_DEFAULT,("Distancias (".$nomefinal.")"),$metaClasse="SIM"); | |
1346 | + $novolayer->set("data",$nomeshp.".shp"); | |
1347 | + $novolayer->setmetadata("DOWNLOAD","SIM"); | |
1348 | + $novolayer->set("template","none.htm"); | |
1349 | + $classe = $novolayer->getclass(0); | |
1350 | + $estilo = $classe->getstyle(0); | |
1351 | + $estilo->set("symbolname","linha"); | |
1352 | + $estilo->set("size",4); | |
1353 | + $cor = $estilo->color; | |
1354 | + $cor->setrgb(255,210,0); | |
1355 | + //limpa selecao | |
1356 | + if (file_exists($this->qyfile)) | |
1357 | + { | |
1358 | + unlink ($this->qyfile); | |
1261 | 1359 | } |
1360 | + return($nomeshp.".shp"); | |
1262 | 1361 | } |
1263 | - if($this->dbaseExiste == false) | |
1264 | - xbase_close($db); | |
1265 | - else | |
1266 | - dbase_close($db); | |
1267 | - //adiciona no mapa atual o novo tema | |
1268 | - $novolayer = criaLayer($this->mapa,MS_LAYER_LINE,MS_DEFAULT,("Distancias (".$nomefinal.")"),$metaClasse="SIM"); | |
1269 | - $novolayer->set("data",$nomeshp.".shp"); | |
1270 | - $novolayer->setmetadata("DOWNLOAD","SIM"); | |
1271 | - $novolayer->set("template","none.htm"); | |
1272 | - $classe = $novolayer->getclass(0); | |
1273 | - $estilo = $classe->getstyle(0); | |
1274 | - $estilo->set("symbolname","linha"); | |
1275 | - $estilo->set("size",4); | |
1276 | - $cor = $estilo->color; | |
1277 | - $cor->setrgb(255,210,0); | |
1278 | - //limpa selecao | |
1279 | - if (file_exists($this->qyfile)) | |
1280 | - {unlink ($this->qyfile);} | |
1281 | - return($nomeshp.".shp"); | |
1282 | -} | |
1283 | -/* | |
1284 | -Function: criaBuffer | |
1362 | + /* | |
1363 | + Function: criaBuffer | |
1285 | 1364 | |
1286 | -Gera entorno (buffer) nos elementos selecionados de um tema. | |
1365 | + Gera entorno (buffer) nos elementos selecionados de um tema. | |
1287 | 1366 | |
1288 | -Salva o mapa acrescentando um novo layer com o buffer. | |
1367 | + Salva o mapa acrescentando um novo layer com o buffer. | |
1289 | 1368 | |
1290 | -Parametros: | |
1369 | + Parametros: | |
1291 | 1370 | |
1292 | -$distancia - Distância em metros. | |
1371 | + $distancia - Distância em metros. | |
1293 | 1372 | |
1294 | -$locaplic - Localização do I3geo. | |
1373 | + $locaplic - Localização do I3geo. | |
1295 | 1374 | |
1296 | -$unir - sim|nao indica se os elementos selecionados deverão ser unidos em um só antes do buffer ser criado | |
1375 | + $unir - sim|nao indica se os elementos selecionados deverão ser unidos em um s� antes do buffer ser criado | |
1297 | 1376 | |
1298 | -$wkt - (opcional) elemento no formato wkt para o qual o buffer será gerado. Só de ve ser definido se $this->nome for vazio, ou seja | |
1299 | -se o parâmetro "tema" não tiver sido fornecido ao construtor da classe | |
1377 | + $wkt - (opcional) elemento no formato wkt para o qual o buffer será gerado. S� de ve ser definido se $this->nome for vazio, ou seja | |
1378 | + se o parâmetro "tema" não tiver sido fornecido ao construtor da classe | |
1300 | 1379 | |
1301 | -$multiplicar - (opcional) multiplicar os valores por | |
1380 | + $multiplicar - (opcional) multiplicar os valores por | |
1302 | 1381 | |
1303 | -$itemdistancia - (opcional) coluna com os valores | |
1382 | + $itemdistancia - (opcional) coluna com os valores | |
1304 | 1383 | |
1305 | -return: | |
1384 | + return: | |
1306 | 1385 | |
1307 | -nome do layer criado com o buffer. | |
1308 | -*/ | |
1386 | + nome do layer criado com o buffer. | |
1387 | + */ | |
1309 | 1388 | function criaBuffer($distancia,$locaplic,$unir="nao",$wkt="",$multiplicar=1,$itemdistancia="") |
1310 | 1389 | { |
1311 | 1390 | set_time_limit(180); |
1312 | 1391 | error_reporting(0); |
1313 | 1392 | if($this->nome != "") |
1314 | - {$items = pegaItens($this->layer);} | |
1393 | + { | |
1394 | + $items = pegaItens($this->layer); | |
1395 | + } | |
1315 | 1396 | else |
1316 | - {$items = array();} | |
1397 | + {$items = array(); | |
1398 | + } | |
1317 | 1399 | //para manipular dbf |
1318 | 1400 | if($this->dbaseExiste == false){ |
1319 | 1401 | include_once dirname(__FILE__)."/../pacotes/phpxbase/api_conversion.php"; |
... | ... | @@ -1348,7 +1430,9 @@ nome do layer criado com o buffer. |
1348 | 1430 | $dd2->setXY(($poPoint->x) + ($distancia * $multiplicar), $poPoint->y); |
1349 | 1431 | $dd2->project($projOutObj,$projInObj); |
1350 | 1432 | $d = $dd1->distanceToPoint($dd2); |
1351 | - if ($distancia < 0){$d = $d * -1;} | |
1433 | + if ($distancia < 0){ | |
1434 | + $d = $d * -1; | |
1435 | + } | |
1352 | 1436 | //calcula a distancia 29100 |
1353 | 1437 | //gera o buffer |
1354 | 1438 | $buffers[] = $shape->buffer($d); |
... | ... | @@ -1359,7 +1443,9 @@ nome do layer criado com o buffer. |
1359 | 1443 | if($unir == "sim"){ |
1360 | 1444 | $ns = $buffers[0]; |
1361 | 1445 | for($s=1;$s < count($buffers);$s++) |
1362 | - {$ns = $ns->union($buffers[$s]);} | |
1446 | + { | |
1447 | + $ns = $ns->union($buffers[$s]); | |
1448 | + } | |
1363 | 1449 | $buffers = array($ns); |
1364 | 1450 | $shapes = array($shapes[0]); |
1365 | 1451 | } |
... | ... | @@ -1370,31 +1456,36 @@ nome do layer criado com o buffer. |
1370 | 1456 | $def = $this->criaDefDb($items); |
1371 | 1457 | $def[] = array("i3geo","C","254"); |
1372 | 1458 | if($this->dbaseExiste == false) |
1373 | - {$db = xbase_create($nomeshp.".dbf", $def);xbase_close($db);} | |
1459 | + { | |
1460 | + $db = xbase_create($nomeshp.".dbf", $def);xbase_close($db); | |
1461 | + } | |
1374 | 1462 | else |
1375 | - {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db);} | |
1463 | + {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db); | |
1464 | + } | |
1376 | 1465 | //acrescenta os pontos no novo shapefile |
1377 | 1466 | $dbname = $nomeshp.".dbf"; |
1378 | 1467 | if($this->dbaseExiste == false) |
1379 | - $db=xbase_open($dbname,2); | |
1468 | + $db=xbase_open($dbname,2); | |
1380 | 1469 | else |
1381 | - $db=dbase_open($dbname,2); | |
1470 | + $db=dbase_open($dbname,2); | |
1382 | 1471 | for($i = 0;$i < count($buffers);++$i) |
1383 | 1472 | { |
1384 | 1473 | foreach ($items as $ni) |
1385 | - {$reg[] = $this->truncaS($shapes[$i]->values[$ni]);} | |
1474 | + { | |
1475 | + $reg[] = $this->truncaS($shapes[$i]->values[$ni]); | |
1476 | + } | |
1386 | 1477 | $reg[] = $i; |
1387 | 1478 | $novoshpf->addShape($buffers[$i]); |
1388 | 1479 | if($this->dbaseExiste == false) |
1389 | - xbase_add_record($db,$reg); | |
1480 | + xbase_add_record($db,$reg); | |
1390 | 1481 | else |
1391 | - dbase_add_record($db,$reg); | |
1482 | + dbase_add_record($db,$reg); | |
1392 | 1483 | $reg = array(); |
1393 | 1484 | } |
1394 | 1485 | if($this->dbaseExiste == false) |
1395 | - xbase_close($db); | |
1486 | + xbase_close($db); | |
1396 | 1487 | else |
1397 | - dbase_close($db); | |
1488 | + dbase_close($db); | |
1398 | 1489 | //adiciona no mapa atual o novo tema |
1399 | 1490 | $novolayer = criaLayer($this->mapa,MS_LAYER_POLYGON,MS_DEFAULT,("Buffer (".$nomebuffer.")"),$metaClasse="SIM",false); |
1400 | 1491 | $novolayer->set("data",$nomeshp.".shp"); |
... | ... | @@ -1410,20 +1501,22 @@ nome do layer criado com o buffer. |
1410 | 1501 | $coro->setrgb(255,0,0); |
1411 | 1502 | return($novolayer->name); |
1412 | 1503 | } |
1413 | -/* | |
1414 | -function: centroMassa | |
1504 | + /* | |
1505 | + function: centroMassa | |
1415 | 1506 | |
1416 | -Calcula o centro médio. | |
1507 | + Calcula o centro médio. | |
1417 | 1508 | |
1418 | -Se "item" for diferente de vazio, calcula o centro médio ponderado baseado no item | |
1509 | + Se "item" for diferente de vazio, calcula o centro médio ponderado baseado no item | |
1419 | 1510 | |
1420 | -Parametros: | |
1511 | + Parametros: | |
1421 | 1512 | |
1422 | -$item {string} - (opcional) Item q será utilizado para ponderar os valores. | |
1423 | -*/ | |
1513 | + $item {string} - (opcional) Item q será utilizado para ponderar os valores. | |
1514 | + */ | |
1424 | 1515 | function centroMassa($item="") |
1425 | 1516 | { |
1426 | - if(!$this->layer){return "erro";} | |
1517 | + if(!$this->layer){ | |
1518 | + return "erro"; | |
1519 | + } | |
1427 | 1520 | set_time_limit(180); |
1428 | 1521 | //para manipular dbf |
1429 | 1522 | if($this->dbaseExiste == false){ |
... | ... | @@ -1442,7 +1535,9 @@ $item {string} - (opcional) Item q ser&aacute; utilizado para ponderar os valore |
1442 | 1535 | $ys = 0; |
1443 | 1536 | foreach($lshapes as $shape){ |
1444 | 1537 | if($item != "") |
1445 | - {$pondera = $shape->values[$item];} | |
1538 | + { | |
1539 | + $pondera = $shape->values[$item]; | |
1540 | + } | |
1446 | 1541 | $pt = $shape->line(0)->point(0); |
1447 | 1542 | $xs += ($pt->x * $pondera); |
1448 | 1543 | $ys += ($pt->y * $pondera); |
... | ... | @@ -1453,15 +1548,18 @@ $item {string} - (opcional) Item q ser&aacute; utilizado para ponderar os valore |
1453 | 1548 | // cria o dbf |
1454 | 1549 | $def[] = array("id","C","254"); |
1455 | 1550 | if($this->dbaseExiste == false) |
1456 | - {$db = xbase_create($nomeshp.".dbf", $def);xbase_close($db);} | |
1551 | + { | |
1552 | + $db = xbase_create($nomeshp.".dbf", $def);xbase_close($db); | |
1553 | + } | |
1457 | 1554 | else |
1458 | - {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db);} | |
1555 | + {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db); | |
1556 | + } | |
1459 | 1557 | //acrescenta os pontos no novo shapefile |
1460 | 1558 | $dbname = $nomeshp.".dbf"; |
1461 | 1559 | if($this->dbaseExiste == false) |
1462 | - $db=xbase_open($dbname,2); | |
1560 | + $db=xbase_open($dbname,2); | |
1463 | 1561 | else |
1464 | - $db=dbase_open($dbname,2); | |
1562 | + $db=dbase_open($dbname,2); | |
1465 | 1563 | $reg[] = ""; |
1466 | 1564 | $res_count = count($lshapes); |
1467 | 1565 | $shp = ms_newShapeObj(MS_SHP_POINT); |
... | ... | @@ -1471,15 +1569,15 @@ $item {string} - (opcional) Item q ser&aacute; utilizado para ponderar os valore |
1471 | 1569 | |
1472 | 1570 | $novoshpf->addShape($shp); |
1473 | 1571 | if($this->dbaseExiste == false) |
1474 | - xbase_add_record($db,$reg); | |
1572 | + xbase_add_record($db,$reg); | |
1475 | 1573 | else |
1476 | - dbase_add_record($db,$reg); | |
1574 | + dbase_add_record($db,$reg); | |
1477 | 1575 | if($this->dbaseExiste == false) |
1478 | - xbase_close($db); | |
1576 | + xbase_close($db); | |
1479 | 1577 | else |
1480 | - dbase_close($db); | |
1578 | + dbase_close($db); | |
1481 | 1579 | //adiciona no mapa atual o novo tema |
1482 | - $novolayer = criaLayer($this->mapa,MS_LAYER_POINT,MS_DEFAULT,("Centróide (".$nomeCentro.")"),$metaClasse="SIM"); | |
1580 | + $novolayer = criaLayer($this->mapa,MS_LAYER_POINT,MS_DEFAULT,("Centr�ide (".$nomeCentro.")"),$metaClasse="SIM"); | |
1483 | 1581 | $novolayer->set("data",$nomeshp.".shp"); |
1484 | 1582 | $novolayer->setmetadata("DOWNLOAD","SIM"); |
1485 | 1583 | $novolayer->set("template","none.htm"); |
... | ... | @@ -1489,23 +1587,27 @@ $item {string} - (opcional) Item q ser&aacute; utilizado para ponderar os valore |
1489 | 1587 | $estilo->set("size","14"); |
1490 | 1588 | //limpa selecao |
1491 | 1589 | if (file_exists($this->qyfile)) |
1492 | - {unlink ($this->qyfile);} | |
1590 | + { | |
1591 | + unlink ($this->qyfile); | |
1592 | + } | |
1493 | 1593 | return("ok"); |
1494 | 1594 | } |
1495 | -/* | |
1496 | -function: criaCentroide | |
1595 | + /* | |
1596 | + function: criaCentroide | |
1497 | 1597 | |
1498 | -Gera centroide dos elementos selecionados de um tema. | |
1598 | + Gera centroide dos elementos selecionados de um tema. | |
1499 | 1599 | |
1500 | -Salva o mapa acrescentando um novo layer com os pontos. | |
1600 | + Salva o mapa acrescentando um novo layer com os pontos. | |
1501 | 1601 | |
1502 | -Parametros: | |
1602 | + Parametros: | |
1503 | 1603 | |
1504 | -$locaplic - Localização do I3geo. | |
1505 | -*/ | |
1604 | + $locaplic - Localização do I3geo. | |
1605 | + */ | |
1506 | 1606 | function criaCentroide($locaplic) |
1507 | 1607 | { |
1508 | - if(!$this->layer){return "erro";} | |
1608 | + if(!$this->layer){ | |
1609 | + return "erro"; | |
1610 | + } | |
1509 | 1611 | $items = pegaItens($this->layer); |
1510 | 1612 | set_time_limit(180); |
1511 | 1613 | //para manipular dbf |
... | ... | @@ -1528,63 +1630,70 @@ $locaplic - Localiza&ccedil;&atilde;o do I3geo. |
1528 | 1630 | // cria o dbf |
1529 | 1631 | $def = $this->criaDefDb($items); |
1530 | 1632 | if($this->dbaseExiste == false) |
1531 | - {$db = xbase_create($nomeshp.".dbf", $def);xbase_close($db);} | |
1633 | + { | |
1634 | + $db = xbase_create($nomeshp.".dbf", $def);xbase_close($db); | |
1635 | + } | |
1532 | 1636 | else |
1533 | - {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db);} | |
1637 | + {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db); | |
1638 | + } | |
1534 | 1639 | //acrescenta os pontos no novo shapefile |
1535 | 1640 | $dbname = $nomeshp.".dbf"; |
1536 | 1641 | if($this->dbaseExiste == false) |
1537 | - $db=xbase_open($dbname,2); | |
1642 | + $db=xbase_open($dbname,2); | |
1538 | 1643 | else |
1539 | - $db=dbase_open($dbname,2); | |
1644 | + $db=dbase_open($dbname,2); | |
1540 | 1645 | for($i = 0;$i < count($centroides);++$i) |
1541 | 1646 | { |
1542 | 1647 | foreach ($items as $ni) |
1543 | - {$reg[] = $this->truncaS($shapes[$i]->values[$ni]);} | |
1648 | + { | |
1649 | + $reg[] = $this->truncaS($shapes[$i]->values[$ni]); | |
1650 | + } | |
1544 | 1651 | $novoshpf->addShape($centroides[$i]); |
1545 | 1652 | if($this->dbaseExiste == false) |
1546 | - xbase_add_record($db,$reg); | |
1653 | + xbase_add_record($db,$reg); | |
1547 | 1654 | else |
1548 | - dbase_add_record($db,$reg); | |
1655 | + dbase_add_record($db,$reg); | |
1549 | 1656 | $reg = array(); |
1550 | 1657 | } |
1551 | 1658 | if($this->dbaseExiste == false) |
1552 | - xbase_close($db); | |
1659 | + xbase_close($db); | |
1553 | 1660 | else |
1554 | - dbase_close($db); | |
1661 | + dbase_close($db); | |
1555 | 1662 | //adiciona no mapa atual o novo tema |
1556 | - $novolayer = criaLayer($this->mapa,MS_LAYER_POINT,MS_DEFAULT,("Centróide (".$nomeCentroides.")"),$metaClasse="SIM"); | |
1663 | + $novolayer = criaLayer($this->mapa,MS_LAYER_POINT,MS_DEFAULT,("Centr�ide (".$nomeCentroides.")"),$metaClasse="SIM"); | |
1557 | 1664 | $novolayer->set("data",$nomeshp.".shp"); |
1558 | 1665 | $novolayer->setmetadata("DOWNLOAD","SIM"); |
1559 | 1666 | $novolayer->set("template","none.htm"); |
1560 | 1667 | $novolayer->setmetadata("TEMALOCAL","SIM"); |
1561 | 1668 | //limpa selecao |
1562 | 1669 | if (file_exists($this->qyfile)) |
1563 | - {unlink ($this->qyfile);} | |
1670 | + { | |
1671 | + unlink ($this->qyfile); | |
1672 | + } | |
1564 | 1673 | return("ok"); |
1565 | 1674 | } |
1566 | 1675 | |
1567 | -/* | |
1568 | -function: gradeDePontos | |
1676 | + /* | |
1677 | + function: gradeDePontos | |
1569 | 1678 | |
1570 | -Gera uma grade de pontos com espaçamento regular definido em décimos de grau. | |
1679 | + Gera uma grade de pontos com espaçamento regular definido em décimos de grau. | |
1571 | 1680 | |
1572 | -Salva o mapa acrescentando um novo layer com a grade de coordenadas. | |
1681 | + Salva o mapa acrescentando um novo layer com a grade de coordenadas. | |
1573 | 1682 | |
1574 | -$ddx - Espaçamento em x. | |
1683 | + $ddx - Espaçamento em x. | |
1575 | 1684 | |
1576 | -$ddy - Espaçamento em y. | |
1685 | + $ddy - Espaçamento em y. | |
1577 | 1686 | |
1578 | -$px - X do primeiro ponto (superior esquerdo) | |
1687 | + $px - X do primeiro ponto (superior esquerdo) | |
1579 | 1688 | |
1580 | -$py - Y do primeiro ponto. | |
1689 | + $py - Y do primeiro ponto. | |
1581 | 1690 | |
1582 | -$locaplic - Endereço da aplicação. | |
1691 | + $locaplic - Endereço da aplicação. | |
1583 | 1692 | |
1584 | -$nptx - Número de pontos em X (opcional) | |
1693 | + $nptx - Número de pontos em X (opcional) | |
1585 | 1694 | |
1586 | -$npty - Número de pontos em Y (opcional) | |
1587 | -*/ | |
1695 | + $npty - Número de pontos em Y (opcional) | |
1696 | + */ | |
1588 | 1697 | function gradeDePontos($xdd,$ydd,$px,$py,$locaplic,$nptx,$npty,$proj=false) |
1589 | 1698 | { |
1590 | 1699 | set_time_limit(180); |
... | ... | @@ -1619,27 +1728,38 @@ $npty - N&uacute;mero de pontos em Y (opcional) |
1619 | 1728 | //calcula a distância entre os pontos em dd |
1620 | 1729 | $distx = $fx - $px; |
1621 | 1730 | $disty = $fy - $py; |
1622 | - if ($distx < 0){$distx = $distx * -1;} | |
1623 | - if ($disty < 0){$disty = $disty * -1;} | |
1731 | + if ($distx < 0){ | |
1732 | + $distx = $distx * -1; | |
1733 | + } | |
1734 | + if ($disty < 0){ | |
1735 | + $disty = $disty * -1; | |
1736 | + } | |
1624 | 1737 | if ($nptx == "") |
1625 | - {$nptx = round(($distx / $xdd),0);} | |
1738 | + { | |
1739 | + $nptx = round(($distx / $xdd),0); | |
1740 | + } | |
1626 | 1741 | if ($npty == "") |
1627 | - {$npty = round(($disty / $ydd),0);} | |
1742 | + { | |
1743 | + $npty = round(($disty / $ydd),0); | |
1744 | + } | |
1628 | 1745 | // cria o shapefile |
1629 | 1746 | $novoshpf = ms_newShapefileObj($nomeshp, MS_SHP_POINT); |
1630 | 1747 | $def = array(); |
1631 | 1748 | $def[] = array("x","C","20"); |
1632 | 1749 | $def[] = array("y","C","20"); |
1633 | 1750 | if($this->dbaseExiste == false) |
1634 | - {$db = xbase_create($nomeshp.".dbf", $def);xbase_close($db);} | |
1751 | + { | |
1752 | + $db = xbase_create($nomeshp.".dbf", $def);xbase_close($db); | |
1753 | + } | |
1635 | 1754 | else |
1636 | - {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db);} | |
1755 | + {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db); | |
1756 | + } | |
1637 | 1757 | //acrescenta os pontos no novo shapefile |
1638 | 1758 | $dbname = $nomeshp.".dbf"; |
1639 | 1759 | if($this->dbaseExiste == false) |
1640 | - $db=xbase_open($dbname,2); | |
1760 | + $db=xbase_open($dbname,2); | |
1641 | 1761 | else |
1642 | - $db=dbase_open($dbname,2); | |
1762 | + $db=dbase_open($dbname,2); | |
1643 | 1763 | $reg = array(); |
1644 | 1764 | $valorcoluna = $px; |
1645 | 1765 | for ($coluna = 0; $coluna < $nptx; $coluna++) |
... | ... | @@ -1659,49 +1779,51 @@ $npty - N&uacute;mero de pontos em Y (opcional) |
1659 | 1779 | $reg[] = $x; |
1660 | 1780 | $reg[] = $y; |
1661 | 1781 | if($this->dbaseExiste == false) |
1662 | - xbase_add_record($db,$reg); | |
1782 | + xbase_add_record($db,$reg); | |
1663 | 1783 | else |
1664 | - dbase_add_record($db,$reg); | |
1784 | + dbase_add_record($db,$reg); | |
1665 | 1785 | $reg = array(); |
1666 | 1786 | } |
1667 | 1787 | $valorcoluna = $valorcoluna + $xdd; |
1668 | 1788 | } |
1669 | 1789 | if($this->dbaseExiste == false) |
1670 | - xbase_close($db); | |
1790 | + xbase_close($db); | |
1671 | 1791 | else |
1672 | - dbase_close($db); | |
1792 | + dbase_close($db); | |
1673 | 1793 | //adiciona o novo tema no mapa |
1674 | 1794 | $novolayer = criaLayer($this->mapa,MS_LAYER_POINT,MS_DEFAULT,("Grade (".$nomegrade.")"),$metaClasse="SIM"); |
1675 | 1795 | $novolayer->set("data",$nomeshp.".shp"); |
1676 | 1796 | $novolayer->setmetadata("DOWNLOAD","SIM"); |
1677 | 1797 | $novolayer->setmetadata("TEMALOCAL","SIM"); |
1678 | 1798 | if (file_exists($this->qyfile)) |
1679 | - {unlink ($this->qyfile);} | |
1799 | + { | |
1800 | + unlink ($this->qyfile); | |
1801 | + } | |
1680 | 1802 | return("ok"); |
1681 | 1803 | } |
1682 | -/* | |
1683 | -function: gradeDePol | |
1804 | + /* | |
1805 | + function: gradeDePol | |
1684 | 1806 | |
1685 | -Gera uma grade de polígonos com espaçamento regular definido em décimos de grau. | |
1807 | + Gera uma grade de polígonos com espaçamento regular definido em décimos de grau. | |
1686 | 1808 | |
1687 | -Salva o mapa acrescentando um novo layer com a grade. | |
1809 | + Salva o mapa acrescentando um novo layer com a grade. | |
1688 | 1810 | |
1689 | -parameters: | |
1811 | + parameters: | |
1690 | 1812 | |
1691 | -$xdd - Espaçamento em x. | |
1813 | + $xdd - Espaçamento em x. | |
1692 | 1814 | |
1693 | -$ydd - Espaçamento em y. | |
1815 | + $ydd - Espaçamento em y. | |
1694 | 1816 | |
1695 | -$x - X do primeiro ponto (superior esquerdo) | |
1817 | + $x - X do primeiro ponto (superior esquerdo) | |
1696 | 1818 | |
1697 | -$y - Y do primeiro ponto. | |
1819 | + $y - Y do primeiro ponto. | |
1698 | 1820 | |
1699 | -$locaplic - Endereço da aplicação. | |
1821 | + $locaplic - Endereço da aplicação. | |
1700 | 1822 | |
1701 | -$nptx - Número de pontos em X (opcional) | |
1823 | + $nptx - Número de pontos em X (opcional) | |
1702 | 1824 | |
1703 | -$npty - Número de pontos em Y (opcional) | |
1704 | -*/ | |
1825 | + $npty - Número de pontos em Y (opcional) | |
1826 | + */ | |
1705 | 1827 | function gradeDePol($xdd,$ydd,$px,$py,$locaplic,$nptx,$npty,$proj=false) |
1706 | 1828 | { |
1707 | 1829 | set_time_limit(180); |
... | ... | @@ -1736,26 +1858,37 @@ $npty - N&uacute;mero de pontos em Y (opcional) |
1736 | 1858 | //calcula a distância entre os pontos em dd |
1737 | 1859 | $distx = $fx - $px; |
1738 | 1860 | $disty = $fy - $py; |
1739 | - if ($distx < 0){$distx = $distx * -1;} | |
1740 | - if ($disty < 0){$disty = $disty * -1;} | |
1861 | + if ($distx < 0){ | |
1862 | + $distx = $distx * -1; | |
1863 | + } | |
1864 | + if ($disty < 0){ | |
1865 | + $disty = $disty * -1; | |
1866 | + } | |
1741 | 1867 | if ($nptx == "") |
1742 | - {$nptx = round(($distx / $xdd),0);} | |
1868 | + { | |
1869 | + $nptx = round(($distx / $xdd),0); | |
1870 | + } | |
1743 | 1871 | if ($npty == "") |
1744 | - {$npty = round(($disty / $ydd),0);} | |
1872 | + { | |
1873 | + $npty = round(($disty / $ydd),0); | |
1874 | + } | |
1745 | 1875 | // cria o shapefile |
1746 | 1876 | $novoshpf = ms_newShapefileObj($nomeshp, MS_SHP_POLYGON); |
1747 | 1877 | $def = array(); |
1748 | 1878 | $def[] = array("id","C","20"); |
1749 | 1879 | if($this->dbaseExiste == false) |
1750 | - {$db = xbase_create($nomeshp.".dbf", $def);xbase_close($db);} | |
1880 | + { | |
1881 | + $db = xbase_create($nomeshp.".dbf", $def);xbase_close($db); | |
1882 | + } | |
1751 | 1883 | else |
1752 | - {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db);} | |
1884 | + {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db); | |
1885 | + } | |
1753 | 1886 | //acrescenta os pontos no novo shapefile |
1754 | 1887 | $dbname = $nomeshp.".dbf"; |
1755 | 1888 | if($this->dbaseExiste == false) |
1756 | - $db=xbase_open($dbname,2); | |
1889 | + $db=xbase_open($dbname,2); | |
1757 | 1890 | else |
1758 | - $db=dbase_open($dbname,2); | |
1891 | + $db=dbase_open($dbname,2); | |
1759 | 1892 | $reg = array(); |
1760 | 1893 | $valorcoluna = $px; |
1761 | 1894 | for ($coluna = 0; $coluna < $nptx; $coluna++){ |
... | ... | @@ -1791,17 +1924,17 @@ $npty - N&uacute;mero de pontos em Y (opcional) |
1791 | 1924 | $novoshpf->addShape($shapen); |
1792 | 1925 | $reg[] = $linha."-".$coluna; |
1793 | 1926 | if($this->dbaseExiste == false) |
1794 | - xbase_add_record($db,$reg); | |
1927 | + xbase_add_record($db,$reg); | |
1795 | 1928 | else |
1796 | - dbase_add_record($db,$reg); | |
1929 | + dbase_add_record($db,$reg); | |
1797 | 1930 | $reg = array(); |
1798 | 1931 | } |
1799 | - $valorcoluna = $valorcoluna + $xdd; | |
1932 | + $valorcoluna = $valorcoluna + $xdd; | |
1800 | 1933 | } |
1801 | 1934 | if($this->dbaseExiste == false) |
1802 | - xbase_close($db); | |
1935 | + xbase_close($db); | |
1803 | 1936 | else |
1804 | - dbase_close($db); | |
1937 | + dbase_close($db); | |
1805 | 1938 | //adiciona o novo tema no mapa |
1806 | 1939 | $novolayer = criaLayer($this->mapa,MS_LAYER_POLYGON,MS_DEFAULT,("Grade (".$nomegrade.")"),$metaClasse="SIM"); |
1807 | 1940 | $novolayer->set("data",$nomeshp.".shp"); |
... | ... | @@ -1809,11 +1942,13 @@ $npty - N&uacute;mero de pontos em Y (opcional) |
1809 | 1942 | $novolayer->setmetadata("TEMALOCAL","SIM"); |
1810 | 1943 | $novolayer->set("opacity","50"); |
1811 | 1944 | if (file_exists($this->qyfile)) |
1812 | - {unlink ($this->qyfile);} | |
1945 | + { | |
1946 | + unlink ($this->qyfile); | |
1947 | + } | |
1813 | 1948 | return("ok"); |
1814 | 1949 | } |
1815 | 1950 | /* |
1816 | - function: gradeDeHex | |
1951 | + function: gradeDeHex | |
1817 | 1952 | |
1818 | 1953 | Gera uma grade de polígonos hexagonais regulares definido em décimos de grau. |
1819 | 1954 | |
... | ... | @@ -1873,20 +2008,31 @@ $npty - N&uacute;mero de pontos em Y (opcional) |
1873 | 2008 | //calcula a distância entre os pontos em dd se nao tiver sido especificada ou for 0 |
1874 | 2009 | $distx = $fx - $px; |
1875 | 2010 | $disty = $fy - $py; |
1876 | - if ($distx < 0){$distx = $distx * -1;} | |
1877 | - if ($disty < 0){$disty = $disty * -1;} | |
2011 | + if ($distx < 0){ | |
2012 | + $distx = $distx * -1; | |
2013 | + } | |
2014 | + if ($disty < 0){ | |
2015 | + $disty = $disty * -1; | |
2016 | + } | |
1878 | 2017 | if ($nptx == "") |
1879 | - {$nptx = round(($distx / $dd),0);} | |
2018 | + { | |
2019 | + $nptx = round(($distx / $dd),0); | |
2020 | + } | |
1880 | 2021 | if ($npty == "") |
1881 | - {$npty = round(($disty / $dd),0);} | |
2022 | + { | |
2023 | + $npty = round(($disty / $dd),0); | |
2024 | + } | |
1882 | 2025 | // cria o shapefile |
1883 | 2026 | $novoshpf = ms_newShapefileObj($nomeshp, MS_SHP_POLYGON); |
1884 | 2027 | $def = array(); |
1885 | 2028 | $def[] = array("id","C","20"); |
1886 | 2029 | if($this->dbaseExiste == false) |
1887 | - {$db = xbase_create($nomeshp.".dbf", $def);xbase_close($db);} | |
2030 | + { | |
2031 | + $db = xbase_create($nomeshp.".dbf", $def);xbase_close($db); | |
2032 | + } | |
1888 | 2033 | else |
1889 | - {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db);} | |
2034 | + {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db); | |
2035 | + } | |
1890 | 2036 | //acrescenta os pontos no novo shapefile |
1891 | 2037 | $dbname = $nomeshp.".dbf"; |
1892 | 2038 | if($this->dbaseExiste == false) |
... | ... | @@ -1978,24 +2124,25 @@ $npty - N&uacute;mero de pontos em Y (opcional) |
1978 | 2124 | $novolayer->setmetadata("TEMALOCAL","SIM"); |
1979 | 2125 | $novolayer->set("opacity","50"); |
1980 | 2126 | if (file_exists($this->qyfile)) |
1981 | - {unlink ($this->qyfile);} | |
1982 | - return("ok"); | |
1983 | - | |
2127 | + { | |
2128 | + unlink ($this->qyfile); | |
2129 | + } | |
2130 | + return("ok"); | |
1984 | 2131 | } |
1985 | -/* | |
1986 | -function: nptPol | |
2132 | + /* | |
2133 | + function: nptPol | |
1987 | 2134 | |
1988 | -Conta o número de pontos em polígono cruzando dois temas. | |
2135 | + Conta o número de pontos em polígono cruzando dois temas. | |
1989 | 2136 | |
1990 | -Salva o mapa acrescentando um novo layer com o resultado. | |
2137 | + Salva o mapa acrescentando um novo layer com o resultado. | |
1991 | 2138 | |
1992 | -parameters: | |
1993 | -$temaPt - Tema de pontos. | |
2139 | + parameters: | |
2140 | + $temaPt - Tema de pontos. | |
1994 | 2141 | |
1995 | -$temaPo - Tema poligonal. | |
2142 | + $temaPo - Tema poligonal. | |
1996 | 2143 | |
1997 | -$locaplic - Localização do I3geo | |
1998 | -*/ | |
2144 | + $locaplic - Localização do I3geo | |
2145 | + */ | |
1999 | 2146 | function nptPol($temaPt,$temaPo,$locaplic,$somaritem="") |
2000 | 2147 | { |
2001 | 2148 | //error_reporting(0); |
... | ... | @@ -2093,19 +2240,23 @@ $locaplic - Localiza&ccedil;&atilde;o do I3geo |
2093 | 2240 | } |
2094 | 2241 | return("ok"); |
2095 | 2242 | } |
2096 | -/* | |
2097 | -Function: agrupaElementos | |
2243 | + /* | |
2244 | + Function: agrupaElementos | |
2098 | 2245 | |
2099 | -Agrupa elementos em um polígono. | |
2246 | + Agrupa elementos em um polígono. | |
2100 | 2247 | |
2101 | -Salva o mapa acrescentando um novo layer com o resultado. | |
2102 | -*/ | |
2248 | + Salva o mapa acrescentando um novo layer com o resultado. | |
2249 | + */ | |
2103 | 2250 | function agrupaElementos($item,$locaplic) |
2104 | 2251 | { |
2105 | - if(!$this->layer){return "erro";} | |
2252 | + if(!$this->layer){ | |
2253 | + return "erro"; | |
2254 | + } | |
2106 | 2255 | set_time_limit(180); |
2107 | 2256 | //para manipular dbf |
2108 | - if(!isset($item)){$item="";} | |
2257 | + if(!isset($item)){ | |
2258 | + $item=""; | |
2259 | + } | |
2109 | 2260 | if($this->dbaseExiste == false){ |
2110 | 2261 | include_once dirname(__FILE__)."/../pacotes/phpxbase/api_conversion.php"; |
2111 | 2262 | } |
... | ... | @@ -2113,25 +2264,30 @@ Salva o mapa acrescentando um novo layer com o resultado. |
2113 | 2264 | $indices = array(); |
2114 | 2265 | foreach($shapes as $shape){ |
2115 | 2266 | if($item != "") |
2116 | - {$valor = $shape->values[$item];} | |
2267 | + { | |
2268 | + $valor = $shape->values[$item]; | |
2269 | + } | |
2117 | 2270 | else |
2118 | - {$valor = "nenhum";} | |
2271 | + {$valor = "nenhum"; | |
2272 | + } | |
2119 | 2273 | if(!isset($indices[$valor])){ |
2120 | 2274 | $indices[$valor] = array($shape); |
2121 | 2275 | } |
2122 | 2276 | else |
2123 | - $indices[$valor] = array_merge($indices[$valor],array($shape)); | |
2277 | + $indices[$valor] = array_merge($indices[$valor],array($shape)); | |
2124 | 2278 | } |
2125 | 2279 | $dissolve=array(); |
2126 | 2280 | foreach($indices as $shapes) |
2127 | 2281 | { |
2128 | 2282 | foreach($shapes as $shape){ |
2129 | 2283 | if($item != "") |
2130 | - $valor = $shape->values[$item]; | |
2284 | + $valor = $shape->values[$item]; | |
2131 | 2285 | else |
2132 | - $valor = "nenhum"; | |
2286 | + $valor = "nenhum"; | |
2133 | 2287 | if (!isset($dissolve[$valor])) |
2134 | - {$dissolve[$valor] = $shape;} | |
2288 | + { | |
2289 | + $dissolve[$valor] = $shape; | |
2290 | + } | |
2135 | 2291 | else |
2136 | 2292 | { |
2137 | 2293 | $tipo = $shape->type; |
... | ... | @@ -2160,31 +2316,36 @@ Salva o mapa acrescentando um novo layer com o resultado. |
2160 | 2316 | $novoshpf = ms_newShapefileObj($nomeshp, MS_SHP_POLYGON); |
2161 | 2317 | // cria o dbf |
2162 | 2318 | $def = array(); |
2163 | - if($item==""){$item="nenhum";} | |
2319 | + if($item==""){ | |
2320 | + $item="nenhum"; | |
2321 | + } | |
2164 | 2322 | $def[] = array($item,"C","254"); |
2165 | 2323 | if($this->dbaseExiste == false) |
2166 | - {$db = xbase_create($nomeshp.".dbf", $def);xbase_close($db);} | |
2324 | + { | |
2325 | + $db = xbase_create($nomeshp.".dbf", $def);xbase_close($db); | |
2326 | + } | |
2167 | 2327 | else |
2168 | - {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db);} | |
2328 | + {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db); | |
2329 | + } | |
2169 | 2330 | //acrescenta os pontos no novo shapefile |
2170 | 2331 | $dbname = $nomeshp.".dbf"; |
2171 | 2332 | if($this->dbaseExiste == false) |
2172 | - $db=xbase_open($dbname,2); | |
2333 | + $db=xbase_open($dbname,2); | |
2173 | 2334 | else |
2174 | - $db=dbase_open($dbname,2); | |
2335 | + $db=dbase_open($dbname,2); | |
2175 | 2336 | $classes = array_keys($dissolve); |
2176 | 2337 | foreach ($classes as $classe) |
2177 | 2338 | { |
2178 | 2339 | $novoshpf->addShape($dissolve[$classe]->convexhull()); |
2179 | 2340 | if($this->dbaseExiste == false) |
2180 | - xbase_add_record($db,array($classe)); | |
2341 | + xbase_add_record($db,array($classe)); | |
2181 | 2342 | else |
2182 | - dbase_add_record($db,array($classe)); | |
2343 | + dbase_add_record($db,array($classe)); | |
2183 | 2344 | } |
2184 | 2345 | if($this->dbaseExiste == false) |
2185 | - xbase_close($db); | |
2346 | + xbase_close($db); | |
2186 | 2347 | else |
2187 | - dbase_close($db); | |
2348 | + dbase_close($db); | |
2188 | 2349 | // |
2189 | 2350 | //adiciona o novo layer no mapa |
2190 | 2351 | // |
... | ... | @@ -2196,23 +2357,27 @@ Salva o mapa acrescentando um novo layer com o resultado. |
2196 | 2357 | return("ok"); |
2197 | 2358 | } |
2198 | 2359 | |
2199 | -/* | |
2200 | -function: dissolvePoligono | |
2360 | + /* | |
2361 | + function: dissolvePoligono | |
2201 | 2362 | |
2202 | -Dissolve as bordas entre polígonos com o mesmo atributo. | |
2363 | + Dissolve as bordas entre polígonos com o mesmo atributo. | |
2203 | 2364 | |
2204 | -Salva o mapa acrescentando um novo layer com o resultado. | |
2365 | + Salva o mapa acrescentando um novo layer com o resultado. | |
2205 | 2366 | |
2206 | -$item - item utilizado para agregar os polígonos | |
2367 | + $item - item utilizado para agregar os polígonos | |
2207 | 2368 | |
2208 | -$locaplic - Localização do I3geo | |
2209 | -*/ | |
2369 | + $locaplic - Localização do I3geo | |
2370 | + */ | |
2210 | 2371 | function dissolvePoligono($item,$locaplic) |
2211 | 2372 | { |
2212 | - if(!$this->layer){return "erro";} | |
2373 | + if(!$this->layer){ | |
2374 | + return "erro"; | |
2375 | + } | |
2213 | 2376 | set_time_limit(180); |
2214 | 2377 | //para manipular dbf |
2215 | - if(!isset($item)){$item="";} | |
2378 | + if(!isset($item)){ | |
2379 | + $item=""; | |
2380 | + } | |
2216 | 2381 | if($this->dbaseExiste == false){ |
2217 | 2382 | include_once dirname(__FILE__)."/../pacotes/phpxbase/api_conversion.php"; |
2218 | 2383 | } |
... | ... | @@ -2220,25 +2385,30 @@ $locaplic - Localiza&ccedil;&atilde;o do I3geo |
2220 | 2385 | $indices = array(); |
2221 | 2386 | foreach($shapes as $shape){ |
2222 | 2387 | if($item != "") |
2223 | - {$valor = $shape->values[$item];} | |
2388 | + { | |
2389 | + $valor = $shape->values[$item]; | |
2390 | + } | |
2224 | 2391 | else |
2225 | - {$valor = "nenhum";} | |
2392 | + {$valor = "nenhum"; | |
2393 | + } | |
2226 | 2394 | if(!isset($indices[$valor])){ |
2227 | 2395 | $indices[$valor] = array($shape); |
2228 | 2396 | } |
2229 | 2397 | else |
2230 | - $indices[$valor] = array_merge($indices[$valor],array($shape)); | |
2398 | + $indices[$valor] = array_merge($indices[$valor],array($shape)); | |
2231 | 2399 | } |
2232 | 2400 | $dissolve=array(); |
2233 | 2401 | foreach($indices as $shapes) |
2234 | 2402 | { |
2235 | 2403 | foreach($shapes as $shape){ |
2236 | 2404 | if($item != "") |
2237 | - $valor = $shape->values[$item]; | |
2405 | + $valor = $shape->values[$item]; | |
2238 | 2406 | else |
2239 | - $valor = "nenhum"; | |
2407 | + $valor = "nenhum"; | |
2240 | 2408 | if (!isset($dissolve[$valor])) |
2241 | - {$dissolve[$valor] = $shape;} | |
2409 | + { | |
2410 | + $dissolve[$valor] = $shape; | |
2411 | + } | |
2242 | 2412 | else |
2243 | 2413 | { |
2244 | 2414 | if($shape->type != MS_SHAPE_POLYGON) |
... | ... | @@ -2266,31 +2436,36 @@ $locaplic - Localiza&ccedil;&atilde;o do I3geo |
2266 | 2436 | $novoshpf = ms_newShapefileObj($nomeshp, MS_SHP_POLYGON); |
2267 | 2437 | // cria o dbf |
2268 | 2438 | $def = array(); |
2269 | - if($item==""){$item="nenhum";} | |
2439 | + if($item==""){ | |
2440 | + $item="nenhum"; | |
2441 | + } | |
2270 | 2442 | $def[] = array($item,"C","254"); |
2271 | 2443 | if($this->dbaseExiste == false) |
2272 | - {$db = xbase_create($nomeshp.".dbf", $def);xbase_close($db);} | |
2444 | + { | |
2445 | + $db = xbase_create($nomeshp.".dbf", $def);xbase_close($db); | |
2446 | + } | |
2273 | 2447 | else |
2274 | - {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db);} | |
2448 | + {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db); | |
2449 | + } | |
2275 | 2450 | //acrescenta os pontos no novo shapefile |
2276 | 2451 | $dbname = $nomeshp.".dbf"; |
2277 | 2452 | if($this->dbaseExiste == false) |
2278 | - $db=xbase_open($dbname,2); | |
2453 | + $db=xbase_open($dbname,2); | |
2279 | 2454 | else |
2280 | - $db=dbase_open($dbname,2); | |
2455 | + $db=dbase_open($dbname,2); | |
2281 | 2456 | $classes = array_keys($dissolve); |
2282 | 2457 | foreach ($classes as $classe) |
2283 | 2458 | { |
2284 | 2459 | $novoshpf->addShape($dissolve[$classe]); |
2285 | 2460 | if($this->dbaseExiste == false) |
2286 | - xbase_add_record($db,array($classe)); | |
2461 | + xbase_add_record($db,array($classe)); | |
2287 | 2462 | else |
2288 | - dbase_add_record($db,array($classe)); | |
2463 | + dbase_add_record($db,array($classe)); | |
2289 | 2464 | } |
2290 | 2465 | if($this->dbaseExiste == false) |
2291 | - xbase_close($db); | |
2466 | + xbase_close($db); | |
2292 | 2467 | else |
2293 | - dbase_close($db); | |
2468 | + dbase_close($db); | |
2294 | 2469 | // |
2295 | 2470 | //adiciona o novo layer no mapa |
2296 | 2471 | // |
... | ... | @@ -2300,14 +2475,16 @@ $locaplic - Localiza&ccedil;&atilde;o do I3geo |
2300 | 2475 | $novolayer->setmetadata("DOWNLOAD","SIM"); |
2301 | 2476 | $novolayer->setmetadata("TEMALOCAL","SIM"); |
2302 | 2477 | if (file_exists($this->qyfile)) |
2303 | - {unlink ($this->qyfile);} | |
2478 | + { | |
2479 | + unlink ($this->qyfile); | |
2480 | + } | |
2304 | 2481 | |
2305 | 2482 | return("ok"); |
2306 | 2483 | } |
2307 | 2484 | /* |
2308 | - Function aplicaFuncaoListaWKT | |
2485 | + Function aplicaFuncaoListaWKT | |
2309 | 2486 | |
2310 | - Aplica uma função do Mapserver à uma lista de geometrias no formato WKT | |
2487 | + Aplica uma função do Mapserver � uma lista de geometrias no formato WKT | |
2311 | 2488 | |
2312 | 2489 | Parametros: |
2313 | 2490 | |
... | ... | @@ -2315,9 +2492,9 @@ $locaplic - Localiza&ccedil;&atilde;o do I3geo |
2315 | 2492 | |
2316 | 2493 | $operacao {String} - operação suportada pelo Mapserver, por exemplo, union, intersects, etc. converteSHP irá converter as geometrias em um tema e adicioná-lo ao mapa |
2317 | 2494 | |
2318 | - $dir_tmp - Diretório temporário do mapserver. Utilizado apenas se $operacao = "converteSHP" | |
2495 | + $dir_tmp - Diret�rio temporário do mapserver. Utilizado apenas se $operacao = "converteSHP" | |
2319 | 2496 | |
2320 | - $imgdir - Diretório das imagens do mapa atual. Utilizado apenas se $operacao = "converteSHP" | |
2497 | + $imgdir - Diret�rio das imagens do mapa atual. Utilizado apenas se $operacao = "converteSHP" | |
2321 | 2498 | |
2322 | 2499 | Return: |
2323 | 2500 | |
... | ... | @@ -2353,20 +2530,20 @@ $locaplic - Localiza&ccedil;&atilde;o do I3geo |
2353 | 2530 | return $geoc->toWkt(); |
2354 | 2531 | } |
2355 | 2532 | } |
2356 | -/* | |
2357 | -function: funcoesGeometrias | |
2533 | + /* | |
2534 | + function: funcoesGeometrias | |
2358 | 2535 | |
2359 | -Funções de análise de geometrias da ferramenta Geometrias. | |
2536 | + Funções de análise de geometrias da ferramenta Geometrias. | |
2360 | 2537 | |
2361 | -parameters: | |
2362 | -$dir_tmp - Diretório temporário do mapserver | |
2538 | + parameters: | |
2539 | + $dir_tmp - Diret�rio temporário do mapserver | |
2363 | 2540 | |
2364 | -$imgdir - Diretório das imagens do mapa atual | |
2541 | + $imgdir - Diret�rio das imagens do mapa atual | |
2365 | 2542 | |
2366 | -$lista - String com a lista de nomes dos arquivos serializados que contém as geometrias | |
2543 | + $lista - String com a lista de nomes dos arquivos serializados que contém as geometrias | |
2367 | 2544 | |
2368 | -$operacao - Tipo de análise. | |
2369 | -*/ | |
2545 | + $operacao - Tipo de análise. | |
2546 | + */ | |
2370 | 2547 | function funcoesGeometrias($dir_tmp,$imgdir,$lista,$operacao) |
2371 | 2548 | { |
2372 | 2549 | $lista = explode(",",$lista); |
... | ... | @@ -2424,21 +2601,21 @@ $operacao - Tipo de an&aacute;lise. |
2424 | 2601 | return($nomegeo); |
2425 | 2602 | } |
2426 | 2603 | |
2427 | -/* | |
2428 | -function: calculaGeometrias | |
2604 | + /* | |
2605 | + function: calculaGeometrias | |
2429 | 2606 | |
2430 | -Funções de cálculo de geometrias da ferramenta Geometrias. | |
2607 | + Funções de cálculo de geometrias da ferramenta Geometrias. | |
2431 | 2608 | |
2432 | -parameters: | |
2609 | + parameters: | |
2433 | 2610 | |
2434 | -$dir_tmp - Diretório temporário do mapserver | |
2611 | + $dir_tmp - Diret�rio temporário do mapserver | |
2435 | 2612 | |
2436 | -$imgdir - Diretório das imagens do mapa atual | |
2613 | + $imgdir - Diret�rio das imagens do mapa atual | |
2437 | 2614 | |
2438 | -$lista - Arquivos com as geometrias | |
2615 | + $lista - Arquivos com as geometrias | |
2439 | 2616 | |
2440 | -$operacao - Tipo de análise. | |
2441 | -*/ | |
2617 | + $operacao - Tipo de análise. | |
2618 | + */ | |
2442 | 2619 | function calculaGeometrias($dir_tmp,$imgdir,$lista,$operacao) |
2443 | 2620 | { |
2444 | 2621 | //error_reporting(0); |
... | ... | @@ -2451,9 +2628,11 @@ $operacao - Tipo de an&aacute;lise. |
2451 | 2628 | //verifica a versão do mapserver |
2452 | 2629 | //se for anterior a 5, utiliza a conexão com o postgis para fazer o processamento dos daods |
2453 | 2630 | // |
2454 | - $v = versao(); | |
2631 | + $v = versao(); | |
2455 | 2632 | if (($v["principal"] < 5)) |
2456 | - {return ("erro. E necessario uma versão maior que 5.0 do Mapserver.");} | |
2633 | + { | |
2634 | + return ("erro. E necessario uma versão maior que 5.0 do Mapserver."); | |
2635 | + } | |
2457 | 2636 | foreach ($geos["dados"] as &$geo) |
2458 | 2637 | { |
2459 | 2638 | $g = $geo["wkt"]; |
... | ... | @@ -2469,7 +2648,7 @@ $operacao - Tipo de an&aacute;lise. |
2469 | 2648 | $shape = ms_shapeObjFromWkt($s); |
2470 | 2649 | $area = $shape->getLength(); |
2471 | 2650 | $geo["valores"][] = array("item"=>"P_perim_metros","valor"=>$area); |
2472 | - break; | |
2651 | + break; | |
2473 | 2652 | case "area": |
2474 | 2653 | $shape = ms_shapeObjFromWkt($g); |
2475 | 2654 | $rect = $shape->bounds; |
... | ... | @@ -2480,30 +2659,30 @@ $operacao - Tipo de an&aacute;lise. |
2480 | 2659 | $shape = ms_shapeObjFromWkt($s); |
2481 | 2660 | $area = $shape->getArea(); |
2482 | 2661 | $geo["valores"][] = array("item"=>"P_area_metros","valor"=>$area); |
2483 | - break; | |
2662 | + break; | |
2484 | 2663 | case "comprimento": |
2485 | - break; | |
2664 | + break; | |
2486 | 2665 | } |
2487 | 2666 | } |
2488 | 2667 | $this->serializeGeo($dir.$l,$geos); |
2489 | 2668 | } |
2490 | 2669 | return("ok"); |
2491 | 2670 | } |
2492 | -/* | |
2493 | -Function: incmapageometrias | |
2671 | + /* | |
2672 | + Function: incmapageometrias | |
2494 | 2673 | |
2495 | -Insere geometrias como tema no mapa. | |
2674 | + Insere geometrias como tema no mapa. | |
2496 | 2675 | |
2497 | -parameters: | |
2676 | + parameters: | |
2498 | 2677 | |
2499 | -$dir_tmp - Diretório temporário do mapserver | |
2678 | + $dir_tmp - Diretorio temporário do mapserver | |
2500 | 2679 | |
2501 | -$imgdir - Diretório das imagens do mapa atual | |
2680 | + $imgdir - Diretorio das imagens do mapa atual | |
2502 | 2681 | |
2503 | -$lista - Nomes, sem o caminho, dos arquivos com as geometrias, separados por vírgula. | |
2682 | + $lista - Nomes, sem o caminho, dos arquivos com as geometrias, separados por vírgula. | |
2504 | 2683 | |
2505 | -$tipoLista - tipo de valores que são passados em $lista stringArquivos|arraywkt. O default é stringArquivos | |
2506 | -*/ | |
2684 | + $tipoLista - tipo de valores que são passados em $lista stringArquivos|arraywkt. O default é stringArquivos | |
2685 | + */ | |
2507 | 2686 | function incmapageometrias($dir_tmp,$imgdir,$lista,$tipoLista="stringArquivos") |
2508 | 2687 | { |
2509 | 2688 | $dir = $dir_tmp."/".$imgdir."/"; |
... | ... | @@ -2521,7 +2700,9 @@ $tipoLista - tipo de valores que s&atilde;o passados em $lista stringArquivos|ar |
2521 | 2700 | //echo $geo["wkt"]."<br>"; |
2522 | 2701 | $shapes[] = ms_shapeObjFromWkt(str_replace("'","",$geo["wkt"])); |
2523 | 2702 | foreach ($geo["valores"] as $v) |
2524 | - {$valorestemp[] = $v["item"]."=".$v["valor"];} | |
2703 | + { | |
2704 | + $valorestemp[] = $v["item"]."=".$v["valor"]; | |
2705 | + } | |
2525 | 2706 | $valoresoriginais[] = implode(" ",$valorestemp); |
2526 | 2707 | } |
2527 | 2708 | } |
... | ... | @@ -2545,11 +2726,17 @@ $tipoLista - tipo de valores que s&atilde;o passados em $lista stringArquivos|ar |
2545 | 2726 | $tituloTema = " marcadores"; |
2546 | 2727 | } |
2547 | 2728 | //verifica o tipo |
2548 | - if (count($shapes) == 0){return("erro.");} | |
2729 | + if (count($shapes) == 0){ | |
2730 | + return("erro."); | |
2731 | + } | |
2549 | 2732 | $tiposhape = $shapes[0]->type; |
2550 | 2733 | $tiposhapefile = MS_SHP_POLYGON; |
2551 | - if ($tiposhape == 0){$tiposhapefile = MS_SHP_MULTIPOINT;} | |
2552 | - if ($tiposhape == 1){$tiposhapefile = MS_SHP_ARC;} | |
2734 | + if ($tiposhape == 0){ | |
2735 | + $tiposhapefile = MS_SHP_MULTIPOINT; | |
2736 | + } | |
2737 | + if ($tiposhape == 1){ | |
2738 | + $tiposhapefile = MS_SHP_ARC; | |
2739 | + } | |
2553 | 2740 | //cria o shapefile |
2554 | 2741 | if($this->dbaseExiste == false){ |
2555 | 2742 | include_once dirname(__FILE__)."/../pacotes/phpxbase/api_conversion.php"; |
... | ... | @@ -2561,31 +2748,34 @@ $tipoLista - tipo de valores que s&atilde;o passados em $lista stringArquivos|ar |
2561 | 2748 | $novoshpf = ms_newShapefileObj($nomeshp, $tiposhapefile); |
2562 | 2749 | $def[] = array("ID","C","250"); |
2563 | 2750 | if($this->dbaseExiste == false) |
2564 | - {$db = xbase_create($nomeshp.".dbf", $def);xbase_close($db);} | |
2751 | + { | |
2752 | + $db = xbase_create($nomeshp.".dbf", $def);xbase_close($db); | |
2753 | + } | |
2565 | 2754 | else |
2566 | - {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db);} | |
2755 | + {$db = dbase_create($nomeshp.".dbf", $def);dbase_close($db); | |
2756 | + } | |
2567 | 2757 | //acrescenta os pontos no novo shapefile |
2568 | 2758 | $dbname = $nomeshp.".dbf"; |
2569 | 2759 | if($this->dbaseExiste == false) |
2570 | - $db=xbase_open($dbname,2); | |
2760 | + $db=xbase_open($dbname,2); | |
2571 | 2761 | else |
2572 | - $db=dbase_open($dbname,2); | |
2762 | + $db=dbase_open($dbname,2); | |
2573 | 2763 | $conta = 0; |
2574 | 2764 | foreach ($shapes as $s) |
2575 | 2765 | { |
2576 | 2766 | $reg = array(); |
2577 | 2767 | $reg[] = $valoresoriginais[$conta]; |
2578 | 2768 | if($this->dbaseExiste == false) |
2579 | - xbase_add_record($db,$reg); | |
2769 | + xbase_add_record($db,$reg); | |
2580 | 2770 | else |
2581 | - dbase_add_record($db,$reg); | |
2771 | + dbase_add_record($db,$reg); | |
2582 | 2772 | $novoshpf->addshape($s); |
2583 | 2773 | $conta = $conta + 1; |
2584 | 2774 | } |
2585 | 2775 | if($this->dbaseExiste == false) |
2586 | - xbase_close($db); | |
2776 | + xbase_close($db); | |
2587 | 2777 | else |
2588 | - dbase_close($db); | |
2778 | + dbase_close($db); | |
2589 | 2779 | $l->set("opacity",80); |
2590 | 2780 | $l->setmetadata("tema",$novonomelayer.$tituloTema); |
2591 | 2781 | $l->setmetadata("TEMALOCAL","SIM"); |
... | ... | @@ -2606,28 +2796,28 @@ $tipoLista - tipo de valores que s&atilde;o passados em $lista stringArquivos|ar |
2606 | 2796 | $this->salva(); |
2607 | 2797 | return($novonomelayer); |
2608 | 2798 | } |
2609 | -/* | |
2610 | -function: gravaCoordenadasPt | |
2799 | + /* | |
2800 | + function: gravaCoordenadasPt | |
2611 | 2801 | |
2612 | -Lê as coordenadas de um tema pontual e grava em arquivos. | |
2802 | + Lê as coordenadas de um tema pontual e grava em arquivos. | |
2613 | 2803 | |
2614 | -Essa função é utilizada nas opções que utilizam o R para cálculos e necessitam ler as coordenadas dos pontos. | |
2804 | + Essa função é utilizada nas opções que utilizam o R para cálculos e necessitam ler as coordenadas dos pontos. | |
2615 | 2805 | |
2616 | -Parametros: | |
2806 | + Parametros: | |
2617 | 2807 | |
2618 | -tema - nome do tema com os pontos | |
2808 | + tema - nome do tema com os pontos | |
2619 | 2809 | |
2620 | -limitepontos - FALSE para considerar a extensão geográfica do mapa atual e TRUE para considerar como limite as ocorrências pontuais do tema | |
2810 | + limitepontos - FALSE para considerar a extensão geográfica do mapa atual e TRUE para considerar como limite as ocorrências pontuais do tema | |
2621 | 2811 | |
2622 | -extendelimite - percentual utilizado para extender o limite da área resultante | |
2812 | + extendelimite - percentual utilizado para extender o limite da área resultante | |
2623 | 2813 | |
2624 | -item - item com os valors de peso (opcional) | |
2814 | + item - item com os valors de peso (opcional) | |
2625 | 2815 | |
2626 | -return: | |
2816 | + return: | |
2627 | 2817 | |
2628 | -array com as dimensões em x e y e nome dos arquivos com x e y gerados. | |
2629 | -*/ | |
2630 | -function gravaCoordenadasPt($tema,$limitepontos="TRUE",$extendelimite,$item=""){ | |
2818 | + array com as dimensões em x e y e nome dos arquivos com x e y gerados. | |
2819 | + */ | |
2820 | + function gravaCoordenadasPt($tema,$limitepontos="TRUE",$extendelimite,$item=""){ | |
2631 | 2821 | $prjMapa = $this->mapa->getProjection(); |
2632 | 2822 | $layerPt = $this->mapa->getlayerbyname($tema); |
2633 | 2823 | $prjTema = $layerPt->getProjection(); |
... | ... | @@ -2704,15 +2894,15 @@ function gravaCoordenadasPt($tema,$limitepontos="TRUE",$extendelimite,$item=""){ |
2704 | 2894 | $dimx = "c(".$xi.",".$xf.")"; |
2705 | 2895 | $dimy = "c(".$yi.",".$yf.")"; |
2706 | 2896 | return array("dimx"=>$dimx,"dimy"=>$dimy,"arqx"=>($nomearq."x"),"arqy"=>($nomearq."y"),"arqz"=>($nomearq."z"),"prefixoarquivo"=>$nomearq); |
2707 | -} | |
2708 | -/* | |
2709 | -function unserializeGeo | |
2897 | + } | |
2898 | + /* | |
2899 | + function unserializeGeo | |
2710 | 2900 | |
2711 | -Deserializa um arquivo de geometrias. | |
2901 | + Deserializa um arquivo de geometrias. | |
2712 | 2902 | |
2713 | -Parametros: | |
2714 | -$arquivo - arquivo que será processado | |
2715 | -*/ | |
2903 | + Parametros: | |
2904 | + $arquivo - arquivo que será processado | |
2905 | + */ | |
2716 | 2906 | public function unserializeGeo($arq) |
2717 | 2907 | { |
2718 | 2908 | $handle = fopen ($arq, "r"); |
... | ... | @@ -2720,55 +2910,57 @@ $arquivo - arquivo que ser&aacute; processado |
2720 | 2910 | fclose ($handle); |
2721 | 2911 | return(unserialize($conteudo)); |
2722 | 2912 | } |
2723 | -/* | |
2724 | -function serializeGeo | |
2913 | + /* | |
2914 | + function serializeGeo | |
2725 | 2915 | |
2726 | -Deserializa um arquivo de geometrias. | |
2916 | + Deserializa um arquivo de geometrias. | |
2727 | 2917 | |
2728 | -Parametros: | |
2729 | -$arquivo - arquivo que será processado | |
2918 | + Parametros: | |
2919 | + $arquivo - arquivo que será processado | |
2730 | 2920 | |
2731 | -$geos - array com os dados | |
2732 | -*/ | |
2921 | + $geos - array com os dados | |
2922 | + */ | |
2733 | 2923 | public function serializeGeo($arq,$geos) |
2734 | 2924 | { |
2735 | 2925 | if (file_exists($arq)) |
2736 | - {unlink($arq);} | |
2926 | + { | |
2927 | + unlink($arq); | |
2928 | + } | |
2737 | 2929 | $fp = fopen($arq,"w"); |
2738 | 2930 | $r = serialize($geos); |
2739 | 2931 | fwrite($fp,$r); |
2740 | 2932 | fclose($fp); |
2741 | 2933 | } |
2742 | -/* | |
2743 | -Function: classesRasterI | |
2934 | + /* | |
2935 | + Function: classesRasterI | |
2744 | 2936 | |
2745 | -Gera parâmetros para classificação de imagens. | |
2937 | + Gera parâmetros para classificação de imagens. | |
2746 | 2938 | |
2747 | -Gera a expressão e as cores para uso em classes com intervalos iguais para representação de imagens raster. | |
2939 | + Gera a expressão e as cores para uso em classes com intervalos iguais para representação de imagens raster. | |
2748 | 2940 | |
2749 | -Parametros: | |
2941 | + Parametros: | |
2750 | 2942 | |
2751 | -$minvalor {numeric} - Menor valor existente na série | |
2943 | + $minvalor {numeric} - Menor valor existente na série | |
2752 | 2944 | |
2753 | -$maxvalor {numeric} - Maior valor | |
2945 | + $maxvalor {numeric} - Maior valor | |
2754 | 2946 | |
2755 | -$nclasses {numeric} - Número de classes | |
2947 | + $nclasses {numeric} - Número de classes | |
2756 | 2948 | |
2757 | -$cores {array} - Cores. Array de array de cores cores[0] = array(r,g,b) | |
2949 | + $cores {array} - Cores. Array de array de cores cores[0] = array(r,g,b) | |
2758 | 2950 | |
2759 | -Retorno: | |
2951 | + Retorno: | |
2760 | 2952 | |
2761 | -(start code) | |
2762 | -array( | |
2953 | + (start code) | |
2763 | 2954 | array( |
2764 | - "nomeclasse"=>, | |
2765 | - "expressao"=>, | |
2766 | - "cores"=> | |
2955 | + array( | |
2956 | + "nomeclasse"=>, | |
2957 | + "expressao"=>, | |
2958 | + "cores"=> | |
2959 | + ) | |
2767 | 2960 | ) |
2768 | -) | |
2769 | -(end) | |
2770 | -*/ | |
2771 | -//error_reporting(0); | |
2961 | + (end) | |
2962 | + */ | |
2963 | + //error_reporting(0); | |
2772 | 2964 | function classesRasterI($minvalor,$maxvalor,$nclasses,$cores) |
2773 | 2965 | { |
2774 | 2966 | $resultado = array(); |
... | ... | @@ -2804,7 +2996,7 @@ array( |
2804 | 2996 | return($r_input); |
2805 | 2997 | } |
2806 | 2998 | /* |
2807 | - Function: criaImagemR | |
2999 | + Function: criaImagemR | |
2808 | 3000 | |
2809 | 3001 | Cria uma imagem png a partir de dados armazenados em disco. |
2810 | 3002 | |
... | ... | @@ -2823,7 +3015,9 @@ array( |
2823 | 3015 | function criaImagemR($nomearq) |
2824 | 3016 | { |
2825 | 3017 | if (!file_exists($nomearq."img")) |
2826 | - {return "erro";} | |
3018 | + { | |
3019 | + return "erro"; | |
3020 | + } | |
2827 | 3021 | //pega os parametros |
2828 | 3022 | $abre = fopen($nomearq."h", "r"); |
2829 | 3023 | while (!feof($abre)) | ... | ... |
classesphp/mapa_googlemaps.php
... | ... | @@ -554,7 +554,7 @@ function versaoMS() |
554 | 554 | */ |
555 | 555 | function cortaImagemDisco($arquivo,$cortePixels,$tamanhoFinal=256){ |
556 | 556 | $img = imagecreatefrompng($arquivo); |
557 | - $imgc = imagecreate($tamanhoFinal,$tamanhoFinal); | |
557 | + $imgc = imagecreatetruecolor($tamanhoFinal,$tamanhoFinal); | |
558 | 558 | //@FIXME necessario, sem isso algumas imagens sao geradas de forma errada |
559 | 559 | imagesavealpha($imgc, true); |
560 | 560 | $color = imagecolorallocatealpha($imgc,0x00,0x00,0x00,127); | ... | ... |
classesphp/mapa_openlayers.php
... | ... | @@ -522,7 +522,7 @@ function ilegal(){ |
522 | 522 | */ |
523 | 523 | function cortaImagemDisco($arquivo,$cortePixels,$tamanhoFinal=256){ |
524 | 524 | $img = imagecreatefrompng($arquivo); |
525 | - $imgc = imagecreate($tamanhoFinal,$tamanhoFinal); | |
525 | + $imgc = imagecreatetruecolor($tamanhoFinal,$tamanhoFinal); | |
526 | 526 | //@FIXME necessario, sem isso algumas imagens sao geradas de forma errada |
527 | 527 | imagesavealpha($imgc, true); |
528 | 528 | $color = imagecolorallocatealpha($imgc,0x00,0x00,0x00,127); | ... | ... |
6.15 KB
ferramentas/nptpol/index.js
... | ... | @@ -149,9 +149,10 @@ i3GEOF.nptpol = { |
149 | 149 | }, |
150 | 150 | t0: function() |
151 | 151 | { |
152 | - var ins = "<p class='paragrafo'>"+$trad(1,i3GEOF.nptpol.dicionario)+"</p>"; | |
153 | - ins += "<p class='paragrafo'>"+$trad(2,i3GEOF.nptpol.dicionario)+"</p>"; | |
154 | - ins += "<p class='paragrafo'>"+$trad(3,i3GEOF.nptpol.dicionario)+"</p>"; | |
152 | + var ins = "<img class=i3GeoExemploImg src='"+i3GEO.configura.locaplic+"/ferramentas/nptpol/exemplo.png' />" + | |
153 | + "<p class='paragrafo'>"+$trad(1,i3GEOF.nptpol.dicionario)+"</p>" + | |
154 | + "<p class='paragrafo'>"+$trad(2,i3GEOF.nptpol.dicionario)+"</p>" + | |
155 | + "<p class='paragrafo'>"+$trad(3,i3GEOF.nptpol.dicionario)+"</p>"; | |
155 | 156 | i3GEO.util.proximoAnterior("","i3GEOF.nptpol.t1()",ins,"i3GEOFgradeDePontost0","i3GEOnptpolresultado",true,"i3GEOF.nptpol_rodape"); |
156 | 157 | }, |
157 | 158 | t1: function(){ | ... | ... |
2.42 KB
ferramentas/pontoempoligono/index.js
... | ... | @@ -152,9 +152,10 @@ i3GEOF.pontoEmPoligono = { |
152 | 152 | }, |
153 | 153 | t0: function() |
154 | 154 | { |
155 | - var ins = "<p class='paragrafo'>"+$trad(1,i3GEOF.pontoEmPoligono.dicionario); | |
156 | - ins += "<p class='paragrafo'>"+$trad(2,i3GEOF.pontoEmPoligono.dicionario); | |
157 | - ins += "<p class='paragrafo'>"+$trad(3,i3GEOF.pontoEmPoligono.dicionario); | |
155 | + var ins = "<img class=i3GeoExemploImg src='"+i3GEO.configura.locaplic+"/ferramentas/pontoempoligono/exemplo.png' />" + | |
156 | + "<p class='paragrafo'>"+$trad(1,i3GEOF.pontoEmPoligono.dicionario) + | |
157 | + "<p class='paragrafo'>"+$trad(2,i3GEOF.pontoEmPoligono.dicionario) + | |
158 | + "<p class='paragrafo'>"+$trad(3,i3GEOF.pontoEmPoligono.dicionario); | |
158 | 159 | i3GEO.util.proximoAnterior("","i3GEOF.pontoEmPoligono.t1()",ins,"i3GEOFgradeDePontost0","i3GEOpontoEmPoligonoresultado",true,"i3GEOF.pontoEmPoligono_rodape"); |
159 | 160 | }, |
160 | 161 | t1: function(){ | ... | ... |
temas/_llocali.map