|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,992
|
Скачал еще раз с сайта. Грузил и lisp и fas. Автокад 2013 русский
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,992
|
В 2015 не заработал, буду разбираться
----- добавлено через ~3 ч. ----- Дело оказалось в этом Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
|
||||
Созрело предложение для новой функции в коллекцию.
Ситуация: есть много (очень) полилиний генерируемых программой, а именно организация рельефа в горизонталях. У многих полилиний надо убирать один сегмент, не затрагивая смежные. (по факту делаю "разорвать" и указываю первую и вторую точки) на приложеном рисунке - красным обозначены сегменты, которые надо вырезать. в облаке участок уже разорванных объектов. Может есть уже у кого то подобное, или вдруг появится желание из спортивного интереса накодить? сам такое не осилю
__________________
Не труд сделал из обезьяны человека, а лень и жажда халявы... |
||||
|
||||
_trim будет еще более трудоемко, т.к. работаю уже на плане, где очень много всего интересного. или по отдельности выбирать каждую полилинию и получаем примерно то же что и "разорвать" - те же 3 клика, но есть вероятность подцепить не нужную линию и обрежется совсем не то что надо.
__________________
Не труд сделал из обезьяны человека, а лень и жажда халявы... |
||||
|
||||
Раз чертите дороги и т.п., то Вам в руки Map/Civil - в нем есть Корректировка/Очистка чертежей (Drawing cleanup). С помощью Drawing cleanup разбиваете длинные прямые линии относительно коротких ломаных на их пересечениях, не разбивая короткие. Удаляете что нужно, и сшиваете оставшееся от прямых длинных тем же Drawing cleanup.
__________________
количество моих сообщений не говорит о знании Автокада |
||||
|
||||
Регистрация: 20.03.2008
Сообщений: 2,653
|
Vladimir_Sergeevich, на болоте есть несколько рабочих вариантов.
Но все они удаляют только один сегмент, после чего команду надо вызывать заново. На мой взгляд, это не совсем удобно. Я переработал один из вариантов от Lee Mac, который обрабатывает любые полилинии: добавил цикл с завершением по Enter, обработку промаха, отмену случайно удаленного сегмента по Ctrl+Z ну и подсказки с отчетами в комстроке. Прошу теста, критики и предложений. Код:
Последний раз редактировалось skkkk, 28.08.2014 в 02:27. Причина: Описание изменений см. ниже по тексту |
|||
|
||||
Кто ж мне его купит, если голый автокад - уже дорого и начали закупать LT
2 skkkk, то что доктор прописал - дело пошло раз в 5 быстрей
__________________
Не труд сделал из обезьяны человека, а лень и жажда халявы... |
||||
|
||||
Цитата:
Вполне неплохо бы его добавить в PLTOOLS. Лисп родственный действиям из PLTOOLS, в котором и работа с удалением элементов полининий (например, удаление вершин), и действия с сегментами. Цитата:
Но разве на LT лиспы идут?
__________________
количество моих сообщений не говорит о знании Автокада |
||||
|
||||
Регистрация: 20.03.2008
Сообщений: 2,653
|
Чуть подправил код в #450. Добавил метки отмены. Теперь Ctrl+Z в момент выполнения команды отменяет по одному удаленному сегменту, а по завершении команды Ctrl+Z вернет ВСЕ сегменты, удаленные в процессе последнего вызова. Так, мне кажется, правильней.
|
|||
|
||||
Регистрация: 20.03.2008
Сообщений: 2,653
|
gomer, да вроде понятен.... А что не так? В 13-ой строке я разрешил функции (entsel), которая в 14-ой, принимать в качестве аргумента строку "u". Такое строковое значение посылается в командную строку при нажатии Ctrl+Z. Биты не задействовал, т.к. entsel'у они до лампочки.
Расскажи, пожалуйста, как правильно? |
|||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
Вот ты видишь суслика? И я не вижу, а он есть... если у команды есть опции, юзер должен их видеть. вроде мелочь, а приятно... Ну вот сидишь ты, режешь, захотел отменить. Будешь отрывать руку от мыши? использовать другую руку? Сейчас можно просто кликнуть в ком строке опцию и продолжать. Я 100500 раз уже писал: смотрите как работают штатные команды и делайте так же. Ну, и последнее, ты ж не постоянно в английской раскладке работаешь, или кто еще, а программа должна в любом случае работать у самых извращенных пользователей...
|
|||
|
||||
Регистрация: 20.03.2008
Сообщений: 2,653
|
А, вот ты о чем...
Так ведь внося изменения, кои я описал в #453, я руководствовался как раз этой мыслью. Хотел повторить принцип, например, отрисовки полилинии. В момент отрисовки жмешь Ctrl+Z - отменяется последний сегмент, жмешь после завершения команды - убирается вся полилиния. Но недоповторил. Цитата:
Это, видимо, нововведения, которые появились после 2011-го, я их еще не имел счастья опробовать. Звучит заманчиво. Подотстал что-то я. В общем, внемля конструктивной критике, вношу изменения в #450, спасибо тебе, gomer. Теперь прошу замечаний по изменениям. ----- добавлено через ~4 мин. ----- Но вот, пока тестировал новый вариант, наткнулся на такой неприятный момент, как-то сразу мною упущенный. Если при удалении сегментов происходило зумирование или панорамирование, то они включаются в действие отмены, и отмена происходит не до конца. Как сделать, чтоб она шла до конца, понятно. Но непонятно, как исключить зум и пан из отмены или включить их в один шаг с восстановлением сегмента? Есть какой-то здравый простой способ, или придется отслеживать историю изменений вида и перед отменой возвращать сначала предыдущий вид? В случае, например, с отрисовкой полилинии вид при отмене сегмента не меняется. |
|||
|
||||
не заметил...
Цитата:
или надо придумывать замену штатному _undo (как то уже столкнулся в одной рисовалке банальной - заменл на (entdel (entlast)).)
__________________
Не труд сделал из обезьяны человека, а лень и жажда халявы... |
||||
|
||||
Регистрация: 20.03.2008
Сообщений: 2,653
|
Вроде получилось разобраться. Обновил в #450. Тестируем.
|
|||
|
||||
строю, ломаю Регистрация: 03.04.2008
Украина
Сообщений: 5,515
|
ну раз ты такой настырный, то что у тебя делают строчки 74-76? Не то же, что и 04-09?
Если говорить об уважении к пользователю и русскому языку и логике, то как минимум так Код:
С инитгет ты так и не разобрался, это печаль Да и что стоит тебе отформатировать код, чтоб это ВЫГЛЯДЕЛО, добавить комментарии, чтоб все было ПОНЯТНО. Добавить файл с исходниками, чтоб люди могли сразу скачать и пользоваться. Тыжпрограммист, небось не чайники починяешь. Ну и еще одну помидорку кину: с какого бодуна у тебя флаг оказался счетчиком? |
|||