Перевести карту для мапинфо из плансхемы в систему координат

MapInfo, MapBasic
Ответить
gamm
Гуру
Сообщения: 4056
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1054
Ваше звание: программист
Откуда: Казань

Re: Перевести карту для мапинфо из плансхемы в систему коорд

Сообщение gamm » 17 май 2011, 15:31

Донецков писал(а):Если исходить из последнего приближения то для МапИнфо в файл MAPINFOW.PRJ добавляем строку:
"Тобольский район Тюменской обл. (МСК лесная)", 8, 1001, 7, 67.7, 0, 1, 2500000, -6000000
а далее или заменой строки в вайле mif или с помощью программы ReCalc из план схемы в эту МСК...
Точного совпадения не будет, см. пересчет приведенных градусных данных в метры:
2 581 785.5, 499 273.2
2 561 893.9, 417 414.9
2 518 793.0, 382 567.6
2 484 113.7, 424 906.2
но примите в расчет точность и самих лесных планшетов
4 точки на 3 параметра - это гадание на кофейной гуще, учитывая точность квартальной сетки. Нужно точек 20-30 ...

Донецков
Гуру
Сообщения: 3058
Зарегистрирован: 19 май 2010, 19:44
Репутация: 189

Re: Перевести карту для мапинфо из плансхемы в систему коорд

Сообщение Донецков » 17 май 2011, 16:28

Был опыт общения с аналогичным материалом лесников (в ХМАО), который уже был ими самими преобразован в СК-42 (как переводили не знаю...), так с фактической инструментальной съемкой и ортотрансформированными материалами аэросъемки не совмещалось от 50 до 250 м. Это к точности исходного материала. Так что найденные параметры скорее всего соответствуют действительности, а вот качество самого материала желает иметь лучшего...
В итоге вектор лесников растеризовали и с помощью RasterDesigner в Autocad натягивали на съемку...
Лесники сказали "замечательно" и подписали документы...

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

Re: Перевести карту для мапинфо из плансхемы в систему коорд

Сообщение Boris » 17 май 2011, 17:06

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

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

Re: Перевести карту для мапинфо из плансхемы в систему коорд

Сообщение Boris » 17 май 2011, 23:48

Донецков писал(а): В итоге вектор лесников растеризовали и с помощью RasterDesigner в Autocad натягивали на съемку...
Солидный такой труд. Неужели в автокаде нет примочки, которая растр корежит по аналогии с растром?
Я знаю как минимум два пакета, которые растр и вектор трансформируют одинаковыми командами.
На пример, сканэксовский Image Processor. Правда точки в нем ставить... , так же удобно как в граблями причесываться :mrgreen:

Донецков
Гуру
Сообщения: 3058
Зарегистрирован: 19 май 2010, 19:44
Репутация: 189

Re: Перевести карту для мапинфо из плансхемы в систему коорд

Сообщение Донецков » 18 май 2011, 13:15

Не понял по поводу Автокада? В обычном автокаде есть команда Выравни, т.е. трансформация путем указания 2 точек исходных и результирующих. В Мап/Цивил - есть трансформация по произвольному количеству точек, но это для векторных данных, точнее растр тоже изменит, но хочется же еще и сохранить результат для других систем. Поэтому для растра используют навески в виде Растер Дизайнера и ряда подобных - которые позволяют трансформировать растр по произвольному количеству точек и сохранять результат в растровых же форматах...

Gury_A
Интересующийся
Сообщения: 16
Зарегистрирован: 29 мар 2011, 12:44
Репутация: 0

Re: Перевести карту для мапинфо из плансхемы в систему коорд

Сообщение Gury_A » 18 май 2011, 15:09

Если вместо 2500000, -6000000 добавить 2506816, -5999677 будет точнее.

gamm
Гуру
Сообщения: 4056
Зарегистрирован: 15 окт 2010, 08:33
Репутация: 1054
Ваше звание: программист
Откуда: Казань

Re: Перевести карту для мапинфо из плансхемы в систему коорд

Сообщение gamm » 18 май 2011, 15:24

Gury_A писал(а):Если вместо 2500000, -6000000 добавить 2506816, -5999677 будет точнее.
не точнее, а ближе к вашим точкам. Крайне сомнительно, что в местной системе стоят "неровные" числа.

А чтобы судить о точности, нужно 20-30 точек - можете столько показать?

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

Re: Перевести карту для мапинфо из плансхемы в систему коорд

Сообщение Boris » 18 май 2011, 16:59

Донецков писал(а):Не понял по поводу Автокада?
Тогда я не понял. При таком богатстве трансформации векторных данных, зачем был сперва растеризовать данные лесников?

Maksi
Новоприбывший
Сообщения: 6
Зарегистрирован: 01 май 2011, 18:14
Репутация: 0

Re: Перевести карту для мапинфо из плансхемы в систему коорд

Сообщение Maksi » 18 май 2011, 19:24

я бесконечно благодарна всем, кто решал мою проблему. Я применила метод Донецкова, заменила в файле MIF строку CoordSys NonEarth на предложенную CoordSys Earth Projection 8, 1001, 7, 67.7, 0, 1, 2500000, -6000000. Точность конечно не впечатляет, но, я понимаю, что дала слишком мало данных. Но даже такой результат меня устраивает, дальше сама смогу подогнать.
Все остальные методы не пробовала, это не для моего ума.
Для Boris - растр привязывала на основе координат 100км-ой сетки (приложила файл), предварительно перевела ее в СК ГК-42 12 зона. Я не знаю, на сколько этот метод правильный (всему приходится учиться самой), но отсканированные листы топографической 100км-ой карты вписались в сетку идеально, погрешность 1пиксел.
Вложения
NUM100.zip
(858.47 КБ) 432 скачивания

Донецков
Гуру
Сообщения: 3058
Зарегистрирован: 19 май 2010, 19:44
Репутация: 189

Re: Перевести карту для мапинфо из плансхемы в систему коорд

Сообщение Донецков » 19 май 2011, 08:09

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

diar
Новоприбывший
Сообщения: 5
Зарегистрирован: 04 май 2011, 14:41
Репутация: 0

Re: Перевести карту для мапинфо из плансхемы в систему коорд

Сообщение diar » 31 май 2011, 19:22

Подскажите, пожалуйста!
1)Я получаю координаты объекта в MApBasic с помощью ObjectNodeX(), но они отличаются от, реальных (смотрю в MapInfo), на порядок в 10000 раз, т.е. я так понимаю проблема в представление, хотя после открытия таблицы, я задаю координаты в метрах с помощью CoordSys, потом некоторые данные заношу в другую таблицу и с ней работаю. В чем может быть проблема?

2)При использование Set Distance Units "m" координата y всегда одинаковая, так и должно быть или что-то можно сделать?
С MapBasicом пытаюсь подружиться пару месяцев, так что над глупыми вопросами сильно не смейтесь :oops:
Очень буду признательна за помощь!

SergS
Активный участник
Сообщения: 120
Зарегистрирован: 14 апр 2011, 13:24
Репутация: 5
Откуда: Екатеринбург

Re: Перевести карту для мапинфо из плансхемы в систему коорд

Сообщение SergS » 01 июн 2011, 05:17

1) причина может быть в различии систем кординат первоначальной таблицы и той, в которую Вы потом заносите данные. Если Вы просто переносите объект (типа insert t1(obj) select obj from t2 where... или insert t1(obj) values(ob), где ob - переменная, которую вы извлекли из t2, например ob=t2.obj) то установка set coordsys в программе никак не повлияет на координаты объекта.
Проверьте СК обоих таблиц, и установите в программе СК аналогичную- например вот так:
set coordsys table t1 (ну, или t2)
ну и, кроме того, то, как Вы смотрите координаты в Mapinfo, если спец. не устанавливать, никак не зависит от coordsys, которую Вы определили в программе
2) операция "Set Distance Units "m" " - никак не влияет на координаты - она устанавливает единицы измерения расстояний (напимер в функции createcircle - определяет, в чем измеряется третий аргумент)

Аватара пользователя
asgs
Участник
Сообщения: 89
Зарегистрирован: 04 авг 2010, 06:35
Репутация: 1
Контактная информация:

Re: Перевести карту для мапинфо из плансхемы в систему коорд

Сообщение asgs » 01 июн 2011, 05:29

diar писал(а):Подскажите, пожалуйста!
1)Я получаю координаты объекта в MApBasic с помощью ObjectNodeX(), но они отличаются от, реальных (смотрю в MapInfo), на порядок в 10000 раз, т.е. я так понимаю проблема в представление, хотя после открытия таблицы, я задаю координаты в метрах с помощью CoordSys, потом некоторые данные заношу в другую таблицу и с ней работаю. В чем может быть проблема?

2)При использование Set Distance Units "m" координата y всегда одинаковая, так и должно быть или что-то можно сделать?
Как уже ответили выше, Set Distance Units не влияет на представление координат в MapBasic. Для получения координат в нужных единицах нужно использовать Set CoordSys, один раз в процедуре/функции перед собственно получением координат (т.е. не надо этот оператор заталкивать в цикл). Лично я обычно использую данный оператор в виде Set Coordsys Table table_name для получения координат в том виде, в котором она заданы в таблице.
Злобный йожег

diar
Новоприбывший
Сообщения: 5
Зарегистрирован: 04 май 2011, 14:41
Репутация: 0

Re: Перевести карту для мапинфо из плансхемы в систему коорд

Сообщение diar » 01 июн 2011, 09:40

Спасибо за быстрые ответы! Разобралась :)

donmisha
Интересующийся
Сообщения: 44
Зарегистрирован: 12 фев 2011, 16:50
Репутация: 2
Откуда: Чебоксары
Контактная информация:

Re: Перевести карту для мапинфо из плансхемы в систему коорд

Сообщение donmisha » 04 окт 2011, 13:02

Прочитал всю ветку. Задача стоит такая же как и у пользователя Maksi: данные в проекции план-схема нужно перевести в ГСК. Оцифрованная план-схема дана в метрах. В проекции Гаусса-Крюгера данная территория находится в 8 зоне и частично в 9 зоне, на топопланшетах лежит в пределах листов N-38 и частично N-39 и О-38 (Чувашская Республика).
С утилитой в Эксель, которая реобразует координаты так и не разобрался.
Вот мои пары координат. Первая пара - координаты в план-схеме, вторая пара - координаты соответствующих точек в ГСК.
1166890 385880 8576310 6200520
1177170 384580 8586600 6199570
1164160 364590 8574850 6179190
1178340 362270 8588650 6177290

Опишите, пожалуйста как и чем производить расчеты, чтобы в следующий раз самому выполнять все действия. Или дайте ссылку на подробный мануал к процессу рассчета.

Ответить

Вернуться в «MapInfo»

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

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