OpenStreetMap Forum

The Free Wiki World Map

You are not logged in.

Announcement

A fix has been applied to the login system for the forums - if you have trouble logging in please contact support@openstreetmap.org with both your forum username and your OpenStreetMap username so we can make sure your accounts are properly linked.

#51 2011-02-07 12:50:51

dkiselev
Member
Registered: 2010-02-09
Posts: 3,361

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

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

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


mail: dkiselev@osm.me      skype: dmitry.v.kiselev
Open Street Maps are supreme! Exterminate all map forms! Exterminate! Exterminate!

Offline

#52 2011-02-07 12:54:45

Hind
Member
From: Moscow
Registered: 2009-05-25
Posts: 3,948

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

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

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

Offline

#53 2011-02-07 13:27:36

Zverik
Moderator
From: Москва
Registered: 2010-10-14
Posts: 5,493
Website

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

dkiselev wrote:

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

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


ШТОСМ | josm.ru | обо мне | if you argue about code of conduct, you need one

Offline

#54 2011-02-07 13:39:34

pankdm
Member
From: Moscow | Kemerovo
Registered: 2010-08-20
Posts: 320

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

dkiselev wrote:

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

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

Еще в соседней теме (http://forum.openstreetmap.org/viewtopi … 02#p140402) был упомянут вот этот плагин http://wiki.openstreetmap.org/wiki/JOSM … ntourMerge

Last edited by pankdm (2011-02-07 13:44:06)

Offline

#55 2011-02-07 13:39:51

dkiselev
Member
Registered: 2010-02-09
Posts: 3,361

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

Zverik wrote:
dkiselev wrote:

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

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

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

Hind wrote:

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

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

Last edited by dkiselev (2011-02-07 13:50:08)


mail: dkiselev@osm.me      skype: dmitry.v.kiselev
Open Street Maps are supreme! Exterminate all map forms! Exterminate! Exterminate!

Offline

#56 2011-02-07 13:51:45

dkiselev
Member
Registered: 2010-02-09
Posts: 3,361

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

pankdm wrote:
dkiselev wrote:

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

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

Еще в соседней теме (http://forum.openstreetmap.org/viewtopi … 02#p140402) был упомянут вот этот плагин http://wiki.openstreetmap.org/wiki/JOSM … ntourMerge

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


mail: dkiselev@osm.me      skype: dmitry.v.kiselev
Open Street Maps are supreme! Exterminate all map forms! Exterminate! Exterminate!

Offline

#57 2011-02-07 13:57:28

Zverik
Moderator
From: Москва
Registered: 2010-10-14
Posts: 5,493
Website

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

dkiselev wrote:

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

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


ШТОСМ | josm.ru | обо мне | if you argue about code of conduct, you need one

Offline

#58 2011-02-07 14:34:06

dkiselev
Member
Registered: 2010-02-09
Posts: 3,361

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

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

Last edited by dkiselev (2011-02-07 14:38:09)


mail: dkiselev@osm.me      skype: dmitry.v.kiselev
Open Street Maps are supreme! Exterminate all map forms! Exterminate! Exterminate!

Offline

#59 2011-04-05 02:24:20

Hind
Member
From: Moscow
Registered: 2009-05-25
Posts: 3,948

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

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

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

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

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

Offline

#60 2011-04-05 08:29:58

Alexandr Zeinalov
Member
From: New-Peredelkino, Moscow, RU
Registered: 2009-08-26
Posts: 1,636
Website

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

Hind wrote:

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

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

Offline

#61 2011-04-05 08:36:12

Sergey Astakhov
Member
From: St.Petersburg, Russia
Registered: 2009-11-13
Posts: 5,462

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

Alexandr Zeinalov wrote:

В нормальных языках есть функции типа escapeshellarg, неужели в Яве нет?

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

Offline

#62 2011-04-05 10:05:46

Hind
Member
From: Moscow
Registered: 2009-05-25
Posts: 3,948

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

Alexandr Zeinalov wrote:

А ещё люди внезапно обнаружат проблемы с восклицательным знаком.

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

Alexandr Zeinalov wrote:

В нормальных языках есть функции типа escapeshellarg, неужели в Яве нет?

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

Last edited by Hind (2011-04-05 10:11:52)

Offline

#63 2011-04-05 10:18:04

Vitalts
Member
From: Estonia
Registered: 2010-12-30
Posts: 1,440

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

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

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

Last edited by Vitalts (2011-04-05 10:21:12)

Offline

#64 2011-04-05 10:47:11

Hind
Member
From: Moscow
Registered: 2009-05-25
Posts: 3,948

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

Vitalts wrote:

при наборе команды, варианты команд не выводятся.
Система: Win XP 32, Loaded CommandLine, version 25200

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

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

Offline

#65 2011-04-05 11:02:29

Alexandr Zeinalov
Member
From: New-Peredelkino, Moscow, RU
Registered: 2009-08-26
Posts: 1,636
Website

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

Hind wrote:
Alexandr Zeinalov wrote:

А ещё люди внезапно обнаружат проблемы с восклицательным знаком.

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

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

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

Offline

#66 2011-04-05 13:26:48

Vitalts
Member
From: Estonia
Registered: 2010-12-30
Posts: 1,440

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

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\

Offline

#67 2011-04-05 14:38:39

Hind
Member
From: Moscow
Registered: 2009-05-25
Posts: 3,948

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

Vitalts wrote:

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

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

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

JOSM\plugins\CommandLine\

Offline

#68 2011-04-05 14:58:30

Vitalts
Member
From: Estonia
Registered: 2010-12-30
Posts: 1,440

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

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

%appdata%\JOSM\plugins\CommandLine\

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

Last edited by Vitalts (2011-04-05 14:59:51)

Offline

#69 2011-04-22 09:16:32

bopoh13
Member
From: RU
Registered: 2011-03-28
Posts: 108
Website

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

Поставил "пинтон", плагин и команды. Загрузился:

Repository Root: http://josm.openstreetmap.de/svn
Build-Date: 2011-04-14 01:31:50
Last Changed Author: bastiK
Revision: 4021
Repository UUID: 0c6e7542-c601-0410-84e7-c038aed88b3b
URL: http://josm.openstreetmap.de/svn/trunk
Last Changed Date: 2011-04-13 22:43:46 +0200 (Wed, 13 Apr 2011)
Last Changed Rev: 4021

GET http://api.openstreetmap.org/api/capabilities... OK
Соединение с http://api.openstreetmap.org/api установлено используя протокол 0.6

загрузка модуля 'openstreetbugs' (версия 25664)
загрузка модуля 'PicLayer' (версия 25219)
Silent shortcut conflict: 'menu:PicLayer' moved by 'menu:Imagery' to 'Alt+A'.
загрузка модуля 'CommandLine' (верси  25829)
file:///C:/Program%20Files/josm/JOSM/plugins/CommandLine/arc.xml
file:///C:/Program%20Files/josm/JOSM/plugins/CommandLine/bezier.xml
file:///C:/Program%20Files/josm/JOSM/plugins/CommandLine/circle.xml
file:///C:/Program%20Files/josm/JOSM/plugins/CommandLine/copy.xml
file:///C:/Program%20Files/josm/JOSM/plugins/CommandLine/cut.xml
file:///C:/Program%20Files/josm/JOSM/plugins/CommandLine/fillet.xml
file:///C:/Program%20Files/josm/JOSM/plugins/CommandLine/mirror.xml
file:///C:/Program%20Files/josm/JOSM/plugins/CommandLine/move.xml
file:///C:/Program%20Files/josm/JOSM/plugins/CommandLine/offset.xml
file:///C:/Program%20Files/josm/JOSM/plugins/CommandLine/regexp.xml
file:///C:/Program%20Files/josm/JOSM/plugins/CommandLine/replace.xml

Попытался сделать круг. Результат:

Silent shortcut conflict: 'subwindow:conflict' moved by 'menu:Commands' to 'Alt+Shift+C'.
python circle.py 37.621895969751904,55.75326683180708 10 12
java.io.IOException: Cannot run program "python" (in directory "C:\Program Files\josm\JOSM\plugins\CommandLine"): CreateProcess error=2, ?? ??????? ????? ????????? ????
        at java.lang.ProcessBuilder.start(Unknown Source)
        at CommandLine.CommandLine.runTool(CommandLine.java:461)
        at CommandLine.CommandLine.loadParameter(CommandLine.java:399)
        at CommandLine.CommandLine$1.processKeyEvent(CommandLine.java:116)
        at java.awt.Component.processEvent(Unknown Source)
        at java.awt.Container.processEvent(Unknown Source)
        at java.awt.Component.dispatchEventImpl(Unknown Source)
        at java.awt.Container.dispatchEventImpl(Unknown Source)
        at java.awt.Component.dispatchEvent(Unknown Source)
        at java.awt.KeyboardFocusManager.redispatchEvent(Unknown Source)
        at java.awt.DefaultKeyboardFocusManager.dispatchKeyEvent(Unknown Source)

        at java.awt.DefaultKeyboardFocusManager.preDispatchKeyEvent(Unknown Source)
        at java.awt.DefaultKeyboardFocusManager.typeAheadAssertions(Unknown Source)
        at java.awt.DefaultKeyboardFocusManager.dispatchEvent(Unknown Source)
        at java.awt.Component.dispatchEventImpl(Unknown Source)
        at java.awt.Container.dispatchEventImpl(Unknown Source)
        at java.awt.Window.dispatchEventImpl(Unknown Source)
        at java.awt.Component.dispatchEvent(Unknown Source)
        at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
        at java.awt.EventQueue.access$000(Unknown Source)
        at java.awt.EventQueue$1.run(Unknown Source)
        at java.awt.EventQueue$1.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(UnknownSource)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(UnknownSource)
        at java.awt.EventQueue$2.run(Unknown Source)
        at java.awt.EventQueue$2.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.AccessControlContext$1.doIntersectionPrivilege(UnknownSource)
        at java.awt.EventQueue.dispatchEvent(Unknown Source)
        at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
        at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
        at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.io.IOException: CreateProcess error=2, ?? ??????? ????? ????????? ????
        at java.lang.ProcessImpl.create(Native Method)
        at java.lang.ProcessImpl.<init>(Unknown Source)
        at java.lang.ProcessImpl.start(Unknown Source)
        ... 36 more
Ошибка выполнения скрипта: python circle.py 37.621895969751904,55.75326683180708 10 12
Cannot run program "python" (in directory "C:\Program Files\josm\JOSM\plugins\CommandLine"): CreateProcess error=2, ?? ??????? ????? ????????? ????
[Ljava.lang.StackTraceElement;@bc8690

Offline

#70 2011-04-22 10:25:41

Felis Pimeja
Member
Registered: 2010-10-27
Posts: 1,033

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

bopoh13, прописать python в системные переменные. Было в начале топика.

Offline

#71 2011-04-22 12:08:29

bopoh13
Member
From: RU
Registered: 2011-03-28
Posts: 108
Website

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

luiswoo wrote:

После установки Python(желательно перезагрузится) устанавливаем для него path: компьютер-свойства-дополнительные параметры системы-переменные среды-переменные среды для "имя пользователя" - создать(не забываем кликнут под имеющимися переменными, что бы их не изменить) - "имя переменной=path" "значение переменной=C:\Python31\" - если всё правильно, то при вводе в cmd команды python появится "Python 3.1.3 и тд и тп".

path = C:\Python27\
Вот это? Так эффекта нуль. Из коммандной строки загружается, в josm - ничего не происходит (правда, уже не висит).

python circle.py 37.621895969751904,55.75326683180708 10 12
Traceback (most recent call last):
  File "circle.py", line 25, in <module>
    import projections
ImportError: No module named projections

Добавлено:
там в папке с XML-ками нужные файлы projections.py и OsmData.py были )) Все работает, спасибо! wink

Hind, спасибо за плагин. Теперь osmplug для "кетчупа" просто не нужен (да простит меня vvoovv).
ЗЫ: Буду думать, чем заменить "пинтон".

Last edited by bopoh13 (2011-04-22 12:26:28)

Offline

#72 2011-04-22 12:16:19

Hind
Member
From: Moscow
Registered: 2009-05-25
Posts: 3,948

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

Под питон 2.7 не проверялось. Гарантированно работает только на 2.5 и 3 питонах. :3
Во всяком случае, я не представляю, как питон может не найди projections, когда он лежит в одной папке с circle.py

Offline

#73 2011-04-26 13:16:37

ErshKUS
Member
From: Калиниград
Registered: 2010-12-27
Posts: 794

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

вот в багрепорт  http://img857.imageshack.us/img857/9359/bugw.png  после выполнения arc   WinXP


Ты никогда не спутаешь пути: ты стоишь...
И, может, так и нужно, но как тогда узнать, что там выше крыш?   (Lumen, Лабиринт)

Offline

#74 2011-04-26 14:39:42

ErshKUS
Member
From: Калиниград
Registered: 2010-12-27
Posts: 794

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


Ты никогда не спутаешь пути: ты стоишь...
И, может, так и нужно, но как тогда узнать, что там выше крыш?   (Lumen, Лабиринт)

Offline

#75 2011-04-27 10:49:14

bopoh13
Member
From: RU
Registered: 2011-03-28
Posts: 108
Website

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

Wiki (CommandLine#FAQ) wrote:

(проверить это можно выполнив в командной строке python)

ErshKUS, это не показатель. У меня запускался "пинтон" через командную строку ))
Сейчас все работает, я в посте #71 написал.

Добавлено:

ErshKUS wrote:

вот в багрепорт  bugw.png

Просто проблемы с кодировкой. У меня тоже самое. Ничего страшного smile

Last edited by bopoh13 (2011-04-27 10:52:07)

Offline

Board footer

Powered by FluxBB