Share via


Spatial - Get Point In Polygon

지정된 점이 다각형 집합 내에 있는지 확인하는 데 사용합니다.

Get Point In Polygon API는 지점이 다각형 집합 내에 있는지 여부를 나타내는 부울 값을 반환하는 HTTP GET 요청입니다. 다각형 집합은 데이터 레지스트리 서비스를 사용하여 업로드되고 고유한 udid에서 참조되는 GeoJSON 파일에서 제공됩니다. GeoJSON 파일에는 다각형 및 MultiPolygon 기하 도형이 포함될 수 있으며, 제공된 경우 다른 기하 도형은 무시됩니다. 점이 이러한 다각형 중 하나의 내부 또는 경계에 있는 경우 반환되는 값은 true입니다. 다른 모든 경우에서 반환된 값은 false입니다. 점이 여러 다각형 내에 있는 경우 결과는 교차 기하 도형 섹션을 제공하여 사용자 데이터의 모든 유효한 기하 도형(geometryId에서 참조)을 표시합니다. Polygon을 구성하는 데 허용되는 최대 꼭짓점 수는 10,000개입니다.

이 API를 테스트하려면 데이터 레지스트리 서비스를 사용하여 Post Point In Polygon API 예제(요청 본문)에서 샘플 데이터를 업로드하고 아래 샘플 요청의 를 데이터 레지스트리를 만들 때 사용되는 로 udid 바꿀 {udid} 수 있습니다. 자세한 내용은 데이터 레지스트리를 만드는 방법을 참조하세요.

GET https://{geography}.atlas.microsoft.com/spatial/pointInPolygon/json?api-version=2022-08-01&udid={udid}&lat={lat}&lon={lon}

URI 매개 변수

Name In(다음 안에) 필수 형식 Description
format
path True

JsonFormat

원하는 응답 형식입니다. json 형식만 지원됩니다.

geography
path True

string

Azure Maps 계정의 위치입니다. 유효한 값은 당사(미국 동부, 미국 중서부, 미국 서부 2) 및 eu(북유럽, 서유럽)입니다. 이 매개 변수는 요청에 가 udid 제공된 경우에 필요합니다. 예를 들어 Azure Maps 계정이 미국 동부에 있는 경우 지리에 대한 요청만 수락됩니다.

api-version
query True

string

Azure Maps API의 버전 번호.

lat
query True

number

전달되는 위치의 위도입니다. 예: 48.36.

lon
query True

number

전달되는 위치의 경도입니다. 예: -124.63.

udid
query True

string

유효한 GeoJSON FeatureCollection 개체를 업로드하기 위해 데이터 레지스트리 를 만들 때 사용되는 고유 ID입니다. 자세한 내용은 RFC 7946 을 참조하세요. 모든 기능의 속성에는 기하 도형을 식별하는 데 사용되며 대/소문자를 구분하는 가 포함되어 geometryId야 합니다. 데이터 레지스트리 서비스에 대한 자세한 내용은 데이터 레지스트리를 만드는 방법을 참조하세요.

요청 헤더

Name 필수 형식 Description
x-ms-client-id

string

Microsoft Entra ID 보안 모델과 함께 사용할 계정을 지정합니다. Azure Maps 계정의 고유 ID를 나타내며 Azure Maps 관리 평면 계정 API에서 검색할 수 있습니다. Azure Maps Microsoft Entra ID 보안을 사용하려면 다음 문서를 참조하세요.

응답

Name 형식 Description
200 OK

PointInPolygonResult

정상

Other Status Codes

ErrorResponse

예기치 않은 오류가 발생했습니다.

보안

AADToken

다음은 Microsoft Entra OAuth 2.0 흐름입니다. Azure 역할 기반 액세스 제어와 쌍을 이루는 경우 Azure Maps REST API에 대한 액세스를 제어하는 데 사용할 수 있습니다. Azure 역할 기반 액세스 제어는 하나 이상의 Azure Maps 리소스 계정 또는 하위 리소스에 대한 액세스를 지정하는 데 사용됩니다. 모든 사용자, 그룹 또는 서비스 주체는 기본 제공 역할 또는 REST API를 Azure Maps 하나 이상의 권한으로 구성된 사용자 지정 역할을 통해 액세스 권한을 부여할 수 있습니다.

시나리오를 구현하려면 인증 개념을 보는 것이 좋습니다. 요약하자면, 이 보안 정의는 특정 API 및 범위에 대한 액세스 제어가 가능한 개체를 통해 애플리케이션을 모델링하는 솔루션을 제공합니다.

참고

  • 이 보안 정의 애플리케이션이 x-ms-client-id 액세스를 요청하는 Azure Maps 리소스를 나타내기 위해 헤더를 사용해야 합니다. 이는 지도 관리 API에서 가져올 수 있습니다.

Authorization URL 은 Azure 퍼블릭 클라우드 instance 관련됩니다. 소버린 클라우드에는 고유한 권한 부여 URL 및 Microsoft Entra ID 구성이 있습니다. * Azure 역할 기반 액세스 제어는 Azure Portal, PowerShell, CLI, Azure SDK 또는 REST API를 통해 Azure 관리 평면에서 구성됩니다. * Azure Maps Web SDK를 사용하면 여러 사용 사례에 대한 애플리케이션의 구성 기반 설정을 사용할 수 있습니다.

Type: oauth2
Flow: implicit
Authorization URL: https://login.microsoftonline.com/common/oauth2/authorize

Scopes

Name Description
https://atlas.microsoft.com/.default https://atlas.microsoft.com/.default

subscription-key

Azure Portal, PowerShell, CLI, Azure SDK 또는 REST API를 통해 Azure 관리 평면을 통해 Azure Maps 리소스를 만들 때 프로비전되는 공유 키입니다.

이 키를 사용하면 모든 애플리케이션이 모든 REST API에 액세스할 수 있는 권한이 부여됩니다. 즉, 이러한 키는 현재 발급된 계정에 대한 master 키로 처리될 수 있습니다.

공개적으로 노출된 애플리케이션의 경우 이 키를 안전하게 저장할 수 있는 Azure Maps REST API의 서버-서버 액세스를 사용하는 것이 좋습니다.

Type: apiKey
In: header

SAS Token

공유 액세스 서명 토큰은 Azure Portal, PowerShell, CLI, Azure SDK 또는 REST API를 통해 Azure 관리 평면을 통해 Azure Maps 리소스의 SAS 나열 작업에서 만들어집니다.

이 토큰을 사용하면 모든 애플리케이션이 특정 토큰에 사용할 만료, 속도 및 지역에 대한 Azure 역할 기반 액세스 제어 및 세분화된 제어를 사용하여 액세스할 수 있는 권한이 부여됩니다. 즉, SAS 토큰을 사용하여 애플리케이션이 공유 키보다 더 보안이 유지되는 방식으로 액세스를 제어할 수 있습니다.

공개적으로 노출된 애플리케이션의 경우 렌더링 남용을 제한하고 정기적으로 SAS 토큰을 갱신하도록 맵 계정 리소스 에서 허용되는 특정 원본 목록을 구성하는 것이 좋습니다.

Type: apiKey
In: header

예제

GetPointInPolygon

Sample Request

GET https://us.atlas.microsoft.com/spatial/pointInPolygon/json?api-version=2022-08-01&udid=f6495f62-94f8-0ec2-c252-45626f82fcb2&lat=47.622942&lon=-122.316456

Sample Response

{
  "summary": {
    "sourcePoint": {
      "lat": 33.5362475,
      "lon": -111.9267386
    },
    "udid": "f6495f62-94f8-0ec2-c252-45626f82fcb2",
    "information": "4 polygons processed in user data"
  },
  "result": {
    "pointInPolygons": true,
    "intersectingGeometries": [
      "1001",
      "1003"
    ]
  }
}

정의

Name Description
ErrorAdditionalInfo

리소스 관리 오류 추가 정보입니다.

ErrorDetail

오류 세부 정보입니다.

ErrorResponse

오류 응답

JsonFormat

원하는 응답 형식입니다. json 형식만 지원됩니다.

LatLongPairAbbreviated

짧은 이름 '위도'& 'lon'을 사용하여 위도 및 경도로 표시되는 위치입니다.

PointInPolygonResult

점이 다각형 내에 있으면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

PointInPolygonSummary

Point In Polygon Summary 개체

Result

다각형 결과 개체의 점

ErrorAdditionalInfo

리소스 관리 오류 추가 정보입니다.

Name 형식 Description
info

object

추가 정보입니다.

type

string

추가 정보 유형입니다.

ErrorDetail

오류 세부 정보입니다.

Name 형식 Description
additionalInfo

ErrorAdditionalInfo[]

오류 추가 정보입니다.

code

string

오류 코드입니다.

details

ErrorDetail[]

오류 세부 정보입니다.

message

string

오류 메시지입니다.

target

string

오류 대상입니다.

ErrorResponse

오류 응답

Name 형식 Description
error

ErrorDetail

Error 개체.

JsonFormat

원하는 응답 형식입니다. json 형식만 지원됩니다.

Name 형식 Description
json

string

JavaScript 개체 표기법 데이터 교환 형식

LatLongPairAbbreviated

짧은 이름 '위도'& 'lon'을 사용하여 위도 및 경도로 표시되는 위치입니다.

Name 형식 Description
lat

number

위도 속성

lon

number

경도 속성

PointInPolygonResult

점이 다각형 내에 있으면 true를 반환하고, 그렇지 않으면 false를 반환합니다.

Name 형식 Description
result

Result

다각형 결과 개체의 점

summary

PointInPolygonSummary

Point In Polygon Summary 개체

PointInPolygonSummary

Point In Polygon Summary 개체

Name 형식 Description
information

string

처리 정보

sourcePoint

LatLongPairAbbreviated

짧은 이름 '위도'& 'lon'을 사용하여 위도 및 경도로 표시되는 위치입니다.

udid

string

업로드된 콘텐츠의 고유 데이터 ID(udid)입니다. POST 공간 작업에는 Udid를 적용할 수 없습니다(null로 설정).

Result

다각형 결과 개체의 점

Name 형식 Description
intersectingGeometries

string[]

기하 도형 배열

pointInPolygons

boolean

Point In Polygons 속성