Вопросы по JOSM

3 - Добавить точку в отрезок, выбрать её и точки концы отрезка, нажать Shift+B. Новая точка окажется точно посредине.
4 - С помощью Q, см. тут http://forum.openstreetmap.org/viewtopic.php?pid=350899#p350899

Спасибо, работает. Только много действий получается, нет способа быстрее?

Это немного не то. Я не совсем точно выразился - надо из точки, не лежащей на отрезке, опустить перпендикуляр на отрезок.

Ну и самые животрепещущие вопросы все же - это mirror и move. Неужели без command line никак не обойтись?

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

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

День прожит не зря.

А ещё можно провести над базовым отрезком мышью с зажатым CTRL (если правую кнопку нажимать неудобно из-за контекстного меню).

Во блин… я сильно ошибся )) Never say “never”

С менюшной кнопкой мыши что-то не получилось (это какая - правая, средняя?), а с CTRL - точно, работает, и даже можно не только перпендикуляры проводить, но и 30-45-60 градусов! Спасибо!

А что с отражением-то делать? Ну, самый простой случай - нарисовать симметричное здание. Здорово бы было нарисовать половину и зеркально отобразить, а потом объединить две линии. Как это сделать?

Почему у вас CommandLine не работает? Починили же плагин недавно. Только что проверил JOSM 6115 и CommandLine 29819 - Mirror работает.

Так и делать. Рисуете половину, потом копируете (Ctrl-D), зеркалите (Shift-M) и объединяете куски (Shift-J). Для удобства лучше рисовать с “нахлёстом”, тогда объединять проще.

После Ctrl-D копия линии переместится в трудно прогнозируемое заранее место - ее потом после зеркалирования нужно вручную двигать, чтобы совпали точки оси симметрии. Вот тут-то move бы и пригодился - я поэтому про него тоже спросил. Или можно как-то сделать, чтобы после Ctrl-D копия оставалась на месте?

Пару раз я делал так - вручную рисовал вторую линию поверх первой (вместо Ctrl-D), потом разделял все их общие точки (G), зеркалировал (Alt-Shift-S) и объединял линии (С). Получается то, что мне надо, но какой ценой…

Да, действительно - сейчас проверил, работает и mirror, и move. Ну ладно, вопрос тогда снимается. Всем спасибо за помощь!

Помогите переселить переносной josm на java7, а то он ругается, что скоро перестанет работать на 6-ой версии явы.
А может кто ссылкой поделится на готовую сборку?

path_to_java -jar josm-latest.jar
У меня в системе никаких JAVA_HOME не задано и всё прекрасно работает.

Дошли руки починить ошибку. Попробуй поставить плагин (пожалуйста) и проверить, не исчезла ли проблема.

После Ctrl-D геометрический центр фигуры окажется прямо под мышиным курсором, ЕМНИП :roll_eyes:

Что-то глючит плагин notes

java.lang.reflect.InvocationTargetException
        at java.awt.EventQueue.invokeAndWait(Unknown Source)
        at java.awt.EventQueue.invokeAndWait(Unknown Source)
        at org.openstreetmap.josm.gui.PleaseWaitRunnable.doRealRun(PleaseWaitRunnable.java:87)
        at org.openstreetmap.josm.gui.PleaseWaitRunnable.run(PleaseWaitRunnable.java:150)
        at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source)
        at java.util.concurrent.FutureTask$Sync.innerRun(Unknown Source)
        at java.util.concurrent.FutureTask.run(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source)
        at java.lang.Thread.run(Unknown Source)
Caused by: java.lang.VerifyError: (class: org/openstreetmap/josm/plugins/notes/NotesDownloadLoop, method: run signature: ()V) Incompatible object argument for function call
        at org.openstreetmap.josm.plugins.notes.NotesPlugin.layerAdded(NotesPlugin.java:219)
        at org.openstreetmap.josm.gui.MapView.fireLayerAdded(MapView.java:175)
        at org.openstreetmap.josm.gui.MapView.addLayer(MapView.java:350)
        at org.openstreetmap.josm.Main.addLayer(Main.java:452)
        at org.openstreetmap.josm.actions.downloadtasks.DownloadOsmTask$DownloadTask.finish(DownloadOsmTask.java:282)
        at org.openstreetmap.josm.gui.PleaseWaitRunnable$1.run(PleaseWaitRunnable.java:90)
        at java.awt.event.InvocationEvent.dispatch(Unknown Source)
        at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
        at java.awt.EventQueue.access$200(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
        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.pumpEventsForFilter(Unknown Source)
        at java.awt.WaitDispatchSupport$2.run(Unknown Source)
        at java.awt.WaitDispatchSupport$4.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.awt.WaitDispatchSupport.enter(Unknown Source)
        at java.awt.Dialog.show(Unknown Source)
        at java.awt.Component.show(Unknown Source)
        at java.awt.Component.setVisible(Unknown Source)
        at java.awt.Window.setVisible(Unknown Source)
        at java.awt.Dialog.setVisible(Unknown Source)
        at org.openstreetmap.josm.gui.progress.PleaseWaitProgressMonitor$4.run(PleaseWaitProgressMonitor.java:172)
        at java.awt.event.InvocationEvent.dispatch(Unknown Source)
        at java.awt.EventQueue.dispatchEventImpl(Unknown Source)
        at java.awt.EventQueue.access$200(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.awt.EventQueue$3.run(Unknown Source)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.security.ProtectionDomain$1.doIntersectionPrivilege(Unknown Source)
        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)

http://portableapps.com/ - здесь все есть (кроме josm).

  1. качаете http://portableapps.com/download The PortableApps.com Platform™, ставите в любое место (папка на компе или флешке)
  2. потом либо качаете (http://portableapps.com/apps/utilities/java_portable), либо ищите и устанавливаете через интрфейс portableapps - jPortable
  3. и http://portableapps.com/apps/utilities/java_portable_launcher - jPortable Launcher для запуска JARов.

после запуска jPortable Launcher скармливаете ему файл josm*.jar и наслаждаетесь (RTFM - http://josm.openstreetmap.de/wiki/USB_Stick)

upd при выходе новых версий ПО оно будет обновляться через portableapps

Спасибо, но сейчас у меня josm лежит в dropbox, и я его запускаю с разных компов.
Ваш способ не подойдет. Сейчас всё работает без доп софта. Как сделать также для 7й явы?

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

C:\WINDOWS\system32\java.exe -Djosm.home=d:\…\JOSM -Djava.net.useSystemProxies=true -jar d:\…\josm-latest.jar

где** -Djosm.home** место хранения настроек, у вас это может быть папка дропбокс или вообще любой другой. Яву установите штатными средствами Виндовс