react-calculo-geodesico
v1.0.4
Published
Calculos geodesicos
Downloads
5
Maintainers
Readme
React Input por Extenso
Componente React para calculo geodésicos
Como instalar
Abaixo as formas de como instalar essa biblioteca utilizando o npm ou yarn:
npm install react-calculo-geodesico
# ou
yarn add react-calculo-geodesico
Como usar
Uma forma básica de como utilizar o componente
import geo from "react-calculo-geodesica";
geo.ConvertUtmDecimal(656549.4211550002, -48.336666666667,22,hemisferio = hemi.south);
resultado :{lat: -23.70554756706348,lng: -49.46444110715485}
A função ConvertUtmDecimal é uma função JavaScript que converte coordenadas UTM (Universal Transverse Mercator) para coordenadas geográficas (latitude e longitude) em formato decimal. Ela usa o pacote proj4 para realizar essa conversão.
A função aceita quatro parâmetros de entrada: "easting", "northing", "zone" e "hemisfério", sendo que "easting" e "northing" representam as coordenadas UTM e "zone" representa o número da zona UTM, e "hemisfério" é uma string que pode ser "north" ou "south", indicando o hemisfério onde as coordenadas UTM estão. Caso não seja especificado, o valor default é "south"
geo.getRadiano(-23.985921638598054);
//Converte Grau decimal em Radianos
geo.getGraus(-0.41863330671888943);
//Converte Radiano em Grau decimal
const coord = [
[-49.4658297275725, -23.7057909679787, 0],
[-49.4659128408675, -23.7057745926662, 0],
[-49.465879518788, -23.7056305180162, 0],
[-49.4657969904007, -23.7056420639345, 0],
[-49.4658297275725, -23.7057909679787, 0],
];
geo.calculateArea(coord);
//Calcula a área de um array de coordenadas de um poligono
geo.calculoAzimute(coord, coord2, geo.numCasas.tres);
//calculo o azimute entre duas coordenadas
geo.pontoMedio(coord, coord2);
//retorna o ponto médio entre duas coordenadas
geo.convertGMS_Dec("287° 08' 01,94''");
//Converte o Grau minutos e Segundos em Grau decimal
converterUtm
Esta é uma função JavaScript que converte coordenadas de latitude e longitude em coordenadas Universal Transversa de Mercator (UTM). A função recebe três parâmetros: lat (latitude), lng (longitude) e Datum (o datum utilizado para as coordenadas).
Usage
Você pode usar esta função fornecendo a latitude, longitude e o datum. Os valores padrão para a função são: lat = -24.009166667521 lng = -48.336666666667 Datum = datum.sirgas You can change these values to your desired coordinates and datum.
Exemplo de uso
let coordinates = converterUtm(40.785091, -73.968285, "WGS 84"); console.log(coordinates);
Datum Suportado
Sirgas 2000 Sad 69 WGS 84
Retorna
um objeto contendo UTM coordinates (EAST and NORTH) Hemisphere (N or S) Zone (Fuso) Central Meridian (Meridiano) Semi-major axis (Semi_eixo) Eccentricity (Excentricidade) Ellipsoidal height (Achamento)
note
Esta função usa as fórmulas e operações matemáticas, incluindo trigonometria e logaritmos, para calcular as coordenadas UTM.
moveToSequence
Essa função tem como objetivo mover um elemento específico de uma array de coordenadas para o começo da array.
Parâmetros
latLng: objeto que contém as propriedades "lat" e "lng" (latitude e longitude) arr: array de coordenadas (latitude e longitude) em formato de arrays Como funciona A função procura o índice na array "arr" onde o objeto "latLng" é encontrado. Em seguida, ele verifica se o índice encontrado é -1 ou 0, se for, ele retorna a array "arr" sem fazer nenhuma modificação. Caso contrário, ele cria duas novas arrays: "adjacent" e "nonAdjacent". "adjacent" é a array de elementos a partir do índice encontrado até o final da array original "arr" e "nonAdjacent" é a array de elementos antes do índice encontrado. Finalmente, ele concatena as duas arrays e retorna-as como uma nova array.
Exemplo de uso
const latLng = { lat: 1, lng: 2 }; const arr = [[3, 4], [5, 6], [1, 2], [7, 8]]; const newArr = moveToSequence(latLng, arr); console.log(newArr); Saida: [[1, 2], [3, 4], [5, 6], [7, 8]]
Nota: Se o objeto latLng não for encontrado na array, a array retornada será a mesma passada como parametro
Calcula Distância
Esta função tem como objetivo calcular a distância entre duas coordenadas.
Utilização
A função calculaDistancia recebe três parâmetros:
CoordenadaInicial: array com as coordenadas iniciais (latitude e longitude) CoordenadaFinal: array com as coordenadas finais (latitude e longitude) Tipo (opcional): tipo de coordenada a ser utilizado na cálculo. O padrão é UTM. A função retorna a distância entre as coordenadas em metros.
Observações
Caso o tipo de coordenada seja diferente de "UTM", a distância é calculada utilizando a fórmula de Haversine. É necessário importar tipoCoordenada.UTM.
Exemplo
calculaDistancia([-23.5489, -46.6388], [-22.908333, -43.196388])
getFusoMerediano
Esta função é usada para calcular o fuso meridiano (MC) a partir da longitude (lng) fornecida. A lógica da função é a seguinte: Utiliza a função parseInt para calcular o fuso a partir da divisão da longitude por 6 e somando 31. Utiliza a fórmula 6 * Fuso - 183 para calcular o Merediano Central (MC). Retorna um objeto JSON com os valores calculados para o fuso (Fuso) e o Merediano Central (MC).
Exemplo de uso:
let lng = -43.2; let result = getFusoMerediano(lng); console.log(result); Saída: {"Fuso":23,"Merediano":57}
Note que o resultado é retornado em formato de objeto JSON, então, se você quiser acessar somente o valor do fuso, você pode fazer assim: console.log(result.Fuso);
geo.datum
sirgas: "Sirgas 2000", WGS84: "WGS 84", Sad69: "Sad 69",
geo.numCasas
nenhuma: 0, uma: 1, duas: 2, tres: 3, quadro: 4
geo.tipoCoordenada
Decimal, UTM
Licença
MIT License - Copyright (c) 2022 Markilha