Страница 1 из 1

Можно ли координатам в WKT (CQL/ECQL) указать проекцию?

Добавлено: 11 фев 2013, 14:39
Tink
Здравствуйте!
Использую запросы CQL/ECQL к GeoServer-у для получение объектов внутри заданной геометрии в WMS слое.
Подробнее в вопросе "Фильтрация объектов для WMS в GeoServer".
Так вот, столкнулся с проблемой, что координаты должны быть в "родной" проекции слоя (в GeoServer она обзывается как Native SRS). К сожалению много карт в проекции WGS_1984_UTM_Zone_37N которую OpenLayers без Proj4js не поддерживает.
В связи с этой проблемой возник вопрос, можно ли в запросе указать проекцию в которой передаются координаты?
Нашел статью Chapter 4. Using PostGIS в которой есть пример

Код: Выделить всё

SRID=4326;MULTIPOINTM(0 0 0,1 2 1) -- XYM with SRID

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

Хочу сразу заметить что запросы я делаю не к БД, а из OpenLayers к GeoServer.

Re: Можно ли координатам в WKT (CQL/ECQL) указать проекцию?

Добавлено: 11 фев 2013, 18:58
Denis Rykov
Приведенная вами запись - это представление EWKT - PostGIS-специфичная штука, которая позволяет хранить ссылку на SRID в самом поле геометрии и к вашей задаче насколько я могу судить никакого отношения не имеет. Я не особо разбираюсь в GeoServer, что такое Native SRS - это исходная проекция сырых данных в БД? Если так и эта проекция отличается от тех, что используется для рендеринга WMS - то такой вариант крайне нежелателен. Стандартная практика в таком случае заключается в создании еще одного поля с геометрией в БД в проекции, используемой для WMS. В этом случае WMS серверу не придётся перепроецировать данные при каждом запросе. Может это как-то поможет решить вашу исходную задачу, которую я честно говоря не очень понял.

Re: Можно ли координатам в WKT (CQL/ECQL) указать проекцию?

Добавлено: 13 фев 2013, 08:19
Tink
Видимо так и есть... Потому что ни где не удалось найти информацию по тому как указать проекцию в данном случае...
Очевидно что такой возможности просто нет в GeoServer, а жаль...
Спасибо за совет с предварительным перепроецированием слоёв... Думаю это лучший вариант...