Armazenar ou calcular coordenadas com o tipo numérico errado pode introduzir erros de arredondamento da ordem de metros, totalmente independentes de qualquer erro na geocodificação original.
Perto dos polos, os meridianos convergem para um único ponto e os fusos horários perdem quase todo o sentido. Softwares de localização construídos sobre suposições comuns tendem a se comportar de forma estranha ali.
Dois pontos a uma curta distância um do outro podem estar em dias do calendário totalmente diferentes, apenas por causa de onde a Linha Internacional de Data passa entre eles.
Geocodifique dois endereços para obter as coordenadas e depois calcule a distância entre eles usando a matemática padrão de círculo máximo que você já tem no seu próprio código.
Um par de coordenadas parece ser a resposta completa, mas sem saber como elas foram obtidas, dois pares de coordenadas aparentemente idênticos podem ter confiabilidades muito diferentes.
Cortar casas decimais de uma coordenada parece inofensivo, mas cada dígito representa uma distância real no terreno, e arredondar de forma agressiva demais pode mover um ponto por metros ou quilômetros.
Todo conjunto de coordenadas é definido em relação a algum modelo da forma da Terra. O WGS84 se tornou o padrão para GPS e mapas na web por motivos práticos que vale a pena entender.
Transforme qualquer par de coordenadas em nome de fuso horário, deslocamento UTC atual e abreviação com uma única chamada à API, pronto para a sua própria biblioteca de datas.
Envie uma lista de pares de latitude e longitude ao endpoint reverso em uma única chamada e receba um endereço para cada um, na ordem, sem sobrecarga extra.