А как же?! Пересекались.... только давно-давно.... тогда он был начальником "горы"... С тех пор ... увы...
Как я вас проклинал, как проклинал. И как я вам благодарен за то, что сподвигли дописывать программку, которую я обещал дописать Андрюше Лапову ещё лет 10 тому назад. Пока только отрабатываю различные алгоритмы конформного отображения одной плоскости на другую с помощью комлЕксных полиномов. Вот предварительные результаты по вашим данным. Отображение старой отсчётной основы в новую с помощью комплексных полиномов используется в странах Бенилюкса. Полиномы третьей степени в Бельгии, четвертой - в Нидерландах.
Александр Юрьевич, полиномы это хорошо всегда, но как только выходишь за границы контура поля точек, то полином может весьма хитро загнуться и тогда невязка будет большой. Внутри контура полином может дать более хороший результат чем поиск ключа. Слова не мои - знающих людей.
Естественно, полиномы это очень "узкое" решение конкретной задачи на локальном участке внутри контура исходных точек... В частности, именно таким решением решается пересчет СК-95 <-> СК42 для локальной территории, другое дело, что матрица исходных точек должна была бы создана компетентными организациями. Реализовано же аналогичное решение по Северной Америке (NADCON)...
И да и нет. Иногда и внутри интервала интерполирования можно получить полную чушь. Иногда наивысшая алгебраическая точность достигается именно за пределами области интерполирования. Если вспомнить, как начинается вывод формул проекции Г-К в большинстве учебников, то можно понять, почему комплЕксные полиномы - это то, что доктор прописал. Они идеально подходят для конформного отображения одной плоскости на другую. Мне было бы интересно, если бы знающие люди для слепого тестирования подобрали пример, который был бы трудным с их точки зрения. Конечно, если у них есть желание и время для подготовки такого примера. Понятие локального участка у каждого своё. На приводимых ниже скриншотах размер участка 87.8 км х 37.7 км. Это локальный участок, или уже нет? Прямоугольные координаты условно можно назвать СК-42 и СК-63. Получены по очень точным формулам проекции Г-К из одних и тех же геодезических координат. Видно, что точность интерполирования для участка такого размера в большей степени зависит от точности исходных данных, а не размера участка. Ошибка интерполирования в худшем случае - 1-2 знака точности представления исходных данных. Оффтоп (Move your mouse to the spoiler area to reveal the content) Полностью переделываю алгоритм. Ухожу от комлЕных полиномов в сторону гармонических полиномов. С точки зрения математики коэффициенты разложения полностью идентичны, но одно дело - сингулярное разложение комплекснозначной матрицы, и совсем другое дело SVD для обычной переопределённой системы условных уравнений. Борюсь с Windows. Постоянно какие-нибудь службы или программы, сбрасывают слово состояния процессора (PSW) в 64- битную арифметику с плавающей точкой. А именно для этой задачи три дополнительных десятичных знака в мантиссе числа оказываются очень важными.
Сделал тестовый пример, довольно интересный результат получился (на мой взгляд). Итак, по порядку. 1. Задал геодезические координаты в WGS 84, так, чтобы точка была на краю зоны UTM. 2. Округлил координаты точки в UTM до целых км. (зачем это было сделано будет ясно из дальнейшего). Обратный перевод в геодезические - простая формальность. Для дальнейшего они не нужны. Эта точка является центром квадрата 40х40 км. 3. С шагом в 1 км. сгенерировал координаты остальных 1680 точек. В имени точки содержится информация об её координатах относительно центральной точки. Т. е. N-20E-20 - крайняя юго-западная точка, а N+20E+20 крайняя северо-восточная. (Только бы не появился Vladimir VV и не стал поучать, что раз в названии не упоминается юг, а есть север, то и координату надо всегда откладывать на север.) 4. С помощью табличного калькулятора Pinnacle после неприятной, довольно длительной задержки, получил эти координаты в CK-42, но не в 7 зоне, а в 8-ой, что слегка усложняет задачу. Кроме того, прошу обратить внимание, что отличаются и отсчётные системы, и эллипсоиды и масштаб на осевом меридиане. Код: Table calculator Left pane : Grid : UTMN Zone: Zone_37 : 36E to 42E Unit name : Meters Name Northing,m Easting,m Height,m N-20E-20 6189000 636000 0 N-20E-19 6189000 637000 0 N-20E-18 6189000 638000 0 N-20E-17 6189000 639000 0 N-20E-16 6189000 640000 0 N-20E-15 6189000 641000 0 N-20E-14 6189000 642000 0 N-20E-13 6189000 643000 0 N-20E-12 6189000 644000 0 N-20E-11 6189000 645000 0 … Right pane : Grid : SK1942 Zone: Zone_8 : 42E to 48E Unit name : Meters Name Northing,m Easting,m Height,m 1 6196070.765606 260216.535133 -8.031669 2 6195984.12323 261213.652952 -8.01329 3 6195897.482157 262210.761643 -7.994913 4 6195810.842385 263207.861204 -7.976539 5 6195724.203912 264204.951635 -7.958167 6 6195637.566736 265202.032936 -7.939798 7 6195550.930854 266199.105108 -7.921431 8 6195464.296265 267196.168148 -7.903066 9 6195377.662967 268193.222059 -7.884704 10 6195291.030957 269190.266838 -7.866344 5. За исходную принял СК-42. Так как в целевой СК точки имеют "круглые" координаты, то все ошибки преобразования можно оценить визуально. 6. В качестве опорных точек принял центральную и плюс ещё 8 точек, лежащих в углах квадратов 10х10 и 20х20 км. На скриншоте приведены невязки по опрным точкам для комплексного полинома 3 степени. (восемь действительных неизвестных. Т.к. оценка происходит по МНК, то надо минимум 5 опорных точек.) 7. С полученными параметрами пересчитал координаты контрольных точек Видно, что при удалении от опорных точек точность преобразования падает. На расстоянии от центра в 2 раза большем, чем расстояние от центра до крайней опорной точки точность в 10 раз хуже точности задания координат, но всё равно не превосходит 0,1 мм. Вот и часть ответа на вопрос, как далеко можно выходить за район опорных точек. При увеличении степени полинома до 4, точность чуть улучшается. Этот пример демонстрирует методическую точность алгоритма. На практике, когда каталожные координаты известны с сантиметровой точность, всё может быть не так радужно.
Попробовал посчитать по программе уважаемого Valang, получил следующий результат Код: ТРАНСФОРМИРОВАНИЕ КООРДИНАТ Исходные пункты для трансформирования ---------------------------------------------------------------------------------------------------------- Название X Y X1 Y1 dX dY dS ---------------------------------------------------------------------------------------------------------- N-10E-10 6205174.647 271054.060 6198999.083 645999.953 -0.917 -0.047 0.918 N-10E+10 6203440.475 290992.602 6199000.917 666000.045 0.917 0.045 0.918 N-05E-05 6209725.904 276472.725 6203999.771 650999.988 -0.229 -0.012 0.229 N-05E+05 6208858.363 286441.934 6204000.229 661000.012 0.229 0.012 0.229 N+00E+00 6214276.706 281891.328 6209000.000 656000.000 0.000 0.000 0.000 N+05E-05 6219695.504 277340.784 6214000.229 651000.011 0.229 0.011 0.229 N+05E+05 6218827.054 287309.867 6213999.771 660999.989 -0.229 -0.011 0.229 N+10E-10 6225114.756 272790.304 6219000.915 646000.047 0.915 0.047 0.916 N+10E+10 6223376.947 292728.344 6218999.084 665999.954 -0.916 -0.046 0.917 ---------------------------------------------------------------------------------------------------------- Исходных пунктов - 9 Ср. ошибка совмещения пункта = 0.509м Условное начало: X0= -2044.49586753629 Y0= 914020.86437452 Общая ошибка определения X0 и Y0 = 0.2101м Угол разворота = 355°1'26.0651700116023" Ошибка угла = 1.5544" Масштаб преобразования = 0.999314316171297 Ошибка масштаба = 0.0000075325 Перевычисленные координаты ---------------------------------------------------------------------------- Название X Y X1 Y1 ---------------------------------------------------------------------------- N-20E-20 6196070.766 260216.535 6188996.331 635999.808 Этот результат удалось полностью воспроизвести путём аппроксимации полиномом 1 степени Но уже полином 2 степени даёт вполне разумный вариант Вполне допускаю, что программа уважаемого Valang, покрывает нужды в 99,99% случаев практики. На всякий случай прикрепляю тестовый файл для программы Valang'а
Ссылка на программу уважаемого Valang дана на 2 странице Так как же все-таки работать в МСК? Про свою же поделку могу только повторить уже сказанное: "Пока только отрабатываю различные алгоритмы конформного отображения одной плоскости на другую с помощью комлЕксных полиномов." Разница между ними существенная. Программа Valang'a есть и работает, я же только делаю свою. Посты пишу для того что бы показать, что работа не заглохла. Это - всего лишь хобби, на которое не так много времени. Из бесплатного могу порекомендовать PHOTOMOD GeoCalculator Он мне не нравится, мне вообще все геокалькуляторы не нравятся. Но это, пожалуй, лучшее из бесплатного.
Оффтоп (Move your mouse to the spoiler area to reveal the content) Это почему? Если не секрет конечно.
добрый вечер всем!!! выложите ссылки на проги: ++BLab, CPlan, archaeoSYS, хочется поэксперементировать! Пожалуйста!!!
если почитать всю тему, то есть скрин-шоты в которых в командной строке написаны такие названия программ
1 сообщение перенесено в новую тему: http://geodesist.ru/forum/threads/П...ить-параметры-аффинного-преобразования.14615/ Господа, в этой теме обсуждается только конкретная программа. Вопросы по другим программам, в соответствующих или новых темах.