Commit ec18d2cdc3dea8f0d1d92d1a6b5a1a4ae00aa5b3
1 parent
844ba2b6
Exists in
master
and in
7 other branches
Inclusão da biblioteca Proj4 e incorporação na ferramenta de apresentação de coordenadas
Showing
5 changed files
with
504 additions
and
80 deletions
Show diff stats
classesjs/classe_coordenadas.js
@@ -37,7 +37,125 @@ Inclui elementos especiais no mapa para apresentação de coordenadas | @@ -37,7 +37,125 @@ Inclui elementos especiais no mapa para apresentação de coordenadas | ||
37 | */ | 37 | */ |
38 | i3GEO.coordenadas = { | 38 | i3GEO.coordenadas = { |
39 | /* | 39 | /* |
40 | - Propriedade: PARAMETROS | 40 | + Propriedade: formato |
41 | + | ||
42 | + Formato de apresentação das coordenadas | ||
43 | + | ||
44 | + Type: | ||
45 | + {string} | ||
46 | + | ||
47 | + Default: | ||
48 | + "lista" | ||
49 | + | ||
50 | + Valores: | ||
51 | + | ||
52 | + bloco - mostra apenas um dos tipos e uma caixa de seleção | ||
53 | + | ||
54 | + separado - mostra todos os tipos em lugares diferentes conforme o valor de idhtml | ||
55 | + | ||
56 | + lista - mostra cada tipo em um lugar diferente conforme o valor de idhtml | ||
57 | + */ | ||
58 | + formato: "bloco", //bloco,separado,lista,janela | ||
59 | + /* | ||
60 | + Propriedade: padrao | ||
61 | + | ||
62 | + Indica qual tipo de coordenada é mostrado como padrão. Deve existir em i3GEO.coordenadas.config | ||
63 | + | ||
64 | + Default: | ||
65 | + "geoProj" | ||
66 | + */ | ||
67 | + padrao: "geoProj", //so faz sentido se formato for bloco | ||
68 | + /* | ||
69 | + Propriedade: defOrigem | ||
70 | + | ||
71 | + CRS que define a projeção original das coordenadas capturadas na tela. Deve ser o mesmo | ||
72 | + parâmetro definido no mapfile de inicialização do mapa (veja em i3geo/aplicmap/geral1.map ou geral1windows.map) | ||
73 | + | ||
74 | + Default: | ||
75 | + "+proj=longlat +ellps=GRS67 +no_defs" | ||
76 | + */ | ||
77 | + defOrigem: "+proj=longlat +ellps=GRS67 +no_defs", //sad69 geo | ||
78 | + /* | ||
79 | + Propriedade: config | ||
80 | + | ||
81 | + Define as configurações de cada tipo de coordenada mostrada | ||
82 | + | ||
83 | + Para alterar os parâmetros ou acrescentar novas projeções, altere esse objeto por meio de javascript | ||
84 | + | ||
85 | + Para mais detalhes, veja i3geo/classesjs/classe_coordenada.js | ||
86 | + | ||
87 | + Para desativar a apresentação de uma projeção altere o valor de "ativo". | ||
88 | + */ | ||
89 | + config: { | ||
90 | + "geoProj":{ | ||
91 | + idhtml: "localizarxy", | ||
92 | + tipo: "geo", | ||
93 | + titulo: "Geo", | ||
94 | + ativo: true, | ||
95 | + defepsg: "" | ||
96 | + }, | ||
97 | + "policonicaSad69":{ | ||
98 | + idhtml: "localizarxy", | ||
99 | + tipo: "metrica", | ||
100 | + titulo: "Policônica SAD-69", | ||
101 | + ativo: true, | ||
102 | + defepsg: "+proj=poly +lat_0=0 +lon_0=-54 +x_0=5000000 +y_0=10000000 +ellps=aust_SA +units=m +no_defs" | ||
103 | + }, | ||
104 | + "utmSad69Proj":{ | ||
105 | + idhtml: "localizarxy", | ||
106 | + tipo: "utm", | ||
107 | + titulo: "UTM Sad-69", | ||
108 | + ativo: true, | ||
109 | + defepsg: "", | ||
110 | + zona:{ | ||
111 | + "19N":"+proj=utm +zone=19 +ellps=aust_SA +units=m +no_defs", | ||
112 | + "20N":"+proj=utm +zone=20 +ellps=aust_SA +units=m +no_defs", | ||
113 | + "21N":"+proj=utm +zone=21 +ellps=aust_SA +units=m +no_defs", | ||
114 | + "22N":"+proj=utm +zone=22 +ellps=aust_SA +units=m +no_defs", | ||
115 | + "17S":"+proj=utm +zone=17 +south +ellps=aust_SA +units=m +no_defs", | ||
116 | + "18S":"+proj=utm +zone=18 +south +ellps=aust_SA +units=m +no_defs", | ||
117 | + "19S":"+proj=utm +zone=19 +south +ellps=aust_SA +units=m +no_defs", | ||
118 | + "20S":"+proj=utm +zone=20 +south +ellps=aust_SA +units=m +no_defs", | ||
119 | + "21S":"+proj=utm +zone=21 +south +ellps=aust_SA +units=m +no_defs", | ||
120 | + "22S":"+proj=utm +zone=22 +south +ellps=aust_SA +units=m +no_defs", | ||
121 | + "23S":"+proj=utm +zone=23 +south +ellps=aust_SA +units=m +no_defs", | ||
122 | + "24S":"+proj=utm +zone=24 +south +ellps=aust_SA +units=m +no_defs", | ||
123 | + "25S":"+proj=utm +zone=25 +south +ellps=aust_SA +units=m +no_defs" | ||
124 | + } | ||
125 | + }, | ||
126 | + "utmSirgas2000Proj":{ | ||
127 | + idhtml: "localizarxy", | ||
128 | + tipo: "utm", | ||
129 | + titulo: "UTM Sirgas 2000", | ||
130 | + ativo: true, | ||
131 | + defepsg: "", | ||
132 | + zona:{ | ||
133 | + "11N":"+proj=utm +zone=11 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
134 | + "12N":"+proj=utm +zone=12 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
135 | + "13N":"+proj=utm +zone=13 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
136 | + "14N":"+proj=utm +zone=14 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
137 | + "15N":"+proj=utm +zone=15 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
138 | + "16N":"+proj=utm +zone=16 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
139 | + "17N":"+proj=utm +zone=17 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
140 | + "18N":"+proj=utm +zone=18 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
141 | + "19N":"+proj=utm +zone=19 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
142 | + "20N":"+proj=utm +zone=20 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
143 | + "21N":"+proj=utm +zone=21 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
144 | + "22N":"+proj=utm +zone=22 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
145 | + "17S":"+proj=utm +zone=17 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
146 | + "18S":"+proj=utm +zone=18 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
147 | + "19S":"+proj=utm +zone=19 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
148 | + "20S":"+proj=utm +zone=20 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
149 | + "21S":"+proj=utm +zone=21 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
150 | + "22S":"+proj=utm +zone=22 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
151 | + "23S":"+proj=utm +zone=23 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
152 | + "24S":"+proj=utm +zone=24 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs", | ||
153 | + "25S":"+proj=utm +zone=25 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs" | ||
154 | + } | ||
155 | + } | ||
156 | + }, | ||
157 | + /* | ||
158 | + Propriedade: PARAMETROS (depreciado) | ||
41 | 159 | ||
42 | Parametros de inicialização dos componentes. | 160 | Parametros de inicialização dos componentes. |
43 | 161 | ||
@@ -45,11 +163,9 @@ i3GEO.coordenadas = { | @@ -45,11 +163,9 @@ i3GEO.coordenadas = { | ||
45 | 163 | ||
46 | Você pode acessar os parâmetros da seguinte forma: | 164 | Você pode acessar os parâmetros da seguinte forma: |
47 | 165 | ||
48 | - i3GEO.coordenadas.PARAMETROS.mostraCoordenadasUTM.idhtml = ""; | ||
49 | - | ||
50 | - Para evitar o funcionamento de um componente, experimente utilizar o seguinte exemplo: | 166 | + i3GEO.coordenadas.PARAMETROS.mostraCoordenadas.idhtml = ""; |
51 | 167 | ||
52 | - i3GEO.coordenadas.PARAMETROS.mostraCoordenadasUTM.idhtml = ""; | 168 | + Nas versões anteriores à 4.5 do i3Geo utilizava-se um |
53 | 169 | ||
54 | Default: | 170 | Default: |
55 | 171 | ||
@@ -71,17 +187,16 @@ i3GEO.coordenadas = { | @@ -71,17 +187,16 @@ i3GEO.coordenadas = { | ||
71 | "mostraCoordenadasUTM": | 187 | "mostraCoordenadasUTM": |
72 | {idhtml:"localizarxy"}, | 188 | {idhtml:"localizarxy"}, |
73 | "mostraCoordenadasGEO": | 189 | "mostraCoordenadasGEO": |
74 | - {idhtml:"localizarxy"} | 190 | + {idhtml:"localizarxy"} |
75 | }, | 191 | }, |
76 | /* | 192 | /* |
77 | Function: mostraCoordenadasUTM | 193 | Function: mostraCoordenadasUTM |
78 | 194 | ||
79 | - Obtém as coordenadas UTM da posição do mouse sobre o mapa. | 195 | + Obtém e mostra as coordenadas UTM da posição do mouse sobre o mapa por meio de um cálculo realizado no servidor. |
80 | 196 | ||
81 | - As coordenadas são obtidas por meio de uma chamada AJAX. | 197 | + Essa função deixou de ser utilizada na versão 4.5 do i3Geo. |
82 | 198 | ||
83 | - Para o funcionamento correto é necessário incluir essa função no evento que identifica quando o mouse | ||
84 | - está estacionado sobre o mapa. Por default isso já é feito pelo i3Geo. | 199 | + As coordenadas são obtidas por meio de uma chamada AJAX. |
85 | 200 | ||
86 | Se você não quer essa função no mapa, elimine o elemento HTML existente no mapa que contenha o | 201 | Se você não quer essa função no mapa, elimine o elemento HTML existente no mapa que contenha o |
87 | id definido em i3GEO.coordenadas.PARAMETROS (mostraCoordenadasUTM) ou altere a variável i3GEO.eventos.MOUSEPARADO | 202 | id definido em i3GEO.coordenadas.PARAMETROS (mostraCoordenadasUTM) ou altere a variável i3GEO.eventos.MOUSEPARADO |
@@ -154,10 +269,10 @@ i3GEO.coordenadas = { | @@ -154,10 +269,10 @@ i3GEO.coordenadas = { | ||
154 | /* | 269 | /* |
155 | Function: mostraCoordenadasGEO | 270 | Function: mostraCoordenadasGEO |
156 | 271 | ||
157 | - Obtém as coordenadas Geográficas da posição do mouse sobre o mapa. | 272 | + Obtém e mostra as coordenadas Geográficas da posição do mouse sobre o mapa. |
158 | 273 | ||
159 | - Se você não quer essa função no mapa, elimine o elemento HTML existente no mapa que contenha o | ||
160 | - id definido em i3GEO.coordenadas.PARAMETROS (localizarxy) | 274 | + Se você não quer essa função no mapa, elimine o elemento HTML que contenha o |
275 | + id definido em i3GEO.coordenadas.PARAMETROS, por default é "localizarxy" | ||
161 | 276 | ||
162 | Parametro: | 277 | Parametro: |
163 | 278 | ||
@@ -167,50 +282,314 @@ i3GEO.coordenadas = { | @@ -167,50 +282,314 @@ i3GEO.coordenadas = { | ||
167 | mostraCoordenadasGEO: function(id){ | 282 | mostraCoordenadasGEO: function(id){ |
168 | if(typeof(console) !== 'undefined'){console.info("i3GEO.coordenadas.mostraCoordenadasGEO()");} | 283 | if(typeof(console) !== 'undefined'){console.info("i3GEO.coordenadas.mostraCoordenadasGEO()");} |
169 | try{ | 284 | try{ |
170 | - // | ||
171 | - //ativa o evento que preenche os campos de coordenadas | ||
172 | - // | ||
173 | var ins,temp; | 285 | var ins,temp; |
174 | if(arguments.length === 0 || id === "" || id == undefined) | 286 | if(arguments.length === 0 || id === "" || id == undefined) |
175 | {id = i3GEO.coordenadas.PARAMETROS.mostraCoordenadasGEO.idhtml;} | 287 | {id = i3GEO.coordenadas.PARAMETROS.mostraCoordenadasGEO.idhtml;} |
176 | else | 288 | else |
177 | {i3GEO.coordenadas.PARAMETROS.mostraCoordenadasGEO.idhtml = id;} | 289 | {i3GEO.coordenadas.PARAMETROS.mostraCoordenadasGEO.idhtml = id;} |
178 | if($i(id)){ | 290 | if($i(id)){ |
179 | - if(!$i("xm")){ | ||
180 | - ins = "<table style='text-align:center'><tr>" + | ||
181 | - "<td>X: </td>" + | ||
182 | - "<td>"+$inputText(id,"315","xg","grau","3","-00")+" </td>" + | ||
183 | - "<td>"+$inputText("","","xm","minuto","3","00")+" </td>" + | ||
184 | - "<td>"+$inputText("","","xs","segundo","5","00.00")+" </td>" + | ||
185 | - "<td>Y:"+$inputText("","","yg","grau","3","-00")+" </td>" + | ||
186 | - "<td>"+$inputText("","","ym","minuto","3","00")+" </td>" + | ||
187 | - "<td>"+$inputText("","","ys","segundo","5","00.00")+"</td>"; | ||
188 | - temp = 'var xxx = i3GEO.calculo.dms2dd($i("xg").value,$i("xm").value,$i("xs").value);' + | ||
189 | - 'var yyy = i3GEO.calculo.dms2dd($i("yg").value,$i("ym").value,$i("ys").value);' + | ||
190 | - 'i3GEO.navega.zoomponto(i3GEO.configura.locaplic,i3GEO.configura.sid,xxx,yyy);'; | ||
191 | - ins += "<td><img class='tic' title='zoom' onclick='"+temp+"' src='"+i3GEO.util.$im("branco.gif")+"' id=procurarxy /></td>" + | ||
192 | - "</tr></table>"; | ||
193 | - $i(id).innerHTML = ins; | ||
194 | - atualizaLocalizarxy = function(){ | ||
195 | - try{ | ||
196 | - var x = objposicaocursor.dmsx.split(" "); | ||
197 | - var y = objposicaocursor.dmsy.split(" "); | ||
198 | - $i("xg").value = x[0]; | ||
199 | - $i("xm").value = x[1]; | ||
200 | - $i("xs").value = x[2]; | ||
201 | - $i("yg").value = y[0]; | ||
202 | - $i("ym").value = y[1]; | ||
203 | - $i("ys").value = y[2]; | ||
204 | - } | ||
205 | - catch(m){ | ||
206 | - if(typeof(console) !== 'undefined'){console.error(m);} | ||
207 | - } | 291 | + if(!$i("coordgeotabela")){ |
292 | + $i(id).innerHTML = i3GEO.coordenadas.criaMascaraDMS("coordgeotabela"); | ||
293 | + atualizaLocalizarGeo = function(){ | ||
294 | + var temp = $i("coordgeotabela"); | ||
295 | + if(temp && temp.style.display === "block") | ||
296 | + {i3GEO.coordenadas.atualizaGeo(objposicaocursor.dmsx,objposicaocursor.dmsy,"coordgeotabela");} | ||
208 | }; | 297 | }; |
209 | - if(i3GEO.eventos.MOUSEMOVE.toString().search("atualizaLocalizarxy()") < 0) | ||
210 | - {i3GEO.eventos.MOUSEMOVE.push("atualizaLocalizarxy()");} | 298 | + if(i3GEO.eventos.MOUSEMOVE.toString().search("atualizaLocalizarGeo()") < 0) |
299 | + {i3GEO.eventos.MOUSEMOVE.push("atualizaLocalizarGeo()");} | ||
211 | } | 300 | } |
212 | } | 301 | } |
213 | } | 302 | } |
214 | catch(e){alert("mostraCoordenadasGeo: "+e.description);} | 303 | catch(e){alert("mostraCoordenadasGeo: "+e.description);} |
304 | + }, | ||
305 | + /* | ||
306 | + Function: geo2zonaUtm | ||
307 | + | ||
308 | + Determina qual é a zona UTM de um par de coordenadas geográficas | ||
309 | + | ||
310 | + Parametros: | ||
311 | + | ||
312 | + long - longitude em décimos de grau | ||
313 | + | ||
314 | + Return: | ||
315 | + | ||
316 | + {number} - zona UTM | ||
317 | + */ | ||
318 | + geo2zonaUtm: function(long){ | ||
319 | + long = (long * 1) + 180; | ||
320 | + long = long / 6; | ||
321 | + return parseInt(long,10) + 1; | ||
322 | + }, | ||
323 | + /* | ||
324 | + Function: criaMascaraDMS | ||
325 | + | ||
326 | + Cria uma tabela para mostrar as coordenadas no padrão grau minuto e segundo | ||
327 | + | ||
328 | + A tabela criada receberá o id = prefixo | ||
329 | + | ||
330 | + Parametro: | ||
331 | + | ||
332 | + prefixo {string} - prefixo para batizar os ids dos elementos que serão criados | ||
333 | + | ||
334 | + Retorno: | ||
335 | + | ||
336 | + {string} - html com a tabela | ||
337 | + */ | ||
338 | + criaMascaraDMS: function(prefixo,titulo,caixa){ | ||
339 | + var ins = "<table id="+prefixo+" style=display:block;text-align:center ><tr style='border-bottom:2px solid white' >" + | ||
340 | + "<td style=width:150px;text-align:right >"+titulo+" X: </td>" + | ||
341 | + "<td>"+$inputText("","315",prefixo+"xg","grau","3","-00")+" </td>" + | ||
342 | + "<td>"+$inputText("","",prefixo+"xm","minuto","3","00")+" </td>" + | ||
343 | + "<td>"+$inputText("","",prefixo+"xs","segundo","5","00.00")+" </td>" + | ||
344 | + "<td>Y:"+$inputText("","",prefixo+"yg","grau","3","-00")+" </td>" + | ||
345 | + "<td>"+$inputText("","",prefixo+"ym","minuto","3","00")+" </td>" + | ||
346 | + "<td>"+$inputText("","",prefixo+"ys","segundo","5","00.00")+"</td>"; | ||
347 | + temp = 'var '+prefixo+'xxx = i3GEO.calculo.dms2dd($i("'+prefixo+'xg").value,$i("'+prefixo+'xm").value,$i("'+prefixo+'xs").value);' + | ||
348 | + 'var '+prefixo+'yyy = i3GEO.calculo.dms2dd($i("'+prefixo+'yg").value,$i("'+prefixo+'ym").value,$i("'+prefixo+'ys").value);' + | ||
349 | + 'i3GEO.navega.zoomponto(i3GEO.configura.locaplic,i3GEO.configura.sid,'+prefixo+'xxx,'+prefixo+'yyy);'; | ||
350 | + ins += '<td><img class=tic title=zoom onclick="'+temp+'" src="'+i3GEO.util.$im("branco.gif")+'" /></td>' + | ||
351 | + "<td>"+caixa+"<td>" + | ||
352 | + "</tr></table>"; | ||
353 | + return ins; | ||
354 | + }, | ||
355 | + /* | ||
356 | + Function: atualizaGeo | ||
357 | + | ||
358 | + Atualiza os valores em uma tabela do tipo DMS | ||
359 | + | ||
360 | + Parametros: | ||
361 | + | ||
362 | + dmsx {string} - valors de longitude em "d m s" | ||
363 | + | ||
364 | + dmsy {string} - valors de latitude em "d m s" | ||
365 | + | ||
366 | + prefixo {string} - prefixo da tabela (veja criaMascaraDMS) | ||
367 | + | ||
368 | + */ | ||
369 | + atualizaGeo: function(dmsx,dmsy,prefixo){ | ||
370 | + var x = dmsx.split(" "), | ||
371 | + y = dmsy.split(" "); | ||
372 | + $i(prefixo+"xg").value = x[0]; | ||
373 | + $i(prefixo+"xm").value = x[1]; | ||
374 | + $i(prefixo+"xs").value = x[2]; | ||
375 | + $i(prefixo+"yg").value = y[0]; | ||
376 | + $i(prefixo+"ym").value = y[1]; | ||
377 | + $i(prefixo+"ys").value = y[2]; | ||
378 | + }, | ||
379 | + /* | ||
380 | + Function: criaMascaraMetrica | ||
381 | + | ||
382 | + Cria uma tabela para mostrar as coordenadas no padrão métrico (x e y) | ||
383 | + | ||
384 | + A tabela criada receberá o id prefixo+"tabela" | ||
385 | + | ||
386 | + Parametro: | ||
387 | + | ||
388 | + prefixo {string} - prefixo para batizar os ids dos elementos que serão criados | ||
389 | + | ||
390 | + cixa {string} - (opcional) caixa de seleção de tipos | ||
391 | + | ||
392 | + Retorno: | ||
393 | + | ||
394 | + {string} - html com a tabela | ||
395 | + */ | ||
396 | + criaMascaraMetrica: function(prefixo,titulo,caixa){ | ||
397 | + var ins = "<table id="+prefixo+" style=display:block;text-align:center ><tr style='border-bottom:2px solid white' >" + | ||
398 | + "<td style=width:150px;text-align:right >"+titulo+" X: </td>" + | ||
399 | + "<td>"+$inputText("","",prefixo+"X","X","12","00")+" </td>" + | ||
400 | + "<td>Y:"+$inputText("","",prefixo+"Y","Y","12","00")+" </td>" + | ||
401 | + "<td>Zn:"+$inputText("","",prefixo+"ZN","Zona","2","--")+" </td>" + | ||
402 | + "<td>"+caixa+"<td>" + | ||
403 | + "</tr></table>"; | ||
404 | + return ins; | ||
405 | + }, | ||
406 | + /* | ||
407 | + Function: atualizaProj4 | ||
408 | + | ||
409 | + Atualiza os valores em uma tabela do tipo x e y com base na biblioteca Proj4 | ||
410 | + | ||
411 | + http://trac.osgeo.org/proj4js/wiki/UserGuide | ||
412 | + | ||
413 | + Parametros: | ||
414 | + | ||
415 | + configProj {string} | ||
416 | + | ||
417 | + */ | ||
418 | + atualizaProj4: function(configProj){ | ||
419 | + eval("temp = i3GEO.coordenadas.config."+configProj+";"); | ||
420 | + try{ | ||
421 | + if($i(configProj).style.display == "none") | ||
422 | + {return;} | ||
423 | + } | ||
424 | + catch(e){} | ||
425 | + if(temp.tipo === "metrica"){ | ||
426 | + var destino = temp.defepsg; | ||
427 | + } | ||
428 | + if(temp.tipo === "utm"){ | ||
429 | + var zona = i3GEO.coordenadas.geo2zonaUtm(objposicaocursor.ddx); | ||
430 | + $i(configProj+"ZN").value = zona | ||
431 | + if(objposicaocursor.ddy*1 > 0) | ||
432 | + {var destino = temp.zona[zona+"N"];} | ||
433 | + else | ||
434 | + {var destino = temp.zona[zona+"S"];} | ||
435 | + if(destino == undefined){ | ||
436 | + i3GEO.util.defineValor(configProj+"X","value","?"); | ||
437 | + i3GEO.util.defineValor(configProj+"Y","value","?"); | ||
438 | + return; | ||
439 | + } | ||
440 | + } | ||
441 | + Proj4js.defs = { | ||
442 | + 'ORIGEM' : i3GEO.coordenadas.defOrigem, | ||
443 | + 'DESTINO': destino | ||
444 | + }; | ||
445 | + var source = new Proj4js.Proj("ORIGEM"), | ||
446 | + dest = new Proj4js.Proj("DESTINO"), | ||
447 | + p = new Proj4js.Point(objposicaocursor.ddx,objposicaocursor.ddy); | ||
448 | + Proj4js.transform(source, dest, p); | ||
449 | + i3GEO.util.defineValor(configProj+"X","value",p.x); | ||
450 | + i3GEO.util.defineValor(configProj+"Y","value",p.y); | ||
451 | + }, | ||
452 | + /* | ||
453 | + Function: ativaBloco | ||
454 | + | ||
455 | + Mostra um tipo de coordenada e esconde os outros. | ||
456 | + | ||
457 | + Mostra o que estiver definido em i3GEO.coordenadas.padrao | ||
458 | + */ | ||
459 | + ativaBloco: function(){ | ||
460 | + var tipos = i3GEO.util.listaChaves(i3GEO.coordenadas.config), | ||
461 | + n = tipos.length, | ||
462 | + temp, | ||
463 | + i = 0; | ||
464 | + // | ||
465 | + //cria o HTML e a caixa de seleção | ||
466 | + // | ||
467 | + for(i=0;i<n;i++){ | ||
468 | + eval("temp = i3GEO.coordenadas.config."+tipos[i]+";"); | ||
469 | + if(temp.ativo === true){ | ||
470 | + if(tipos[i] == i3GEO.coordenadas.padrao) | ||
471 | + {$i(tipos[i]).style.display = "block";} | ||
472 | + else | ||
473 | + {$i(tipos[i]).style.display = "none";} | ||
474 | + } | ||
475 | + } | ||
476 | + }, | ||
477 | + /* | ||
478 | + Function: mudaTipo | ||
479 | + | ||
480 | + Muda o tipo de coordenada que está sendo mostrada no formato "bloco". | ||
481 | + | ||
482 | + Parametro: | ||
483 | + | ||
484 | + tipo {string} - tipo de coordenada | ||
485 | + */ | ||
486 | + mudaTipo: function(obj){ | ||
487 | + if(obj.value === "janela"){ | ||
488 | + i3GEO.coordenadas.formato = "janela"; | ||
489 | + i3GEO.coordenadas.mostraCoordenadas(); | ||
490 | + return; | ||
491 | + } | ||
492 | + i3GEO.coordenadas.padrao = obj.value; | ||
493 | + obj.selectedIndex = 0; | ||
494 | + i3GEO.coordenadas.ativaBloco(); | ||
495 | + }, | ||
496 | + /* | ||
497 | + Function: mostraCoordenadas | ||
498 | + | ||
499 | + Constrói o conjunto de elementos HTML para mostrar as coordenadas e define as funções de atualização. | ||
500 | + */ | ||
501 | + mostraCoordenadas: function(){ | ||
502 | + try{ | ||
503 | + var tipos = i3GEO.util.listaChaves(i3GEO.coordenadas.config), | ||
504 | + n = tipos.length, | ||
505 | + temp, | ||
506 | + ins = "", | ||
507 | + onde = "", | ||
508 | + i = 0, | ||
509 | + caixa = "<select onchange='javascript:i3GEO.coordenadas.mudaTipo(this);' style='font-size:10px;height:15px;width:50px;' ><option>---</option><option value='janela' >janela</option>"; | ||
510 | + // | ||
511 | + //cria a caixa de seleção | ||
512 | + // | ||
513 | + for(i=0;i<n;i++){ | ||
514 | + eval("temp = i3GEO.coordenadas.config."+tipos[i]+";"); | ||
515 | + if(temp.ativo === true){ | ||
516 | + caixa += "<option value='"+tipos[i]+"'>"+temp.titulo+"</option>"; | ||
517 | + } | ||
518 | + } | ||
519 | + caixa += "</select>"; | ||
520 | + if(i3GEO.coordenadas.formato !== "bloco") | ||
521 | + {caixa = "";} | ||
522 | + // | ||
523 | + //cria o HTML | ||
524 | + // | ||
525 | + for(i=0;i<n;i++){ | ||
526 | + eval("temp = i3GEO.coordenadas.config."+tipos[i]+";"); | ||
527 | + if(temp.ativo === true){ | ||
528 | + if(temp.tipo === "geo"){ | ||
529 | + ins += i3GEO.coordenadas.criaMascaraDMS(tipos[i],temp.titulo,caixa); | ||
530 | + if(i3GEO.coordenadas.formato === "separado"){ | ||
531 | + try{$i(temp.idhtml).innerHTML = ins;} | ||
532 | + catch(e){} | ||
533 | + ins = ""; | ||
534 | + } | ||
535 | + else | ||
536 | + {onde = temp.idhtml;} | ||
537 | + } | ||
538 | + else{ | ||
539 | + ins += i3GEO.coordenadas.criaMascaraMetrica(tipos[i],temp.titulo,caixa); | ||
540 | + } | ||
541 | + } | ||
542 | + } | ||
543 | + if(i3GEO.coordenadas.formato === "janela"){ | ||
544 | + var janela = i3GEO.janela.cria( | ||
545 | + "450px", | ||
546 | + "90px", | ||
547 | + "", | ||
548 | + "", | ||
549 | + "", | ||
550 | + "Coordenadas aproximadas", | ||
551 | + "i3GEOJanelaCoordenadas", | ||
552 | + false, | ||
553 | + "hd", | ||
554 | + "", | ||
555 | + "" | ||
556 | + ); | ||
557 | + temp = $i("i3GEOJanelaCoordenadas_corpo"); | ||
558 | + temp.style.backgroundColor = "white"; | ||
559 | + temp.style.textAlign = "left"; | ||
560 | + temp = $i("i3GEOJanelaCoordenadas"); | ||
561 | + temp.onmouseover = ""; | ||
562 | + temp.onmouseout = ""; | ||
563 | + if($i(onde)) | ||
564 | + {$i(onde).innerHTML = "";} | ||
565 | + onde = "i3GEOJanelaCoordenadas_corpo"; | ||
566 | + } | ||
567 | + if($i(onde)) | ||
568 | + {$i(onde).innerHTML = ins;} | ||
569 | + // | ||
570 | + //aplica as funções de movimentação do mouse | ||
571 | + // | ||
572 | + for(i=0;i<n;i++){ | ||
573 | + eval("temp = i3GEO.coordenadas.config."+tipos[i]+";"); | ||
574 | + if(temp.ativo === true){ | ||
575 | + if(temp.tipo === "geo"){ | ||
576 | + atualizaLocalizarGeo = function(id){ | ||
577 | + temp = $i(id); | ||
578 | + if(temp && temp.style.display == "block") | ||
579 | + {i3GEO.coordenadas.atualizaGeo(objposicaocursor.dmsx,objposicaocursor.dmsy,id);} | ||
580 | + }; | ||
581 | + if(i3GEO.eventos.MOUSEMOVE.toString().search("atualizaLocalizarGeo('"+tipos[i]+"')") < 0) | ||
582 | + {i3GEO.eventos.MOUSEMOVE.push("atualizaLocalizarGeo('"+tipos[i]+"')");} | ||
583 | + } | ||
584 | + else{ | ||
585 | + if(i3GEO.eventos.MOUSEMOVE.toString().search("i3GEO.coordenadas.atualizaProj4('"+tipos[i]+"')") < 0) | ||
586 | + {i3GEO.eventos.MOUSEMOVE.push("i3GEO.coordenadas.atualizaProj4('"+tipos[i]+"')");} | ||
587 | + } | ||
588 | + } | ||
589 | + } | ||
590 | + if(i3GEO.coordenadas.formato === "bloco") | ||
591 | + {i3GEO.coordenadas.ativaBloco();} | ||
592 | + } | ||
593 | + catch(e){} | ||
215 | } | 594 | } |
216 | }; | 595 | }; |
217 | \ No newline at end of file | 596 | \ No newline at end of file |
classesjs/classe_interface.js
@@ -467,8 +467,7 @@ i3GEO.Interface = { | @@ -467,8 +467,7 @@ i3GEO.Interface = { | ||
467 | objmapaparado = "nao"; //utilizado para verificar se o mouse esta parado | 467 | objmapaparado = "nao"; //utilizado para verificar se o mouse esta parado |
468 | i3GEO.gadgets.mostraMenuSuspenso(); | 468 | i3GEO.gadgets.mostraMenuSuspenso(); |
469 | i3GEO.eventos.ativa(i); | 469 | i3GEO.eventos.ativa(i); |
470 | - i3GEO.coordenadas.mostraCoordenadasGEO(); | ||
471 | - i3GEO.coordenadas.mostraCoordenadasUTM(); | 470 | + i3GEO.coordenadas.mostraCoordenadas(); |
472 | i3GEO.gadgets.mostraEscalaNumerica(); | 471 | i3GEO.gadgets.mostraEscalaNumerica(); |
473 | i3GEO.gadgets.mostraEscalaGrafica(); | 472 | i3GEO.gadgets.mostraEscalaGrafica(); |
474 | i3GEO.gadgets.visual.inicia(); | 473 | i3GEO.gadgets.visual.inicia(); |
@@ -774,8 +773,7 @@ i3GEO.Interface = { | @@ -774,8 +773,7 @@ i3GEO.Interface = { | ||
774 | } | 773 | } |
775 | 774 | ||
776 | }; | 775 | }; |
777 | - i3GEO.coordenadas.mostraCoordenadasGEO(); | ||
778 | - i3GEO.coordenadas.mostraCoordenadasUTM(); | 776 | + i3GEO.coordenadas.mostraCoordenadas(); |
779 | montaMapa(); | 777 | montaMapa(); |
780 | //i3GEO.php.openlayers(montaMapa); | 778 | //i3GEO.php.openlayers(montaMapa); |
781 | i3GEO.gadgets.mostraMenuSuspenso(); | 779 | i3GEO.gadgets.mostraMenuSuspenso(); |
@@ -1207,8 +1205,7 @@ i3GEO.Interface = { | @@ -1207,8 +1205,7 @@ i3GEO.Interface = { | ||
1207 | i3GEO.gadgets.mostraInserirKml(); | 1205 | i3GEO.gadgets.mostraInserirKml(); |
1208 | i3GEO.Interface.googlemaps.ativaBotoes(); | 1206 | i3GEO.Interface.googlemaps.ativaBotoes(); |
1209 | i3GEO.eventos.ativa($i(i3GEO.Interface.IDMAPA)); | 1207 | i3GEO.eventos.ativa($i(i3GEO.Interface.IDMAPA)); |
1210 | - i3GEO.coordenadas.mostraCoordenadasGEO(); | ||
1211 | - i3GEO.coordenadas.mostraCoordenadasUTM(); | 1208 | + i3GEO.coordenadas.mostraCoordenadas(); |
1212 | i3GEO.gadgets.mostraEscalaNumerica(); | 1209 | i3GEO.gadgets.mostraEscalaNumerica(); |
1213 | i3GEO.gadgets.mostraMenuSuspenso(); | 1210 | i3GEO.gadgets.mostraMenuSuspenso(); |
1214 | i3GEO.idioma.mostraSeletor(); | 1211 | i3GEO.idioma.mostraSeletor(); |
classesjs/compactajs.php
@@ -96,6 +96,7 @@ packer("../pacotes/balloon-tooltips/htdocs/js/balloon.js","../pacotes/balloon-to | @@ -96,6 +96,7 @@ packer("../pacotes/balloon-tooltips/htdocs/js/balloon.js","../pacotes/balloon-to | ||
96 | //gera um único js para a inicialização do I3Geo | 96 | //gera um único js para a inicialização do I3Geo |
97 | // | 97 | // |
98 | $jsfiles = array( | 98 | $jsfiles = array( |
99 | +"../pacotes/proj4js/lib/proj4js-compressed.js", | ||
99 | "../pacotes/cpaint/cpaint2_compacto.inc.js", | 100 | "../pacotes/cpaint/cpaint2_compacto.inc.js", |
100 | "../pacotes/yui270/build/yahoo/yahoo-min.js", | 101 | "../pacotes/yui270/build/yahoo/yahoo-min.js", |
101 | "../pacotes/yui270/build/yahoo-dom-event/yahoo-dom-event.js", | 102 | "../pacotes/yui270/build/yahoo-dom-event/yahoo-dom-event.js", |
classesjs/i3geonaocompacto.js
@@ -14,6 +14,7 @@ for (var i = 0; i < scripts.length; i++) { | @@ -14,6 +14,7 @@ for (var i = 0; i < scripts.length; i++) { | ||
14 | } | 14 | } |
15 | var allScriptTags = ""; | 15 | var allScriptTags = ""; |
16 | var jsfiles = new Array( | 16 | var jsfiles = new Array( |
17 | +"../pacotes/proj4js/lib/proj4js-compressed.js", | ||
17 | "../pacotes/yui270/build/yahoo/yahoo-min.js", | 18 | "../pacotes/yui270/build/yahoo/yahoo-min.js", |
18 | "../pacotes/yui270/build/yahoo-dom-event/yahoo-dom-event.js", | 19 | "../pacotes/yui270/build/yahoo-dom-event/yahoo-dom-event.js", |
19 | "../pacotes/yui270/build/dom/dom-min.js", | 20 | "../pacotes/yui270/build/dom/dom-min.js", |
ferramentas/epsg.txt
1 | -# Geográfica SAD69 | 1 | +# Geográfica SAD69 GRS67 4291 |
2 | <4291> +proj=longlat +ellps=GRS67 +no_defs no_defs <> | 2 | <4291> +proj=longlat +ellps=GRS67 +no_defs no_defs <> |
3 | +# Geográfica SAD69 aust_SA 4618 (mais recente) | ||
4 | +<4618> +proj=longlat +ellps=aust_SA +no_defs <> | ||
3 | # WGS 84 | 5 | # WGS 84 |
4 | <4326> +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs no_defs <> | 6 | <4326> +proj=longlat +ellps=WGS84 +datum=WGS84 +no_defs no_defs <> |
5 | # Corrego Alegre / UTM zone 21S | 7 | # Corrego Alegre / UTM zone 21S |
@@ -14,29 +16,73 @@ | @@ -14,29 +16,73 @@ | ||
14 | <22525> +proj=utm +zone=25 +south +ellps=intl +towgs84=-206,172,-6,0,0,0,0 +units=m +no_defs <> | 16 | <22525> +proj=utm +zone=25 +south +ellps=intl +towgs84=-206,172,-6,0,0,0,0 +units=m +no_defs <> |
15 | # SAD69 / Brazil Polyconic | 17 | # SAD69 / Brazil Polyconic |
16 | <29101> +proj=poly +lat_0=0 +lon_0=-54 +x_0=5000000 +y_0=10000000 +ellps=aust_SA +units=m +no_defs <> | 18 | <29101> +proj=poly +lat_0=0 +lon_0=-54 +x_0=5000000 +y_0=10000000 +ellps=aust_SA +units=m +no_defs <> |
17 | -# SAD69 / UTM zone 19N | ||
18 | -<29119> +proj=utm +zone=19 +ellps=GRS67 +units=m +no_defs <> | ||
19 | -# SAD69 / UTM zone 20N | ||
20 | -<29120> +proj=utm +zone=20 +ellps=GRS67 +units=m +no_defs <> | ||
21 | -# SAD69 / UTM zone 21N | ||
22 | -<29121> +proj=utm +zone=21 +ellps=GRS67 +units=m +no_defs <> | ||
23 | -# SAD69 / UTM zone 22N | ||
24 | -<29122> +proj=utm +zone=22 +ellps=GRS67 +units=m +no_defs <> | ||
25 | -# SAD69 / UTM zone 17S | ||
26 | -<29177> +proj=utm +zone=17 +south +ellps=GRS67 +units=m +no_defs <> | ||
27 | -# SAD69 / UTM zone 18S | ||
28 | -<29178> +proj=utm +zone=18 +south +ellps=GRS67 +units=m +no_defs <> | ||
29 | -# SAD69 / UTM zone 19S | ||
30 | -<29179> +proj=utm +zone=19 +south +ellps=GRS67 +units=m +no_defs <> | ||
31 | -# SAD69 / UTM zone 20S | ||
32 | -<29180> +proj=utm +zone=20 +south +ellps=GRS67 +units=m +no_defs <> | ||
33 | -# SAD69 / UTM zone 21S | ||
34 | -<29181> +proj=utm +zone=21 +south +ellps=GRS67 +units=m +no_defs <> | ||
35 | -# SAD69 / UTM zone 22S | ||
36 | -<29182> +proj=utm +zone=22 +south +ellps=GRS67 +units=m +no_defs <> | ||
37 | -# SAD69 / UTM zone 23S | ||
38 | -<29183> +proj=utm +zone=23 +south +ellps=GRS67 +units=m +no_defs <> | ||
39 | -# SAD69 / UTM zone 24S | ||
40 | -<29184> +proj=utm +zone=24 +south +ellps=GRS67 +units=m +no_defs <> | ||
41 | -# SAD69 / UTM zone 25S | ||
42 | -<29185> +proj=utm +zone=25 +south +ellps=GRS67 +units=m +no_defs <> | 19 | +# SAD69 / UTM zone 18N |
20 | +<29168> +proj=utm +zone=18 +ellps=aust_SA +units=m +no_defs <> | ||
21 | +# SAD69 / UTM zone 19N | ||
22 | +<29169> +proj=utm +zone=19 +ellps=aust_SA +units=m +no_defs <> | ||
23 | +# SAD69 / UTM zone 20N | ||
24 | +<29170> +proj=utm +zone=20 +ellps=aust_SA +units=m +no_defs <> | ||
25 | +# SAD69 / UTM zone 21N | ||
26 | +<29171> +proj=utm +zone=21 +ellps=aust_SA +units=m +no_defs <> | ||
27 | +# SAD69 / UTM zone 22N | ||
28 | +<29172> +proj=utm +zone=22 +ellps=aust_SA +units=m +no_defs <> | ||
29 | +# SAD69 / UTM zone 17S | ||
30 | +<29187> +proj=utm +zone=17 +south +ellps=aust_SA +units=m +no_defs <> | ||
31 | +# SAD69 / UTM zone 18S | ||
32 | +<29188> +proj=utm +zone=18 +south +ellps=aust_SA +units=m +no_defs <> | ||
33 | +# SAD69 / UTM zone 19S | ||
34 | +<29189> +proj=utm +zone=19 +south +ellps=aust_SA +units=m +no_defs <> | ||
35 | +# SAD69 / UTM zone 20S | ||
36 | +<29190> +proj=utm +zone=20 +south +ellps=aust_SA +units=m +no_defs <> | ||
37 | +# SAD69 / UTM zone 21S | ||
38 | +<29191> +proj=utm +zone=21 +south +ellps=aust_SA +units=m +no_defs <> | ||
39 | +# SAD69 / UTM zone 22S | ||
40 | +<29192> +proj=utm +zone=22 +south +ellps=aust_SA +units=m +no_defs <> | ||
41 | +# SAD69 / UTM zone 23S | ||
42 | +<29193> +proj=utm +zone=23 +south +ellps=aust_SA +units=m +no_defs <> | ||
43 | +# SAD69 / UTM zone 24S | ||
44 | +<29194> +proj=utm +zone=24 +south +ellps=aust_SA +units=m +no_defs <> | ||
45 | +# SAD69 / UTM zone 25S | ||
46 | +<29195> +proj=utm +zone=25 +south +ellps=aust_SA +units=m +no_defs <> | ||
47 | +# SIRGAS 2000 / UTM zone 11N | ||
48 | +<31965> +proj=utm +zone=11 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
49 | +# SIRGAS 2000 / UTM zone 12N | ||
50 | +<31966> +proj=utm +zone=12 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
51 | +# SIRGAS 2000 / UTM zone 13N | ||
52 | +<31967> +proj=utm +zone=13 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
53 | +# SIRGAS 2000 / UTM zone 14N | ||
54 | +<31968> +proj=utm +zone=14 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
55 | +# SIRGAS 2000 / UTM zone 15N | ||
56 | +<31969> +proj=utm +zone=15 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
57 | +# SIRGAS 2000 / UTM zone 16N | ||
58 | +<31970> +proj=utm +zone=16 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
59 | +# SIRGAS 2000 / UTM zone 17N | ||
60 | +<31971> +proj=utm +zone=17 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
61 | +# SIRGAS 2000 / UTM zone 18N | ||
62 | +<31972> +proj=utm +zone=18 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
63 | +# SIRGAS 2000 / UTM zone 19N | ||
64 | +<31973> +proj=utm +zone=19 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
65 | +# SIRGAS 2000 / UTM zone 20N | ||
66 | +<31974> +proj=utm +zone=20 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
67 | +# SIRGAS 2000 / UTM zone 21N | ||
68 | +<31975> +proj=utm +zone=21 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
69 | +# SIRGAS 2000 / UTM zone 22N | ||
70 | +<31976> +proj=utm +zone=22 +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
71 | +# SIRGAS 2000 / UTM zone 17S | ||
72 | +<31977> +proj=utm +zone=17 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
73 | +# SIRGAS 2000 / UTM zone 18S | ||
74 | +<31978> +proj=utm +zone=18 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
75 | +# SIRGAS 2000 / UTM zone 19S | ||
76 | +<31979> +proj=utm +zone=19 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
77 | +# SIRGAS 2000 / UTM zone 20S | ||
78 | +<31980> +proj=utm +zone=20 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
79 | +# SIRGAS 2000 / UTM zone 21S | ||
80 | +<31981> +proj=utm +zone=21 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
81 | +# SIRGAS 2000 / UTM zone 22S | ||
82 | +<31982> +proj=utm +zone=22 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
83 | +# SIRGAS 2000 / UTM zone 23S | ||
84 | +<31983> +proj=utm +zone=23 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
85 | +# SIRGAS 2000 / UTM zone 24S | ||
86 | +<31984> +proj=utm +zone=24 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
87 | +# SIRGAS 2000 / UTM zone 25S | ||
88 | +<31985> +proj=utm +zone=25 +south +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +units=m +no_defs <> | ||
43 | \ No newline at end of file | 89 | \ No newline at end of file |