Le domande GeoPoint consentono di acquisire una posizione specifica in un rilevamento. Sebbene le risposte al sondaggio in Survey123 tentino sempre di acquisire la posizione di un dispositivo, anche se non è inclusa una domanda di geopunto, una domanda di geopunto visibile nel modulo determina una migliore acquisizione delle informazioni sulla posizione.
Quando si usano i geopunti, occorre tenere in considerazione quanto segue:
- È possibile aggiungere più domande di geopunto, geotraccia o geoforma a un rilevamento, ma solo una di esse come geometria del record di rilevamento. Puoi usare più domande della mappa se tutte le domande tranne una hanno bind::esri:fieldType impostato a null.
- Ogni ripetizione in un rilevamento può anche avere più domande di geopunto, geotraccia o geoforma, ma solo uno di esse può essere usata come geometria di un record di ripetizione. Puoi usare domande a mappa multipla con lo stesso metodo descritto sopra.
- Per impostazione predefinita, Survey123 visualizza i valori di latitudine e longitudine WGS84, nel formato gradi/minuti/secondi. Per cambiare questa visualizzazione per un rilevamento, seleziona la scheda Mappa e scegli un valore diverso per Formato coordinate.
- Per impostazione predefinita, una domanda GeoPoint utilizza una mappa base online. Per utilizzare il rilevamento offline, consulta la sezione Utilizzare mappe di base offline.
- Le posizioni dei punti ricavate dalla prima domanda di geopunto in una ripetizione possono essere visualizzate su qualsiasi mappa del rilevamento. Per maggiori informazioni, vedi Sovrapposizioni di punti sulle mappe.
- Se non si include una domanda di geopunto, geotraccia o geoforma in un rilevamento, il feature layer principale per il rilevamento avrà il tipo di geometria esriGeometryPoint. La posizione del punto verrà compilata con le informazioni sulla posizione disponibili sul dispositivo nel momento in cui si apre il rilevamento. Questo comportamento si applica persino se il rilevamento presenta ripetizioni che contengono domanda di tipo mappa, ma non include una domanda mappa al di fuori delle ripetizioni.
- Impostando la colonna appearance della domanda di geopunto su press-to-locate, Survey123 acquisisce un punto solo quando l'utente interagisce con la domanda.
- Quando si catturano risposte usando una mappa, non tutte le caratteristiche dell'app da campo Survey123 sono supportate nell'app web. Le seguenti funzioni sono supportate nell'app da campo Survey123 ma non nell'app web:
- Mappe di base offline.
- Calcolo della posizione media per le domande geopoint.
- Simbologia dei geopunti
- Soglie di accuratezza della posizione ed espressioni di qualità della posizione.
- Tutte le proprietà di pulldata("@geopoint"). Questa web app supporta solo le proprietà x, y, z, horizontalAccuracy, verticalAccuracy, speed e direction.
Soglia di precisione della posizione
Per impostazione predefinita, Survey123 non controlla la precisione dei valori delle posizioni acquisiti. Se la precisione della posizione è importante per i risultati del rilevamento, è possibile definire una soglia di precisione con la media della posizione. A tal fine è possibile immettere un valore numerico nella colonna body::accuracyThreshold della domanda di geopunto. Questo valore sarà la soglia di precisione oltre cui i valori non vengono più acquisiti nel calcolo della media di una posizione.
Quando non viene effettuata la media, il pannello nella mappa nell'app di campo Survey123 visualizza un avviso se la precisione della posizione è superiore alla soglia definita, senza però impedire all'utente l'acquisizione delle posizioni. Per acquisire una posizione che non superi la soglia, attendi che non siano presenti avvisi e seleziona il pulsante della posizione. Le posizioni che non rispettano la soglia di precisione vengono ignorate automaticamente durante il calcolo della media.
Espressioni qualità posizione
La soglia di precisione posizione è un numero singolo, un valore minimo per la precisione orizzontale di una posizione specifica. Per avvisare un utente che la sua posizione non soddisfa altri requisiti di qualità più complessi oppure per impedirgli di inviare tale posizione, è possibile usare un'espressione. Di seguito sono indicate le colonne (insieme alle colonne di messaggi associate) in cui inserire queste espressioni:
- Le colonne constraint e constraint_message possono essere usate per impedire all'utente di acquisire una posizione in una domanda geopoint quando l'espressione di qualità della posizione non è soddisfatta.
- Le colonne bind::esri:warning e bind::esri:warning_message possono essere usate per mostrare un avviso all'utente se l'espressione della qualità della posizione non è soddisfatta. Se l'espressione della qualità della posizione non è soddisfatta, la barra contenente il valore delle coordinate nella parte superiore della domanda geopoint diventa gialla. In tal caso, l'utente può comunque acquisire la posizione.
È possibile creare un'espressione in una qualunque di queste colonne usando qualsiasi domanda del rilevamento, ma solitamente si usano domande o parametri correlati alla posizione del rilevamento.
Per i parametri di posizione utilizzabili, consultare la sezione Estrazione dei valori GeoPoint di seguito.
Ad esempio, l'espressione seguente può essere usata per accertarsi che l'utente sia più o meno fermo prima di acquisire una posizione e che la precisione orizzontale sia migliore di 5 metri:
pulldata("@geopoint", ., "horizontalAccuracy") < 5 and pulldata("@geopoint", ., "speed") < 0.1
Suggerimento:
Anche se si desidera che l'utente acquisisca un punto da fermo, molto di rado un dispositivo segnalerà un valore di velocità equivalente a zero. Per questo motivo, nell'esempio precedente viene cercata piuttosto una velocità inferiore a 0,1 per introdurre una margine d'errore accettabile.
Se la posizione deve essere acquisita nelle condizioni descritte dall'espressione, inserisci l'espressione nella colonna constraint. Se si tratta solo di un consiglio, l'inserimento dell'espressione nella colonna bind::esri:warning visualizza il messaggio di avviso associato per l'utente. L'utente può comunque acquisire la posizione nella domanda di geopunto.
I messaggi constraint e bind::esri:warning vengono acquisiti se l'espressione in queste colonne viene riconosciuta come falsa.
Per espressioni molto lunghe o complesse, è consigliabile separare le funzioni di pulldata("@geopoint") in singole domande e fare riferimento ai nomi delle domande nell'espressione. Ad esempio, per eseguire la stessa funzione dell'esempio precedente, è possibile utilizzare il seguente calcolo in una domanda denominata hAccuracy:
pulldata("@geopoint", ${location}, "horizontalAccuracy")
Quindi, è possibile utilizzare il seguente calcolo in una domanda denominata currentSpeed:
pulldata("@geopoint", ${location}, "speed")
Il seguente calcolo potrebbe essere usato come espressione di vincolo o avviso per la domanda di geopunto:
(${hAaccuracy} < 5) and (${currentSpeed} < 0.1)
Segnalare l’intervallo di confidenza del 95%
L'organizzazione potrebbe richiedere che i dati raccolti vengano segnalati ad un intervallo di confidenza specifico (CI). Per impostazione predefinita, quando il tipo di precisione restituito è il quadrato media radice (RMS), il CI è del 68%. Per riportare l'intervallo di confidenza del 95% in un rilevamento, è necessario moltiplicare la precisione orizzontale per 1,7308 e la precisione verticale per 1,9600. Per ulteriori informazioni su questi fattori di conversione, vedi lo Standard nazionale per la precisione spaziale dei dati.
Esempio di alta precisione
In questo esempio, deve essere soddisfatto un set minimo assoluto di variabili, ma l'utente ha la facoltà di raccogliere una posizione con alcune variabili meno severe. È possibile che vi siano problemi di sicurezza o di pericolo che impediscono all'utente di rimanere in una posizione abbastanza a lungo da soddisfare i requisiti preferiti. In tal caso, viene visualizzato un avviso e l'utente può decidere di acquisire la posizione o attendere più a lungo.
I seguenti requisiti di precisione minima assoluta sono impostati dall'autore del rilevamento:
- La precisione orizzontale con un 95% di CI è inferiore a due metri.
- La precisione verticale con un 95% di CI è inferiore a due metri.
- La diluizione della posizione di precisione (PDOP) è minore o uguale a 6,0.
- Sono utilizzati cinque o più satelliti.
I seguenti requisiti di precisione preferita sono impostati dall'autore del rilevamento:
- La precisione orizzontale con un 95% di CI è inferiore a un metro.
- La precisione verticale con un 95% di CI è inferiore a un metro.
- La PDOP è inferiore o uguale a 2,0.
- Sono utilizzati sette o più satelliti.
Il seguente calcolo viene utilizzato in una domanda denominata haccuracy68cep:
pulldata("@geopoint", ${location}, "horizontalAccuracy")
Quindi il seguente calcolo viene utilizzato in una domanda denominata haccuracy95ci:
${haccuracy68cep} * 1.7308
Con calcoli simili fatti per la precisione verticale, la seguente espressione viene inserita nella colonna constraint per rappresentare la precisione minima assoluta:
${accuracyType} = 0 and ${haccuracy95ci} < 2 and ${vaccuracy95ci} < 2 and ${pdop} <= 6 and ${satellitesInUse} >= 5
La seguente espressione viene inserita nella colonna bind::esri:warning per rappresentare la precisione preferita. I valori usati qui sono tipicamente inferiori a quelli usati per la precisione minima assoluta. I valori inferiori sono preferibili, ma i valori minimi più ampi possono essere utilizzati.
${accuracyType} = 0 and ${haccuracy95ci} < 1 and ${vaccuracy95ci} < 1 and ${pdop} <= 2 and ${satellitesInUse} >= 7
Feature Layer 3D
Per impostazione predefinita, le domande GeoPoint di Survey123 non supportano i valori dell'asse Z (altitudine), ma acquisiscono solo la latitudine e la longitudine in un feature layer a due dimensioni. È possibile modificare tale funzione immettendo esriFieldTypePointZ nel campo bind::esri:fieldType della domanda, consentendo l'acquisizione del valore dell'altitudine nel feature layer. Ciò consente inoltre di modificare il campo dell'altitudine quando si specifica un valore GeoPoint.
Impostazioni predefinite
È possibile impostare una posizione predefinita per una domanda GeoPoint fornendo un set di valori di longitudine e latitudine separato da spazi (in gradi decimali) nella colonna default. Ad esempio, con -37.814552 144.966071 la posizione predefinita del geopunto è Melbourne, Australia.
Suggerimento:
I valori predefiniti della posizione nell'emisfero meridionale causano un errore in Microsoft Excel perché il valore inizia con un segno meno (-) e viene quindi letto come formula. In questi casi, occorre inserire un apostrofo prima del primo valore e verrà letto come previsto inExcel. L’aggiunta di un apostrofo non determina alcun cambiamento del comportamento in Survey123.
Se non è fornito alcun valore predefinito, la domanda di geopunto si aggiorna automaticamente in base alla posizione corrente del dispositivo. Per prevenire ciò, impostare il valore predefinito a null. La domanda di geopunto visualizza opzioni per abilitare l'acquisizione della posizione, caricare la pagina della mappa per l'impostazione manuale di una posizione o aggiornare un calcolo, se esiste un calcolo applicato.
Le domande geopoint che sono commutate da uno stato non rilevante a uno stato rilevante non si aggiorneranno automaticamente in base alla posizione del dispositivo. Impostare il valore predefinito su posizione per ottenere automaticamente la posizione attuale identificata dal dispositivo quando la domanda diventa rilevante.
Le domande geopoint contenute nei rilevamenti avviati da Posta in arrivo, Bozze o Posta in uscita non verranno aggiornate automaticamente alla posizione attuale del dispositivo. Impostare il valore predefinito su position per ottenere automaticamente la posizione attuale identificata dal dispositivo quando il rilevamento viene aperto da una cartella.
Calcoli
È possibile compilare una domanda GeoPoint utilizzando i risultati di altre domande. La risposta di una domanda di geopunto è formattata come elenco separato da spazi di valori di latitudine e longitudine (in gradi decimali) seguiti da valori opzionali, a partire dall'altitudine e dalla precisione (in metri). Per compilare la risposta a una domanda di geopunto, è necessario aderire a questa struttura per produrre una risposta valida.
Poiché non è possibile farlo direttamente con la compilazione dalle domande select_one, è consigliato l'utilizzo della funzione substr() per ottenere una risposta valida. Ad esempio, il nome del geopunto potrebbe essere il seguente:
+059.38330_+018.00000
Questo valore utilizza un numero fisso di caratteri sia per la latitudine sia per la longitudine, inclusi gli zeri che sarebbero normalmente troncati, con un trattino basso tra i due valori perché gli spazi non sono consentiti nella colonna name. In questo modo viene creato un valore che è possibile decostruire con la funzione substr() per compilare il seguente esempio di domanda di geopunto:
concat(substr(${LocationValue}, 0, 10), " ", substr(${LocationValue}, -10))
In questo esempio vengono presi i primi 10 caratteri del valore (la latitudine) e gli ultimi 10 caratteri del valore (la longitudine) e vengono presentati separati con uno spazio per produrre un risultato di geopunto valido.
È inoltre possibile utilizzare la funzione pulldata() per compilare una domanda di geopunto utilizzando un file csvallegato. Aggiungi prima il file .csv alla cartella delle risorse multimediali del rilevamento. Aggiungi quindi un elemento simile a questo nella colonna calculation:
pulldata('Intersections', 'Lat', 'IntersectionID', ${intersection}) + " " + pulldata('Intersections', 'Long', 'IntersectionID', ${intersection})
Come per l'esempio substr(), questa operazione unisce i valori della latitudine e della longitudine di una posizione con uno spazio per creare una risposta valida per una domanda GeoPoint basata su una risposta precedente.
Alcuni esempi di questi calcoli sono disponibili in Survey123 Connect.
Domande obbligatorie e domande di sola lettura
Le domande GeoPoint compilano automaticamente un rilevamento con la posizione fornita dal dispositivo eventualmente disponibile. Se il dispositivo non fornisce una posizione valida in una risposta al rilevamento, Survey123 restituisce la posizione 0,0, che corrisponde a una striscia di oceano al largo della costa dell'Africa. Contrassegnando la domanda di geopunto come obbligatoria si impedisce l'invio del rilevamento con valore null, e il rilevamento viene accettato solo quando il dispositivo fornisce una posizione o se la posizione viene inviata manualmente.
Contrassegnando una domanda di geopunto come sola lettura si impedisce l'inserimento di risposte manuali. Tale scelta può essere utile per le domande in cui è necessaria una risposta automatica mentre una risposta manuale potrebbe determinare problemi con il dataset. Si consiglia di utilizzarla con uno dei calcoli descritti in precedenza, che fornisce un valore di geopunto discreto non modificabile dagli utenti.
Ricerca geografica e geocodifica
Le domande GeoPoint dispongono della funzionalità di ricerca geografica, che consente agli utenti di cercare un indirizzo o un punto di interesse, fare zoom sulla mappa e posizionare il marcatore GeoPoint nella posizione corrispondente.
Per impostazione predefinita, la funzionalità di ricerca geografica restituisce risultati da tutto il mondo, utilizzando ArcGIS World Geocoding Service per la ricerca degli indirizzi.
Per impostazione predefinita, la ricerca geografica restituisce risultati da tutto il mondo, utilizzando ArcGIS World Geocoding Service per cercare gli indirizzi. Gli utenti che hanno effettuato l'accesso vedono tutte le organizzazioni Configurate per i servizi di geocodifica.
Nota:
La geocodifica che utilizza ArcGIS World Geocoding Service consumerà crediti. Per ulteriori informazioni, vedere Capire i crediti.Per impostare un localizzatore specifico che restituisca i risultati, fornire l'ID elemento del localizzatore nella colonna bind::esri:parameters, ad esempio geocode=36ff9e8c13e042a58cfce4ad87f55d19. Il localizzatore utilizzato nel rilevamento ArcGIS Online deve essere un elemento in ArcGIS Online. Il localizzatore utilizzato nel rilevamento ArcGIS Enterprise deve essere un elemento nello stesso portale del rilevamento.
È anche possibile impostare una domanda per effettuare solo la geocodifica aggiungendo una domanda di testo con l'aspetto geocodifica. Per ulteriori informazioni, consultare Aspetto geocodifica.
Geocodifica inversa
La geocodifica inversa può essere eseguita nell'app di campo premendo a lungo le coordinate o un punto sulla mappa dopo aver aperto la vista completa del GeoPoint, ma non viene stampata o allegata al rilevamento. Il valore della geocodifica inversa può essere ottenuto dal GeoPoint usando pulldata("@geopoint", ${location}, "reversegeocode"), che restituisce la posizione come oggetto JSON. Le singole proprietà possono essere estratte dall'oggetto fornendo il nome della proprietà, sebbene varino in base al localizzatore utilizzato. Nel caso di ArcGIS World Geocoding Service, viene restituito un oggetto JSON simile al seguente:
{
"address": {
"Match_addr": "207-361 Flinders St, Melbourne, Victoria, 3000",
"LongLabel": "207-361 Flinders St, Melbourne, Victoria, 3000, AUS",
"ShortLabel": "207-361 Flinders St",
"Addr_type": "StreetAddress",
"Type": "",
"PlaceName": "",
"AddNum": "283",
"Address": "283 Flinders St",
"Block": "",
"Sector": "",
"Neighborhood": "Melbourne",
"District": "Melbourne",
"City": "Melbourne",
"MetroArea": "",
"Subregion": "",
"Region": "Victoria",
"RegionAbbr": "VIC",
"Territory": "",
"Postal": "3000",
"PostalExt": "",
"CntryName": "Australia",
"CountryCode": "AUS"
},
"location": {
"x": 144.96721048751365,
"y": -37.81768543612741,
"spatialReference": {
"wkid": 4326,
"latestWkid": 4326
}
}
}
Per estrarre solo un valore specifico dall'oggetto JSON, usa una funzione pulldata("@geopoint") simile alla seguente, che estrae la proprietà Match_addr:
pulldata("@geopoint", ${location}, "reversegeocode.address.Match_addr")
Durante la geocodifica inversa viene utilizzato il servizio di geocodifica per l'organizzazione. Per usare un servizio di geocodifica diverso, inserire l'URL del localizzatore come parametro opzionale nella funzione con il formato pulldata("@geopoint", ${location}, "reversegeocode", ${locatorURL}). Se il servizio è protetto o se il rilevamento è destinato a utenti pubblici, sarà necessario configurare un elemento proxy salvando al suo interno le credenziali di accesso.
Se esiste un URL del localizzatore, è possibile fornire parametri aggiuntivi che saranno trasferiti all'URL. Come per le proprietà fornite con l'oggetto JSON, questi parametri variano a seconda del servizio di geocodifica usato. Nell'esempio seguente viene utilizzato il parametro featureTypes, che limita il valore restituito a un tipo specifico di posizione per restituire solo l'azienda o il landmark più vicino:
pulldata("@geopoint", ${location}, "reversegeocode.address.Match_addr", "https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer", "featureTypes=POI")
Suggerimento:
Se il servizio di geocodifica predefinito per ArcGIS Enterprise è ArcGIS World Geocoding Service o se ArcGIS World Geocoding Service viene utilizzato come parametro URL del localizzatore su un rilevamento aziendale come nei passaggi precedenti, si potrebbe ricevere un errore di token durante l'esecuzione delle geocodifica inversa. Per evitarlo, creare un elemento proxy con credenziali di accesso ArcGIS Online salvate in esso per un utente con autorizzazioni per eseguire la geocodifica. Questo elemento può quindi essere impostato come servizio di geocodifica predefinito per un portale o come destinazione per un parametro URL del localizzatore nella funzione di geocodifica inversa.
Per ulteriori informazioni sui parametri URL di geocodifica inversa, compreso un elenco completo dei parametri che possono essere passati all'URL, vedere reverseGeocode nella documentazione di ArcGIS REST API.
È possibile includere più calcoli di geocodifica inversa senza incidere in alcun modo su prestazioni o crediti. Ad esempio, è possibile includere le seguenti tre chiamate per singole proprietà:
pulldata("@geopoint", ${location}, "reversegeocode.address.Match_addr")
pulldata("@geopoint", ${location}, "reversegeocode.address.LongLabel")
pulldata("@geopoint", ${location}, "reversegeocode.address.ShortLabel")
La geocodifica inversa viene eseguita per il primo calcolo, che consuma crediti. Quindi, la risposta viene memorizzata nella cache e usata per gli altri due calcoli. È necessaria una nuova chiamata al geoservizio solo se l'URL di richiesta di geocodifica inversa è cambiato a causa di un cambio di posizione, dell'utilizzo di un parametro di richiesta diverso o se il token di accesso originale è scaduto.
Configurare un elemento del localizzatore proxy
Per configurare un elemento del localizzatore proxy, procedere nel modo di seguito indicato:
- Accedere all'organizzazione ArcGIS con un account con privilegi di geocodifica.
- Nella pagina Contenuto, passa a Aggiungi elemento > Da un URL per ArcGIS Online o Aggiungi elemento > Dal web per ArcGIS Enterprise, e verifica che il tipo selezionato sia Servizio web ArcGIS Server.
- Utilizzare l'URL per il localizzatore desiderato, ad esempio https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer per ArcGIS World Geocoding Service.
Verrà individuato come servizio protetto.
- Aggiungere un nome utente e una password per un account ArcGIS con privilegi di geocodifica.
- Scegliere Archivia credenziali con elemento di servizio. Non richiedere autenticazione.
- Fornisci un titolo e tag.
- Fare clic su Aggiungi elemento.
- Condividere pubblicamente questo elemento di localizzazione online.
Per maggiori informazioni, vedere Requisiti per configurare i propri localizzatori per ArcGIS Online o Configurare gli Utility Service con il portale per ArcGIS Enterprise.
Estrazione dei valori GeoPoint
Per decostruire una risposta GeoPoint, è possibile utilizzare la funzione pulldata("@geopoint") per estrarre i valori e compilare i valori di altre domande. Il seguente esempio estrae il valore di precisione orizzontale da una domanda GeoPoint:
pulldata("@geopoint", ${location}, "horizontalAccuracy")
La disponibilità delle proprietà GeoPoint dipende dall'hardware. La tabella seguente elenca le proprietà che possono essere estratte da un GeoPoint:
Nome proprietà | Descrizione | Unità |
---|---|---|
x | Longitudine: valore positivo nell'emisfero orientale, valore negativo nell'emisfero occidentale. | Gradi decimali |
y | Latitudine: valore positivo nell'emisfero settentrionale, valore negativo nell'emisfero meridionale. | Gradi decimali |
z | Altitudine, metri sopra il livello del mare (impostazione predefinita) o altezza sopra l'ellissoide (se selezionato nelle impostazioni dell'app di campo). | Metri |
horizontalAccuracy | Precisione orizzontale delle coordinate x e y. | Metri |
verticalAccuracy | Precisione verticale della coordinata z. | Metri |
speed | Velocità al suolo. | Metri al secondo |
verticalSpeed | Velocità verticale. | Metri al secondo |
direzione | Direzione del viaggio misurata in senso orario da nord. | Gradi decimali |
positionSourceType | Categoria dell'origine di posizione. I risultati potenziali sono Unknown (0), User (1), System Location (2), External Device (3), Network Device (4) e File (5). | N/D |
positionSourceInfo.antennaHeight | Altezza dell'antenna del dispositivo. La distanza dall’antenna alla superficie del suolo viene sottratta ai valori dell’altitudine. | Metri |
positionSourceInfo.altitudeType | Tipo di altitudine selezionato. I risultati potenziali sono l'altitudine sul livello medio del mare (0) e l'altitudine sull'ellissoide (1). È disponibile per tutti i tipi di provider di posizione. | N/D |
La tabella seguente elenca le proprietà aggiuntive che possono essere estratte da un GeoPoint acquisito con un ricevitore di alta precisione:
Nome proprietà | Descrizione | Unità |
---|---|---|
magneticVariation | Angolo tra il nord magnetico e quello reale. | Gradi decimali |
fixType | Tipo di correzione della posizione della coordinata. I risultati potenziali sono NoFix (0), GPS (1), DifferentialGPS (2), PrecisePositioningService (3), RTKFixed (4), RTKFloat (5), Estimated (6), Manual (7), Simulator (8) e SBAS (9). | N/D |
positionSourceInfo | Le informazioni sul dispositivo sotto forma di oggetto JSON. Sono utili per il debug e la convalida. I singoli elementi possono anche essere restituiti usando il nome completo dell'elemento. Per conoscere tutti gli elementi disponibili, vedi le seguenti righe di tabella. | N/D |
positionSourceInfo.pluginName | Nome del sensore di posizione interno. È disponibile solo per il provider di posizione integrato del dispositivo. | N/D |
positionSourceInfo.deviceAddress | Indirizzo del dispositivo. È disponibile solo per i ricevitori GNSS esterni. | N/D |
positionSourceInfo.deviceName | Nome del dispositivo. È disponibile solo per i ricevitori GNSS esterni. | N/D |
positionSourceInfo.deviceType | Tipo di dispositivo esterno. I risultati potenziali sono Unknown (-1), Bluetooth (0), Serial Port (1) e Bluetooth LE (2). È disponibile solo per i ricevitori GNSS esterni. | N/D |
positionSourceInfo.networkName | Nome del sensore di posizione rete. È disponibile soltanto per i provider di posizione di rete. | N/D |
positionSourceInfo.networkAddress | Indirizzo dell'origine di posizione di rete. È disponibile soltanto per i provider di posizione di rete. | N/D |
positionSourceInfo.networkPort | Porta dell'origine di posizione di rete. È disponibile soltanto per i provider di posizione di rete. | N/D |
positionSourceInfo.geoidSeparationCustom | Differenza tra l'ellissoide terrestre WGS-84 e il livello medio del mare come riportato dall’utente nelle impostazioni dell'app. | Metri |
geoidSeparation | Differenza tra l'ellissoide terrestre WGS-84 e il livello medio del mare come riportato dal ricevitore GNSS. Talvolta è indicata anche come altezza ortometrica. | Metri |
accuracyType | Tipo di precisione riportato dalle proprietà horizontalAccuracy e verticalAccuracy. I risultati potenziali sono RMS (0) e DOP (1). RMS è la precisione del quadrato media radice. Viene calcolato in base all'intervallo di confidenza del 68% per gli errori di latitudine, longitudine e altitudine riportati nella frase GST fornita dal ricevitore. Se il ricevitore non supporta GST, viene utilizzato DOP. DOP è la diluizione della precisione basata sulla precisione. Questo utilizza un valore di errore di intervallo stimato dall'utente (UERE) per stimare le precisioni orizzontale e verticale. | N/D |
positionAccuracy | Errore sferico radiale medio. Comprende gli errori orizzontale e verticale. | Metri |
latitudeError | Valore dell'errore di latitudine 1-sigma. Questa proprietà viene popolata solo se il dispositivo di posizionamento supporta le frasi GST nei flussi NMEA. | Metri |
longitudeError | Valore dell'errore di longitudine 1-sigma. Questa proprietà viene popolata solo se il dispositivo di posizionamento supporta le frasi GST nei flussi NMEA. | Metri |
altitudeError | Valore dell'errore di altitudine 1-sigma. Questa proprietà viene popolata solo se il dispositivo di posizionamento supporta le frasi GST nei flussi NMEA. | Metri |
hdop | Diluizione orizzontale della precisione (HDOP) dei dati di posizione. | N/D |
vdop | Diluizione verticale di precisione (VDOP) dei dati di posizione. | N/D |
pdop | Diluizione della posizione di precisione (PDOP) dei dati di posizione. L’equazione utilizzata per determinare PDOP è PDOP^2 = HDOP^2 + VDOP^2. | N/D |
differentialAge | L'età del segnale differenziale e la correzione utilizzata dal ricevitore GPS per correggere in modo differenziale la posizione. | Secondi |
referenceStationId | ID della stazione di riferimento differenziale (DSID) della stazione utilizzata dal ricevitore GPS. | N/D |
satellitesVisible | Numero di satelliti di posizionamento visibili al momento dell'acquisizione della posizione. | N/D |
satellitesInUse | Numero di satelliti di posizionamento utilizzati per restituire i dati di posizione. | N/D |
Formato coordinata
La funzione pulldata("@geopoint") può essere utilizzata anche per estrarre i valori dei geopunti e formattarli in altri formati di coordinate:
- pulldata("@geopoint", ${location}, "DMS") restituisce il GeoPoint in forma di gradi, minuti e secondi. Questo risultato viene restituito come oggetto JSON:
{ "latitudeDegrees": 39, "latitudeHemisphere": "N", "latitudeMinutes": 57, "latitudeSeconds": 36.3, "latitudeText": "39°57'36.3\"N", "longitudeDegrees": 116, "longitudeHemisphere": "E", "longitudeMinutes": 27, "longitudeSeconds": 4, "longitudeText": "116°27'04.0\"E", "text": "39°57'36\"N 116°27'4\"E" }
- pulldata("@geopoint", ${location}, "DDM") restituisce il geopunto come gradi e minuti decimali e pulldata("@geopoint", ${location}, "DD") restituisce il geopunto come gradi decimali. Anche in questi casi, il risultato viene fornito come oggetto JSON, dal quale è possibile estrarre valori singoli mediante parametri aggiuntivi, analogamente ai formati gradi, minuti e secondi.
I seguenti formati di coordinate possono essere utilizzati con un parametro di precisione opzionale, producendo un valore decimale che è una potenza di 10, ad esempio 0,01, 0,1, 1, 10, o 100.
- pulldata("@geopoint", ${location}, "MGRS") restituisce il GeoPoint come valore della griglia Military Grid Reference System (MGRS) con una precisione di 1 metro. Fornendo il parametro di precisione opzionale, è possibile modificare la precisione. Ad esempio, pulldata("@geopoint", ${location}, "MGRS", 100)restituisce un valore della griglia con una precisione di 100 metri.
- pulldata("@geopoint", ${location}, "USNG") restituisce il GeoPoint come valore della griglia United States National Grid (USNG) con una precisione di 1 metro.
- pulldata("@geopoint", ${location}, "UTM") restituisce il geopunto come coordinate UTM (Universal Transverse Mercator) con una precisione di 1 metro. Questo risultato viene restituito come oggetto JSON:
{ "band": "S", "easting": 452994, "northing": 4423429, "text": "50S 452994E 4423429N", "type": "UTM", "zone": 50 }
Simbologia dei geopunti
Una domanda di geopunto può visualizzare un simbolo personalizzato per il marcatore puntuale sulla mappa usando il parametro symbol nella colonna body::esri:style di un rilevamento. Il parametro deve fornire il nome del file del simbolo personalizzato, che deve essere un file .png nella cartella dei media del rilevamento. Vedere l'esempio seguente:
symbol=hydrant.png
Il parametro symbol accetta i parametri opzionali per configurare la visualizzazione del simbolo sulla mappa. Separare questi parametri dal nome file con un punto interrogativo e ciascuno da ogni altro con una e commerciale (&). Ad esempio, il parametro symbol può avere le proprietà x, y e scale come di seguito:
symbol=hydrant.png?x=0.2&y=0.7&scale=2
- Il parametro x specifica il punto di ancoraggio orizzontale del simbolo. Accetta un valore tra 0 (che rappresenta il bordo sinistro dell'immagine) e 1 (che rappresenta il bordo destro dell'immagine). Se non viene definito, il valore predefinito è 0,5.
- Il parametro y specifica il punto di ancoraggio verticale del simbolo. Accetta un valore tra 0 (che rappresenta il bordo superiore dell'immagine) e 1 (che rappresenta il bordo inferiore dell'immagine). Se non viene definito, il valore predefinito è 1.
- Il parametro scale specifica la scala di visualizzazione dell'immagine. I valori inferiori a 1 rimpiccioliscono l’immagine, mentre i valori superiori a 1 la ingrandiscono.
Il valore fornito può essere una costante o un riferimento a una domanda, ad esempio symbol=${symbol_question}. Le espressioni in linea non sono supportate.
Sovrapposizione di punti sulle mappe
Le posizioni dei punti ricavate dalla prima domanda di geopunto in una ripetizione possono essere visualizzate su qualsiasi domanda di mappa di un rilevamento impostando la colonna body::esri:style per una domanda di geopunto, geotraccia o geoforma su overlay=repeat_name. Tutti i punti acquisiti per la prima domanda di geopunto in tale ripetizione vengono visualizzati sulla mappa. Ulteriori parametri possono essere utilizzati per personalizzare la simbologia di overlay.
I parametri opzionali seguenti sono supportati dallo stile di overlay e possono essere separati da una virgola, per esempio overlay=repeat_name&preview=true, :
Parametro | Descrizione | Esempio |
---|---|---|
visualizza | Mostra i punti di sovrapposizione sulla domanda della mappa. Il valore predefinito è true. | view=false |
anteprima | Mostra i punti di sovrapposizione sulla mappa di anteprima. Il valore predefinito è false. | preview=true |
icona | Il nome del simbolo del punto da usare per i pin della mappa. I simboli disponibili possono essere trovati nella libreria Simboli di punti nella documentazione di Esri Developer. | icon=esri_pin_two |
iconColor | Il colore dell'icona usata per i pin della mappa. Questo parametro accetta un nome di colore standard o un codice colore esadecimale. Il valore predefinito è nero. | iconColor=Blue |
iconOutlineColor | Il colore del contorno usato per i pin della mappa. Questo parametro accetta un nome di colore standard o un codice colore esadecimale. Il valore predefinito è bianco. | iconOutlineColor=#FF4500 |
iconSize | La dimensione dell'icona come appare sulla mappa. Il valore predefinito è 30. | iconSize=40 |
Etichetta | Nome della domanda del rilevamento da usare come etichetta. | label=question_name |
labelColor | Il colore dell'etichetta di un punto. Questo parametro accetta un nome di colore standard o un codice colore esadecimale. Il valore predefinito è nero. | labelColor=#FFD700 |
labelOutlineColor | Il colore del contorno dell'etichetta. Questo parametro accetta un nome di colore standard o un codice colore esadecimale. Il valore predefinito è bianco. | labelOutlineColor=Black |
fontSize | La dimensione del carattere dell'etichetta per un punto. Il valore predefinito è 13. | fontSize=16 |
Stile delle domande
È possibile configurare mappa di base, strumenti di mappa e altezza della domanda per le domande di mappa.
È possibile impostare una mappa di predefinita per le singole domande della mappa usando il parametro map nella colonna body::esri:style. Ad esempio, map="World Topography" imposta la domanda sulla mappa per utilizzare la mappa di base World Topography. In alternativa, è possibile impostare il parametro map utilizzando l'ID dell'elemento della mappa, ad esempio map=de26a3cf4cc9451298ea173c4b324736. Questo parametro supporta le mappe online e offline, incluse le proprie mappe web. Per ulteriori informazioni, consultare Includere una mappa in un rilevamento.
La colonna body::esri:style accetta un parametro mapTools per controllare gli strumenti mappa disponibili per le domande di mappa. Se nessun parametro di strumento mappa è impostato verranno visualizzati tutti gli strumenti. Sono accettati i seguenti valori:
- mapTools=search
- mapTools=mapSwitcher
- mapTools=zoom
- mapTools=home
- mapTools=locate
È possibile impostare più strumenti separando ogni valore con una virgola, ad esempio mapTools=search,locate.
La colonna body::esri:style accetta un parametro height per le domande di mappa.
È possibile impostare l'altezza per una domanda fornendo il parametro height con un numero e, facoltativamente, un'unità. L'unità predefinita è lines, che si riferisce all'altezza del carattere di testo di input attuale. Per esempio, height=5 fa sì che una di queste domanda visualizzino cinque righe di altezza.
In alternativa, è possibile impostare l'unità come percentuale dell'altezza dello schermo, o in base al numero di pixel, aggiungendoli come suffisso al valore senza spazi. Ad esempio, sono accettati tutti i seguenti valori:
- height=5
- height=5lines
- height=25%
- height=250pixels
Gli strumenti di mappa e l'altezza possono essere impostati con uno spazio che li divide, ad esempio height=25% mapTools=search,zoom.