| Правила | Регистрация | Пользователи | Сообщения за день |  Справка по форуму | Файлообменник |

Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Повторный запуск функции "разорвать в точке"- удаление части линии

Повторный запуск функции "разорвать в точке"- удаление части линии

Ответ
Поиск в этой теме
Непрочитано 08.02.2010, 23:25 #1
Повторный запуск функции "разорвать в точке"- удаление части линии
Lars
 
Регистрация: 05.02.2010
Сообщений: 7

Почему при повторном запуске функции "разорвать в точке" путем нажатия клавиши "пробел" происходит удаление части линии, но если запускать повторно через нажатие соответствующей кнопки на экране, то все нормально.
И еще вопрос, какое сочетание клавиш для переключения между открытыми чертежами?
AutoCad 2010.
Просмотров: 9397
 
Непрочитано 08.02.2010, 23:28
#2
Кулик Алексей aka kpblc
Moderator

LISP, C# (ACAD 200[9,12,13,14])
 
Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,844


Цитата:
Сообщение от Lars Посмотреть сообщение
какое сочетание клавиш для переключения между открытыми чертежами?
Для начала не мешало бы поискать. Ctrl+Tab - как один из вариантов.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 08.02.2010, 23:31
#3
Lars


 
Регистрация: 05.02.2010
Сообщений: 7


Спасибо, работает, я искал, но сначала на таб нажал, а после пробовал контр- таб, потому и не сработало. И мышь должна быть на рабочем поле
Lars вне форума  
 
Непрочитано 08.02.2010, 23:44
#4
Botan

непонятно
 
Регистрация: 28.01.2008
Сообщений: 471
<phrase 1=


Цитата:
Сообщение от Lars Посмотреть сообщение
при повторном запуске функции "разорвать в точке" путем нажатия клавиши "пробел"
Если в макрос команды добавить * перед всем выражением, то команда будет работать, пока не нажмешь ESC.
Т.е. должно выглядеть вот так *^C^C_break \_f \@
__________________
Если ты что-то сделал без труда, то ты сделал это неправильно!
Лишь та ошибка, что не исправляеТСЯ!
Botan вне форума  
 
Непрочитано 09.02.2010, 09:36
#5
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,826
<phrase 1=


Lars, смотри
тута
а для общего развития
тута
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon вне форума  
 
Непрочитано 09.02.2010, 10:44
#6
Disney

Геодезист
 
Регистрация: 12.03.2009
Сибирь (где медведи по улицам ходят)
Сообщений: 860
Отправить сообщение для Disney с помощью Skype™


Цитата:
Сообщение от Lars Посмотреть сообщение
Почему при повторном запуске функции "разорвать в точке" путем нажатия клавиши "пробел" происходит удаление части линии, но если запускать повторно через нажатие соответствующей кнопки на экране, то все нормально.
Тут все тебе к макросам посылают, а причину так и не объяснили.
А причина в следующем есть команда _break, на кнопке [IMG]http://i059.***********/1002/fe/37b452c79e2d.jpg[/IMG] записана эта команда, точнее макрос ^C^C_break
, где ^C^C - заставляет AutoCAD прервать\отменить любую команду которая возможно выполняться в настоящее время, _break - вызывает команду РАЗОРВАТЬ, и всё, дальше ты уже общаешься с AutoCADом сам, можешь указать объект разрыва и вторую точку разрыва, он разорвет тебе от точки указания объекта до второй точки разрыва, а можешь после указания объекта на запрос
"Вторая точка разрыва или [Первая точка]:"
ответить п(т.е. не обязательно писать всё целиком, достаточно заглавной буквы) и указать первую точку разрыва, затем на запрос
"Вторая точка разрыва:"
либо опять кликнуть мышкой в первую точку либо ввести в командной строке @, что означает предыдущая(последняя) точка. В итоги мы имеем разрыв линии в одной точки. Так вот, чтоб не париться с вводом всего этого в командную строку, придумали макрос ^C^C_break \_f \@, который прописали на кнопку [IMG]http://s42.***********/i098/1002/1f/e817d4ae982e.jpg[/IMG]
, где ^C^C_break мы уже знаем, \ - ввод пользователя, т.е. возможность указать объект, после чего _f- AutoCAD сам выбирает опцию First point (Первая точка), потом опять \ - ввод пользователя, чтоб ты указал первую точку, затем @ - AutoCAD сам подставляет во вторую точку значение первой.
А теперь самое главное, нажав пробел или Enter, мы вызываем\повторяем последнию команду, а не макрос
__________________
Почему все вдруг становятся умными, когда уже не надо?
Disney вне форума  
 
Автор темы   Непрочитано 10.02.2010, 16:26
#7
Lars


 
Регистрация: 05.02.2010
Сообщений: 7


^C^C^P(defun c:break2 () (vl-cmdf "_break" pause "_f" pause "@")(princ));break2;
этот макрос работает идеально.
я так понял, что пробел просто повторяет команду break, а не весь макрос, но тогда почему у меня нормально работает выше написанное? по пробелу должно работать break2. Или это подпрограмма?
и что такое vl-cmdf?
почему написано в кавычках а не _break \_f \@ ?
Lars вне форума  
 
Непрочитано 10.02.2010, 18:08
#8
zenon

Остекляем!!! Алюминим!!!
 
Регистрация: 21.02.2005
Москва
Сообщений: 3,826
<phrase 1=


Цитата:
Сообщение от Lars Посмотреть сообщение
^C^C^P(defun c:break2 () (vl-cmdf "_break" pause "_f" pause "@")(princ));break2;
в данном макросе образуется новая функция break2, которую ты собственно и повторяешь по пробелу, а не стандартная команда break
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Повторный запуск функции "разорвать в точке"- удаление части линии

Размещение рекламы


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Создание нового типа линий Apelsinov AutoCAD 915 08.07.2022 12:36
результат работ команд purge и audit lex0101 Программирование 23 13.02.2012 08:34