Проблема с данными в EPSG:4326

Вопросы по нескольким пакетам сразу, или вопросы, которые непонятно к какой ГИС отнести
Ответить
Giuseppe
Новоприбывший
Сообщения: 6
Зарегистрирован: 04 мар 2009, 13:12
Репутация: 0

Проблема с данными в EPSG:4326

Сообщение Giuseppe » 04 мар 2009, 14:00

Имеется материал в формате mif (house_4326.mif)
Геопривязан, EPSG:4326
МапИнфо видет его прекрасно.
Изображение

Но когда я открываю его в QGIS или гружу в GeoServer изображение плющит по вертикали.
Изображение

В posgresql гружу так(для геосервера):
ogr2ogr.exe -overwrite -f "PostgreSQL" "PG:user=test password=test
dbname=test" -nln house house_4326.mif

Потом решил сконвертить в шейп, вот так:
ogr2ogr.exe -f "ESRI Shapefile" -overwrite "C:/House_4326.shp"
"C:/House_4326.MIF" -sql "SELECT * FROM House_4326"

но результат тот же.
Почему Мапифно показывает все нормально, а в других программах плющит?

KolesovDmitry
Гуру
Сообщения: 810
Зарегистрирован: 22 авг 2007, 14:58
Репутация: 123
Откуда: Казань

Re: Проблема с данными в EPSG:4326

Сообщение KolesovDmitry » 04 мар 2009, 15:12

Скорее всего в MapInfo для окна карты выставлена какая-то проекция отличная от широты/долготы (прямоугольная система координат), и вектор автоматически пересчитывается под нее. Второй вариант - у вас используется растровая подложка, и вектор вытягивается по ней.

Giuseppe
Новоприбывший
Сообщения: 6
Зарегистрирован: 04 мар 2009, 13:12
Репутация: 0

Re: Проблема с данными в EPSG:4326

Сообщение Giuseppe » 04 мар 2009, 15:27

KolesovDmitry писал(а):Скорее всего в MapInfo для окна карты выставлена какая-то проекция отличная от широты/долготы (прямоугольная система координат), и вектор автоматически пересчитывается под нее. Второй вариант - у вас используется растровая подложка, и вектор вытягивается по ней.
Растровой подолжки нет, я просто импортирую mif либо открываю tab.

по поводу окна карты:

Map->Options->Projection
Курсор стоит на
Longitude / Latitude (WGS 84) (EPSG: 4326)

Так же дела обстоят с диалоговым окном Save copy as -> projection

Пробовал пересохранить в гауса-крюгера 7 зоны, все становится ровно во всех программах, но мне-то нужно wgs84 :((

у меня картматериал от 2х независящих друг от друга источников и результат одинаковый, сплющенное изображение.
Я скачал tiger_roads.shp, пример для геосервера. Побаловался с ним во всех программах и форматах - все ровно, в какую бы проекцию не сохранял - везде нормально грузится. Я просто не пойму где копать, и почему в мапфинфо всегда все отображается ровно:)?

Анна
Завсегдатай
Сообщения: 386
Зарегистрирован: 07 фев 2004, 14:31
Репутация: 7
Откуда: Лозанна
Контактная информация:

Re: Проблема с данными в EPSG:4326

Сообщение Анна » 04 мар 2009, 16:01

Дмитрий правильно все говорит
Если данные находятся в географической системе координат (десятичных градусах), то они будут выглядеть сплющенными по вертикали. Это нормальное явление, такая вот проекция (EPSG:4326). EPSG:4326 - это географич.система координат, на датуме WGS84 и сфероиде WGS84. Поэтому истинный вид таких данных - "сплющенный".
Если вы хотите, чтобы геосервер такие данные показывал несплющенными, а так как например показывает мэпинфо, вам придется их спроектировать до (!) загрузки в БД. Совершенно не обязательно проектировать в Гаусса-Крюгера, на датуме Пулково и сфероиде Красовского, вы можете их спроектировать в UTM на датуме WGS84 и сфероиде WGS84 - если вам необходимо придерживаться WGS84. Можете вообще соорудить свою проекцию на WGS-овском датуме и сфероиде.
Еще раз подчеркну, что если данные находятся в географической СК, то они должны выглядеть сплющенными - это нормально.
И еще проверьте в руководствах к геосерверу - может ли он проектировать данные на лету. Если может, то вам нужно будет задать переход для такого перепроектирования и не надо (!) проектировать данные (альтернативный вариант).

Анна
Завсегдатай
Сообщения: 386
Зарегистрирован: 07 фев 2004, 14:31
Репутация: 7
Откуда: Лозанна
Контактная информация:

Re: Проблема с данными в EPSG:4326

Сообщение Анна » 04 мар 2009, 16:08

И да - загляните вот сюда

Giuseppe
Новоприбывший
Сообщения: 6
Зарегистрирован: 04 мар 2009, 13:12
Репутация: 0

Re: Проблема с данными в EPSG:4326

Сообщение Giuseppe » 04 мар 2009, 16:34

Анна писал(а):И да - загляните вот сюда
спасибо! фак и ваш ответ пролили довольно яркий свет на проблему)) по-крайней мере теперь понятно что картматериал правильный.
Я изучил Геосервер и там ничего не сказано про проектирование на лету, по сему я думаю что нужно спроектировать до загрузки в базу ("спроектировать в UTM на датуме WGS84 и сфероиде WGS84")
Скажите как это правильно сделать?

Вот шэйпы tiger_roads http://slil.ru/27021286
Скажите они уже спроектированы? и как это узнать? ибо они нормально вгружаются.

P.S. я больше программист чем картограф, поэтому базовых знаний очень мало.

вдогонку:
если учесть что у меня данные под всю Россию(например дороги), я так понимаю там одной зоной не обойтись?

Boris
Гуру
Сообщения: 4231
Зарегистрирован: 10 апр 2006, 22:34
Репутация: -344969098
Откуда: Париж

Re: Проблема с данными в EPSG:4326

Сообщение Boris » 04 мар 2009, 17:15

Отвечу за MapInfo - это от большого ума. В нее изначально какой-то гений заложил, что "глобус" на плоскости не показывают. Поэтому для любой карты в системе координат долгота-широта она сама подбирает проекционную систему координат. Даже если в установках карты говорит, что система координат градусы-минуты. Использует она какую-то проекцию Меркатора, параметры проекции для окна подбирает - сама. Как раз единственное исключение было бы в случае растра в той же проекции. В этом случае - растр был бы прямоугольным, а вместе с ним и вектора имели правильную форму.
-----
Теперь про проекцию. Как-то странно в одном топике смешать и дома и карту все России.
В любом случае в MapInfo в списке проекций есть два раздела ""--- Проекции мира ---"" и ""--- Проекции полушарий ---"" там и найдете себе проекцию по душе. Если для вас принципиально наличие кода ESPG для такой проекции, то ищите проекцию, у которой в конце названия будет [ESPG:XXXX]
-----
Теперь про дороги, сам SPH представлены в проекции WGS84, но там же лежат 2 файла с расширение .fix и .qix, которых в стандартном комплекте SHP'а - не бывает, может именно они и задают способ отображения этого файла?

Giuseppe
Новоприбывший
Сообщения: 6
Зарегистрирован: 04 мар 2009, 13:12
Репутация: 0

Re: Проблема с данными в EPSG:4326

Сообщение Giuseppe » 04 мар 2009, 18:23

собственно проблема сводится к тому что мне поступают данные в Longitude / Latitude (WGS 84) (EPSG: 4326)
а мне надо их загрузить в геосервер чтобы небыло сплющенно и чтобы координаты были в градусах (как в гуглмапс)

Boris
Гуру
Сообщения: 4231
Зарегистрирован: 10 апр 2006, 22:34
Репутация: -344969098
Откуда: Париж

Re: Проблема с данными в EPSG:4326

Сообщение Boris » 04 мар 2009, 20:41

Giuseppe писал(а):собственно проблема сводится к тому что мне поступают данные в Longitude / Latitude (WGS 84) (EPSG: 4326)
а мне надо их загрузить в геосервер чтобы не было сплющено и чтобы координаты были в градусах (как в гуглмапс)
Попробуйте именно так сформулировав задачу разместить ее в ветках "Веб-картография" и "Свободные ГИС", а то может те, кто силен именно в этих пакетах пропустили ваш вопрос.

Анна
Завсегдатай
Сообщения: 386
Зарегистрирован: 07 фев 2004, 14:31
Репутация: 7
Откуда: Лозанна
Контактная информация:

Re: Проблема с данными в EPSG:4326

Сообщение Анна » 04 мар 2009, 20:52

По порядку:
данные которые по ссылке находятся в географ.системе координат на датуме WGS84 (ложатся правильно)

Теперь как быть с перепроектированием:
1) если у вас есть какой-то гис-пакет то перепроектировать данные можно в нем, если пакета нет, то можно использовать открытую библиотеку GDAL (вот тут почитать как в ней работать)
2) чтобы определить проекцию (а точнее говоря зону в которую нужно спроектировать данные) поступаете следующим образом:
2.1. загружаете файл разграфки на зоны ГК и UTM отсюда
2.2. загружаете в любой гис-пакет вместе с теми данными, которые нужно спроектировать
2.3. в том месте где обнаружаться ваши данные кликаете по разграфке - в аттрибутивной таблицы высветится зона
2.4. записываете номер зоны и затем используете при проектировании
Прим: для тех данных что в присланном файле зона UTM будет 18
3) если вы хотите проектировать данные на всю планету сразу, то естественно проекции с зонами вам не подойдут и надо думать уже о том, что вам больше подходит из существующих проекций на мир
4) если хотите проектировать например только Россию, то можете посмотреть те проекции, которые основаны на Равноплощадной Конической проекции Альберса с различными центральными параллелями и истингом. Конкретные параметры можно узнав скачав вот этот файл и посмотрев ту, которая Сибирь (она позволяет красиво показать всю Россию). НО(!) можно и другую подобрать проекцию - зависит от конкретной задачи.

-------
про координаты в градусах.
это вам придется отдельно разбираться с тем, как быть так, чтобы несмотря на то, что данные спроектированы (а их спроектировать если не хотите сплющенности - придется по-любому), при наведение курсора показывались градусы. Думаю, что в геосервере эта задача уже была кем-то решена, лучше как правильно сказал Борис, спросить в форуме Web-картография. Могу одно сказать, что и в мэпсервере, и в аркимсе это отдельная задача, под которую приходилось дописывать свою функцию. С геосервером не работала, поэтому рекомендую еще в другой ветке поспрашивать

Анна
Завсегдатай
Сообщения: 386
Зарегистрирован: 07 фев 2004, 14:31
Репутация: 7
Откуда: Лозанна
Контактная информация:

Re: Проблема с данными в EPSG:4326

Сообщение Анна » 04 мар 2009, 21:00

да, только когда будете в другой ветке писать вопрос, сразу правильно формулируйте, вам нужно не данные в дес.градусах, а чтобы пользователь при наведении курсора на вашу веб-карту видел градусы, а не метры.
И поуточняйте на тему того, как геосервер работает с данными в дес.град. и со спроектированными данными

Каминский Вадим
Активный участник
Сообщения: 138
Зарегистрирован: 18 авг 2005, 18:05
Репутация: 0

Re: Проблема с данными в EPSG:4326

Сообщение Каминский Вадим » 05 мар 2009, 14:53

Добавлю свои 5 копеек в обсуждение, может что-то разъяснится :D . Я неоднократно уже писал, что во многих ГИС-пакетах по умолчанию для отображения данных хранящихся в географических координатах используется нормальная равнопромежуточная (квадратная) цилиндрическая проекция, отсюда и сплюстнутость изображения, причем чем ближе к полюсам тем больше, Меркатор тут непричем в нем как раз все наоборот.
По поводу нахождения номера зоны совершенно не обязательно добавлять разграфку, это простейшая математика, считается в уме. Нам на входе необходимо только знать долготу наших данных. Расчет номера зоны может быть следующим:
Гаусс-Крюгер:
а) Если Долгота/6=N , где N - целое число,
то данные лежат на границе зон N и N+1,
например, долгота 54, 54/6=9, данные лежат на границе 9 и 10 зоны
б) Если Долгота/6=R, где R - дробное число,
то номер зоны считается N=FIX(Долгота/6)+1,
например, долгота 88, N=FIX(88/6)+1=14+1=15

Для UTM все тоже самое только добавляем к полученным результатам 30.

Giuseppe
Новоприбывший
Сообщения: 6
Зарегистрирован: 04 мар 2009, 13:12
Репутация: 0

Re: Проблема с данными в EPSG:4326

Сообщение Giuseppe » 05 мар 2009, 15:06

viewtopic.php?f=1&t=2350&p=7053&hilit=geoserver#p7053
тут видимо та же самая проблема.

Ответить

Вернуться в «Общий - ПО»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 3 гостя