Хм, ну не знаю. У меня быстрее получается дедовским способом: рисую отрезок, кнопка X, тяну отрезок на нужную ширину. Ctrl+Shift+V - вставляю из буфера тег building. Следующий дом…
Одинаковые просто Ctrl+C - Ctrl+V, поворачиваются Ctrl+Shift+драг мышкой.
Мне бы пригодился режим в 3 клика (1 клик начинает рисование, 2 указывает длину здания, 3 ширину). То есть по сути добавить вторую стадию, когда перемещение мыши (например, вверх-вниз, как в некоторых 3D-редакторах) управляет шириной.
А можно Ctrl-D - создает дубликат под курсором. Иногда удобней, чем через буфер, так как в этом случае буфер не затирается и можно в нем что-нибудь полезное хранить
Я и не пользуюсь ) Ради всего, не воспринимайте как наезд. Просто пожелание, которое никто не должен выполнять, и раз я такой умный - то пусть сам и пишу. Согласен.
Про Ctrl+C/Ctrl+V - это образно. )) Сейчас работаю в Rhinoceros, а там Ctrl+D нема.
В новой версии учтено пожелание Hind-а. Если width стоит 0(теперь по умолчанию), тогда ширину предлагается задать мышью. Ещё добавлена возможность рисовать параллельно заданной прямой(а также перпендекулярно и под 45 градусов), выделив два узла на ней(а не саму прямую), подобно тому как задаётся направление для фунцкии ортогонализации. Сейчас ещё добавлю, чтобы отображались углы в статусбаре…
Можно ещё в конце выдать формочку для заполнения полей
addr:street и addr:housenumber. В ЁСМе уже есть готовая с шаблоном “адреса”. Надо тока сначала построенное здание выделить и вызвать автоматом соответствующий пункт меню.
При работе с плагином показывать внизу в статусбаре подсказки - чё да как.
Формочка, конечно же, должна быть опциональной, включаемой в настройках.
Улицу запоминать, номер дома запоминать, фокус ввода на позиции Номер дома (что бы быстро поменять, переписав поверх).
Ну и губозакаточную машинку. :d переносную.
Да ладно, когда-то сам на LISPе клепал проги для Автокада, щщитаю лучше сразу как надо сделать, пока свежо в памяти… и не остыл.
“Мой друг, отчизне посвятим
души прекрасные порывы…”
Готово. Включается через Shift+W – Use address dialog. Только чтобы реализовать запоминание и инкрементацию пришлось использовать свой диалог адеса, попроще, чем в пресетах. Если будут нужны дополнительные поля – говорите…
на последних обновлениях чё-то не пашет…
Подкрути там, насяльника… в консерватории.
upd: пишет:
java.lang.NoSuchFieldError: coor
at buildings_tools.Building.create(Building.java:132)
at buildings_tools.DrawBuildingAction.mouseClicked(DrawBuildingAction.java:256)
at java.awt.AWTEventMulticaster.mouseClicked(Unknown Source)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
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.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(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.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)