Condividi tramite


Spatial - Post Point In Polygon

Usare per determinare se un determinato punto si trova all'interno di un set di poligoni.

L'API Post Point In Polygon è una richiesta HTTP POST che restituisce un valore booleano che indica se un punto si trova all'interno di un set di poligoni. I dati utente possono contenere geometrie Polygon e MultiPolygon. Se specificato, le altre geometrie verranno ignorate. Se il punto si trova all'interno o al limite di uno di questi poligoni, il valore restituito è true. In tutti gli altri casi, il valore restituito è false. Quando il punto si trova all'interno di più poligoni, il risultato fornirà la sezione delle geometrie intersecanti per mostrare tutte le geometrie valide (a cui fa riferimento geometryId) nei dati utente. Il numero massimo di vertici accettati per formare un poligono è 10.000.

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

Parametri dell'URI

Nome In Necessario Tipo Descrizione
format
path True

JsonFormat

Formato desiderato della risposta. È supportato solo il formato json.

geography
path True

string

Posizione dell'account mappe di Azure. I valori validi sono Stati Uniti orientali, Stati Uniti centro-occidentali, Stati Uniti occidentali 2 e eu (Europa settentrionale, Europa occidentale). Questo parametro è obbligatorio quando viene fornito un udid oggetto nella richiesta. Ad esempio, se l'account mappe di Azure si trova negli Stati Uniti orientali, verranno accettate solo le richieste all'area geografica.

api-version
query True

string

Numero di versione dell'API Mappe di Azure.

lat
query True

number

Latitudine della posizione passata. Esempio: 48.36.

lon
query True

number

Longitudine della posizione passata. Esempio: -124.63.

Intestazione della richiesta

Nome Necessario Tipo Descrizione
x-ms-client-id

string

Specifica l'account destinato all'utilizzo in combinazione con il modello di sicurezza Microsoft Entra ID. Rappresenta un ID univoco per l'account Mappe di Azure e può essere recuperato dall'API del piano di gestione mappe di Azure. Per usare la sicurezza di Microsoft Entra ID in Mappe di Azure, vedere gli articoli seguenti per indicazioni.

Corpo della richiesta

Nome Necessario Tipo Descrizione
features True

GeoJsonFeature[]

Contiene un elenco di oggetti validi GeoJSON Feature .

type True string:

FeatureCollection

Specifica il tipo di oggetto GeoJSON. Deve essere uno dei nove tipi di oggetti GeoJSON validi: Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection, Feature e FeatureCollection.

Risposte

Nome Tipo Descrizione
200 OK

PointInPolygonResult

OK

Other Status Codes

ErrorResponse

Si è verificato un errore imprevisto.

Sicurezza

AADToken

Si tratta dei flussi di Microsoft Entra OAuth 2.0 . Se abbinato al controllo degli accessi in base al ruolo di Azure , può essere usato per controllare l'accesso alle API REST di Mappe di Azure. I controlli di accesso in base al ruolo di Azure vengono usati per designare l'accesso a uno o più account di risorse di Mappe di Azure o a risorse secondarie. A qualsiasi utente, gruppo o entità servizio può essere concesso l'accesso tramite un ruolo predefinito o un ruolo personalizzato composto da una o più autorizzazioni per le API REST di Mappe di Azure.

Per implementare scenari, è consigliabile visualizzare i concetti di autenticazione. In sintesi, questa definizione di sicurezza offre una soluzione per la modellazione di applicazioni tramite oggetti in grado di controllare l'accesso su API e ambiti specifici.

Note

  • Questa definizione di sicurezza richiede l'uso dell'intestazione x-ms-client-id per indicare a quale risorsa di Mappe di Azure l'applicazione richiede l'accesso. Questa operazione può essere acquisita dall'API di gestione mappe.

è Authorization URL specifico dell'istanza del cloud pubblico di Azure. I cloud sovrani hanno URL di autorizzazione univoci e configurazioni ID Microsoft Entra. * Il controllo degli accessi in base al ruolo di Azure viene configurato dal piano di gestione di Azure tramite il portale di Azure, PowerShell, l'interfaccia della riga di comando, gli SDK di Azure o le API REST. * L'utilizzo di Azure Maps Web SDK consente la configurazione basata sulla configurazione di un'applicazione per più casi d'uso.

Tipo: oauth2
Flow: implicit
URL di autorizzazione: https://login.microsoftonline.com/common/oauth2/authorize

Ambiti

Nome Descrizione
https://atlas.microsoft.com/.default https://atlas.microsoft.com/.default

subscription-key

Si tratta di una chiave condivisa di cui viene effettuato il provisioning durante la creazione di una risorsa di Mappe di Azure tramite il portale di Azure, PowerShell, l'interfaccia della riga di comando, gli SDK di Azure o le API REST.

Con questa chiave, qualsiasi applicazione è autorizzata ad accedere a tutte le API REST. In altre parole, queste chiavi possono essere considerate come chiavi master per l'account per cui vengono rilasciate.

Per le applicazioni esposte pubblicamente, è consigliabile usare l'accesso da server a server delle API REST di Mappe di Azure in cui questa chiave può essere archiviata in modo sicuro.

Tipo: apiKey
In: header

SAS Token

Si tratta di un token di firma di accesso condiviso creato dall'operazione Elenca firma di accesso condiviso nella risorsa mappe di Azure tramite il piano di gestione di Azure tramite il portale di Azure, PowerShell, l'interfaccia della riga di comando, gli SDK di Azure o le API REST.

Con questo token, qualsiasi applicazione è autorizzata ad accedere con i controlli di accesso in base al ruolo di Azure e il controllo granulare alla scadenza, alla frequenza e alle aree d'uso per il token specifico. In altre parole, il token di firma di accesso condiviso può essere usato per consentire alle applicazioni di controllare l'accesso in modo più protetto rispetto alla chiave condivisa.

Per le applicazioni esposte pubblicamente, è consigliabile configurare un elenco specifico di origini consentite nella risorsa dell'account map per limitare l'abuso di rendering e rinnovare regolarmente il token di firma di accesso condiviso.

Tipo: apiKey
In: header

Esempio

PostPointInPolygon

Esempio di richiesta

POST https://us.atlas.microsoft.com/spatial/pointInPolygon/json?api-version=2022-08-01&lat=33.5362475&lon=-111.9267386

{
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": {
        "geometryId": 1001
      },
      "geometry": {
        "type": "Polygon",
        "coordinates": [
          [
            [
              -111.9267386,
              33.5362475
            ],
            [
              -111.9627875,
              33.5104882
            ],
            [
              -111.9027061,
              33.5004686
            ],
            [
              -111.9267386,
              33.5362475
            ]
          ]
        ]
      }
    }
  ]
}

Risposta di esempio

{
  "summary": {
    "sourcePoint": {
      "lat": 33.5362475,
      "lon": -111.9267386
    },
    "udid": null,
    "information": "1 polygons processed in user data"
  },
  "result": {
    "pointInPolygons": true,
    "intersectingGeometries": [
      "1001"
    ]
  }
}

Definizioni

Nome Descrizione
ErrorAdditionalInfo

Informazioni aggiuntive sulla gestione delle risorse.

ErrorDetail

Dettagli dell'errore.

ErrorResponse

Risposta di errore

GeoJsonFeature

Tipo di oggetto valido GeoJSON Feature . Per informazioni dettagliate, vedere RFC 7946 .

GeoJsonFeatureCollection

Tipo di oggetto valido GeoJSON FeatureCollection . Per informazioni dettagliate, vedere RFC 7946 .

GeoJsonGeometry

Oggetto geometry valido GeoJSON . Il tipo deve essere uno dei sette tipi di geometria GeoJSON validi- Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon e GeometryCollection. Per informazioni dettagliate, vedere RFC 7946 .

GeoJsonGeometryCollection

Tipo di oggetto valido GeoJSON GeometryCollection . Per informazioni dettagliate, vedere RFC 7946 .

GeoJsonLineString

Tipo geometry valido GeoJSON LineString . Per informazioni dettagliate, vedere RFC 7946 .

GeoJsonMultiLineString

Tipo geometry valido GeoJSON MultiLineString . Per informazioni dettagliate, vedere RFC 7946 .

GeoJsonMultiPoint

Tipo geometry valido GeoJSON MultiPoint . Per informazioni dettagliate, vedere RFC 7946 .

GeoJsonMultiPolygon

Tipo di oggetto valido GeoJSON MultiPolygon . Per informazioni dettagliate, vedere RFC 7946 .

GeoJsonPoint

Tipo geometry valido GeoJSON Point . Per informazioni dettagliate, vedere RFC 7946 .

GeoJsonPolygon

Tipo geometry valido GeoJSON Polygon . Per informazioni dettagliate, vedere RFC 7946 .

JsonFormat

Formato desiderato della risposta. È supportato solo il formato json.

LatLongPairAbbreviated

Una posizione rappresentata come latitudine e longitudine usando nomi brevi 'lat' & 'lon'.

PointInPolygonResult

Restituisce true se il punto è all'interno del poligono, false in caso contrario, false

PointInPolygonSummary

Oggetto Point In Polygon Summary

Result

Oggetto Point in Polygon Result

ErrorAdditionalInfo

Informazioni aggiuntive sulla gestione delle risorse.

Nome Tipo Descrizione
info

object

Informazioni aggiuntive.

type

string

Tipo di informazioni aggiuntive.

ErrorDetail

Dettagli dell'errore.

Nome Tipo Descrizione
additionalInfo

ErrorAdditionalInfo[]

Informazioni aggiuntive sull'errore.

code

string

Codice di errore.

details

ErrorDetail[]

Dettagli dell'errore.

message

string

Messaggio di errore.

target

string

Destinazione dell'errore.

ErrorResponse

Risposta di errore

Nome Tipo Descrizione
error

ErrorDetail

Oggetto error.

GeoJsonFeature

Tipo di oggetto valido GeoJSON Feature . Per informazioni dettagliate, vedere RFC 7946 .

Nome Tipo Descrizione
featureType

string

Tipo di funzionalità. Il valore dipende dal modello di dati di cui fa parte la funzionalità corrente. Alcuni modelli di dati possono avere un valore vuoto.

geometry GeoJsonGeometry:

Oggetto geometry valido GeoJSON . Il tipo deve essere uno dei sette tipi di geometria GeoJSON validi- Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon e GeometryCollection. Per informazioni dettagliate, vedere RFC 7946 .

id

string

Identificatore per la funzionalità.

type string:

Feature

Specifica il tipo di oggetto GeoJSON. Deve essere uno dei nove tipi di oggetti GeoJSON validi: Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection, Feature e FeatureCollection.

GeoJsonFeatureCollection

Tipo di oggetto valido GeoJSON FeatureCollection . Per informazioni dettagliate, vedere RFC 7946 .

Nome Tipo Descrizione
features

GeoJsonFeature[]

Contiene un elenco di oggetti validi GeoJSON Feature .

type string:

FeatureCollection

Specifica il tipo di oggetto GeoJSON. Deve essere uno dei nove tipi di oggetti GeoJSON validi: Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection, Feature e FeatureCollection.

GeoJsonGeometry

Oggetto geometry valido GeoJSON . Il tipo deve essere uno dei sette tipi di geometria GeoJSON validi- Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon e GeometryCollection. Per informazioni dettagliate, vedere RFC 7946 .

Nome Tipo Descrizione
type

GeoJsonObjectType

Specifica il tipo di oggetto GeoJSON. Deve essere uno dei nove tipi di oggetti GeoJSON validi: Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection, Feature e FeatureCollection.

GeoJsonGeometryCollection

Tipo di oggetto valido GeoJSON GeometryCollection . Per informazioni dettagliate, vedere RFC 7946 .

Nome Tipo Descrizione
geometries GeoJsonGeometry[]:

Contiene un elenco di oggetti geometry validi GeoJSON . Si noti che le coordinate in GeoJSON sono in x, y ordine (longitudine, latitudine).

type string:

GeometryCollection

Specifica il tipo di oggetto GeoJSON. Deve essere uno dei nove tipi di oggetti GeoJSON validi: Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection, Feature e FeatureCollection.

GeoJsonLineString

Tipo geometry valido GeoJSON LineString . Per informazioni dettagliate, vedere RFC 7946 .

Nome Tipo Descrizione
coordinates

number[]

Coordinate per la GeoJson LineString geometria.

type string:

LineString

Specifica il tipo di oggetto GeoJSON. Deve essere uno dei nove tipi di oggetti GeoJSON validi: Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection, Feature e FeatureCollection.

GeoJsonMultiLineString

Tipo geometry valido GeoJSON MultiLineString . Per informazioni dettagliate, vedere RFC 7946 .

Nome Tipo Descrizione
coordinates

number[]

Coordinate per la GeoJson MultiLineString geometria.

type string:

MultiLineString

Specifica il tipo di oggetto GeoJSON. Deve essere uno dei nove tipi di oggetti GeoJSON validi: Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection, Feature e FeatureCollection.

GeoJsonMultiPoint

Tipo geometry valido GeoJSON MultiPoint . Per informazioni dettagliate, vedere RFC 7946 .

Nome Tipo Descrizione
coordinates

number[]

Coordinate per la GeoJson MultiPoint geometria.

type string:

MultiPoint

Specifica il tipo di oggetto GeoJSON. Deve essere uno dei nove tipi di oggetti GeoJSON validi: Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection, Feature e FeatureCollection.

GeoJsonMultiPolygon

Tipo di oggetto valido GeoJSON MultiPolygon . Per informazioni dettagliate, vedere RFC 7946 .

Nome Tipo Descrizione
coordinates

number[]

Contiene un elenco di oggetti validi GeoJSON Polygon . Si noti che le coordinate in GeoJSON sono in x, y ordine (longitudine, latitudine).

type string:

MultiPolygon

Specifica il tipo di oggetto GeoJSON. Deve essere uno dei nove tipi di oggetti GeoJSON validi: Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection, Feature e FeatureCollection.

GeoJsonPoint

Tipo geometry valido GeoJSON Point . Per informazioni dettagliate, vedere RFC 7946 .

Nome Tipo Descrizione
coordinates

number[]

Una Position è una matrice di numeri con due o più elementi. I primi due elementi sono longitudine e latitudine, esattamente in tale ordine. Altitudine/Elevazione è un terzo elemento facoltativo. Per informazioni dettagliate, vedere RFC 7946 .

type string:

Point

Specifica il tipo di oggetto GeoJSON. Deve essere uno dei nove tipi di oggetti GeoJSON validi: Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection, Feature e FeatureCollection.

GeoJsonPolygon

Tipo geometry valido GeoJSON Polygon . Per informazioni dettagliate, vedere RFC 7946 .

Nome Tipo Descrizione
coordinates

number[]

Coordinate per il GeoJson Polygon tipo geometry.

type string:

Polygon

Specifica il tipo di oggetto GeoJSON. Deve essere uno dei nove tipi di oggetti GeoJSON validi: Point, MultiPoint, LineString, MultiLineString, Polygon, MultiPolygon, GeometryCollection, Feature e FeatureCollection.

JsonFormat

Formato desiderato della risposta. È supportato solo il formato json.

Nome Tipo Descrizione
json

string

Formato di interscambio dati dell'oggetto JavaScript

LatLongPairAbbreviated

Una posizione rappresentata come latitudine e longitudine usando nomi brevi 'lat' & 'lon'.

Nome Tipo Descrizione
lat

number

Latitudine, proprietà

lon

number

Proprietà Longitudine

PointInPolygonResult

Restituisce true se il punto è all'interno del poligono, false in caso contrario, false

Nome Tipo Descrizione
result

Result

Oggetto Point in Polygon Result

summary

PointInPolygonSummary

Oggetto Point In Polygon Summary

PointInPolygonSummary

Oggetto Point In Polygon Summary

Nome Tipo Descrizione
information

string

Elaborazione delle informazioni

sourcePoint

LatLongPairAbbreviated

Una posizione rappresentata come latitudine e longitudine usando nomi brevi 'lat' & 'lon'.

udid

string

ID dati univoco (udid) per il contenuto caricato. Udid non è applicabile per le operazioni spaziali POST(impostate su Null)

Result

Oggetto Point in Polygon Result

Nome Tipo Descrizione
intersectingGeometries

string[]

Matrice di geometrie

pointInPolygons

boolean

Point In Polygons, proprietà