Pesquisar uma localização por latitude e longitude

Por The Kaleidr Team · Publicado 10 de agosto de 2026 · 16 min de leitura

Campos de latitude e longitude validados e convertidos em um ponto exato no mapa, com uma etiqueta de lugar opcional obtida por geocodificação reversa.

Para pesquisar uma localização por latitude e longitude, valide o par de coordenadas, confirme a ordem, centralize o mapa e, quando útil, faça a geocodificação reversa para exibir uma etiqueta. O erro mais comum é inverter a ordem: o Google usa campos nomeados lat/lng, enquanto GeoJSON, Mapbox GL JS e MapLibre GL JS usam arrays com longitude primeiro. Uma ferramenta de produção deve validar intervalos, preservar os valores originais, tratar resultados vazios e nunca sugerir que o endereço retornado é mais preciso do que os dados do geocodificador.

As seções seguintes abordam validação, contratos de ordem, exemplos do Google Maps, Mapbox e MapLibre, geocodificação reversa, GeoJSON e falhas comuns. Consulte o Kaleidr Spatial AI e a documentação para desenvolvedores. Depois de resolvido, o ponto pode ser a origem de uma pesquisa de lugares próximos.

Fundamentos da pesquisa por coordenadas

  • Valide primeiro: latitude de -90 a 90; longitude de -180 a 180.
  • Conheça a ordem: campos nomeados reduzem a ambiguidade; arrays precisam de um contrato explícito.
  • Marque antes de enriquecer: exiba o ponto exato e só então faça geocodificação reversa, se necessário.
  • Preserve os originais: mantenha as coordenadas informadas ao lado de qualquer endereço.
  • Siga a API: o Google usa lat/lng; GeoJSON, Mapbox e MapLibre usam [lng, lat].

Campos de latitude e longitude validados e convertidos em um ponto exato no mapa, com uma etiqueta de lugar opcional obtida por geocodificação reversa.

Como pesquisar uma localização por latitude e longitude?

Uma pesquisa de coordenadas precisa de uma sequência determinística curta: aceitar latitude e longitude, normalizar separadores decimais e espaço em branco, validar a latitude contra -90 a 90 e a longitude contra -180 a 180, converter na ordem de coordenadas exigida pela biblioteca de mapas selecionada, central o mapa e adicionar um marcador, opcionalmente reverso-geocódigo o ponto, e mostrar as coordenadas originais ao lado de qualquer etiqueta de lugar retornados. O último passo é importante. A geocodição reversa é uma interpretação de uma coordenada, não uma substituição para ela. O Google descreve a geocodição reversa como traduzir um local de mapa em um endereço e anotações legíveis por humanos que o resultado é uma estimativa baseada no local endereço mais próximo (Geocodição inversa). Mapbox similarmente distingue a geocodição para a frente, que converte texto em coordenadas, da geocodição reversa, que converte coordenadas em uma descrição de texto (Entendendo a API de Geocodição).

Latitude mede a posição norte ou sul do equador; longitude mede posição a leste ou oeste do primeiro meridiano. Para coordenadas geográficas de grau decimal ordinário, latitude varia de -90 a 90 e longitude de -180 a 180. Um ponto em Washington, D.C., por exemplo, pode ser escrito como latitude 38.8977 e longitude -77.0365. Os valores por si só não são suficientes: o aplicativo também deve saber qual valor vem primeiro.

Por que a ordem das coordenadas causa erros na pesquisa?

A ordem das coordenadas é uma das causas mais frequentes de pesquisas cartográficas incorretas. A notação para pessoas costuma escrever primeiro a latitude; o Google Maps usa os campos nomeados lat e lng em LatLngLiteral (referência de coordenadas). GeoJSON Point e os centros do Mapbox GL JS e MapLibre GL JS usam arrays longitude-latitude. O RFC do GeoJSON define posições nessa ordem e usa coordenadas WGS 84 em graus decimais (RFC 7946). Campos nomeados reduzem a ambiguidade; arrays posicionais precisam de um contrato explícito.

Comparação entre entrada humana latitude-longitude, campos nomeados do Google e arrays longitude-latitude usados por GeoJSON, Mapbox e MapLibre.

Sistema Representação típica Ordem
Latitude/longitude legível por humanos 38.8977, -77.0365 latitude, longitude
Google Maps LatLngLiteral { lat: 38.8977, lng: -77.0365 } campos nomeados
Ponto GeoJSON [-77.0365, 38.8977] longitude, latitude
Mapbox GL JS centro [-77.0365, 38.8977] longitude, latitude
MapLibre GL JS centro [-77.0365, 38.8977] longitude, latitude

A maioria das pesquisas em mapas web usa longitude e latitude WGS 84 em graus decimais. O registro EPSG identifica o sistema geográfico 2D WGS 84 como EPSG:4326 e lista seus eixos como latitude e longitude (EPSG:4326). O GeoJSON, porém, coloca a longitude primeiro nos arrays. Por isso, “EPSG:4326 é latitude-longitude” e “GeoJSON é longitude-latitude” podem estar corretos em suas respectivas especificações. No código, siga o contrato real da API ou formato, não uma frase memorizada como “lat/lon”.

Como analisar e validar coordenadas?

Um pequeno analisador evita a maioria dos erros de entrada. Aceite pares como 38.8977, -77.0365, valores separados por espaço ou campos distintos. Exija exatamente dois números finitos, rejeite latitudes fora de -90…90 e longitudes fora de -180…180 e retorne campos nomeados { latitude, longitude }. Não troque os valores automaticamente porque o primeiro está fora do intervalo de latitude; isso pode esconder um erro na origem dos dados. Se oferecer uma correção, apresente explicitamente a possibilidade de os valores estarem invertidos.

function parseCoordinatePair(input) {
  const parts = input
    .trim()
    .split(/[\s,]+/)
    .filter(Boolean);

  if (parts.length !== 2) {
    throw new Error("Enter exactly two coordinate values.");
  }

  const latitude = Number(parts[0]);
  const longitude = Number(parts[1]);

  if (!Number.isFinite(latitude) || !Number.isFinite(longitude)) {
    throw new Error("Coordinates must be valid numbers.");
  }

  if (latitude < -90 || latitude > 90) {
    throw new Error("Latitude must be between -90 and 90.");
  }

  if (longitude < -180 || longitude > 180) {
    throw new Error("Longitude must be between -180 and 180.");
  }

  return { latitude, longitude };
}

Um formulário básico acessível deve usar rótulos visíveis em vez de espaços reservados sozinhos, inputmode="decimal" em ambos os campos, um controle de envio e uma região de status com role="status" assim, os usuários de teclado e leitor de tela recebem o mesmo feedback que os usuários que assistem ao movimento do marcador. Mantenha coordenadas textuais fora da tela do mapa, fornecer feedback de cópia, e não exigem arrastar um marcador como a única maneira de editar coordenadas.

Quais são as diferenças entre Google Maps, Mapbox e MapLibre?

A API JavaScript do Google Maps representa pontos geográficos com LatLng ou LatLngLiteral, os campos lat e lng denominados evitam a ambiguidade de matriz posicional. A documentação atual do Google recomenda marcadores avançados para fluxos de trabalho de marcadores modernos (Adicionar um marcador). Após a validação, centralize o mapa e crie ou mova um marcador com { lat, lng }. Substitua a configuração de demonstração pela chave restrita do Google Maps e pelo ID do mapa de produção restrito do projeto, onde necessário.

Mapbox GL JS utiliza [longitude, latitude] para centro de mapas e coordenadas de marcadores (Mapbox GL JS; Marcadores). Crie a matriz como [longitude, latitude], chame setLngLat e flyTo o mesmo ponto. Para procura de endereço, utilizar um produto de geocodição Mapbox autorizado; Documentos do Mapbox invertem a geocodição como a conversão de coordenadas geográficas em uma descrição de texto.

MapLibre GL JS também usa matrizes de latitude de longitude (LngLat; Marcador). A documentação do MapLibre declara explicitamente que a biblioteca usa a ordem de latitude de longitude para corresponder ao Especificação do GeoJSON. MapLibre é um renderizador, não um fornecedor universal de geocodição: conectar um serviço de geocodição aprovado separadamente e seguir o licenciamento desse provedor, atribuição, armazenamento, e requisitos de credenciais.

Comparação neutra entre campos nomeados e arrays longitude-latitude usados para centralizar mapas e posicionar marcadores.

function showGoogleCoordinate(latitude, longitude) {
  const position = { lat: latitude, lng: longitude };
  map.setCenter(position);
  map.setZoom(16);
  marker.position = position;
}

function showLngLatCoordinate(latitude, longitude) {
  const lngLat = [longitude, latitude];
  marker.setLngLat(lngLat);
  map.flyTo({ center: lngLat, zoom: 16, essential: true });
}

Quando fazer a geocodificação reversa?

Um marcador informa ao usuário onde está a coordenada. A geocodição reversa pode adicionar um endereço ou área política próxima legível por humanos após o ponto ser planejado. Mantenha ambos visíveis, coordenadas originais e endereço retornado mais próximo, e lidar com resultados vazios sem remover o marcador. O Google observa que a geocodição inversa não é exata e pode retornar resultados em vários níveis geográficos. de um endereço de rua para um bairro, cidade, município, ou estado (Mapas JavaScript exemplo de geocodificação reversa).

Fluxo que separa a busca de uma coordenada exata da geocodificação reversa opcional para um endereço próximo ou contexto geográfico.

Esses fluxos de trabalho resolvem problemas opostos. A geocodição de encaminhar transforma um nome de endereço ou lugar em coordenadas e candidatos. A geocodição reversa transforma coordenadas em contexto legível por humanos. A pesquisa direta de coordenadas traça um ponto de mapa exato das coordenadas. A pesquisa nas proximidades usa uma coordenadas ou origem do lugar, além de critérios para retornar lugares próximos. Se o usuário já tiver coordenadas, não as codifique mais antes de colocar o ponto. Plote a coordenadas exata primeiro; geocodição reversa é enriquecimento opcional. Uma vez que uma coordenada se torna a origem da busca, o aplicativo pode recuperar lugares próximos, classificá-los por distância ou tempo de viagem, e deixar o usuário refina o resultado.

Uma vez que a coordenada é validada, um GeoJSON Point cria um objeto geográfico portátil que pode se mover entre muitos sistemas de mapeamento web. A matriz de coordenadas é novamente [longitude, latitude]. Um utilitário útil pode expor cópia como latitude/longitude, cópia como longitude/latitude, cópia como GeoJSON, copiar como um URL de compartilhamento, abrir no mapa atual, código inverso, e adicionar o ponto a um projeto.

function toGeoJSONPoint(latitude, longitude) {
  return {
    type: "Feature",
    geometry: {
      type: "Point",
      coordinates: [longitude, latitude]
    },
    properties: {
      source: "coordinate-search"
    }
  };
}

E quanto a DMS, UTM, precisão e IA?

Muitas pesquisas de coordenadas usam graus decimais, mas os usuários podem chegar com notação de graus-minutos-segundos. Conversão é graus mais minutos divididos por 60 mais segundos divididos por 3600, com um sinal negativo para oeste e sul. Para uma utilidade de produção, não aceitar DMS a menos que o analisador seja totalmente testado para letras do hemisfério, Símbolos de grau unicode, faltam segundos, sinais negativos combinados com sufixos de hemisfério, malformado minutos ou segundos acima de 60, e localização. Uma ferramenta de grau decimal menor e confiável é melhor do que um analisador que interpreta mal as coordenadas silenciosamente.

A UTM usa estings e nortes projetados em vez de latitude e longitude. O registro EPSG define WGS 84 / UTM como um CRS projetado zoneado com zonas separadas e baseadas em medidor coordenadas. Uma pesquisa UTM, portanto, precisa de uma zona e hemisfério ou um identificador de CRS inequívoco; não tratem a oriente e a nortina como latitude e longitude. Mais casas decimais implicam uma representação mais precisa, mas não garantem precisão de medição igual. Escolha a precisão da exibição para o fluxo de trabalho, preservar a coordenada armazenada completa, e não comercialize a precisão do centímetro meramente porque um número contém muitos decimais.

Uma pesquisa de coordenadas em si não requer AI. O fluxo de trabalho determinístico é analisar, validar, plotar e, opcionalmente, reverso-geocódigo. AI torna-se útil depois que o ponto geográfico é estabelecido, para perguntas sobre o que está em torno da coordenada, mantimentos dentro de uma viagem, contexto de vizinhança, hotéis entre o ponto e um aeroporto, ou comparando sites de candidatos. Kaleidr Spatial AI é projetado em torno da exploração de lugar baseado em questões. Os desenvolvedores também podem anexar o Chat Kaleidr a uma Mapbox existente. Google Maps, ou mapeamento MapLibre para que uma coordenada resolvida se torne contexto para exploração de linguagem natural; ver Chat AI no Mapbox, Google Maps e MapLibre. O renderizador existente ainda possui o mapa; lugar autoritário e serviços de roteamento permanecem responsáveis por respostas factuais.

Quais erros e casos extremos são mais importantes?

Erro O que acontece Correção recomendada
Supondo que cada API use a latitude primeiro Pontos aparecem no país errado ou falham na validação Ordem de coordenada de documento em todos os limites
Trocando silenciosamente entradas Os erros de dados upstream tornam-se invisíveis Oferecer uma sugestão explícita de swap
Reverso-geocodição antes de plotar Um endereço difuso substitui a coordenada exata Trama primeiro; enriquecer segundo
Tratar a geocodição inversa como exato Os usuários podem acreditar que um endereço próximo é o ponto exato Mostre a coordenade original e o rótulo retornando
Armazenar apenas endereços formatados Precisão e interoperabilidade são perdidas Preservar as coordenadas originais e IDs estáveis
Aceitando intervalos inválidos O renderizador prende, envolve ou se comporta de forma imprevisível Validar antes da chamada do provedor
Tratando o MapLibre como um geocodificador O aplicativo não tem fonte para pesquisa de endereço Conecte um serviço de geocodição aprovado separadamente
Mistura [lat, lng] com GeoJSON Mudanças de dados para o local errado Uso [lng, lat] em GeoJSON
Escondendo toda a saída dentro da tela A acessibilidade e a visibilidade da pesquisa sofrem Renderie um resultado de texto ao lado do mapa
Reivindando precisão excessiva A interface do usuário exagera a precisão da fonte Precisão numérica separada da precisão da medição

Trate entradas invertidas com uma sugestão explícita e rejeite valores fora do intervalo. Mantenha 0,0 como coordenada válida, embora ela possa ser sinalizada em controles de qualidade. Não remova o ponto quando a geocodificação reversa não retornar resultados nem force coordenadas oceânicas ou remotas para um endereço. Preserve os valores originais perto da linha internacional de data e use identificadores estáveis, em vez de presumir que coordenadas iguais representam a mesma entidade. Explique a ferramenta em texto indexável; uma ferramenta sólida e um guia confiável são melhores que páginas superficiais para cada sinônimo.

Conclusão

Pesquisar um mapa por latitude e longitude é um fluxo espacial simples, mas revela uma verdade importante: o significado dos números depende do contrato ao redor deles. Valide os valores, torne a ordem explícita, marque primeiro o ponto exato e trate a geocodificação reversa como enriquecimento contextual. O Google Maps costuma usar campos lat e lng; GeoJSON, Mapbox e MapLibre usam longitude-latitude nos arrays.

Para o Kaleidr, o próximo passo de maior valor não é transformar essa pesquisa determinística em uma tarefa de IA. A coordenada deve primeiro se tornar uma âncora geográfica confiável. Depois, o Spatial AI pode ajudar o usuário a fazer perguntas mais ricas sobre a área, lugares próximos, rotas e relações espaciais.

Explore a área ao redor de uma coordenada

Depois de localizar o ponto, use o Kaleidr Spatial AI para fazer perguntas contextuais sobre lugares próximos e relações geográficas. Abra o Kaleidr Spatial AI para explorar ao redor da coordenada resolvida e aprofunde a integração pela documentação para desenvolvedores quando o aplicativo hospedeiro já controla o mapa.

Perguntas frequentes

Como pesquisar uma localização por latitude e longitude?

Informe uma latitude válida entre -90 e 90 e uma longitude entre -180 e 180, converta-as para a ordem exigida pela API, centralize o mapa e adicione um marcador. A geocodificação reversa é opcional caso também queira um endereço legível.

O que vem primeiro, latitude ou longitude?

Depende da interface. Coordenadas para leitura humana costumam colocar a latitude primeiro. O Google Maps JavaScript usa campos lat e lng; GeoJSON, Mapbox GL JS e MapLibre GL JS colocam a longitude primeiro nos arrays.

Por que minha coordenada mostra o lugar errado?

A causa mais comum é a inversão da ordem. Também pode haver um sistema de referência incorreto, sobretudo quando coordenadas UTM projetadas são confundidas com latitude e longitude em graus decimais.

O que é geocodificação reversa?

A geocodificação reversa transforma uma coordenada em um endereço ou descrição geográfica legível. O resultado é uma estimativa baseada nos dados e na lógica de correspondência do provedor.

GeoJSON usa latitude-longitude ou longitude-latitude?

Os arrays de posição do GeoJSON usam primeiro a longitude e depois a latitude.

EPSG:4326 é o mesmo que GeoJSON?

Não. EPSG:4326 identifica o sistema geográfico 2D WGS 84. GeoJSON é um formato de dados que usa coordenadas WGS 84, mas define arrays em ordem longitude-latitude.

Posso pesquisar coordenadas UTM da mesma forma?

Não diretamente. UTM exige zona, hemisfério ou identificador CRS e valores projetados de leste e norte. Aplique uma transformação CRS testada antes de tratar o ponto como longitude e latitude.

MapLibre inclui geocodificação reversa?

MapLibre GL JS é principalmente um renderizador. A geocodificação reversa vem de um serviço separado escolhido pelo aplicativo hospedeiro.

Devo usar IA para encontrar uma coordenada?

Não para a busca básica. Análise, validação, exibição e geocodificação reversa são tarefas determinísticas. A IA ajuda depois que o ponto é conhecido e o usuário quer explorar contexto ou várias condições.

O Kaleidr funciona com um mapa centralizado em uma coordenada?

Sim. O mapa hospedeiro pode ser centralizado primeiro na coordenada resolvida; depois, o Kaleidr Chat pode se conectar a um mapa compatível para perguntas com contexto cartográfico. O mapa e os serviços oficiais continuam responsáveis pelas coordenadas exatas e pelos fatos dos lugares.

Referências

@misc{ietf_geojson,
  title  = {RFC 7946: The GeoJSON Format},
  author = {{Internet Engineering Task Force}},
  note   = {Accessed 10 August 2026},
  url    = {https://datatracker.ietf.org/doc/html/rfc7946}
}

@misc{epsg_wgs84,
  title  = {WGS 84 -- EPSG:4326},
  author = {{EPSG}},
  note   = {Accessed 10 August 2026},
  url    = {https://epsg.org/crs_4326/WGS-84.html}
}

@misc{google_coordinates,
  title  = {Coordinates -- Maps JavaScript API},
  author = {{Google}},
  note   = {Accessed 10 August 2026},
  url    = {https://developers.google.com/maps/documentation/javascript/reference/coordinates}
}

@misc{google_reverse_geocode,
  title  = {Reverse geocode a location},
  author = {{Google}},
  note   = {Geocoding API; accessed 10 August 2026},
  url    = {https://developers.google.com/maps/documentation/geocoding/reverse-geocoding}
}

@misc{mapbox_geocoding,
  title  = {Understanding the Geocoding API},
  author = {{Mapbox}},
  note   = {Accessed 10 August 2026},
  url    = {https://docs.mapbox.com/help/dive-deeper/geocoding/}
}

@misc{maplibre_lnglat,
  title  = {LngLat -- MapLibre GL JS},
  author = {{MapLibre}},
  note   = {Accessed 10 August 2026},
  url    = {https://maplibre.org/maplibre-gl-js/docs/API/classes/LngLat/}
}