Как сделать координатную сетку на карте

Добавил пользователь Валентин П.
Обновлено: 07.09.2024

Доброго всем. Есть неделька отпуска. Чтобы провести время с пользой, хотелось бы разобраться в паре мест.
а именно.
Куда копать и что почитать, чтобы сделать подобную сетку?

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

  • Вопрос задан более трёх лет назад
  • 981 просмотр

Оценить 2 комментария

Смотрю я на скриншоты и не вижу привязки координатной сетки к карте. Такое чувство, что сама карта нарисована на одном слое (бэкграунд), а поверх, еще в одном слое, уже нарисована координатная сетка, клики по которой реализуют весь функционал игры. Даже если заменить карту на фон любого цвета, игра не пострадает. Просто потеряет в эстетичности.

П.С. Если же нужна именно привязка к карте (кликаем на остров странной формы для нападения), то можно сделать так:
1. Рисуем карту и помещаем ее в первый слой.
2. Копируем ту же карту во второй слой. Изменяем ее так, чтобы все доступные зоны были разных не повторяющихся между собой цветов (остров А зеленый, остров Б - красный и т.д.). Скрываем этот слой.
3. Строим таблицу соответствий цветов и объектов.
4. Отслеживаем событие нажатие кнопки мыши. Смотрим координаты нажатия. Смотрим, какого цвета там пиксель (по второму слою). Через таблицу соответствий находим объект для действий.
5. PROFIT!

Murmurianez

и добавить следующий код:


По-поводу определения на какой квадрат кликнули - получайте из GoogleMaps API координаты клика в latitude/longitude и сопоставляйте с координатами сетки.

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

Топографические карты имеют следующие размеры квадратов сетки:

1:25000 – 4 см или 1 км в масштабе карты

1:50000 – 2 см или 1 км - « –

1:100000- 2 см или 2 км - « -

1:200000- 2 см или 4 км - « -

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

Километровые линии на картах подписываются у их за рамочных выходов и у нескольких пересечений внутри карты. Ближайшие к углам рамки километровые линии подписываются полностью, остальные сокращенно двумя цифрами (указываются только десятки и единицы километров).

Подписи у горизонтальных линий соответствуют расстояниям в километрах от Экватора (6066).

Подписи у вертикальных линий обозначают номер зоны (одна или две первые цифры) и расстояние в километрах от условно перенесенного на 500 км нулевого меридиана зоны.

Пример: на карте У-34-37-В подпись в левом нижнем углу 4307 означает:

307 – расстояние от условно перенесенного начала координат в километрах.

Дополнительная координатная сетка.

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



Дополнительная координатная сетка представляет собой выходы километровых линий на внешнюю рамку листа карты в виде черточек с соответствующими цифровыми подписями (См. карту СНОВ).

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

Таким же образом определяют и координату У, только расстояние измеряют от точки по перпендикуляру до лево стороны квадрата километровой сетки.

Полученные после прибавления отрезков числа будут представлять собой полные прямоугольные координаты.

Пример – учебной карте У-34-37-В (СНОВ) определить координаты курган Бурый (6618).

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

Горизонтальная линия, образующая нижнюю сторону квадрата имеет подпись 6066 т. е. Х = 6066км.

Вертикальная линия, образующая левую сторону квадрата имеет значение

438, т.е. У = 4318 (4 - номер зоны , 318 - значение координаты У в километрах).

Затем определяют расстояние от горизонтальной линии до кургана. Оно

Равно 1,3 см на карте или 650м на местности. Измерив таким же образом расстояние от левой вертикальной линии, получают 300м.

Прибавив полученные расстояния к соответствующим значениям координатных линий , получают полные координаты кургана Бурый:

Х = 6066км + 650м = 6066650м

У = 4318км + 300м = 4318300м

В сокращенном виде координаты записываются так:

Измерения выполняются циркулем – измерителем , линейкой или координатомером. Простейшим координатомером служит офицерская линейка, по сторонам одного из улов которой нанесены миллиметровые деления и подписи Х и У.

Координатомер накладывают на квадрат, в котором располагается точка, и совместив вертикальную шкалу с его левой стороной, а горизонтальную – с точкой, снимают отсчеты.

Точность измерения прямоугольных координат равна +- 0,5 мм или 5 от величины масштаба карты. Полные и сокращенные координаты записываются и передаются раздельно, сначала по Х, затем по У.

В прошлой статье я рассказал о плюсах и минусах этих и карт других картах для подготовки к походу. Эта статья для тех, кто решил познать карты Генштаба подробнее. Помните, что карты ГШ безнадежно устарели – им минимум 30 лет. Кого это не устраивает, пользуйтесь OSM, для Garmin OSM качается ТУТ.

Кому хочется много странного, могут загуглить “Учебник по военной топографии”. Сам по нему учился в ВУЗе. Там тонна старого и бесполезного для туристов материала.

6 комментариев

На карту можно добавлять не только различные элементы управления и объекты, но и слои.

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

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

Слой с координатной сеткой можно добавить на карту и на своём сайте. Для этого необходимо создать источник данных для тайлов и передать его в качестве параметра в конструктор класса YMaps.Layer для создания слоя. Более подробно о создании слоев можно прочитать в Руководстве разработчика.

При создании источника для тайлов с помощью класса YMaps.TileDataSource необходимо задать шаблон, по которому будет строиться URL для получения тайла.

В этом шаблоне можно использовать следующие специальные конструкции:

  • %d - заменяется на число от 1 до 4, в зависимости от номера тайла. Используется для распределения нагрузки между несколькими доменами.
  • %c - заменяется на x&y&z, где x - номер тайла по горизонтали, y - номер тайла по вертикали, z - коэффициент масштабирования.

Для построения URL'a тайла воспользуемся второй специальной конструкцией.

Anonim

У меня есть многоугольники страны, штата и города в географической системе координат. Должна быть создана сетка широт и долгот, которая будет отображаться внутри многоугольников. Интервал между линиями сетки координатной сетки будет варьироваться в зависимости от экстента (страна / штат / город), для которого необходимо создать сетку. Сетка должна быть шейп-файлом или классом пространственных объектов, поскольку позже потребуется преобразование в кмл / кмz.

Есть ли в ArcMap какие-либо инструменты, которые позволят этого добиться?

Вы можете использовать построитель моделей (итерация выбора функции) или Python (цикл с arcpy.sa.searchCursor с SHAPE @ для определения экстента) в одном цикле, чтобы установить экстент вашей сетки в соответствии с каждой интересующей характеристикой, чтобы расстояние между ваши линии подогнаны к размеру объекта.

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

Другой вариант - использовать бесплатный инструмент Hawth Tool (надстройка для ArcMap). Где вы можете легко создавать сетки на основе меридианов и параллелей. Ниже приводится сводка инструментов.

СОЗДАТЬ ИНСТРУМЕНТ ВЕКТОРНОЙ СЕТКИ

Позволяет пользователю создавать полигоны или линии в качестве типа выходного объекта.

позволяет пользователю привязать сетку к основным интервалам системы координат (например, линии будут располагаться на отметках 1000 метров в сетке UTM)

Читайте также: