Cálculos

Utilitários para cálculos.

Namespace

i3GEO.calculo

Veja

http://localhost/i3geo/classesjs/classe_calculo.js

Summary
CálculosUtilitários para cálculos.
Propriedades
metododistanciaMétodo utilizado no cálculo de distâncias
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.
distHaversineCalcula a distância em km entre dois pontos (método Haversine).
distVincentyGiven two objects representing points with geographic coordinates, this calculates the distance between those points on the surface of an ellipsoid.
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
ext2rectCalcula o posicionamento de um retângulo com base na extensão geográfica.

Propriedades

metododistancia

Método utilizado no cálculo de distâncias

vicenty|haversine

Default: {vicenty}

Functions

dms2dd

dms2dd : function(cd,
cm,
cs)

Converte coordenadas formatadas em DMS para DD

Parametros

{Numeric}grau (com sinal de - para sul e oeste)
{Numeric}minuto
{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

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

Return

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

dd2dms

dd2dms : function(x,
y)

Converte coordenadas de dd em dms.

Parametros

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

Return

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

tela2dd

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

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

Parametros

{Numeric}x em valores de imagem.
{Numeric}y em coordenadas de imagem.
{Numeric}tamanho no terreno do pixel da imagem em dd.
{String}extensão geográfica do mapa.
{string}(opcional) id do objeto que originou o cálculo (é usado para identificar se o cálculo está sendo feito sobr o mapa de referência ou não)

Return

{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.

O método de cálculo é definido na variável i3GEO.calculo.metododistancia

Parametros

{Numeric}x inicial.
{Numeric}y inicial
{Numeric}x final
{Numeric}y final

Return

{Numeric}

distHaversine

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

Calcula a distância em km entre dois pontos (método Haversine).

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

{Numeric}x inicial.
{Numeric}y inicial
{Numeric}x final
{Numeric}y final

Return

{Numeric}

distVincenty

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

Given two objects representing points with geographic coordinates, this calculates the distance between those points on the surface of an ellipsoid.

Baseado em OpenLayers.Util.distVincenty

Parametros

{Numeric}x inicial.
{Numeric}y inicial
{Numeric}x final
{Numeric}y final

Return

{Numeric}The distance (in km) between the two input points as measured on an ellipsoid.  Note that the input point objects must be in geographic coordinates (decimal degrees) and the return distance is in kilometers.

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

{Numeric}x inicial.
{Numeric}y inicial
{Numeric}x final
{Numeric}y final

Return

{Numeric}ânngulo em décimos de grau

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

{Numeric}longitude (x) do ponto de origem
{Numeric}latitude do ponto de origem
{Numeric}distância em Km
{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

ext2rect

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

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

Parametros

{String}id do elemento html com o retangulo, pode ser vazio
{String}extensao geografica do mapa onde está o retangulo
{String}extensao geografica do retangulo
{Number}tamanho do pixel do mapa em dd
{Objeto 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,
idorigem)
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.
distHaversine : function(lon1,
lat1,
lon2,
lat2)
Calcula a distância em km entre dois pontos (método Haversine).
distVincenty : function(lon1,
lat1,
lon2,
lat2)
Given two objects representing points with geographic coordinates, this calculates the distance between those points on the surface of an ellipsoid.
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
ext2rect : function(idrect,
mapext,
boxext,
pixel,
documento)
Calcula o posicionamento de um retângulo com base na extensão geográfica.