Anonymous | Login | Signup for a new account | 21-11-24 13:18 UTC |
All Projects | SAS.Планета | Домен, сайт, форум, багтрекер | Доработка карты (ZMP) | Переводы и локализации | Прочее |
My View | View Issues | Change Log | Roadmap | Search |
View Issue Details [ Jump to Notes ] | [ Issue History ] [ Print ] | ||||||||||||
ID | Project | Category | View Status | Date Submitted | Last Update | ||||||||
0000798 | SAS.Планета | [All Projects] Баг | public | 12-06-2011 09:51 | 18-08-2014 15:47 | ||||||||
Reporter | Papazol | ||||||||||||
Assigned To | |||||||||||||
Priority | normal | Severity | tweak | Reproducibility | always | ||||||||
Status | confirmed | Resolution | open | ||||||||||
Platform | Windows | OS | XP | OS Version | Professional SP3 | ||||||||
Product Version | 110427.Beta | ||||||||||||
Target Version | 50xxxx | Fixed in Version | |||||||||||
Summary | 0000798: Бланковка карт ГШ строится не в той системе координат | ||||||||||||
Description | На картах ГШ координаты углов указаны в системе координат СК-42, а в программе используется система координат WGS84. В этой системе координат те же углы карт ГШ будут иметь несколько иные значения широты и долготы, чем указано на картах. Сейчас в программе бланковка карт ГШ сделана в WGS84, но линии идут по координатам СК-42. Из-за этого любая правильно привязанная и порезанная на тайлы карта ГШ (или подобная) не вписывается в бланковку. | ||||||||||||
Tags | генштаб, проекции, системы координат | ||||||||||||
Attached Files | Несовпадение.jpg [^] (7,935 bytes) 12-06-2011 09:51
topo10km_rus.kmz [^] (199,921 bytes) 16-08-2014 13:37 SASPlanet.Genshtab2.7z [^] (2,103,309 bytes) 18-08-2014 13:37 | ||||||||||||
Relationships | |||||||||||||||||||
|
Notes | |
(0002930) vdemidov (manager) 13-06-2011 18:56 |
Да. Есть такое. Когда-нибудь нужно будет поправить. |
(0013215) zed (manager) 04-11-2013 05:33 |
Вот, интересная заметка Формулы пересчета координат из WGS-84 в СК-42 и обратно - это то, что нам нужно? И судя по всему, аналогичный результат можно получить через proj4 не заморачиваясь с расчётами? |
(0013217) vdemidov (manager) 04-11-2013 07:32 |
Может быть. Понятия не имею как это правильно сделать, поэтому и отложил эту хотелку в долгий ящик :) Займись если есть желание и возможность :) |
(0014565) T_Im (reporter) 16-08-2014 11:27 |
Если сложно заморачиваться с proj4, то для большинства случаев довольно будет скомпенсировать сдвиг по долготе. На основании вышеприведенной ссылки, это можно сделать по несложной формуле Lat0, Lon0 - угол в координатах генштаба, Lat=Lat0, Lon вычисляется по формуле: B = Lat0 * Pi / 180; L = Lon0 * Pi / 180; N = a * (1 - e2 * sin(B) ^ 2) ^ -0.5; Lon = Lon0 + 206264.8062 / (N * cos(B)) * (-23.92 * sin(L) - 141.27 * cos(L) / 3600); |
(0014566) zed (manager) 16-08-2014 11:39 |
Подкорректировал рассчёты. Только на чём теперь потестировать? |
(0014567) T_Im (reporter) 16-08-2014 12:46 |
В основном наборе карт: Генштаб -> Генштаб 1 км И ткнуться в место, где хорошо видна склейка листов, например, сюда N55°40'10,64" E38°29'48,90" |
(0014568) zed (manager) 16-08-2014 12:59 |
Всё равно не сходится :( |
(0014569) T_Im (reporter) 16-08-2014 13:07 |
А считаете как: через proj или по формуле? |
(0014570) zed (manager) 16-08-2014 13:10 |
По формулам из статьи. Ни по X, ни по Y линии не совпадают. |
(0014571) T_Im (reporter) 16-08-2014 13:33 edited on: 16-08-2014 13:34 |
По широте там немного кривая привязка, это нестрашно. Пересчитал долготу одной из точек по фомрулам, у меня "компенсировалось" 60 из 120 метров разбега. Сейчас попробую пересчитать заново. |
(0014572) zed (manager) 16-08-2014 13:41 |
Приложил разграфку 10k на которую я ориентируюсь. Взято отсюда: Разграфка и номенклатура топографических карт 1км, 2км, 5км, 10км масштаба Сейчас в SAS сетка генштаба совпадает с градусной сеткой. Когда включаю пересчёт координат, генштаб перестаёт совпадать с градусной сеткой, но и с сеткой из kml тоже не совпадает. |
(0014573) zed (manager) 16-08-2014 14:41 |
Какая-то ошибка в формуле. Перевожу (72,0; 24,0) в пулково выдаёт (71,999910956; 24,004022247), а какой-то онлайн калькулятор выдаёт (72.00009373604956; 23.995977753010802), что полностью совпадает с сеткой из kml. Вот же ж засада :( |
(0014574) T_Im (reporter) 16-08-2014 14:55 edited on: 16-08-2014 15:01 |
А у вас Эксель импортирует приложенный в статье файл? (у меня ругается на него и функции не добавляет). Я просчитал одну из точек вручную по формуле, дельта по широте получилась практически в 2 раза меньше, чем по онлайн калькулятору (считал тут http://cs2cs.mygeodata.eu/ с подставлением вручную параметров как в формуле: +proj=longlat +ellps=krass +towgs84=23.92,-141.27,-80.91 +no_defs). Вот как это выглядит: Если рассчитанное по формуле смещение по широте удвоить - то точка ложится почти идеально на рассчитанную с погрешностью меньше 0,5 метра (см. две метки рядом). |
(0014575) T_Im (reporter) 16-08-2014 15:20 |
>Какая-то ошибка в формуле. Перевожу (72,0; 24,0) Вы не в ту сторону прибавили смещение. |
(0014576) T_Im (reporter) 16-08-2014 15:23 |
Если это учесть, ваша точка по формуле почти идеально попадет на место (а я у себя где то 1/2 потерял). |
(0014577) zed (manager) 16-08-2014 15:26 |
Да, у них на сайте неправильно дано пояснение: WGS84_SK42_Lat переводит из SK42 в WGS64, а не наоборот. Один фиг что-то не сходится с kml. |
(0014578) T_Im (reporter) 16-08-2014 15:40 |
Разница полметра. Это несущественно. |
(0014579) T_Im (reporter) 16-08-2014 15:41 |
(Должна получится 72,0000890044 23,995977753) |
(0014580) zed (manager) 16-08-2014 17:19 edited on: 16-08-2014 17:22 |
> Разница полметра. Это несущественно. Разница получается существенно больше. Метров 15-20. Плюс появляется проблема: линии генштаба становятся не параллельны градусной сетке и появляются артефакты на стыках тайлов. > (Должна получится 72,0000890044 23,995977753) Да, точно так и получается. А в kml угол приходится на (72,000059 23,99649). |
(0014581) zed (manager) 16-08-2014 19:22 |
В приложенном exe сетка рисуется гораздо точнее, но есть артефакты. Код залил в отдельную ветку genshtab, пускай лежит пока не появится у кого желание довести до ума. |
(0014583) Garl (manager) 16-08-2014 19:34 |
чего-то артефактов не замечено. или артефакт - это сдвиг линии сетки на 1 пиксель? |
(0014584) zed (manager) 16-08-2014 19:37 |
Сдвиги линий, это цветочки. Ягодки на z21: при включённой сетке 10k или 5k в узловых точках линии не отрисовываются (обычно вертикальная). |
(0014585) T_Im (reporter) 16-08-2014 20:43 edited on: 16-08-2014 20:51 |
ИМХО, формула считает верно, проблема в КМЛ-нике (непонятно, какие параметры использовались при преобразовании координат Pulkovo-> WGS84 в нем) Вот тут описаны возможные параметры рассчетов: http://gis-lab.info/qa/datum-transform-sets.html#.D0.A1.D0.9A-42_-.3E_WGS84 Формула и два онлайн калькулятора (по моей ссылке, если задать +towgs84=23.92,-141.27,-80.91 - это dx dy dz) с точностью до последнего знака находят 23,995978 Это 3-х параметрическое преобразование по ГОСТ-у. Еще есть 7-ми параметрическое преобразование, которое предлагает по дефолту калькулятор http://cs2cs.mygeodata.eu/ (если вбить в поиске Pulkovo). Его параметры +towgs84= совпадают с 7-ми параметрами ГОСТА с Гислаба и дают 23.996085 (разница 107 миллионных с 3-х параметрическим - это около 3,7 метра, и 405 миллионных с границей КМЛ 23.996490 - почти 14 метров) Почти 4 метра по сравнению с имеющейся ошибкой в 140 метров - это пустяки. Да и вообще включать уточненный алгоритм имеет смысл только начиная с километровки и масштабах больше z12 - выше эти 100+ метров погрешности будут меньше пикселя. |
(0014586) T_Im (reporter) 18-08-2014 10:10 |
zed Если несложно, подправьте еще пожалуйста, чтобы чтобы прямоугольное выделение с зажатым ctr+shift выделяло по исправленным границам (сейчас выделяет по старым). |
(0014587) zed (manager) 18-08-2014 10:51 |
Могу, конечно, но оно всё равно пока в отдельной ветке лежит и в ночнушку не войдёт. Нужно ковырять из-за чего глючит отрисовка, но у меня нет идей и я без понятия в какую сторону смотреть. |
(0014588) T_Im (reporter) 18-08-2014 11:30 |
>Могу, конечно, но оно всё равно пока в отдельной ветке лежит и в ночнушку не войдёт. Достаточно как в прошлый раз прикрепленного экзэшника. >из-за чего глючит отрисовка, но у меня нет идей и я без понятия в какую сторону смотреть. Там, вероятно, криво рендерится тонкая линия, которая была прямая, а стала чуть наклонной. Скорее всего, наиболее простое но грубое решение - задать ей ширину на 1-2 пикселя больше. Или же поиграться с дефолтным фильтром рендеринга. Не часто, но регулярно замечаю похожий баг, когда при перемещении в САС при отрисовке теряются куски путей (в старых версиях годовалой давности этого точно еще не было). Возможно, эти баги могут быть связаны. |
(0014589) zed (manager) 18-08-2014 13:21 |
О, а с выделением тоже весело получается. В SAS же это прямоугольное выделение, а квадраты генштаба не прямоугольны. Т.е. получается что мы считаем верхнюю левую и правую нижнюю точки, а две другие улетают мимо. |
(0014590) zed (manager) 18-08-2014 13:43 |
Приложил exe. Теперь чтобы получить точное (насколько позволяют расчёты) выделение по границам генштаба, нужно пользоваться полигональным выделением с включённым прилипанием к узлам сетки и с зажатым shift. [Боромир-мем]Нельзя просто так взять и получить полигон генштаба.[/Боромир-мем] |
(0014591) Garl (manager) 18-08-2014 14:05 |
Ну вот реально за всё время ни разу не мешала погрешность тупой прямоугольной генштабовой сетки. |
(0014592) T_Im (reporter) 18-08-2014 15:47 |
>Ну вот реально за всё время ни разу не мешала погрешность тупой прямоугольной генштабовой сетки. Уже на километровке погрешность 120 метров заметна, а на 500-метровке превращается в большое неудобство, если совмещать по углам листы ГШ и склеенные в САС по границам ГШ снимки. >Т.е. получается что мы считаем верхнюю левую и правую нижнюю точки, а две другие улетают мимо. На 500-метровках разница получается меньше метра, что в разы меньше количества метров на пиксель для актуальных для них зумов z15-16. Поэтому, что полигоном, что прямоугольником, для обычных задач без разницы. >Приложил exe. Огромное спасибо! ) |
Users who viewed this issue | |
User List | Anonymous (7228x), lovegrach (1x), sergeyka (1x), netsky (1x), zed (4x), Garl (1x), T_Im (1x), vdemidov (1x), Robbi (1x), aflexus (1x) |
Total Views | 7240 |
Last View | 21-11-2024 13:18 |
Issue History | |||
Date Modified | Username | Field | Change |
12-06-2011 09:51 | Papazol | New Issue | |
12-06-2011 09:51 | Papazol | File Added: Несовпадение.jpg | |
12-06-2011 10:14 | gpsMax | Tag Attached: генштаб | |
12-06-2011 10:14 | gpsMax | Tag Attached: проекции | |
12-06-2011 10:14 | gpsMax | Tag Attached: системы координат | |
12-06-2011 10:18 | gpsMax | Relationship added | related to 0000133 |
12-06-2011 10:19 | gpsMax | Relationship added | related to 0000376 |
13-06-2011 18:56 | vdemidov | Note Added: 0002930 | |
13-06-2011 18:56 | vdemidov | Status | new => confirmed |
13-06-2011 18:56 | vdemidov | Target Version | => 50xxxx |
10-12-2012 06:35 | vdemidov | Summary | Неправильное отображение бланковки карт ГШ => Бланковка карт ГШ строится не в той системе координат |
04-11-2013 05:33 | zed | Note Added: 0013215 | |
04-11-2013 07:32 | vdemidov | Note Added: 0013217 | |
16-08-2014 08:13 | vdemidov | Relationship added | has duplicate 0002483 |
16-08-2014 11:27 | T_Im | Note Added: 0014565 | |
16-08-2014 11:39 | zed | Note Added: 0014566 | |
16-08-2014 12:46 | T_Im | Note Added: 0014567 | |
16-08-2014 12:59 | zed | Note Added: 0014568 | |
16-08-2014 13:07 | T_Im | Note Added: 0014569 | |
16-08-2014 13:10 | zed | Note Added: 0014570 | |
16-08-2014 13:33 | T_Im | Note Added: 0014571 | |
16-08-2014 13:34 | T_Im | Note Edited: 0014571 | View Revisions |
16-08-2014 13:37 | zed | File Added: topo10km_rus.kmz | |
16-08-2014 13:41 | zed | Note Added: 0014572 | |
16-08-2014 14:41 | zed | Note Added: 0014573 | |
16-08-2014 14:55 | T_Im | Note Added: 0014574 | |
16-08-2014 15:01 | T_Im | Note Edited: 0014574 | View Revisions |
16-08-2014 15:20 | T_Im | Note Added: 0014575 | |
16-08-2014 15:23 | T_Im | Note Added: 0014576 | |
16-08-2014 15:26 | zed | Note Added: 0014577 | |
16-08-2014 15:40 | T_Im | Note Added: 0014578 | |
16-08-2014 15:41 | T_Im | Note Added: 0014579 | |
16-08-2014 17:19 | zed | Note Added: 0014580 | |
16-08-2014 17:19 | zed | Note Edited: 0014580 | View Revisions |
16-08-2014 17:22 | zed | Note Edited: 0014580 | View Revisions |
16-08-2014 19:17 | zed | File Added: SASPlanet.Genshtab.7z | |
16-08-2014 19:22 | zed | Note Added: 0014581 | |
16-08-2014 19:34 | Garl | Note Added: 0014583 | |
16-08-2014 19:37 | zed | Note Added: 0014584 | |
16-08-2014 20:43 | T_Im | Note Added: 0014585 | |
16-08-2014 20:44 | T_Im | Note Edited: 0014585 | View Revisions |
16-08-2014 20:51 | T_Im | Note Edited: 0014585 | View Revisions |
18-08-2014 10:10 | T_Im | Note Added: 0014586 | |
18-08-2014 10:51 | zed | Note Added: 0014587 | |
18-08-2014 11:30 | T_Im | Note Added: 0014588 | |
18-08-2014 13:21 | zed | Note Added: 0014589 | |
18-08-2014 13:36 | zed | File Deleted: SASPlanet.Genshtab.7z | |
18-08-2014 13:37 | zed | File Added: SASPlanet.Genshtab2.7z | |
18-08-2014 13:43 | zed | Note Added: 0014590 | |
18-08-2014 14:05 | Garl | Note Added: 0014591 | |
18-08-2014 15:47 | T_Im | Note Added: 0014592 | |
13-07-2019 14:30 | RIXXX | Issue cloned: 0003502 |
My View | View Issues | Change Log | Roadmap | Search |
Copyright © 2007 - 2024 SAS.Planet Team |