Плагин CommandLine для jOSM (окружности, дуги и т.п. + свои команды)

О, пришла в голову хотелка.

Рисуем адресную интерполяцию, проставляем правильно теги. Рисуем один домик. Далее выбираем линию с точками или несколько, нарисованный домик, жмём кнопку и оно превращает линию в отдельные домики с правильными тегами.

Плагин AddrInterpolation может превращать интерполяцию только в точки, что не очень удобно.

Eugene

Тоже маленькая хотелка. Чтобы при рисовании дуги между двумя отрезками, конечные точки дуги и отрезков мёрджились автоматически.

Раз пошла пьянка на хотелки - то вот еще одна:

Команда слепить линии
Предположим у меня есть озеро - ну скажем из 200-300 точек, к одному из берегов вплотную прилегает лес (как пример) и я хочу нарисовать его по общим точкам. Дак вот хотелось бы слепить у леса и озера 3 точки, выбрать вей озера и вей леса - выполнить команду слепить и добавить все точки озера в точки леса, чтобы лес и озеро шли по общим точкам. 3 точки чтобы знать в каком направлении бежать по точкам озера.

Я не очень понял логику, но:

  1. Сейчас я занят немного другими делами.
  2. Плагин создавался, чтобы дать всем возможность писать команды самим. :3

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

Для этого есть плагин multipoly и команда «создать мультиполигон».

Еще в соседней теме (http://forum.openstreetmap.org/viewtopic.php?pid=140402#p140402) был упомянут вот этот плагин http://wiki.openstreetmap.org/wiki/JOSM/Plugins/ContourMerge

Посмотрю но вроде она по другому работает.
Add: посмотрел - не совсем то что хотелось бы.

Что нехорошо просить других сделать то, что можешь сделать сам - оно понятно.
Будем считать что это напомниналка мне самому эту штуку написать.

О а это по ходу дела то что нужно! Спасибо.

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

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

Новая команда: Regexp.

Простейший поиск и замена по регэкспу (в т.ч. по обычным строкам). Можно быстро массировано заменять «ул.» на «улица» (выделив предварительно все объекты по Ctrl+A), и таки да, кавычки-лапки на ёлочки (искать "(.*?)", заменять на «\1» ).

Если в выражениях используется символ ", его нужно экранировать, так как он используется при передаче параметра через системную командную строку.

С кодировками проблем вроде бы быть не должно. Зато вылезло неудобство: оказывается, в коммандлайне не вставляется и не копируется текст. Буду исправлять.

А ещё люди внезапно обнаружат проблемы с восклицательным знаком. Не надо так делать. В нормальных языках есть функции типа escapeshellarg, неужели в Яве нет?

А в Java она не нужна - вместо конструирования полной строки запуска надо просто использовать методы запуска с отдельной передачей параметров.

Я чего-то не знаю? Какие еще проблемы с восклицательным знаком? Только что проверил, всё работает.

Я не трогал плагин, так что непонятно, при чем тут Java.
Плагин я поправлю немного позже.

У меня, возможно, плагин не работает. По крайней мере, при наборе команды, варианты команд не выводятся.
Отрабатывают команды, или нет, сказть не могу, т.к. Питона нет.
Система: Win XP 32, Loaded CommandLine, version 25200
Пробовал вручную обновлять, jar файлы идеентичны, ничего не изменилось.

PS: Стандартный набор команд установлен, но как уже писал, Питона нет.

Давайте логи загрузки JOSM при запуске командой навроде java -jar -Xmx1024M “josm-latest.jar”

Там должно быть много строчек вида:
file:///*/AppData/Roaming/JOSM/plugins/CommandLine/arc.xml

Проблемы возникают там, где их ждут меньше всего:

shurik@pc3 ~ $ echo !
!
shurik@pc3 ~ $ echo \!
!
shurik@pc3 ~ $ echo "\!"
\!
shurik@pc3 ~ $ echo "!"
bash: !: event not found

Hind, нет в логах этих строк, весь лог довольно короткий и умещается в 940 байт
Есть только одно упоминание о CommandLine, факт его загрузки.


...
???????? ?????? 'PicLayer' (?????? 25219)
Silent shortcut conflict: 'menu:PicLayer' moved by 'menu:Imagery' to 'Alt+B'.
???????? ?????? 'CommandLine' (?????? 25200)
???????? ?????? 'RoadSigns' (?????? 25192)
???????? ?????? 'buildings_tools' (?????? 25469)
...

Отчего коммандлайн может не найти файлы с командами? Все лежит где надо:

c:\Documents and Settings\user\Application Data\JOSM\CommandLine\

Не там.
Посмотри внимательнее. :3

Hind, мы смотрим на разные Вики по одной ссылке?

%appdata%\JOSM\plugins\CommandLine\

млин, понял, не заметил plugins, хотя, эту папку вроде сам плагин создал…