Страница 1 из 3
Перевод из одной СК в другую
Добавлено: 18 мар 2013, 11:27
Роман01
Мне нужно перейти из одной СК (СК-14, она у меня в мм) в другую (СК-166, она должна быть в м.).
Разница вычисляется формулами отдельно для Х и отдельно для Y.
Подскажите, как правильно сделать перевод (пошагово).
Нужно ли писать программу, где выполнять поиск всех объектных объектов?
Как переводить улицы, дома, колодцы? (линии, объекты, точки)
Я не хочу изобретать велосипед...
Помогите, пожалуйста!
Re: Перевод из одной СК в другую
Добавлено: 18 мар 2013, 11:41
Александр Мурый
В каких программах вы работаете? Откуда такие обозначения систем координат (СК-14, СК-166)? Почему одна СК в мм, другая — в метрах? Какие формулы используются?
Роман01 писал(а):Нужно ли писать программу, где выполнять поиск всех объектных объектов?
Это уже другой вопрос, для отдельной темы.
Re: Перевод из одной СК в другую
Добавлено: 18 мар 2013, 11:47
Роман01
У меня стоит MapInfo 7.8 и MapBasic 7.0
СК-14 - это местная Абакана, СК-166 - Хакасии.
СК-14 была приобретена для нашего предприятия - в миллиметрах.
СК-166 - для всей республики, она сделана в метрах.
U=A*X-B*Y+C ; V=B*X+A*Y+D
Re: Перевод из одной СК в другую
Добавлено: 18 мар 2013, 11:56
trir
viewtopic.php?f=38&t=5236&start=15
Некоторые местные СК, например г. Екатеринбург, используют Аффинные преобразования. В .prj подобная СК будет иметь следующий вид:
Название, Проекция, Датум, Единицы, Осевой меридиан, Широта начала, False Northings, False Eastings, Единицы, A1, A2, A0, B1, B2, B0
MapInfo Professional USER GUIDE
Единицы Millimeters=5
Re: Перевод из одной СК в другую
Добавлено: 18 мар 2013, 12:03
Александр Мурый
Сначала используйте
поиск по форуму.
Если я правильно понимаю, если у вас есть параметры обеих СК, то можно задать их в MapInfo в нужном виде (с учётом аффинных преобразований), а потом просто перепроецировать из одной СК в другую.
Re: Перевод из одной СК в другую
Добавлено: 19 мар 2013, 03:00
Роман01
Извините, но я не понял:
как заказать в нужном виде? (с учетом аффинных преобразований?)
как перепроецировать из одной СК в другую? (что значит просто?)
Посмотрел по поиску - ещё больше запутался...
Re: Перевод из одной СК в другую
Добавлено: 19 мар 2013, 05:00
Sibit
Если работаете в MapInfo, то необходимо отредактировать файл MAPINFOW.PRJ . Соответственно внести туда параметры обоих СК. После чего любую таблицу можно будет пересохранить в эти системы координат. Если изначально данные в план-схеме то придется предварительно пошаманить с этой таблицей, что бы присвоить существующую СК.
Re: Перевод из одной СК в другую
Добавлено: 19 мар 2013, 06:18
Роман01
Файл mapinfow.prj очень большой - 115КБ.
Например, в одной из строке стоит "Non-Earth (meters)", 0, 7
Как мне эти СК вносить? Придумать для них названия? А какие цифры потом вносить?
Re: Перевод из одной СК в другую
Добавлено: 19 мар 2013, 07:01
trir
Листаешь в конец, пишешь строчку:
"--- Мои СК ---"
И после нее, забиваешь свои СК
P. S. А чего он такой большой?
Re: Перевод из одной СК в другую
Добавлено: 19 мар 2013, 07:42
dab
Роман01 писал(а):...Как мне эти СК вносить? Придумать для них названия? А какие цифры потом вносить?
Если кратко
http://www.mapbasic.ru/mskprj
Первоисточник - "Работа с системами координат" в "Руководстве пользователя MapInfo"
Если у Вас есть параметры на обе СК - всё довольно просто делается.
Re: Перевод из одной СК в другую
Добавлено: 19 мар 2013, 07:42
Роман01
Файл большой - там много разных систем.
Скопировал .wor
!Workspace
!Version 600
!Charset WindowsCyrillic
Open Table "c:\mapinfo\mapbasic\t_kolk" As t_kolk Interactive
Map From t_kolk
Position (0.0520833,0.0520833) Units "in"
Width 6.625 Units "in" Height 3.3125 Units "in"
Set Window FrontWindow() ScrollBars Off Autoscroll On
Set Map
CoordSys NonEarth Units "mm"
Center (10993614.83,12205249.78)
Zoom 218609.12 Units "mm"
Preserve Zoom Display Zoom
Distance Units "mm" Area Units "sq mm" XY Units "mm"
Distance Type Cartesian
Set Map
Layer 1
Display Graphic
Global Pen (1,2,0) Brush (2,16777215,16777215) Symbol (35,0,12) Line (1,2,0) Font ("Arial Cyr",0,9,0)
Label Line None Position Center Font ("Arial Cyr",0,9,0) Pen (1,2,0)
With Naim
Parallel On Auto Off Overlap Off Duplicates On Offset 2
Visibility On
Set Window FrontWindow() Printer
Name "\\ASU\Kyocera FS-1030D KX" Orientation Portrait Copies 1
Papersize 9
Но мне кажется в строке Map From не должно быть "in". (Нужно исправить? Как?)
Что забивать для моей СК, на которой я работал?
Новой СК еще нет. Как я ее внесу?
Re: Перевод из одной СК в другую
Добавлено: 19 мар 2013, 08:20
trir
Вы ДОЛЖНЫ знать параметры ВСЕХ СК, с которыми рваботаете
Re: Перевод из одной СК в другую
Добавлено: 19 мар 2013, 11:18
Роман01
А в этом файле .WOR разве нет нужных параметров?
Re: Перевод из одной СК в другую
Добавлено: 19 мар 2013, 11:23
lam
Роман01 писал(а):Мне нужно перейти из одной СК (СК-14, она у меня в мм) в другую (СК-166, она должна быть в м.).
Разница вычисляется формулами отдельно для Х и отдельно для Y.
Как вариант - воспользоваться формулами, в которых вы уверены

, и обработать файлы на уровне формата *.mif.
Re: Перевод из одной СК в другую
Добавлено: 19 мар 2013, 11:48
trir
Нужные параметры будут в .WOR, если их кто нибудь туда забьёт. Например вы