Cálculos

Arquivo

i3geo/classesjs/classe_calculo.js

Licenca

GPL2

I3Geo Interface Integrada de Ferramentas de Geoprocessamento para Internet

Direitos Autorais Reservados © 2006 Ministério do Meio Ambiente Brasil Desenvolvedor: Edmar Moretti edmar..nosp@m.moretti@mma.g.nosp@m.ov.br

Este programa é software livre; você pode redistribuí-lo e/ou modificá-lo sob os termos da Licença Pública Geral GNU conforme publicada pela Free Software Foundation; tanto a versão 2 da Licença.  Este programa é distribuído na expectativa de que seja útil, porém, SEM NENHUMA GARANTIA; nem mesmo a garantia implícita de COMERCIABILIDADE OU ADEQUAÇÃO A UMA FINALIDADE ESPECÍFICA.  Consulte a Licença Pública Geral do GNU para mais detalhes.  Você deve ter recebido uma cópia da Licença Pública Geral do GNU junto com este programa; se não, escreva para a Free Software Foundation, Inc., no endereço 59 Temple Street, Suite 330, Boston, MA 02111-1307 USA.

Summary
Cálculosi3geo/classesjs/classe_calculo.js
Classe
i3GEO. calculoUtilitários para cálculos.
Functions
dms2ddConverte coordenadas formatadas em DMS para DD
dd2telaConverte coordenadas dd em coordenadas de tela.
dd2dmsConverte coordenadas de dd em dms.
tela2ddConverte o x,y de unidades de tela para décimo de grau.
distanciaCalcula a distância em km entre dois pontos.
direcaoCalcula a direção (0 a 360 graus) entre dois pontos.
destinoDDCalcula as coordenadas de um novo ponto em função da posição de um ponto de origem, distância e direção
rect2extCalcula a extensão geográfica de um retângulo desenhado sobre o mapa.
ext2rectCalcula o posicionamento de um retângulo com base na extensão geográfica.

Classe

i3GEO. calculo

Utilitários para cálculos.

Functions

dms2dd

dms2dd: function(cd,
cm,
cs)

Converte coordenadas formatadas em DMS para DD

Parametros

cd {Numeric}grau (com sinal de - para sul e oeste)
cm {Numeric}minuto
cs {Numeric}segundo

Return

{Numeric}Coordenada em décimos de grau.

dd2tela

dd2tela: function (vx,
vy,
docmapa,
ext,
cellsize)

Converte coordenadas dd em coordenadas de tela.

Parametros

vx {Numeric}coordenada x.
vy {Numeric}coordenada y.
docmapaobjeto DOM que contém o objeto imagem
ext {String}(opcional) extensão geográfica (espaço como separador) xmin ymin xmax ymax
cellsize {Numeric}(opcional) tamanho no terreno em DD de cada pixel da imagem

Returns

{Array}Array com o valor de x [0] e y [1]

dd2dms

dd2dms: function(x,
y)

Converte coordenadas de dd em dms.

Parametros

x {Numeric}coordenada x.
y {Numeric}coordenada y.

Returns

{Array}Array com o valor de x [0] e y [1] no formato dd mm ss

tela2dd

tela2dd: function(xfign,
yfign,
g_celula,
imgext)

Converte o x,y de unidades de tela para décimo de grau.

Parametros

xfign {Numeric}x em valores de imagem.
yfign {Numeric}y em coordenadas de imagem.
g_celula {Numeric}tamanho no terreno do pixel da imagem em dd.
imgext {String}extensão geográfica do mapa.

Returns

{Array}Coordena em dd x[0] e y[1].

distancia

distancia: function(lon1,
lat1,
lon2,
lat2)

Calcula a distância em km entre dois pontos.

Baseado no site http://www.movable-type.co.uk- /scripts- /latlong.html (indicado por lour.nosp@m.iques@yahoo..nosp@m.com.br)

Em versões anteriores utilizava-se o cálculo proposto em http://www.wcrl.ars.usda.gov- /cec- /java- /lat-long.htm

Parametros

lon1 {Numeric}x inicial.
lat1 {Numeric}y inicial
lon2 {Numeric}x final
lat2 {Numeric}y final

Return

Type

{Numeric}

direcao

direcao: function(lon1,
lat1,
lon2,
lat2)

Calcula a direção (0 a 360 graus) entre dois pontos.

Baseado no site http://www.movable-type.co.uk- /scripts- /latlong.html (indicado por lour.nosp@m.iques@yahoo..nosp@m.com.br)

Parametros

lon1 {Numeric}x inicial.
lat1 {Numeric}y inicial
lon2 {Numeric}x final
lat2 {Numeric}y final

Return

Ângulo em décimos de grau

Type

{Numeric}

destinoDD

destinoDD: function(lon,
lat,
d,
direcao)

Calcula as coordenadas de um novo ponto em função da posição de um ponto de origem, distância e direção

O novo ponto é calculado em coordenadas geográficas em DD

Baseado no site http://www.movable-type.co.uk- /scripts- /latlong.html (indicado por lour.nosp@m.iques@yahoo..nosp@m.com.br)

Parametros

lon {Numeric}longitude (x) do ponto de origem
lat {Numeric}latitude do ponto de origem
d {Numeric}distância em Km
direção {Numeric}ângulo desejado em décimos de grau (direção de 0 a 360)

Return

Array com a longitude e latitude em décimos de grau ([0] = longitude, [1] = latitude

Type

{Array}

rect2ext

rect2ext: function(idrect,
mapext,
pixel)

Calcula a extensão geográfica de um retângulo desenhado sobre o mapa.

Parametros

idrectid do elemento html com o retangulo
mapextextensao geografica do mapa onde está o retangulo
pixeltamanho do pixel do mapa em dd

return

{Array}extensão, xmin, ymin, xmax, ymax

ext2rect

ext2rect: function(idrect,
mapext,
boxext,
pixel,
documento)

Calcula o posicionamento de um retângulo com base na extensão geográfica.

Parametros

idrect {String}id do elemento html com o retangulo, pode ser vazio
mapext {String}extensao geografica do mapa onde está o retangulo
boxext {String}extensao geografica do retangulo
pixel {Number}tamanho do pixel do mapa em dd
documento {Object DOM}objeto sob o qual o retângulo será posicionado

Return

{Array}width,heigth,top,left
dms2dd: function(cd,
cm,
cs)
Converte coordenadas formatadas em DMS para DD
dd2tela: function (vx,
vy,
docmapa,
ext,
cellsize)
Converte coordenadas dd em coordenadas de tela.
dd2dms: function(x,
y)
Converte coordenadas de dd em dms.
tela2dd: function(xfign,
yfign,
g_celula,
imgext)
Converte o x,y de unidades de tela para décimo de grau.
distancia: function(lon1,
lat1,
lon2,
lat2)
Calcula a distância em km entre dois pontos.
direcao: function(lon1,
lat1,
lon2,
lat2)
Calcula a direção (0 a 360 graus) entre dois pontos.
destinoDD: function(lon,
lat,
d,
direcao)
Calcula as coordenadas de um novo ponto em função da posição de um ponto de origem, distância e direção
rect2ext: function(idrect,
mapext,
pixel)
Calcula a extensão geográfica de um retângulo desenhado sobre o mapa.
ext2rect: function(idrect,
mapext,
boxext,
pixel,
documento)
Calcula o posicionamento de um retângulo com base na extensão geográfica.