Encontre a longitude e latitude mais próximas da matriz a partir da localização do usuário - iOS Swift
Na pergunta postadaaqui, o usuário perguntou:
Eu tenho uma matriz cheia de longitudes e latitudes. Eu tenho duas variáveis duplas com a localização dos meus usuários. Gostaria de testar a distância entre os locais dos meus usuários e minha matriz para ver qual local é o mais próximo. Como eu faço isso?
Isso obterá a distância entre dois locais, mas é difícil entender como eu o testaria em uma variedade de locais.
Em resposta, ele recebeu o seguinte código:
NSArray *locations = //your array of CLLocation objects
CLLocation *currentLocation = //current device Location
CLLocation *closestLocation;
CLLocationDistance smallestDistance = DBL_MAX; // set the max value
for (CLLocation *location in locations) {
CLLocationDistance distance = [currentLocation distanceFromLocation:location];
if (distance < smallestDistance) {
smallestDistance = distance;
closestLocation = location;
}
}
NSLog(@"smallestDistance = %f", smallestDistance);
Tenho exatamente o mesmo problema em um aplicativo em que estou trabalhando e acho que esse trecho de código poderia funcionar perfeitamente. No entanto, estou usando o Swift, e esse código está no Objective-C.
Minha única pergunta é: como deve ser no Swift?
Obrigado por qualquer ajuda. Eu sou novo em tudo isso, e ver esse código no Swift pode ser uma grande vantagem.