Игорь, тут нужна формула преобразование долготы и широты, в координаты на плоскости с учетом канонической проекции. Правда какая именно каноническая используется - не совсем известно.
Для контурной карты используется азимутальная гномоническая проекция (судя по рис. 28, а - нормальная). Значения X (широта / лучи) - от 10 до 200 градусов. Значения Y (долгота / дуги)- от 10 до 90 градусов.
Ой, извиняюсь, но в [B26:F37] точно нет. )) В Office 365 очень много полезных функций, без которых уже трудно обходиться - тот же SORT, LET и т.д. Файл заменил.
e41 и аналогичные xy>gps - вам нужно искать не просто максимальные минимальные точки по одной кjординате, а именно определять принадлежность точки четырехугольнику. Вершины его развернуты и по одной координате искать нельзя, так как в таблице у вас и по X и по Y есть точки боле подходящие раздельно под условие которое вы сформировали.
P.S. то что ссылается на регионы с недоступными функциями тоже не могут пересчитываться корректно так что ....
БМВ > именно определять принадлежность точки четырехугольнику Это понятно, на том весь расчёт и зиждется. )) Ищу я не по одной координате, а по парам координат точек, которые выше, правее, ниже и левее искомой.
Пересчёт GPS в XY основан на том, что параллели и меридианы идут с шагом 10 градусов. Благодаря этому легко найти GPS-четырёхугольник, содержащий искомую GPS-точку, рассчитать XY вершин этого четырёхугольника и XY этой точки внутри него. Будет время - проверю совпадение маркеров на графике с точками на карте.
Пересчёт XY в GPS (обратная задача) оказался сложнее. Ось Х идёт от 0 до 5000,00; долгота от 10 до 190; т.е. шаг по долготе 5000/(190-10)=27,(7): 10=0, 11=27,8, ..., 190=5000. Ось Y идёт от 0 до 3124,14; широта от 30 до 80; т.е. шаг по широте 3124,14/(80-30)=62,48: 30=0, 31=62,48, ..., 80=3124,14). Но тогда Москва (X=803,8; Y=2082,2) - это ~39/63 гр., но никак не 37,62/55,75.
P.S.1: Скачайте файл из поста №1, все функции Office 365 давно убраны.
P.S.2: Запутался в широте/долготе/X/Y/городах. )) Извиняюсь, ответ выше откорректировал. Готовлю список точек на карте для проверки (т.е. формулы не трогаю), доделаю - выложу.
P.S.3: Доделал... Выяснил, что пересчёт GPS в XY не только громоздкий, но и не очень точный - многие точки сливаются в 1. Но хотя бы четырёхугольник находит правильно, алгоритм пересчёта XY в GPS пока и этого не может...
С оцифровкой карт дел не имел, но как мне кажется стандартная операция оцифровки в полярных координатах. Для оцифровки в декартовых координатах вместо автокада лучше пользоваться профильными программами, например GetData Graph Digitizer
БМВ Да, параллели-дуги проблемные, может меридианы-лучи удобнее? Меридиан 100 можно принять за начало координат X и сделать вертикальным. Тогда слева будет 9 меридианов с отрицательным X, справа - 9 с положительным.
Сетка карты строится из [H:K] - 114 GPS-точек с шагом 10 градусов по X и Y. Что, если искать лишь 1 ближайшую точку, а остальные "достраивать" через 10? И вообще нужно ли достраивать ещё 3 точки - 2 уже дают прямую, вектор и угол.
Acid Burn, Возможно поиск о таблице удобнее в некоторых случаях, но .... Есть проекция, и центр (полюс) её можно вычислить исходя из точки пересечения двух прямых, так же как и поворот её. С меридианами все просто. Это лучи от центра од определенным углом + угол поворота.
Параллели - . Ну то что окружности с центром в точке полюса. строим прямую и окружность - точка пересечения это XY, в обратку - строим тоже самое через эту точку. из угла прямой с учетом смещения, получаем долготу, широту надо пересчитать из радиуса.
БМВ Целью построения каркаса и поиска четырёхугольника как раз было исключение искажений. Возможно, учитывая масштаб карты, искажениями можно пренебречь (или измерить и указать max %). Для решения системы уравнений в excel есть несколько методов, но далее ничего не ясно...
Предлагаю подвести промежуточный итог. У нас есть 3 системы координат: гномоническая, Меркатора и прямоугольная (Excel). Координаты точки определённо можно конвертировать в любую систему с помощью коэффициентов трансформации. Может ли это GIS.XL или другая надстройка? Всех, у кого есть идеи/опыт в этой сфере, милости прошу к клавиатуре. ))
Acid Burn написал: Целью построения каркаса и поиска четырёхугольника как раз было исключение искажений.
в таком случае начните с определения между какими меридианами лежит искомая точка. Это две ближайшие линии. это даст две группы точек по двум меридианам.
БМВ, эту формулу я находил (подробнее тут), но как-либо прикрутить к "Карта v4.2.xlsm" не смог... Поможете?
Калькулятор систем координат (пересчёт GPS в XY): "Для расчета параметров нам нужны три точки (можно больше, будет точнее) в двух системах координат, в WGS и в той самой местной системе координат, параметры которой Вы хотите знать." Что бы я туда не подставлял, не работает... Или у меня руки кривые?
Acid Burn написал: Про оцифровку карт речи не идёт.
Ну как бы... Исходя из того, что карта деформирована, то углы между меридианами не постоянны. Т.е. для начала я бы привязал всё к постоянным углам и расстояниям от 0. Т.е. нашёл бы коэфф-ты перевода. Затем наложил бы рисунок на, скажем, лепестковую диаграмму... И далее просто пересчитывал реальные координаты в поле координат кривого рисунка
Всем привет! Таки сделал поиск точки на гномонической карте по GPS-координатам. Работает! В [F:G] - пересчёт отдельно взятой точки GPS в XY, формула в принципе простая. В [L:M] - эта же формула, адаптированная под список н/пунктов, 11-этажная. )) Как уменьшить число этажей? Файл в посте №1.