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

как совместить два набора данных?

Добавлено: 12 дек 2011, 15:21
gadkiy_uut
У меня два набора данных, в формате SHP. Однин - получен мной из данных OSM, это граница города Шахты. Другой набор - то же граница, но из другого источника. Я бы хотел совместить эти два набора. Я так понимаю у них разная система координат. Посмотрите пожалуйста вложения, и подскажите как их можно совместить? Я хочу разобраться и научиться решать эту задачу сам (если это вообще возможно для рядового пользователя). Хотелось бы взять за основу данные OSM и к ним добавить данные из второго источника. Есть предположение что второй набор данных вообще в прямоугольных, местных городских координатах (потому что делался только план города, в то время как из OSM я брал всю Ростовскую область). Сейчас эти два фрагмента отображаются на расстоянии около 14 км

Re: как совместить два набора данных?

Добавлено: 12 дек 2011, 16:41
nadiopt
тот который не ОСМ - вообще без системы координат:( вам нужны параметры МСК на Ростовскую обл или просто подтянуть границы к ОСМ, например в Арке это делается инструментом Spatial Adjustment

Re: как совместить два набора данных?

Добавлено: 13 дек 2011, 09:14
gadkiy_uut
nadiopt писал(а):тот который не ОСМ - вообще без системы координат:( вам нужны параметры МСК на Ростовскую обл или просто подтянуть границы к ОСМ, например в Арке это делается инструментом Spatial Adjustment
Мне надо в QGIS сделать. Подскажите, в какую сторону рыть?

Re: как совместить два набора данных?

Добавлено: 13 дек 2011, 11:01
Voltron
Возможно, поможет модуль qgsAffine. Но параметры сдвига надо будет найти самостоятельно

Re: как совместить два набора данных?

Добавлено: 13 дек 2011, 16:42
Алекс
Сдвига там недостаточно. Нужно еще и масштабировать.
Изображение
Изображение

Re: как совместить два набора данных?

Добавлено: 14 дек 2011, 17:58
Александр Мурый
Сделал грубую привязку слоя "Граница_МО" к "sity_boundary_osm" в GRASS по следующим точкам:

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

#                   image                          target           
#            east           north            east           north   
#
   2233249.118260   484747.523090       40.090717       47.792205    
   2243399.369520   480216.278816       40.225700       47.752390    
   2255391.322130   479914.258284       40.387499       47.750654    
   2250195.502910   471184.125210       40.318960       47.671789    
   2238564.283440   471777.875089       40.163703       47.676074    
   2234190.633210   478462.199285       40.102395       47.735876    
Получилось почти как выше у коллеги (красным --- данные в "неясной" СК) :
sity_boundary_osm__warp.png
sity_boundary_osm__warp.png (9.79 КБ) 9116 просмотров
Шейп-файл с привязанным вектором:
Граница_МО_привязка.zip
(15.8 КБ) 430 скачиваний

Re: как совместить два набора данных?

Добавлено: 14 дек 2011, 18:35
bolotoved
amuriy писал(а):Сделал грубую привязку слоя "Граница_МО" к "sity_boundary_osm" в GRASS
А в как в GRASS это делается? модуль какой-нибудь?

Re: как совместить два набора данных?

Добавлено: 14 дек 2011, 19:19
ericsson
Попробовал в GlobalMapper, полиномиальным методом. Набил штук пять точек, после чего стало сразу видно, что данные нельзя наложить друг на друга, т.к. форма отдельных частей границы принципиально отличается.

Re: как совместить два набора данных?

Добавлено: 14 дек 2011, 19:50
Александр Мурый
bolotoved писал(а): А в как в GRASS это делается? модуль какой-нибудь?
Тем же GUI-привязчиком, что для растров (в интерфейсе Tcl/Tk, например, File --> Georectify --> Georeference vector). А вообще для аффинных трансформаций есть модуль v.transform.