#arcgis #srid #sharpmap
#arcgis #srid #четкая карта
Вопрос:
Я пытаюсь разработать свой собственный картографический сервис, а затем отображать сгенерированные изображения в ARCGIS map viewer… В любом случае мой сервис * .ashx считывает URL-адрес плитки ARCGIS, который выглядит как «http://services.arcgisonline.com/ArcGIS/rest/services/NGS_Topo_US_2D/MapServer/tile/1/1/2 »
Я хочу преобразовать значение (Zoom / TileX / tileY) из URL-адреса выше в пиксель или поле привязки, ИСПОЛЬЗУЯ SRID 4326
Значения BoundingBox не должны превышать максимальное / минимальное значение в диапазоне от (-180, -90) до (180,90).
Я беру Bbox, затем передаю его в свою хранимую процедуру, которая пересекает некоторые строки географии SQL.
Есть идеи?
Ответ №1:
Вы могли бы посмотреть на перевернутую ось BruTile.TileToWorld
Вам нужно будет определить схему на основе информации, которую вы найдете здесь: http://server.arcgisonline.com/ArcGIS/rest/services/NGS_Topo_US_2D/MapServer
Не уверен, что это самое простое решение в вашей ситуации
Комментарии:
1. спасибо .. На самом деле я читаю ответ из текстового файла, содержащий ответ » server.arcgisonline.com/ArcGIS/rest/services/NGS_Topo_US_2D /… » Как вы думаете, я мог бы перенести содержимое в BruTile. TileSchema ? Все еще не могу найти TileToWord … нет результата для моего поиска по нему..
2. я использовал код в brutile.codeplex.com/discussions/238295 но GetExtentOfTilesInView(мой. Масштаб, масштабирование) всегда возвращает полный диапазон (Max ={180, 90}, Min = {-180, -90}) Я хочу получить расширение для определенной ШИРОТЫ / ДОЛГОТЫ из URL-адреса плитки ArcGIS / zoom / tileX / tileY
3. Этот пример кода служит другой цели. Вы должны определить схему (как в этом примере), но использовать значения, которые вы найдете в определении схемы, которую вы фактически используете, которую вы можете найти здесь: server.arcgisonline.com/ArcGIS/rest/services/NGS_Topo_US_2D /…
4. …Затем используйте метод InvertedYAxis . TileToWorld, который принимает TileRange в качестве аргумента (который вы можете инициализировать значениями x и y для плитки), затем level (или значение z) и TileSchema, которую вы инициализировали
5. Класс TileToWorld теперь является членом общедоступного класса TileTransform. Вот некоторый код, который демонстрирует его использование: brutile.codeplex.com/SourceControl/changeset/view /…