Отображение карт в GeoServer
-
- Новоприбывший
- Сообщения: 13
- Зарегистрирован: 22 янв 2015, 10:49
- Репутация: 0
Отображение карт в GeoServer
День добрый.
Есть PostGIS пока для тестирования с таблицей-слоем точечных объектов в формате geometry(POINT(x,y)),
где значения точек - в проекции ПКО Нефедовой.
Есть GeoServer, в котором я пытаюсь не первый день отобразить данные из PostGIS.
Думая, что проблема в отстутствии нужной проекции в геосервере,
я добавила в файл espg.properties следующее (для srid=33000)
33000=PROJCS["kavr",
GEOGCS["pulk_42",
DATUM["D_Pulkovo_1942",
SPHEROID["Krasovsky_1940",6378245.0,298.3]],
PRIMEM["Greenwich",0.0],
UNIT["Degree",0.0174532925199433]],
PROJECTION["Equidistant_Conic"],
PARAMETER["False_Easting",0.0],
PARAMETER["False_Northing",0.0],
PARAMETER["Central_Meridian",100.0],
PARAMETER["Standard_Parallel_1",46.548696],
PARAMETER["Standard_Parallel_2",71.568357],
PARAMETER["Latitude_Of_Origin",54.0],
UNIT["Meter",1.0]]
Но слой карты с помощью openlayers в Geoserver так и не отображается. В чем моя ошибка?
Проблема не в PostGIS. Данные из нее прекрасно вытягиваются.
Может до загрузки в PostGIS нужно пересчитать координаты в широту и долготу?
Какие формулы могут оптимально это сделать? (Я уже в математической картографии порылась,
но с места не сдвинулась)
Спасибо заранее.
Есть PostGIS пока для тестирования с таблицей-слоем точечных объектов в формате geometry(POINT(x,y)),
где значения точек - в проекции ПКО Нефедовой.
Есть GeoServer, в котором я пытаюсь не первый день отобразить данные из PostGIS.
Думая, что проблема в отстутствии нужной проекции в геосервере,
я добавила в файл espg.properties следующее (для srid=33000)
33000=PROJCS["kavr",
GEOGCS["pulk_42",
DATUM["D_Pulkovo_1942",
SPHEROID["Krasovsky_1940",6378245.0,298.3]],
PRIMEM["Greenwich",0.0],
UNIT["Degree",0.0174532925199433]],
PROJECTION["Equidistant_Conic"],
PARAMETER["False_Easting",0.0],
PARAMETER["False_Northing",0.0],
PARAMETER["Central_Meridian",100.0],
PARAMETER["Standard_Parallel_1",46.548696],
PARAMETER["Standard_Parallel_2",71.568357],
PARAMETER["Latitude_Of_Origin",54.0],
UNIT["Meter",1.0]]
Но слой карты с помощью openlayers в Geoserver так и не отображается. В чем моя ошибка?
Проблема не в PostGIS. Данные из нее прекрасно вытягиваются.
Может до загрузки в PostGIS нужно пересчитать координаты в широту и долготу?
Какие формулы могут оптимально это сделать? (Я уже в математической картографии порылась,
но с места не сдвинулась)
Спасибо заранее.
-
- Гуру
- Сообщения: 838
- Зарегистрирован: 10 дек 2009, 23:24
- Репутация: 169
- Ваше звание: старик-гисовик
- Откуда: Москва
- Контактная информация:
Re: Отображение карт в GeoServer
Что в настройках публикации сервиса стоит?
-
- Новоприбывший
- Сообщения: 13
- Зарегистрирован: 22 янв 2015, 10:49
- Репутация: 0
Re: Отображение карт в GeoServer
В геосервере, в настройках слоя нет родной SRS (не добавляется и не доступно)
В Объявленной SRS указана моя.
В охватах - родной охват X от -33000 до 33000
по Y от -33000 до 33000 (рамка моей карты)
Если посчитать широту/долготу ограничивающего поля,
то получается бред: X от 99,48 град до 100,5, а по Y от 53,7 до 54,3.
Впечатление такое что из формул взяты параметры - 100 градусов и 54 градуса.
Какими формулами можно координаты моей проекции
корректно преобразовать в широту/долготу ?
В Объявленной SRS указана моя.
В охватах - родной охват X от -33000 до 33000
по Y от -33000 до 33000 (рамка моей карты)
Если посчитать широту/долготу ограничивающего поля,
то получается бред: X от 99,48 град до 100,5, а по Y от 53,7 до 54,3.
Впечатление такое что из формул взяты параметры - 100 градусов и 54 градуса.
Какими формулами можно координаты моей проекции
корректно преобразовать в широту/долготу ?
- SergeyRyzhkov
- Гуру
- Сообщения: 909
- Зарегистрирован: 02 июл 2014, 19:13
- Репутация: 203
- Ваше звание: GP-экотеррористы
- Откуда: Санкт-Петербург
- Контактная информация:
Re: Отображение карт в GeoServer
Вам надо определится именно с системой координат!
Посмотрите примерный алгоритм (очень упрощенно) работы:
1. На клиенте (например openlayers) определена СК для отображения данных
2. При перемещении карты клиент посылает запрос на сервер для получения данных для отображения. Например, WMS,WFS,WMTS, да какой угодно (зависит от планина на клиенте). Клиент помимо прочего в запросе указывает bbox текущего вида карты и СК
3. Сервер приняв запрос должен получить данные из источника и сформировать ответ (рендеринг и т.д.).
Так вот сервер принимая запрос "смотрит" на СК указанную, смотрит на СК в котрой хранятся данные, получает данные на bbox и пытается выполнить перепроицирование, чтобы вернуть клиенту данные в той СК, в которой он (клиент) просит.
Так вот Вы подумайте какие СК на каждом шаге у Вас, скажите, приведите код OL, мы если что поможем
Посмотрите примерный алгоритм (очень упрощенно) работы:
1. На клиенте (например openlayers) определена СК для отображения данных
2. При перемещении карты клиент посылает запрос на сервер для получения данных для отображения. Например, WMS,WFS,WMTS, да какой угодно (зависит от планина на клиенте). Клиент помимо прочего в запросе указывает bbox текущего вида карты и СК
3. Сервер приняв запрос должен получить данные из источника и сформировать ответ (рендеринг и т.д.).
Так вот сервер принимая запрос "смотрит" на СК указанную, смотрит на СК в котрой хранятся данные, получает данные на bbox и пытается выполнить перепроицирование, чтобы вернуть клиенту данные в той СК, в которой он (клиент) просит.
Так вот Вы подумайте какие СК на каждом шаге у Вас, скажите, приведите код OL, мы если что поможем
Последний раз редактировалось SergeyRyzhkov 30 янв 2015, 11:17, всего редактировалось 1 раз.
-
- Гуру
- Сообщения: 838
- Зарегистрирован: 10 дек 2009, 23:24
- Репутация: 169
- Ваше звание: старик-гисовик
- Откуда: Москва
- Контактная информация:
Re: Отображение карт в GeoServer
1. Версия GeoServer?
2. В настройках стоит "Оставить Объявленную"?
3. Реальное положение точек не в указанных диапазонах широт-долгот?
2. В настройках стоит "Оставить Объявленную"?
3. Реальное положение точек не в указанных диапазонах широт-долгот?
- Филиппов Владислав
- Гуру
- Сообщения: 1035
- Зарегистрирован: 17 фев 2006, 06:28
- Репутация: 144
- Ваше звание: Геннадич
- Откуда: Новосибирск
- Контактная информация:
Re: Отображение карт в GeoServer
я бы так сделалМожет до загрузки в PostGIS нужно пересчитать координаты в широту и долготу?
-
- Новоприбывший
- Сообщения: 13
- Зарегистрирован: 22 янв 2015, 10:49
- Репутация: 0
Re: Отображение карт в GeoServer
Добрый день.
Мое положение так и не сдвинулось с мертвой точки.
В этот раз я загрузила объекты из примеров, сначала сконвертировав
из шейпа в PostGIS, а затем попыталась опубликовать в GeoServer
Результат тот же. Пустой экран. Все рамки правильно посчитаны...
Моя версия GeoServer 2.6-snapshot, при установке yum'ом был автоматически выбран.
Уважаемые форумчане, у кого-нибудь данные из PostGIS вызывали ли
проблему при публикации в GeoServer?
В слоях, которые идут в качестве примеров с GeoServer нет слоев из PostGIS!!!
Мое положение так и не сдвинулось с мертвой точки.
В этот раз я загрузила объекты из примеров, сначала сконвертировав
из шейпа в PostGIS, а затем попыталась опубликовать в GeoServer
Результат тот же. Пустой экран. Все рамки правильно посчитаны...
Моя версия GeoServer 2.6-snapshot, при установке yum'ом был автоматически выбран.
Уважаемые форумчане, у кого-нибудь данные из PostGIS вызывали ли
проблему при публикации в GeoServer?
В слоях, которые идут в качестве примеров с GeoServer нет слоев из PostGIS!!!
- Филиппов Владислав
- Гуру
- Сообщения: 1035
- Зарегистрирован: 17 фев 2006, 06:28
- Репутация: 144
- Ваше звание: Геннадич
- Откуда: Новосибирск
- Контактная информация:
Re: Отображение карт в GeoServer
1. а что написано в geoserver.log ?
2. видно ли ваши данные в desktop-ных ГИС: QGIS, OpenJUMP, KOSMO, etc?
2. видно ли ваши данные в desktop-ных ГИС: QGIS, OpenJUMP, KOSMO, etc?
-
- Новоприбывший
- Сообщения: 13
- Зарегистрирован: 22 янв 2015, 10:49
- Репутация: 0
Re: Отображение карт в GeoServer
Обратила внимание на следующее при настройке слоя.
В разделе "Обновить тип объекта" стоит желтый треугольник, предупреждающий об ошибке и
при нажатии на "..." возникает следующее
Rendering process failed java.io.IOExceptionorg.postgresql.util.PSQLException:
ОШИБКА: нет доступа к отношению population ( population - название таблицы в PostGIS)
В разделе "Обновить тип объекта" стоит желтый треугольник, предупреждающий об ошибке и
при нажатии на "..." возникает следующее
Rendering process failed java.io.IOExceptionorg.postgresql.util.PSQLException:
ОШИБКА: нет доступа к отношению population ( population - название таблицы в PostGIS)
-
- Новоприбывший
- Сообщения: 13
- Зарегистрирован: 22 янв 2015, 10:49
- Репутация: 0
Re: Отображение карт в GeoServer
С предыдущим сообщением разобралась, недостаточно было прав пользователя.
Теперь следующее сообщение видимо классическое для GeoServer'a
Reloading a feature type will cause any existing connections to its data store to be severed: in flight requests might fail as a result
Теперь следующее сообщение видимо классическое для GeoServer'a
Reloading a feature type will cause any existing connections to its data store to be severed: in flight requests might fail as a result
-
- Гуру
- Сообщения: 838
- Зарегистрирован: 10 дек 2009, 23:24
- Репутация: 169
- Ваше звание: старик-гисовик
- Откуда: Москва
- Контактная информация:
Re: Отображение карт в GeoServer
Это просто предупреждение. В принципе, показу данных могли мешать как раз урезанные права.
Попробуйте еще раз посмотреть данные в GeoServer и в каком-нибудь настольном ПО.
Попробуйте еще раз посмотреть данные в GeoServer и в каком-нибудь настольном ПО.
-
- Новоприбывший
- Сообщения: 13
- Зарегистрирован: 22 янв 2015, 10:49
- Репутация: 0
Re: Отображение карт в GeoServer
Вы были правы, это были предупреждения. Карта появилась, но похоже в цилиндрической проекции,
хотя я указала родную проекцию Нефедовой (8159). Что можно добавить для отображения карты в моей проекции?
хотя я указала родную проекцию Нефедовой (8159). Что можно добавить для отображения карты в моей проекции?
-
- Новоприбывший
- Сообщения: 13
- Зарегистрирован: 22 янв 2015, 10:49
- Репутация: 0
Re: Отображение карт в GeoServer
Спасибо большое, проблема с отображением решена.
-
- Гуру
- Сообщения: 838
- Зарегистрирован: 10 дек 2009, 23:24
- Репутация: 169
- Ваше звание: старик-гисовик
- Откуда: Москва
- Контактная информация:
Re: Отображение карт в GeoServer
А расскажите, пожалуйста, как в итоге все решили?
-
- Новоприбывший
- Сообщения: 13
- Зарегистрирован: 22 янв 2015, 10:49
- Репутация: 0
Re: Отображение карт в GeoServer
Проблему к сожалению решила частично, но могу поделиться с этапами успешного появления на экране Geoserver'a карты России. Сначала исправила координаты X и Y, которые были неверно симпортированы в PostGIS. После решения проблемы в охватах вместо -33000 и 33000 получились нормальные значения: Мин(-5 900; -1 875) до Макс(3 765; 3 415). Затем оказалось, что отсутствовали права пользователя Geoserver'а на доступ к этой таблице (гранты нужно выставить в PostGIS).
А часть нерешенного вопроса следующая. Почему-то Широта/долгота ограничивающего поля - в пределах Мин (104,8;59,98) и Макс (104,98;60,03). Как сделать нормальные пределы?
Из-за этого у меня нет возможности на карте отображать широту и долготу. Впечатление такое, что расчет формулы, который делает Geoserver неверен. Я изменила файл espg.properties для X и Y (исходные данные требовали это): PARAMETER["False_Easting",4583.0], PARAMETER["Central_Meridian",105.0], PARAMETER["Latitude_Of_Origin",60.0]
А часть нерешенного вопроса следующая. Почему-то Широта/долгота ограничивающего поля - в пределах Мин (104,8;59,98) и Макс (104,98;60,03). Как сделать нормальные пределы?
Из-за этого у меня нет возможности на карте отображать широту и долготу. Впечатление такое, что расчет формулы, который делает Geoserver неверен. Я изменила файл espg.properties для X и Y (исходные данные требовали это): PARAMETER["False_Easting",4583.0], PARAMETER["Central_Meridian",105.0], PARAMETER["Latitude_Of_Origin",60.0]
Кто сейчас на конференции
Сейчас этот форум просматривают: нет зарегистрированных пользователей и 25 гостей