Карты должны быть не только точными, но и красивыми (IMHO). Поэтому хочу поделится своими хитростями при редактировании карт с помощью JOSM.
JOSM предоставляет массу инструментов для редактирования.
Но почему то в нем к примеру нет инструмента выравнивания объектов вдоль линии. Зато присутствует инструмент ориентирования объектов вдоль линии.
Это знакомая команда “Q” которая выравнивает углы объекта на 90° и в случае если указаны 2-е точки ориентирует относительно их.
Пример: необходимо выровнять здания относительно улицы
обводим вспомогательной линией сначала по внешней стороне (получаем прямоугольник) затем по внутренней.
выделяем вспомогательные линии и здания (зажимаем Ctrl)
выделяем 2-е точки относительно которые мы будем ориентировать и выравнивать здания (в данном случае это перекрестки дорог)
Подобные процедуры можно проводить и с частным сектором:
Еще большой интерес представляет команда “О” которая из последовательностей точек делает правильную окружность.
Кстати очень удобно рисовать стадионы.
Сначала рисуем окружность нужного нам размера.
затем копируем ее и относим на нужное расстояние.
Далее обводим полигон который мы впоследствии и назовем leisure=pitch
и удаляем сами окружности:
Вообще комбинацией окружностей, прямоугольников и вспомогательных линий можно составлять разные сложные фигуры.
К примеру этот фонтан нарисован мной с помощью 1 квадрата и 4-х окружностей.
Хотелось бы надеется что кому то это поможет, а так же кто нибуть поделится своими хитростями.
можно было бы нарисовать, во-первых, нарисовав всего одну окружность, затем выделив половину точек из нее и перетащив их, а во-вторых, на снимке четко видно, что его форма - другая, радиус его скруглений не равен половине ширины поля, а довольно заметно меньше ее (где-то треть ширины), как и у соседней хоккейной коробочки.
Это же для примера. Ну не нашел я быстро под рукой “пустую” правильную школу.
Окружность на стадионе не всегда половина. Поэтому проще скопировать и соединить их прямыми. Потом разрезать окружности командой “Р” (разделить линию, выделяя её саму и точки по которым резать) удалить не нужное, выделить остатки и нажать на кнопочку “С” (объединить линию) и вешать тег.
Более адекватные окружности можно нарисовать через Shift+O, предварительно установив createcircle.nodecount в расширенных настройках. Тот стадион, например, можно было нарисовать прямее (правильный прямоугольник из Building tools, две окружности от Shift+O, затем всё можно объединить через Shift+J):
Во-первых, (довольно точно) распределить их по фасаду поможет сдедующее действо: рисуем подъезды, добавляем между соседними парами подъездов по дополнительной точке, выделяем всё это вместе с углами здания и нажимаем B (Edit - Distribute nodes). Потом точки можно удалить.
Далее, чтобы нарисовать перпендикулярные дому дорожки к подъездам: рисуем из подъездов лучи абы как, затем выделяем 2 подъезда и 2 дорожки из них и нажимаем Q, дорожки станут перпендикулярными, при этом подъезды не сместятся. К сожалению, со всеми разом так не сделать - больше двух точек не выделить, а если выделить больше дорожек, их подъезды будут смещаться.
Хочется упомянуть, что такие трюки с выравниванием должны применяться не в ущерб точности. Т.е. если на местности здания стоят действительно криво, то и рисовать их надо так, как они стоят.
А то читатель может подумать, что красота карты приоритетнее точности
А ещё для выделения и объединения пересекающихся полигонов хороша последовательность I-I-…- Shift-J (Utilsplugin2) (начинаем с одного выделенного).
Я так домики с выступами в buildingTools рисовал.
Модуль BuildingsTools. Здания расположены вдоль одной линии на разном расстоянии от линии, рисуем в два клика. Обрисовываем контур здания выделяем щелчком по контуру и последующие контуры рисуем в два клика параллельно выделенному контуру здания.
Решил таки нарисовать подъезды в своем доме
Воспользовался советом AMDmi3
Все здорово получилось. Только хочу уточнить комбинацию кнопок. Надо жать “Shift+B” Иначе в моем случае будет рисоваться просто здание.
Вообще огромное спасибо AMDmi3 за его прием рисования окружностей и вписывание их в полигоны. Это настолько облегчает труд, что мне теперь просто нравится их рисовать
Единственное что заметил это то, что после “чистой” установки JOSM параметра createcircle.nodecount в системе нет. Его необходимо добавить вручную (Кнопка “Добавить” в тех же настройках)
Да, все очень просто - выбираете draw line, включаете угловую привязку (А), кликаете правой кнопкой на любом сегменте и начинаете рисовать (линия будет будет строиться с угловой привязкой к этому сегменту).
Как-то давно я высказывал пожелание инструмента, который усреднял бы GPS-треки и автоматически уточнял по ним положение узлов дорог.
Сегодня обнаружил в JOSM удивительный плагин GPSBlam. Не совсем то что хотелось, но он тоже усредняет значение GPS-точек на заданном отрезке и рисует на экране прямую линию.
Я использую так - немного отступив от нужного мне перекрёстка выделяю участок улицы (перекрёсток и треки с примыкающих дорог попадать не должны) и тяну линию. В результате будет отрисован некий усреднённый луч, кторый по идее должен совпадать с осевой линией дороги. Повторяю операцию с примыкающей дорогой.
В результате имеем довольно точную привязку, по которой двигаем спутниковую подложку намного точнее чем по множеству треков “на глазок”.
Если какие-то треки с вылетами - можно отключить их в GPX-слое и они не будут взяты в обработку.