지오코딩
이 문서에서는 .NET 다중 플랫폼 앱 UI(.NET MAUI) IGeocoding 인터페이스를 사용하는 방법을 설명합니다. 이 인터페이스는 위치 좌표로 자리 표시를 지오코딩하고 역방향 지오코드 좌표를 자리 표시로 지오코딩하는 API를 제공합니다.
인터페이스의 IGeocoding
기본 구현은 속성을 통해 Geocoding.Default 사용할 수 있습니다. IGeocoding
인터페이스와 Geocoding
클래스는 모두 네임스페이스에 Microsoft.Maui.Devices.Sensors
포함됩니다.
시작하기
지오코딩 기능에 액세스하려면 다음 플랫폼별 설정이 필요합니다.
설치가 필요하지 않습니다.
지오코딩 사용
다음 예제에서는 주소의 위치 좌표를 가져오는 방법을 보여 줍니다.
string address = "Microsoft Building 25 Redmond WA USA";
IEnumerable<Location> locations = await Geocoding.Default.GetLocationsAsync(address);
Location location = locations?.FirstOrDefault();
if (location != null)
Console.WriteLine($"Latitude: {location.Latitude}, Longitude: {location.Longitude}, Altitude: {location.Altitude}");
고도를 항상 사용할 수는 없습니다. 사용할 수 없는 경우 속성이 Altitude 될 null
수도 있고 값일 수도 있습니다 0
. 고도를 사용할 수 있는 경우 값은 해발 미터 단위입니다.
역방향 지오코딩
역방향 지오코딩은 기존 좌표 집합에 대한 자리 표시를 가져오는 프로세스입니다. 다음 예제에서는 자리 표시를 가져오는 방법을 보여 줍니다.
private async Task<string> GetGeocodeReverseData(double latitude = 47.673988, double longitude = -122.121513)
{
IEnumerable<Placemark> placemarks = await Geocoding.Default.GetPlacemarksAsync(latitude, longitude);
Placemark placemark = placemarks?.FirstOrDefault();
if (placemark != null)
{
return
$"AdminArea: {placemark.AdminArea}\n" +
$"CountryCode: {placemark.CountryCode}\n" +
$"CountryName: {placemark.CountryName}\n" +
$"FeatureName: {placemark.FeatureName}\n" +
$"Locality: {placemark.Locality}\n" +
$"PostalCode: {placemark.PostalCode}\n" +
$"SubAdminArea: {placemark.SubAdminArea}\n" +
$"SubLocality: {placemark.SubLocality}\n" +
$"SubThoroughfare: {placemark.SubThoroughfare}\n" +
$"Thoroughfare: {placemark.Thoroughfare}\n";
}
return "";
}
두 위치 사이의 거리 가져오기
Location 및 LocationExtensions 클래스는 두 위치 간 거리를 계산하는 메서드를 정의합니다. 두 위치 사이의 거리를 가져오는 예제는 두 위치 사이의 거리를 참조 하세요.
.NET MAUI
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기