Геоточки

Вопросы типа Геоточка позволяют захватывать в опрос определенное местоположение. Хотя ответы на опрос в Survey123 всегда пытаются зафиксировать местоположение устройства, даже при отсутствии вопроса Геоточка, имеющийся в форме вопрос позволяет более точно фиксировать информацию о местоположении.

Вопрос типа Геоточка по умолчанию

При использовании геоточек учитывайте следующее:

  • Вы можете добавить к опросу несколько вопросов типа геоточка, геотрассировка или геоформа, однако только один из них может использоваться в качестве геометрии записи опроса. Можно использовать несколько вопросов карты, если для всех вопросов, кроме одного, для bind::esri:fieldType задано null.
  • Каждый повтор в опросе также может содержать более одного вопроса типа геоточка, геотрассировка или геоформа, однако только один из них может использоваться в качестве геометрии повторяющейся записи. С помощью описанного выше метода можно использовать несколько вопросов типа Карта.
  • По умолчанию, Survey123 отображает значения широты и долготы WGS84 в формате градусы/минуты/секунды. Чтобы изменить это отображение для опроса, выберите вкладку Карта и выберите другое значение Формата координат.
  • По умолчанию, для вопроса Геоточка используется интерактивная базовая карта. Если опрос будет использоваться в автономном режиме, изучите раздел Использование автономных базовых карт.
  • Местоположения точек из первого в повторе вопроса геоточка можно показать на любой карте в опросе. Более подробно см. Точечные наложения на картах.
  • Если вы не включите в опрос вопросы геоточка, геотрассировка или геоформа, то основной векторный слой для этого опроса будет использовать тип геометрии esriGeometryPoint. Местоположение точки заполняется информацией о местоположении из устройства, полученной в момент открытия опроса. Это действие применимо даже в том случае, если опрос содержит повторы, содержащие вопросы типа карта, но не содержит вопросов типа карта вне повторов.
  • Задав для столбца оформления вопроса геоточки press-to-locate, Survey123 будет захватывать точку, только когда пользователь взаимодействует с вопросом.
  • При записи ответов с помощью карты не все объекты полевого приложения Survey123 поддерживаются в веб-приложении. Следующие функции поддерживаются полевым приложением Survey123, но не поддерживаются веб-приложением:
    • Автономные базовые карты.
    • Усреднение местоположения для вопросов типа геоточка.
    • Символы геоточек.
    • Пороговые значения и выражения точности определения местоположения.
    • Все свойства pulldata("@geopoint"). Веб-приложение поддерживает только свойства x, y, z, horizontalAccuracy, verticalAccuracy, speed и direction.

Порог точности местоположения

По умолчанию, Survey123 не проверяет собранные значения точность положения. Если точность позиционирования важна для результатов опроса, можно задать порог точности с усреднением местоположения. Это можно сделать, введя числовое значение в столбец вопроса геоточки body::accuracyThreshold. Это значение будет порогом точности, после которого значения при усреднении местоположения захватываться не будут.

Сообщение об ошибке, когда в ответе превышен порог точности 5 м

Когда усреднение не применяется, на панели карты в Survey123 полевом приложении появляется предупреждение в случае, если точность местоположения выходит за пределы заданного порога, но позволяет пользователю фиксировать местоположения. Чтобы захватить местоположение, которое соответствует порогу, дождитесь, когда предупреждение исчезнет и коснитесь кнопки местоположения. Местоположения, не соответствующие порогу точности, будут автоматически игнорироваться при усреднении.

Выражения качества местоположений

Порог точности местоположения представляет собой отдельное число, представляющее минимальное значение горизонтальной точности заданного местоположения. Чтобы предупредить пользователя о том, что местоположение не соответствует другим более сложным требованиям по качеству или не позволить им передать это местоположение, можно использоваться выражение. Далее следуют те столбцы (вместе со связанными столбцами сообщений), где вы можете ввести эти выражения:

  • Столбцы ограничений constraint и constraint_message могут использоваться для того, чтобы пользователь не мог зафиксировать местоположение в вопросе Геоточка, если качестве этого местоположения не является достаточным.
  • Столбцы bind::esri:warning и bind::esri:warning_message могут использоваться для отображения предупреждения пользователю в случае, если выражение качества местоположения не выполняется. Если выражение качества местоположения не выполнено, строка, содержащая значение координаты в верхней части вопроса геоточка, станет желтой. В этом случае пользователь по-прежнему может зафиксировать местоположение.
Предупреждающее сообщение в случаях, когда ответ не соответствует выражению качества местоположений

Выражение может быть создано в любом из столбцов с помощью любого вопроса из опроса, в основном будут использоваться вопросы или параметры, относящиеся к местоположению опроса.

О параметрах местоположений, которые могут использоваться, см. раздел Извлечение значений геоточек далее по тексту.

В качестве примера, следующее выражение может быть использовано для обеспечения того, чтобы перед фиксацией местоположения пользователь почти остановился, и чтобы горизонтальная точность была лучше 5 метров.

pulldata("@geopoint", ., "horizontalAccuracy") < 5 and pulldata("@geopoint", ., "speed") < 0.1

Подсказка:

Хотя пользователь должен фиксировать точку, не перемещаясь, устройство редко сообщает о том, что скорость равна нулю. По этой причине в приведенном примере определяется скорость менее 0,1, обеспечивающая приемлемый предел погрешности.

Если местоположение должно быть зафиксировано в условиях, описанных выражением, введите выражение в столбец ограничений. А если это только рекомендация, то в случае ввода выражения в столбец bind::esri:warning появится только сопровождающее предупреждение пользователю. Пользователь все еще сможет фиксировать местоположение в вопросе геоточки.

Если данное выражение в этих столбцах будет иметь значение false, появятся сообщения constraint и bind::esri:warning.

Для очень больших или сложных выражений рекомендуем разделить функции pulldata("@geopoint") на отдельные вопросы и ссылаться на имена этих вопросов в выражении. Например, для выполнения той же функции, что и в примере выше, вы можете использовать следующий расчет в вопросе hAccuracy:

pulldata("@geopoint", ${location}, "horizontalAccuracy")

Затем вы можете использовать следующий расчет в вопросе currentSpeed:

pulldata("@geopoint", ${location}, "speed")

Следующий расчет мог бы использоваться как выражение ограничения или предупреждения для вопроса геоточка:

(${hAaccuracy} < 5) and (${currentSpeed} < 0.1)

Сообщать об 95-процентном интервале достоверности

Вашей организации может потребоваться сообщить о собранных данных в определенном интервале достоверности (CI). По умолчанию, если возвращается тип точности среднеквадратичная ошибка (RMS), CI равен 68 процентам. Чтобы сообщить о 95-процентном CI в опросе, умножьте горизонтальную точность на 1.7308, а вертикальную - на 1.9600. Дополнительные сведения об этих коэффициентах конвертации см. в разделе Национальный стандарт точности пространственных данных.

Пример получения данных с высокой точностью

В этом примере необходим абсолютно минимальный набор переменных, но пользователю дана возможность сбора местоположений с менее строгими ограничениями. Возможно, имеется ряд ограничений, связанных с безопасностью, которые не позволяют пользователю достаточно долго находиться в каком-либо месте, чтобы получить данные с требуемой точностью. В этом случае появляется предупреждение, и пользователь может решить, захватывать местоположение или ждать.

Следующие требования к абсолютной минимальной точности задаются автором опроса:

  • Горизонтальная точность с 95-процентным CI составляет менее двух метров.
  • Вертикальная точность с 95-процентным CI составляет менее двух метров.
  • PDOP меньше или равно 6.0.
  • Используется пять или более спутников.

Следующие требования к предпочтительной точности задаются автором опроса:

  • Горизонтальная точность с 95-процентным CI составляет менее метра.
  • Вертикальная точность с 95-процентным CI составляет менее метра.
  • PDOP меньше или равно 2.0
  • Используется семь или более спутников.

Следующий расчет используется в вопросе haccuracy68cep:

pulldata("@geopoint", ${location}, "horizontalAccuracy")

Затем следующий расчет используется в вопросе haccuracy95ci:

${haccuracy68cep} * 1.7308

С похожими вычислениями для вертикальной точности, в столбец constraint можно ввести следующее выражение абсолютной минимальной точности:

${accuracyType} = 0 and ${haccuracy95ci} < 2 and ${vaccuracy95ci} < 2 and ${pdop} <= 6 and ${satellitesInUse} >= 5

Следующее выражение должно быть включено в столбец bind::esri:warning для представления предпочитаемой точности. Эти значения обычно меньше, чем использующиеся для абсолютно минимальной точности. Меньшие значения предпочтительнее, но более высокие минимальные значения также приемлемы.

${accuracyType} = 0 and ${haccuracy95ci} < 1 and ${vaccuracy95ci} < 1 and ${pdop} <= 2 and ${satellitesInUse} >= 7

Векторные 3D-слои

По умолчанию, Survey123 вопросы Геоточка не поддерживают значения по оси Z (высоту); они фиксируют только значения широты и долготы в двухмерных векторных слоях. Это можно изменить, введя esriFieldTypePointZ в поле вопроса bind::esri:fieldType, что позволит захватывать в векторный слой значения высот. Это также позволить использовать поле высоты при задании значения геоточки.

По умолчанию

Для вопроса геоточка может быть задано местоположение по умолчанию; для этого в столбце default надо указать значения широты и долготы, разделенные пробелами (в десятичных градусах). Например, указание значений -37.814552 144.966071 приведит к тому, что вопрос геоточка по умолчанию будет располагаться в Мельбурне, Австралия.

Подсказка:

Значения местоположения по умолчанию в южном полушарии приводят к ошибке Microsoft Excel, поскольку значение читается как формула из-за знака минус (-) в его начале. В таких случаях перед первым значением необходимо ввести апостроф, тогда Excel прочитает это значение так, как требуется. Добавление апострофа не вызывает каких-либо изменений в поведении Survey123.

Если значения по умолчанию не будут указаны, вопрос геоточка автоматически обновится на текущее местоположение устройства. Чтобы предотвратить это, установите значение по умолчанию как null. Тогда вопрос геоточка будет отображать опции по включению захвата местоположения, загрузки страницы карты для указания местоположения вручную или обновления вычисления, если оно применяется.

Вопросы типа Геоточка, которые переключаются с неактуального на актуальное состояние, не будут автоматически обновляться в соответствии с местоположением устройства. Установите значение по умолчанию на позиция, чтобы устройство автоматически определяло текущее местоположение, когда вопрос становится актуальным.

Вопросы типа Геоточка, содержащиеся в опросах, запущенных из папки Входящие, Черновики или Исходящие, не будут автоматически обновляться в соответствии с текущим местоположением устройства. Установите значение по умолчанию на положение, чтобы устройство автоматически определяло текущее местоположение, при открытии опроса из папки.

Вычисления

Вы можете ввести данные в вопрос Геоточка, используя результаты других вопросов. Ответ на вопрос Геоточка имеет вид списка значений долготы и широты (в десятичных градусах), разделенных пробелами, начинающейся со значений высоты и точности (в метрах). Чтобы ввести ответ на вопрос Геоточка, необходимо соблюдать данную структуру.

Поскольку этого нельзя сделать напрямую, заполняя ответы , рекомендуется использовать функцию substr(), которая поможет создать допустимый ответ. Например, имя геоточки может быть таким:

+059.38330_+018.00000

В этом значении используется фиксированное число знаков как для широты, так и для долготы, включая нули, которые обычно сокращаются, и с подчеркиванием между двумя значениями, поскольку пробелы в имени столбца не допускаются. Получаемое значение можно разобрать с помощью функции substr(), чтобы ввести в вопрос Геоточка такой ответ, как:

concat(substr(${LocationValue}, 0, 10), " ", substr(${LocationValue}, -10))

В этом примере используются первые 10 знаков значения (широта) и последние 10 знаков (долгота), которые представляются разделенные пробелом, чтобы дать допустимый результат геоточки.

Вы также можете использовать функцию pulldata() для заполнения вопроса Геоточка с помощью вложенного файла csv. Сначала добавьте в папку с файлами опроса файл .csv. Затем добавьте в столбец calculation что-то подобное:

pulldata('Intersections', 'Lat', 'IntersectionID', ${intersection}) + " " + pulldata('Intersections', 'Long', 'IntersectionID', ${intersection})

Как и в примере substr(), это позволит скомбинировать значения широты и долготы с пробелом и получить допустимый ответ на вопрос Геоточка, основанный на предыдущем вопросе.

См. примеры обоих расчетов в Survey123 Connect.

Необходимый ответ и только для чтения

Вопросы Геоточка автоматически заполняются местоположением, сообщаемым устройством, если оно доступно. Если устройство не сообщает допустимое местоположение в ответе на опрос, Survey123 возвратит местоположение 0,0; которое находится в океане недалеко от побережья Африки. Если сделать ответ на вопрос Геоточка обязательным, это не позволит отправить отчет со значениями Null, необходимо ввести значения местоположения автоматически или вручную.

Если сделать вопрос Геоточка только для чтения, это не позволит вводить ответы вручную. Это удобно для вопросов, в которых необходим автоматический ответ, а ответ вручную может привести к появлению ошибок в наборе данных. Рекомендуем использовать этот подход с одним из описанных выше методов вычисления, что позволит получить значение дискретной геоточки, которое пользователь не сможет изменить.

Геопоиск и геокодирование

Вопросы геоточки включают возможности геопоиска, которые позволят пользователю найти адрес или точку интереса, приблизить к ней карту и нанести на это местоположение маркер геоточки.

По умолчанию функциональность геопоиска возвращает результаты, которые могут быть расположены по всему миру, при этом для поиска адресов используется Сервис ArcGIS Geocoding.

По умолчанию геопоиск возвращает результаты, которые могут быть расположены по всему миру, при этом для поиска адресов используется Сервис ArcGIS Geocoding. Вошедшие в систему пользователи также увидят все Настроенные сервисы геокодирования организации.

Примечание:
Операция геокодирования с помощью Сервис ArcGIS Geocoding будет потреблять кредиты. Более подробную информацию см. в разделе Понятие кредитов.

Чтобы задать определенный локатор, из которого надо получить результаты, введите ID элемента локатора в столбец bind::esri:parameters, например, geocode=36ff9e8c13e042a58cfce4ad87f55d19. Локатор, используемый в опросе ArcGIS Online, должен быть элементом в ArcGIS Online. Локатор, используемый в опросе ArcGIS Enterprise, должен быть элементом того же портала, что и опрос.

Можно настроить вопрос только на геокодирование, добавив текстовый вопрос с оформлением геокодирования. Дополнительные сведения см. в разделе Оформление геокодирования.

Обратное геокодирование

Обратное геокодирование можно выполнять в полевом приложении; для этого надо продолжительное время удерживать нажатой карту или координаты при полностью открытом виде геоточки, но эти данные не будут сохранены и опубликованы в опрос. Значение обратного обратного геокодирования может быть получено из геоточки с помощью pulldata("@geopoint", ${location}, "reversegeocode"), которое возвращает локацию в виде объекта JSON. Можно извлечь отдельные параметры объекта, указав название свойства, но они будут различаться в зависимости от выбранного локатора. В случае Сервис ArcGIS Geocoding, будет возвращен объект JSON, аналогичный следующему:

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

Для извлечения определенного значения из объекта JSON, используйте функцию pulldata("@geopoint"), аналогичную следующей, с помощью которой извлекается параметр Match_addr:

pulldata("@geopoint", ${location}, "reversegeocode.address.Match_addr")

При обратном геокодировании используется сервис геокодирования вашей организации по умолчанию. Чтобы использовать другой сервис геокодирования, укажите его в качестве дополнительного параметра упомянутой выше функции в формате pulldata("@geopoint", ${location}, "reversegeocode", ${locatorURL}). Если этот сервис является защищенным, либо опрос предназначен для публичного использования, нужно настроить прокси, сохранив в него учетные данные доступа.

Если будет указан URL-адрес локатора, то могут быть заданы дополнительные параметры, которые будут переданы на данный URL-адрес. Как и в свойствах, предоставляемых с объектом JSON, эти параметры различаются в зависимости от используемого сервиса геокодирования. В следующем примере используется параметр featureTypes, который ограничивает возвращаемое значение определенным типом местоположения – ближайшим бизнесом или ориентиром:

pulldata("@geopoint", ${location}, "reversegeocode.address.Match_addr", "https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer", "featureTypes=POI")
Подсказка:

Если сервисом геокодирования для вашего развертывания ArcGIS Enterprise по умолчанию является Сервис ArcGIS Geocoding, или Сервис ArcGIS Geocoding используется как параметр URL-адреса локатора в опросе, как в примере выше, при обратном геокодировании появится ошибка токена. Чтобы избежать этого, создайте прокси-элемент ArcGIS Online, имеющий доступ к сохраненным в учетным данным, для пользователя с правами на геокодирование. Этот элемент затем можно задать как сервис геокодирования по умолчанию или как назначение для параметра URL-адреса локатора в функции обратного геокодирования.

Дополнительные сведения о параметрах URL обратного геокодирования, включая полный список параметров, которые могут быть переданы в URL, см. в документации ArcGIS REST API для операции reverseGeocode.

Вы можете включить несколько обратных вычислений геокодирования, не влияя на производительность или кредиты. Например, можно включить три приведенных ниже вызова для отдельных свойств:

pulldata("@geopoint", ${location}, "reversegeocode.address.Match_addr")

pulldata("@geopoint", ${location}, "reversegeocode.address.LongLabel")

pulldata("@geopoint", ${location}, "reversegeocode.address.ShortLabel")

Для первого расчета выполняется обратное геокодирование, которое потребляет кредиты. Затем ответ будет кэширован и использоваться для других двух расчетов. Новый вызов геосервиса потребуется, только если будет изменен URL-адрес запроса обратного геокодирования в связи с изменением местоположения, использованием другого параметра запроса или по причине истечения срока действия исходного токена доступа.

Настройка элемента локатора прокси

Для настройки элемента локатора прокси выполните следующие действия:

  1. Войдите в свою организацию ArcGIS под учетной записью, у которой есть права на геокодирование.
  2. На странице Ресурсы перейдите к Добавить элемент > Из URL для ArcGIS Online, или Добавить элемент > Из веб для ArcGIS Enterprise, а также убедитесь, что выбран тип Веб-сервис ArcGIS Server.
  3. Используйте URL предлагаемого локатора, например, https://geocode.arcgis.com/arcgis/rest/services/World/GeocodeServer для Сервис ArcGIS Geocoding.

    Он будет определен как защищенный сервис.

  4. Введите имя пользователя и пароль для учетной записи ArcGIS , которая имеет права на геокодирование.
  5. Выберите Хранить учетные данные с элементом сервиса. Не запрашивать аутентификацию.
  6. Введите заголовок и теги.
  7. Нажмите кнопку Добавить элемент.
  8. Сделайте этот элемент онлайн-локатора общедоступным.

Дополнительную информацию см. в разделах Требования по настройке собственных локаторов дляArcGIS Online или Настройка служебных сервисов с порталом дляArcGIS Enterprise.

Извлечение значений геоточек

Чтобы разобрать ответ Геоточка на составляющие, используйте функцию pulldata("@geopoint"), чтобы извлечь значения и внести их в качестве ответов на другие вопросы. В следующем примере из вопроса извлекается значение горизонтальной точности:

pulldata("@geopoint", ${location}, "horizontalAccuracy")

Доступность свойств геоточки зависит от использующегося оборудования. В следующей таблице указаны свойства, которые можно извлечь из геоточки:

Имя свойстваОписаниеЕдиницы измерения

x

Долгота: положительное значение в восточном полушарии и отрицательное в западном.

Десятичные градусы

y

Широта: положительное значение в северном полушарии и отрицательное в южном.

Десятичные градусы

z

Высота, в метрах над уровнем моря (по умолчанию) или высота над эллипсоидом (если задано в настройках полевого приложения).

Метры

horizontalAccuracy

Горизонтальная точность координат x и y.

Метры

verticalAccuracy

Вертикальная точность координаты z.

Метры

speed

Скорость относительно поверхности земли.

Метры в секунду

verticalSpeed

Скорость по вертикали

Метры в секунду

направление

Направление движения, измеренное по часовой стрелке, начиная с севера.

Десятичные градусы

positionSourceType

Категория источника позиции. Возможные результаты Неизвестно (0), Пользователь (1), Системное местоположение (2), Внешнее устройство (3), Сетевое устройство (4) и Файл (5).

Н/Д

positionSourceInfo.antennaHeight

Высота антенны устройства. Расстояние от антенны до поверхности Земли вычитается из значения высоты.

Метры

positionSourceInfo.altitudeType

Выбранный тип высоты. Возможные варианты - это высота над средним уровнем моря (0) и высота над эллипсоидом (1). Доступно для всех типов провайдеров местоположений.

Н/Д

В следующей таблице указаны дополнительные свойства, которые можно извлечь из геоточки, захваченной с помощью приемника высокой точности:

Имя свойстваОписаниеЕдиницы измерения

magneticVariation

Угол между магнитным и истинным севером.

Десятичные градусы

fixType

Тип фиксации позиции для координаты. Возможные результаты Нет (0), GPS (1), DifferentialGPS (2), PrecisePositioningService (3), RTKFixed (4), RTKFloat (5), Оценка (6), Вручную (7), Симуляция (8) и SBAS (9).

Н/Д

positionSourceInfo

Информация об устройстве в виде объекта JSON. Может использоваться для отладки и проверки. Отдельные элементы также могут возвращаться с использованием полного имени. Все доступные элементы см. в таблице ниже.

Н/Д

positionSourceInfo.pluginName

Имя внутреннего источника местоположения.. Доступно только для интегрированного провайдера местоположений устройства.

Н/Д

positionSourceInfo.deviceAddress

Адрес устройства. Доступно только для внешних приемников GNSS.

Н/Д

positionSourceInfo.deviceName

Название устройства. Доступно только для внешних приемников GNSS.

Н/Д

positionSourceInfo.deviceType

Тип внешнего устройства. Возможны результаты: Неизвестно (-1), Bluetooth (0), Serial Port (1) и Bluetooth LE (2). Доступно только для внешних приемников GNSS.

Н/Д

positionSourceInfo.networkName

Имя сетевого источника позиции. Доступно только для провайдеров сетевого местоположения.

Н/Д

positionSourceInfo.networkAddress

Адрес сетевого источника позиции. Доступно только для провайдеров сетевого местоположения.

Н/Д

positionSourceInfo.networkPort

Порт сетевого источника позиции. Доступно только для провайдеров сетевого местоположения.

Н/Д

positionSourceInfo.geoidSeparationCustom

Разница между эллипсоидом WGS-84 и средним уровнем моря, согласно пользовательским настройкам приложения.

Метры

geoidSeparation

Разница между эллипсоидом WGS-84 и средним уровнем моря по данным приемника GNSS. Это значение иногда называется ортометрической высотой.

Метры

accuracyType

Тип точности, сообщаемой параметрами horizontalAccuracy и verticalAccuracy. Возможные результаты: RMS (0) и DOP (1). RMS - это точность среднеквадратической ошибки Вычисляется на основе 68-процентного доверительного интервала для ошибок широты, долготы и высоты, сообщаемых приемником в предложении GST. Если приемник не поддерживает GST, используется DOP. DOP - это точность на основе погрешности. Использует константу ошибки диапазона определенного пользователем (UERE) для оценки горизонтальной или вертикальной точности.

Н/Д

positionAccuracy

Средняя радиальная сферическая ошибка. Содержит как горизонтальную, так и вертикальную ошибку.

Метры

latitudeError

Значение ошибки 1-sigma широты. Этот параметр заполняется, только когда устройство позиционирования поддерживает предложения GST в потоках NMEA.

Метры

longitudeError

Значение ошибки 1-sigma долготы. Этот параметр заполняется, только когда устройство позиционирования поддерживает предложения GST в потоках NMEA.

Метры

altitudeError

Значение ошибки 1-sigma высоты. Этот параметр заполняется, только когда устройство позиционирования поддерживает предложения GST в потоках NMEA.

Метры

hdop

Значение Horizontal Dilution of Precision (HDOP) данных позиционирования.

Н/Д

vdop

Значение Vertical Dilution of Precision (VDOP) данных позиционирования.

Н/Д

pdop

Значение Positional Dilution of Precision (PDOP) данных позиционирования. Для определения PDOP используется выражение PDOP^2 = HDOP^2 + VDOP^2.

Н/Д

differentialAge

Возраст дифференциального сигнала и коррекции, используемого приемником GPS для дифференциальной коррекции позиции.

Секунды

referenceStationId

ID дифференциальной базовой станции (DSID), использованной приемником GPS.

Н/Д

satellitesVisible

Число спутников, видимых в момент захвата местоположения.

Н/Д

satellitesInUse

Число спутников, использованных для получения данных позиционирования.

Н/Д

Формат координат

Функция pulldata("@geopoint") может также использоваться для получения значений геоточек и перевода этих значений в дополнительные форматы координат.

  • pulldata("@geopoint", ${location}, "DMS") возвращает геоточку как градусы-минуты-секунды. Они возвращаются в виде объекта 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}, "DMS.latitudeMinutes") возвращает только значение минут по широте.
  • pulldata("@geopoint", ${location}, "DDM") возвращает геоточку как градусы и десятичные минуты, а pulldata("@geopoint", ${location}, "DD") - как десятичные градусы. Они также возвращаются как объекты JSON и могут иметь отдельные значения, извлеченные с дополнительными параметрами, в том же виде градусов, минут и секунд, как это указано в формате выше.

Следующие форматы координат могут использоваться с дополнительным параметром точности, образуя десятичное значение, которое является степенью 10, например, 0.01, 0.1, 1, 10, или 100.

  • pulldata("@geopoint", ${location}, "MGRS") возвращает геоточку как значение сетки Military Grid Reference System (MGRS) с точностью 1 метр. Если указать дополнительный параметр точности, точность можно поменять. Например, pulldata("@geopoint", ${location}, "MGRS", 100) возвращает значение ячейки с точностью 100 метров.
  • pulldata("@geopoint", ${location}, "USNG") возвращает геоточку как значение сетки United States National Grid (USNG) с точностью 1 метр.
  • pulldata("@geopoint", ${location}, "UTM") возвращает геоточку как координаты Universal Transverse Mercator (UTM) с точностью 1 метр. Они возвращаются в виде объекта JSON:
    {
    	"band": "S",
    	"easting": 452994,
    	"northing": 4423429,
    	"text": "50S 452994E 4423429N",
    	"type": "UTM",
    	"zone": 50
    }
    Эти отдельные значения можно извлечь с помощью дополнительных параметров. Например, pulldata("@geopoint", ${location}, "UTM.easting", 0.01) возвращает только значение сдвига на восток с точностью 1 см.

Символы геоточки

Вопрос геоточка может показываться в виде пользовательского символа для точечного маркера на карте с помощью параметра symbol в столбце опроса body::esri:style. Параметр должен указывать имя файла пользовательского символа, который должен быть файлом .png в папке media опроса. См. пример ниже:

symbol=hydrant.png

Параметр symbol принимает дополнительные параметры для настройки отображения символа на карте. Эти параметры должны быть отделены от имени файла знаком вопроса, а друг от друга - знаком &. Например, параметр symbol может содержать свойства x, y и scale, как показано ниже:

symbol=hydrant.png?x=0.2&y=0.7&scale=2

  • Параметр x задает якорную точку символа по горизонтали. Он может принимать значения между 0 (левый край изображения) и 1 (правый край). Если не задано, по умолчанию равно 0,5.
  • Параметр y задает якорную точку символа по вертикали. Он может принимать значения между 0 (верхний край изображения) и 1 (нижний край). Если не задано, по умолчанию равно 1.
  • Параметр scale определяет масштаб отображения изображения. Значения менее 1 уменьшают масштаб изображения, значения выше 1 увеличивают его.
Стиль символа для вопроса типа геоточка

Указанное значение может быть постоянной или ссылкой на вопрос, например, symbol=${symbol_question}. Встроенные выражения не поддерживаются.

Точечные наложения на картах

Местоположения точек из первого вопроса типа геоточка в повторении могут показываться в любом вопросе карты опроса, если задать столбец body::esri:style для вопроса геоточка, геотрассировка и геоформа как overlay=repeat_name. Все точки, собранные для первого в повторении вопроса геоточка, отображаются на карте. Для настройки символов наложения можно использовать дополнительные параметры.

Следующие дополнительные параметры поддерживаются стилем наложения и могут быть разделены амперсандом, например, overlay=repeat_name&preview=true:

ПараметрОписаниеПример

просмотр

Показать точки наложения в вопросе карты. По умолчанию используется значение true.

view=false

preview

Показать точки наложения в карте предварительного просмотра. Значение по умолчанию – false.

preview=true

icon

Имя точечного символа, используемого для булавок карты. Просмотрите доступные символы в библиотеке Точечных символов в документации Esri Developer.

icon=esri_pin_two

iconColor

Цвет значка, используемый для булавок карты. Этот параметр принимает стандартное наименование цвета, либо цветовой код hex. Значение по умолчанию - черный.

iconColor=Blue

iconOutlineColor

Цвет контура, используемый для булавок карты. Допустимо стандартное наименование цвета, либо цветовой код hex. Значение по умолчанию - белый.

iconOutlineColor=#FF4500

iconSize

Размер значка, как он отображается на карте. Значение по умолчанию - 30.

iconSize=40

label

Имя вопроса опроса, используемое как подпись.

label=question_name

labelColor

Цвет подписи точки. Допустимо стандартное наименование цвета, либо цветовой код hex. Значение по умолчанию - черный.

labelColor=#FFD700

labelOutlineColor

Цвет контура подписи. Допустимо стандартное наименование цвета, либо цветовой код hex. Значение по умолчанию - белый.

labelOutlineColor=Black

fontSize

Размер шрифта подписи точки. Значение по умолчанию - 13.

fontSize=16

Стиль вопроса

Вы можете настроить базовую карту, инструменты карты и высоту вопроса для вопросов карты.

Новую базовую карту по умолчанию можно указать для отдельных вопросов карт, указав один раз с помощью параметра map в столбце body::esri:style. Например, map="World Topography" укажет, что картографический вопрос должен использовать базовую карту World Topography. Вы также можете задать параметр map с ID элемента карты, например, map=de26a3cf4cc9451298ea173c4b324736. Этот параметр поддерживает онлайн карты и автономную работу с картами, включая ваши собственные веб-карты. Более подробную информацию см. в разделе Добавление карты в опрос.

Столбец body::esri:style принимает значение параметра mapTools для управления инструментами карты, которые доступны для вопросов карты. Если параметр инструментов карты задан, все инструменты будут отображаться. Принимаются следующие значения:

  • mapTools=search
  • mapTools=mapSwitcher
  • mapTools=zoom
  • mapTools=home
  • mapTools=locate

Можно задать несколько инструментов, разделенных запятыми, например, mapTools=search,locate.

Столбец body::esri:style принимает значение параметра height для вопросов карт.

Высоту вопроса можно задать, сопроводив параметр height числом и, дополнительно, единицами измерения. Единицами измерения по умолчанию являются lines, при этом они ссылаются на высоту текущего входного шрифта. Например, height=5 будет вызывать отображение любого из этих вопросов высотой в пять строк.

В качестве альтернативы вы можете задать единицу измерения в процентах от высоты экрана или по количеству пикселов, добавив их в качестве суффикса к значению без пробела. Например, любое из значений, перечисленных ниже, будет принято:

  • height=5
  • height=5lines
  • height=25%
  • height=250pixels

Инструменты высоты и карты могут быть заданы с пробелами между ними, например, height=25% mapTools=search,zoom.

Примечание:
Управление высотой и инструментами карты вопросов не поддерживается веб-приложением Survey123.