1.0.4 • Published 1 year ago

react-calculo-geodesico v1.0.4

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

React Input por Extenso

Componente React para calculo geodésicos

npm NPM

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