Share via


Spatial - Get Point In Polygon

Använd för att avgöra om en viss punkt finns i en uppsättning polygoner.

API:et Get Point In Polygon är en HTTP-begäran GET som returnerar ett booleskt värde som anger om en punkt finns i en uppsättning polygoner. Uppsättningen polygoner tillhandahålls av en GeoJSON-fil som laddas upp med hjälp av dataregistertjänsten och refereras av ett unikt udid. GeoJSON-filen kan innehålla polygon- och multipolygongeometrier, andra geometrier ignoreras om de tillhandahålls. Om punkten är inuti eller på gränsen för någon av dessa polygoner är värdet som returneras sant. I alla andra fall är värdet som returneras falskt. När punkten är inuti flera polygoner ger resultatet intersecting geometries section för att visa alla giltiga geometrier (refereras av geometryId) i användardata. Det maximala antalet hörn som accepteras för att bilda en polygon är 10 000.

Om du vill testa det här API:et kan du ladda upp exempeldata från Exempel på Post Point In Polygon API (Begärandetext) med hjälp av dataregistertjänsten och ersätta {udid} från exempelbegäran nedan med den udid som används när du skapar dataregistret. Mer information finns i Skapa dataregister.

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

URI-parametrar

Name I Obligatorisk Typ Description
format
path True

JsonFormat

Önskat format för svaret. Endast json format stöds.

geography
path True

string

Plats för Azure Maps-kontot. Giltiga värden är vi (USA, östra; USA, västra centrala, USA, västra 2) och eu (Europa, norra; Europa, västra). Den här parametern krävs när en udid anges i begäran. Om till exempel Azure Maps-kontot finns i USA, östra accepteras endast begäranden till geografin.

api-version
query True

string

Versionsnummer för Azure Maps API.

lat
query True

number

Latitud för den plats som skickas. Exempel: 48.36.

lon
query True

number

Longitud för den plats som skickas. Exempel: -124.63.

udid
query True

string

Det unika ID som används när du skapar ett dataregister för att ladda upp ett giltigt GeoJSON FeatureCollection-objekt. Mer information finns i RFC 7946 . Alla egenskaper för funktionen ska innehålla geometryId, som används för att identifiera geometrin och är skiftlägeskänslig. Mer information om dataregistertjänsten finns i Så här skapar du dataregister.

Begärandehuvud

Name Obligatorisk Typ Description
x-ms-client-id

string

Anger vilket konto som är avsett för användning tillsammans med Microsoft Entra ID säkerhetsmodell. Det representerar ett unikt ID för Azure Maps-kontot och kan hämtas från konto-API:et för Azure Maps hanteringsplan. Information om hur du använder Microsoft Entra ID säkerhet i Azure Maps finns i följande artiklar.

Svar

Name Typ Description
200 OK

PointInPolygonResult

OK

Other Status Codes

ErrorResponse

Det uppstod ett oväntat fel.

Säkerhet

AADToken

Det här är Microsoft Entra OAuth 2.0-flöden. När den är kopplad till rollbaserad åtkomstkontroll i Azure kan den användas för att styra åtkomsten till Azure Maps REST-API:er. Rollbaserade åtkomstkontroller i Azure används för att ange åtkomst till ett eller flera Azure Maps resurskonto eller underresurser. Alla användare, grupper eller tjänstens huvudnamn kan beviljas åtkomst via en inbyggd roll eller en anpassad roll som består av en eller flera behörigheter för att Azure Maps REST-API:er.

För att implementera scenarier rekommenderar vi att du visar autentiseringsbegrepp. Sammanfattningsvis tillhandahåller den här säkerhetsdefinitionen en lösning för modellering av program via objekt som kan ha åtkomstkontroll för specifika API:er och omfång.

Kommentarer

  • Den här säkerhetsdefinitionen x-ms-client-idkräver att huvudet används för att ange vilken Azure Maps resurs som programmet begär åtkomst till. Detta kan hämtas från MAPS-hanterings-API:et.

Authorization URL är specifikt för den offentliga Azure-molninstansen. Nationella moln har unika auktoriserings-URL:er och Microsoft Entra ID konfigurationer. * Rollbaserad åtkomstkontroll i Azure konfigureras från Azure-hanteringsplanet via Azure Portal, PowerShell, CLI, Azure SDK:er eller REST-API:er. * Användning av Azure Maps Web SDK möjliggör konfigurationsbaserad konfiguration av ett program för flera användningsfall.

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

Det här är en delad nyckel som etableras när du skapar en Azure Maps resurs via Azure-hanteringsplanet via Azure Portal, PowerShell, CLI, Azure SDK:er eller REST-API:er.

Med den här nyckeln har alla program behörighet att komma åt alla REST-API:er. Med andra ord kan dessa för närvarande behandlas som huvudnycklar till det konto som de har utfärdats för.

För offentligt exponerade program rekommenderar vi att du använder server-till-server-åtkomst för Azure Maps REST-API:er där den här nyckeln kan lagras på ett säkert sätt.

Type: apiKey
In: header

SAS Token

Det här är en signaturtoken för delad åtkomst som skapas från åtgärden Lista SAS på den Azure Maps resursen via Azure-hanteringsplanet via Azure Portal, PowerShell, CLI, Azure SDK:er eller REST-API:er.

Med den här token har alla program behörighet att komma åt med rollbaserade Åtkomstkontroller i Azure och detaljerad kontroll av förfallodatum, frekvens och region för användning för den specifika token. Med andra ord kan SAS-token användas för att tillåta program att styra åtkomsten på ett säkrare sätt än den delade nyckeln.

För offentligt exponerade program rekommenderar vi att du konfigurerar en specifik lista över tillåtna ursprung på map-kontoresursen för att begränsa återgivningsmissbruket och regelbundet förnya SAS-token.

Type: apiKey
In: header

Exempel

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"
    ]
  }
}

Definitioner

Name Description
ErrorAdditionalInfo

Ytterligare information om resurshanteringsfelet.

ErrorDetail

Felinformationen.

ErrorResponse

Felsvar

JsonFormat

Önskat format för svaret. Endast json format stöds.

LatLongPairAbbreviated

En plats som representeras som en latitud och longitud med kortnamnen "lat" & "lon".

PointInPolygonResult

Returnerar sant om punkten ligger inom polygonen, annars falskt

PointInPolygonSummary

Punkt i polygonsammanfattningsobjekt

Result

Punkt i polygonresultatobjekt

ErrorAdditionalInfo

Ytterligare information om resurshanteringsfelet.

Name Typ Description
info

object

Ytterligare information.

type

string

Den ytterligare informationstypen.

ErrorDetail

Felinformationen.

Name Typ Description
additionalInfo

ErrorAdditionalInfo[]

Ytterligare information om felet.

code

string

Felkoden.

details

ErrorDetail[]

Felinformationen.

message

string

Felmeddelandet.

target

string

Felmålet.

ErrorResponse

Felsvar

Name Typ Description
error

ErrorDetail

Felobjektet.

JsonFormat

Önskat format för svaret. Endast json format stöds.

Name Typ Description
json

string

Datautbytesformat för JavaScript-objektnotation

LatLongPairAbbreviated

En plats som representeras som en latitud och longitud med kortnamnen "lat" & "lon".

Name Typ Description
lat

number

Latitude-egenskap

lon

number

Longitudegenskap

PointInPolygonResult

Returnerar sant om punkten ligger inom polygonen, annars falskt

Name Typ Description
result

Result

Punkt i polygonresultatobjekt

summary

PointInPolygonSummary

Punkt i polygonsammanfattningsobjekt

PointInPolygonSummary

Punkt i polygonsammanfattningsobjekt

Name Typ Description
information

string

Bearbeta information

sourcePoint

LatLongPairAbbreviated

En plats som representeras som en latitud och longitud med kortnamnen "lat" & "lon".

udid

string

Ett unikt data-ID (udid) för det uppladdade innehållet. Udid gäller inte för post spatiala åtgärder (inställt på null)

Result

Punkt i polygonresultatobjekt

Name Typ Description
intersectingGeometries

string[]

Matris för geometrier

pointInPolygons

boolean

Punkt i Polygons-egenskap