Выходные символы и системы координат в веб-инструментах

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

Выходные символы

Результаты работы веб-инструментов, предоставляющих географические выходные данные, могут отрисовываться одим из двух способов:

  • Итоговые объекты посылаются на клиент и там же отрисовываются.
  • На клиент отправляется изображение карты из картографического сервиса, который отрисовывает это изображение на сервере.
Примечание:

Клиент, работающий с веб-инструментом не может запросить результат в виде изображения карты, если таким образом не настроен сервис. Издатель или администратор сервиса должен включить это свойство в процессе публикации веб-инструмента.

Клиент отображает выходные данные

По умолчанию веб-инструмент возвращает полученные выходные объекты на клиент. Поэтому то, как данные будут отрисовываться на карте, зависит от клиента. В Javascript API код должен получить результат, настроить способ отображения и затем отрисовать результат, как он настроен в веб-приложении. Если это настольное приложение, объекты будут получены от веб-инструмента и отрисованы на карте. Клиент может изменить символы по ходу работы с ними.

Сервер возвращает изображение карты

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

  • Когда результатом обработки является большой набор данных (например, растр) или большое количество объектов, которые непрактично отправлять на клиент.
  • Когда выходные объекты не могут быть отрисованы на клиенте. Например, растр (.tif) не может быть отрисован в веб-приложении.
  • Когда клиент не может отрисовать результат в высоком качестве. Изображение карты поддерживает те же настройки символов выходных результатов, которые были заданы при публикации.

Системы координат

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

Практически все веб-приложения используют систему координат Web Mercator (WKID: 102100). При создании веб-инструмента получившиеся объекты будут отрисованы в веб приложении, но вы можете задать для них другую систему координат. Если нужно просто показать результаты на карте, то лучше всего использовать проекцию Web Mercator, чтобы избежать ненужных преобразований. Если же нужно получить точные значения площадей или измерения длин, то для этого могут понадобиться локальные системы координат. Инструменты геообработки обрабатывают и выдают результат на основе системы координат входных данных, если для результата не было задано иное. Учтите это до создания вашего веб-инструмента, независимо от того, решите ли вы перепроецировать данные или оставить их как есть.

Сервис геообработки веб-инструмента содержит опцию использования значения выходной системы координат. Когда инструмент выполняется на сервере, клиентское приложение может указать сервису, что результат нужно вернуть в определенной системе координат. Как было сказано ранее, обработка будет выполнена на основе системы координат входных данных, так что результат будет в той же системе координат. Однако эта настройка позволяет продолжить выполнять обработку в данной системе координат, но сервер перепроецирует эти данные (если нужно) и вернет итоговый результат в выбранной системе координат. См. справку ArcGIS REST API для получения подробной информации о том, как задать outSR.