Поделиться через


SpatialURL class

SpatialURL представляет URL-адрес Azure Maps пространственных операций.

Extends

Конструкторы

SpatialURL(Pipeline, string)

Создает экземпляр SpatialURL.

Унаследованные свойства

mapsUrl

Базовое строковое значение URL-адреса.

Методы

getBuffer(Aborter, string | SpatialFeatureCollection, number[])

Возвращает featureCollection, где каждый компонент является буфером вокруг соответствующего индексированного компонента входных данных. Буфер может находиться на внешней или внутренней стороне предоставленного компонента в зависимости от расстояния, предоставленного во входных данных. Для каждого компонента во входных данных FeatureCollection должно быть указано одно расстояние, или если указано только одно расстояние, то это расстояние применяется к каждому компоненту в коллекции. Положительный (или отрицательный) буфер геометрии определяется как сумма (или разница) минковски геометрии с кругом радиуса, равным абсолютному значению расстояния буфера. API буфера всегда возвращает многоугольный результат. Буфер отрицательного или нулевого расстояния для линий и точек всегда является пустым многоугольником. Входные функции предоставляются в запросе или файле GeoJSON, который отправляется через API отправки данных и ссылается на него уникальный udid. Данные могут содержать коллекцию Point, MultiPoint, Polygon, MultiPolygon, LineString и MultiLineString. GeometryCollection будет игнорироваться, если он указан. Если непосредственное FeatureCollection предоставление использует API post buffer: https://docs.microsoft.com/rest/api/maps/spatial/postbuffer

В противном случае используется API получения буфера: https://docs.microsoft.com/rest/api/maps/spatial/getbuffer

getClosestPoint(Aborter, GeoJSON.Position, string | SpatialFeatureCollection, GetClosestPointOptions)

Возвращает ближайшую точку между базовой точкой и заданным набором точек, предоставляемых пользовательскими данными в запросе или в отправленном пользователем наборе данных, определяемом udid. При использовании udid набор целевых точек предоставляется файлом GeoJSON, который передается через API отправки данных и ссылается на него уникальный udid. Файл GeoJSON может содержать только коллекцию точечной геометрии. MultiPoint или другие геометрические объекты будут игнорироваться, если они указаны. Максимальное количество принятых баллов — 100 000. Алгоритм не учитывает маршрутизацию или трафик. Возвращаемые сведения включают широту ближайшей точки, долготу и расстояние в метрах от ближайшей точки. Если непосредственное FeatureCollection предоставление использует API ближайшей точки post: https://docs.microsoft.com/rest/api/maps/spatial/postclosestpoint

В противном случае используетСЯ API получения ближайшей точки: https://docs.microsoft.com/rest/api/maps/spatial/getclosestpoint

getGeofence(Aborter, string, string | SpatialFeatureCollection, GeoJSON.Position, GetGeofenceOptions)

Извлекает приближение координаты к геозоне, предоставленной в запросе или переданной в службу данных. Вы можете использовать API отправки данных для отправки геозоны или набора ограждений. Дополнительные сведения о формате данных геозоны см. в статье Geofencing GeoJSON data. Чтобы запросить близость координаты, укажите расположение отслеживаемого объекта, а также идентификатор забора или набора заборов, а ответ будет содержать сведения о расстоянии от внешнего края геозоны. Отрицательное значение означает, что координата находится внутри забора, а положительное значение означает, что она находится за пределами забора. Этот API можно использовать для различных сценариев, включая отслеживание ресурсов, управление парком или настройку оповещений о перемещении объектов. API поддерживает интеграцию с Сеткой событий. Параметр isAsync используется для включения интеграции с Сеткой событий (отключен по умолчанию). Чтобы протестировать этот API, можно отправить примеры данных из примеров API post geofence (текст запроса) через API отправки данных и заменить [udid] из примера запроса ниже на udid, возвращенный API отправки данных.

Если непосредственное предоставление геозоны использует API post geofence: https://docs.microsoft.com/rest/api/maps/spatial/postgeofence

В противном случае используется API получения геозоны: https://docs.microsoft.com/en-us/rest/api/maps/spatial/getgeofence

Код InnerError для геозон

В контракте ошибки ответа геозон — это объект, innererror содержащий сведения об ошибке, относящиеся к службе. code — это свойство, в innererror котором можно сопоставить с определенным типом ошибки геозоны. В приведенной ниже таблице показано сопоставление кода между всеми известными типами ошибок клиента и соответствующей ошибкой messageгеозон.

innererror.code | ---------------------------- error.message | -------------------------------------- NullDeviceId | Идентификатор устройства не должен иметь значение NULL. NullUdid | Udid не должен иметь значение NULL. UdidWrongFormat| Udid следует получить из API приема пользовательских данных. InvalidUserTime| Недопустимое время пользователя. InvalidSearchBuffer| Недопустимый элемент Searchbuffer. InvalidSearchRange| Диапазон значений searchbuffer должен быть от 0 до 500 метров. InvalidLatLon| Недопустимые параметры Lat и (или) lon. InvalidIsAsyncValue| Недопустимый параметр IsAsync. InvalidModeValue| Недопустимый параметр режима. InvalidJson| Данные геозон не являются допустимым JSON-файлом. NotSupportedGeoJson| Данные геозон нельзя считывать как feature или FeatureCollections. InvalidGeoJson| Недопустимые данные геозон. NoUserDataWithAccountOrSubscription| Не удается найти данные геозоны пользователя с указанным идентификатором учетной записи и (или) идентификатором подписки. NoUserDataWithUdid| Не удается найти данные о геозоне пользователя с помощью предоставленного идентификатора udId.

getGreatCircleDistance(Aborter, [GeoJSON.Position, GeoJSON.Position])

Возвращает большое или кратчайшее расстояние между двумя точками на поверхности сферы, измеряемое вдоль поверхности сферы. Это отличается от вычисления прямой линии через внутреннюю область сферы. Этот метод полезен для оценки расстояния между самолетами путем вычисления кратчайшего расстояния между аэропортами. Использует API получения большого расстояния круга: https://docs.microsoft.com/rest/api/maps/spatial/getgreatcircledistance

getPointInPolygon(Aborter, string | SpatialFeatureCollection, GeoJSON.Position)

Возвращает значение, указывающее, находится ли точка внутри набора многоугольников. Набор многоугольников предоставляется в запросе или файле GeoJSON, который отправляется через API отправки данных и ссылается на него уникальный udid. Файл GeoJSON может содержать геометрические объекты Polygon и MultiPolygon. Другие геометрические объекты будут игнорироваться, если они указаны. Если точка находится внутри или на границе одного из этих многоугольников, возвращается значение true. Во всех остальных случаях возвращаемое значение равно false. Если точка находится внутри нескольких многоугольников, результат даст раздел пересекающихся геометрических объектов, чтобы отобразить все допустимые геометрические объекты (на которые ссылается geometryId) в пользовательских данных. Максимальное число вершин, принятое для формирования многоугольника, составляет 10 000. Если непосредственное FeatureCollection предоставление использует API Post Point In Polygon: https://docs.microsoft.com/rest/api/maps/spatial/postpointinpolygon

В противном случае используетСЯ API получения точки в многоугольнике: https://docs.microsoft.com/rest/api/maps/spatial/getpointinpolygon

Наследуемые методы

newPipeline(Credential, INewPipelineOptions)

Статический метод, используемый для создания нового объекта Pipeline с предоставленными учетными данными.

Сведения о конструкторе

SpatialURL(Pipeline, string)

Создает экземпляр SpatialURL.

new SpatialURL(pipeline: Pipeline, mapsUrl?: string)

Параметры

pipeline
Pipeline

Вызовите MapsURL.newPipeline(), чтобы создать конвейер по умолчанию или предоставить настраиваемый конвейер.

mapsUrl

string

Строка URL-адреса, указывающая на службу Azure Maps, по умолчанию — "https://atlas.microsoft.com". Если протокол не указан, например "atlas.microsoft.com", https будет принято.

Сведения об унаследованном свойстве

mapsUrl

Базовое строковое значение URL-адреса.

mapsUrl: string

Значение свойства

string

Наследуется отMapsURL.mapsUrl

Сведения о методе

getBuffer(Aborter, string | SpatialFeatureCollection, number[])

Возвращает featureCollection, где каждый компонент является буфером вокруг соответствующего индексированного компонента входных данных. Буфер может находиться на внешней или внутренней стороне предоставленного компонента в зависимости от расстояния, предоставленного во входных данных. Для каждого компонента во входных данных FeatureCollection должно быть указано одно расстояние, или если указано только одно расстояние, то это расстояние применяется к каждому компоненту в коллекции. Положительный (или отрицательный) буфер геометрии определяется как сумма (или разница) минковски геометрии с кругом радиуса, равным абсолютному значению расстояния буфера. API буфера всегда возвращает многоугольный результат. Буфер отрицательного или нулевого расстояния для линий и точек всегда является пустым многоугольником. Входные функции предоставляются в запросе или файле GeoJSON, который отправляется через API отправки данных и ссылается на него уникальный udid. Данные могут содержать коллекцию Point, MultiPoint, Polygon, MultiPolygon, LineString и MultiLineString. GeometryCollection будет игнорироваться, если он указан. Если непосредственное FeatureCollection предоставление использует API post buffer: https://docs.microsoft.com/rest/api/maps/spatial/postbuffer

В противном случае используется API получения буфера: https://docs.microsoft.com/rest/api/maps/spatial/getbuffer

function getBuffer(aborter: Aborter, udidOrFeatureCollection: string | SpatialFeatureCollection, distances: number[]): Promise<GetBufferResponse>

Параметры

aborter
Aborter

Создайте новый экземпляр Aborter с помощью Aborter.none или Aborter.timeout(), перейдите к документам Aborter, чтобы получить дополнительные примеры об отмене запроса.

udidOrFeatureCollection

string | SpatialFeatureCollection

Объект , FeatureCollection содержащий входные данные или уникальный идентификатор, возвращенный API отправки данных после отправки допустимого объекта GeoJSON FeatureCollection. Дополнительные сведения см. в документе RFC 7946 . Все свойства компонента должны содержать geometryId, который используется для идентификации геометрии и учитывает регистр.

distances

number[]

Список расстояний (по одному для каждого компонента или одного для всех компонентов). Положительное расстояние создает буфер за пределами функции, а отрицательное расстояние создает буфер внутри функции. Если отрицательное расстояние больше самой геометрии, возвращается пустой многоугольник.

Возвращаемое значение

getClosestPoint(Aborter, GeoJSON.Position, string | SpatialFeatureCollection, GetClosestPointOptions)

Возвращает ближайшую точку между базовой точкой и заданным набором точек, предоставляемых пользовательскими данными в запросе или в отправленном пользователем наборе данных, определяемом udid. При использовании udid набор целевых точек предоставляется файлом GeoJSON, который передается через API отправки данных и ссылается на него уникальный udid. Файл GeoJSON может содержать только коллекцию точечной геометрии. MultiPoint или другие геометрические объекты будут игнорироваться, если они указаны. Максимальное количество принятых баллов — 100 000. Алгоритм не учитывает маршрутизацию или трафик. Возвращаемые сведения включают широту ближайшей точки, долготу и расстояние в метрах от ближайшей точки. Если непосредственное FeatureCollection предоставление использует API ближайшей точки post: https://docs.microsoft.com/rest/api/maps/spatial/postclosestpoint

В противном случае используетСЯ API получения ближайшей точки: https://docs.microsoft.com/rest/api/maps/spatial/getclosestpoint

function getClosestPoint(aborter: Aborter, position: GeoJSON.Position, udidOrFeatureCollection: string | SpatialFeatureCollection, options?: GetClosestPointOptions): Promise<GetClosesPointResponse>

Параметры

aborter
Aborter

Создайте новый экземпляр Aborter с помощью Aborter.none или Aborter.timeout(), перейдите к документам Aborter, чтобы получить дополнительные примеры об отмене запроса.

position
GeoJSON.Position

Базовая точка.

udidOrFeatureCollection

string | SpatialFeatureCollection

Объект , FeatureCollection содержащий целевые точки или уникальный идентификатор, возвращенный API отправки данных после отправки допустимого объекта GeoJSON FeatureCollection. Дополнительные сведения см. в документе RFC 7946 . Все свойства компонента должны содержать geometryId, который используется для идентификации геометрии и учитывает регистр.

Возвращаемое значение

getGeofence(Aborter, string, string | SpatialFeatureCollection, GeoJSON.Position, GetGeofenceOptions)

Извлекает приближение координаты к геозоне, предоставленной в запросе или переданной в службу данных. Вы можете использовать API отправки данных для отправки геозоны или набора ограждений. Дополнительные сведения о формате данных геозоны см. в статье Geofencing GeoJSON data. Чтобы запросить близость координаты, укажите расположение отслеживаемого объекта, а также идентификатор забора или набора заборов, а ответ будет содержать сведения о расстоянии от внешнего края геозоны. Отрицательное значение означает, что координата находится внутри забора, а положительное значение означает, что она находится за пределами забора. Этот API можно использовать для различных сценариев, включая отслеживание ресурсов, управление парком или настройку оповещений о перемещении объектов. API поддерживает интеграцию с Сеткой событий. Параметр isAsync используется для включения интеграции с Сеткой событий (отключен по умолчанию). Чтобы протестировать этот API, можно отправить примеры данных из примеров API post geofence (текст запроса) через API отправки данных и заменить [udid] из примера запроса ниже на udid, возвращенный API отправки данных.

Если непосредственное предоставление геозоны использует API post geofence: https://docs.microsoft.com/rest/api/maps/spatial/postgeofence

В противном случае используется API получения геозоны: https://docs.microsoft.com/en-us/rest/api/maps/spatial/getgeofence

Код InnerError для геозон

В контракте ошибки ответа геозон — это объект, innererror содержащий сведения об ошибке, относящиеся к службе. code — это свойство, в innererror котором можно сопоставить с определенным типом ошибки геозоны. В приведенной ниже таблице показано сопоставление кода между всеми известными типами ошибок клиента и соответствующей ошибкой messageгеозон.

innererror.code | ---------------------------- error.message | -------------------------------------- NullDeviceId | Идентификатор устройства не должен иметь значение NULL. NullUdid | Udid не должен иметь значение NULL. UdidWrongFormat| Udid следует получить из API приема пользовательских данных. InvalidUserTime| Недопустимое время пользователя. InvalidSearchBuffer| Недопустимый элемент Searchbuffer. InvalidSearchRange| Диапазон значений searchbuffer должен быть от 0 до 500 метров. InvalidLatLon| Недопустимые параметры Lat и (или) lon. InvalidIsAsyncValue| Недопустимый параметр IsAsync. InvalidModeValue| Недопустимый параметр режима. InvalidJson| Данные геозон не являются допустимым JSON-файлом. NotSupportedGeoJson| Данные геозон нельзя считывать как feature или FeatureCollections. InvalidGeoJson| Недопустимые данные геозон. NoUserDataWithAccountOrSubscription| Не удается найти данные геозоны пользователя с указанным идентификатором учетной записи и (или) идентификатором подписки. NoUserDataWithUdid| Не удается найти данные о геозоне пользователя с помощью предоставленного идентификатора udId.

function getGeofence(aborter: Aborter, deviceId: string, udidOrFeatureCollection: string | SpatialFeatureCollection, position: GeoJSON.Position, options?: GetGeofenceOptions): Promise<GetGeofenceResponse>

Параметры

aborter
Aborter

Создайте новый экземпляр Aborter с помощью Aborter.none или Aborter.timeout(), перейдите к документам Aborter, чтобы получить дополнительные примеры об отмене запроса.

deviceId

string

Идентификатор устройства

udidOrFeatureCollection

string | SpatialFeatureCollection

Объект , FeatureCollection содержащий забор или уникальный идентификатор, возвращенный API отправки данных после отправки допустимого объекта GeoJSON FeatureCollection. Дополнительные сведения см. в документе RFC 7946 . Все свойства компонента должны содержать geometryId, который используется для идентификации геометрии и учитывает регистр.

position
GeoJSON.Position

Передаваемая папка.

Возвращаемое значение

getGreatCircleDistance(Aborter, [GeoJSON.Position, GeoJSON.Position])

Возвращает большое или кратчайшее расстояние между двумя точками на поверхности сферы, измеряемое вдоль поверхности сферы. Это отличается от вычисления прямой линии через внутреннюю область сферы. Этот метод полезен для оценки расстояния между самолетами путем вычисления кратчайшего расстояния между аэропортами. Использует API получения большого расстояния круга: https://docs.microsoft.com/rest/api/maps/spatial/getgreatcircledistance

function getGreatCircleDistance(aborter: Aborter, coordinates: [GeoJSON.Position, GeoJSON.Position]): Promise<GetGreatCircleDistance>

Параметры

aborter
Aborter

Создайте новый экземпляр Aborter с помощью Aborter.none или Aborter.timeout(), перейдите к документам Aborter, чтобы получить дополнительные примеры об отмене запроса.

coordinates

[GeoJSON.Position, GeoJSON.Position]

Координаты, по которым вычисляется расстояние. Требуются две координаты. Первый — координата исходной точки, а последняя — координата целевой точки.

Возвращаемое значение

getPointInPolygon(Aborter, string | SpatialFeatureCollection, GeoJSON.Position)

Возвращает значение, указывающее, находится ли точка внутри набора многоугольников. Набор многоугольников предоставляется в запросе или файле GeoJSON, который отправляется через API отправки данных и ссылается на него уникальный udid. Файл GeoJSON может содержать геометрические объекты Polygon и MultiPolygon. Другие геометрические объекты будут игнорироваться, если они указаны. Если точка находится внутри или на границе одного из этих многоугольников, возвращается значение true. Во всех остальных случаях возвращаемое значение равно false. Если точка находится внутри нескольких многоугольников, результат даст раздел пересекающихся геометрических объектов, чтобы отобразить все допустимые геометрические объекты (на которые ссылается geometryId) в пользовательских данных. Максимальное число вершин, принятое для формирования многоугольника, составляет 10 000. Если непосредственное FeatureCollection предоставление использует API Post Point In Polygon: https://docs.microsoft.com/rest/api/maps/spatial/postpointinpolygon

В противном случае используетСЯ API получения точки в многоугольнике: https://docs.microsoft.com/rest/api/maps/spatial/getpointinpolygon

function getPointInPolygon(aborter: Aborter, udidOrFeatureCollection: string | SpatialFeatureCollection, position: GeoJSON.Position): Promise<GetPointInPolygonResponse>

Параметры

aborter
Aborter

Создайте новый экземпляр Aborter с помощью Aborter.none или Aborter.timeout(), перейдите к документам Aborter, чтобы получить дополнительные примеры об отмене запроса.

udidOrFeatureCollection

string | SpatialFeatureCollection

Объект , FeatureCollection содержащий многоугольник или уникальный идентификатор, возвращенный API отправки данных после отправки допустимого объекта GeoJSON FeatureCollection. Дополнительные сведения см. в документе RFC 7946 . Все свойства компонента должны содержать geometryId, который используется для идентификации геометрии и учитывает регистр.

position
GeoJSON.Position

Базовая точка.

Возвращаемое значение

Сведения о наследуемом методе

newPipeline(Credential, INewPipelineOptions)

Статический метод, используемый для создания нового объекта Pipeline с предоставленными учетными данными.

static function newPipeline(credential: Credential, pipelineOptions?: INewPipelineOptions): Pipeline

Параметры

credential
Credential

Например, SubscriptionKeyCredential, TokenCredential и MapControlCredential.

pipelineOptions
INewPipelineOptions

Возвращаемое значение

Новый объект Pipeline.

Наследуется отMapsURL.newPipeline