|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Вариант Krieger (№73) работает превосходно. Хотел было подитожить, но остались несколько вопросов.
1. В выписке из HELP, приведенной Profan-ом читаем последние строки пункта 5: Цитата:
2. Если в Options, System включить Beep on Error... то при входе и выходе из режима временного действия прижатых клавишей автокад бипает, если макрос на лиспе, и молчит, если лиспа в нем нет. 3 Осталась нерешенной моя загадка (№72 п4). А к ней добавка - Вариант AY на DIESEL (№71). Там есть нечто, очень важное. (сам макрос я проверить на работе не успел, но углядел нечто неожиданное) Что это? |
|||
![]() |
|
||||
Продажа навыков и умений Регистрация: 20.11.2004
Сибирь
Сообщений: 2,501
|
Не в продолжение а в начало темы, так как я клавишник
defun c:d1 () (dimchange "ARKO_TICK") (command "dimlinear" pause pause pause) (command "chprop" (entlast) "" "layer" "000" "" ) (princ)) (defun c:d5 () (dimchange "ARKO_TICK-50") (command "dimlinear" pause pause pause) (command "chprop" (entlast) "" "layer" "000" "" ) (princ)) (defun c:d2 () (dimchange "ARKO_TICK-20") (command "dimlinear" pause pause pause) (command "chprop" (entlast) "" "layer" "000" "" ) (princ)) (defun c:dd () (dimchange "ARKO_TICK-10") (command "dimlinear" pause pause pause) (command "chprop" (entlast) "" "layer" "000" "" ) (princ)) (defun c:d55 () (dimchange "ARKO_TICK-5") (command "dimlinear" pause pause pause) (command "chprop" (entlast) "" "layer" "000" "" ) (princ)) В автозагрузке у меня находится файл, в котором уже есть все блоки и стили. Разные размерные стили у меня разным цветом (при помощи этого удается избежать частой ошибки неправильного размера в узлах разного масштаба). Может кому подойдет... |
|||
![]() |
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Цитата:
Цитата:
Ай-Яй-Яй. Никаких предположений |
|||
![]() |
|
||||
инженер (КМ) Регистрация: 30.10.2004
Красноярск
Сообщений: 3,837
|
Цитата:
Нажатие: Код:
Код:
|
|||
![]() |
|
||||
Регистрация: 25.12.2005
Москва
Сообщений: 13,627
|
Я не пойму, зачем вам прозрачный режим? Этот режим был бы хорош без клавиш временной замены, а в данном-то случае - ведь не будете же вы действительно первую выносную линию делать на одном слое, а вторую на другом слое? Или это чисто теоретический интерес? Vova сетует, что предложений мало, а я вот увидел, что этот способ для меня мало пригоден и мало интересен, и перестал дальше разбираться. По-моему, не для этого эта возможность создавалась, а только для тех случаев, когда не нарушается логика выполнения команды.
|
|||
![]() |
|
|||||
инженер (КМ) Регистрация: 30.10.2004
Красноярск
Сообщений: 3,837
|
Цитата:
Цитата:
Да это все как посмотреть, если размеров предстоит ставить много то лучше конечно переключить слой на необходимый. А если один-два, то почему бы и нет? Еще более интересна идея X-DeViL (пост 87), чертим стены в текущем слоем "стены", надо поставить размеры - зажимаем клавиши и ставим размеры в слое "стены_размеры" и т.д. с любым объектом. Цитата:
Цитата:
|
||||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Сам лисп. Код:
Нажатие Код:
Код:
(dwgru-layer-set '(("suff" . "_Размеры")("color" . 5))) - добавить суффикс _Размеры к текущему слою (если его нет), установить цвет 5 и сделать слой текущим (dwgru-layer-set '(("name" . "Test")("color" . 1)("lw" . 80))) Создать если нет слой Test цветом 1 и весом 0.8 Анализируется имя текущего слоя и если у него такой же суффикс, то слой не создается, а остается текущий. Таким образом не будут получаться слои Стена_Размеры, Стена_Размеры_Размеры и т.д. PS. Почему-то изменяется имя ф-ции (vla-put-0000) то код брать отсюда [ATTACH]1141736834.rar[/ATTACH] Последний раз редактировалось VVA, 19.09.2015 в 20:34. |
|||
![]() |
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,431
|
Можно в принципе и еще немного добавить - сделать так, чтобы этот лисп прописался в автозагрузку. Если такое надо, то примерный код я показал (с объяснениями) вот здесь. Мне, если честно, просто лень повторять...
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Регистрация: 25.12.2005
Москва
Сообщений: 13,627
|
Для Krieger
Я вот вижу кое-какой смысл в клавишах замены при выполнении одной команды. Но ведь у вас получается так: выполняется одна команда, потом другая (рисую стены, потом ставлю размеры). Вот было интереснее: рисую стены, зажимаю клавиши, слой заменился, команда заменилась, ставлю размеры, отпускаю клавиши, слой вернулся, команда вернулась, продолжаю рисовать стены. Это, конечно чепуха, но на AutoLisp'e можно провернуть. Да все написанные тут вещи можно реализовать на AutoLisp'е. Ну, будет дополнительная кнопка, зато зажимать ничего не надо. А если во время зажима ошибся и надо Esc нажать? А уж с помощью палитры инструментов и кнопок не надо, да и Esc классно срабатывает, команда отменяется, но слой-таки возвращается на исходный, и никакого обработчика ошибок и переназначения переменных не надо, как в лиспе. А ведь надо еще придумать и удобное сочетание клавиш. А у многих сочетания клавиш забиты по самое некуда и даже Shift+1, которое я предложил для пробы, тоже бывает занято. |
|||
![]() |
|
||||
Регистрация: 25.12.2005
Москва
Сообщений: 13,627
|
Вот политику Vova я понимаю. Он последовательно и целеустремленно пропагандирует изучение новых возможностей AutoCAD'а, находит тонкости, заставляет других шевелить мозгами. Это очень хорошее устремление. Он задает вопросы и ждет, как другие пользователи ответят на них. Я так думаю, что с временным переключением слоя все более или менее понятно, только лучше, все-таки, создать нужный слой заранее. Но вот проблема: мне надо бы не только проставить размеры стен, т.е. иметь слой "Стены_размеры", но и проставить цепочку размеров между перегородками, т.е. по логике вещей иметь или создать слой "Перегородки_размеры". Создавать другое сочетание клавиш для временной замены? И т.п. Вряд-ли, ерунда получается. Лучше я буду аккуратно работать со слоями, потому что мне еще нужен слой "Осевые_размеры", но он у меня автоматически создается при установке рабочих параметров рисунка.
Так вот, для того, чтобы в полной мене оценить возможность использования клавиш временной замены мне и хочется тоже задать вопрос: а в каких еще случаях, кроме замены слоя, можно применить клавиши временной замены? Опять же, по логике вещей можно временно заменить тип линии. Но если он задан по слою, то и не надо. Так же с другими изменяемыми свойствами. Так что же, вся эта матата годится только для одной операции - изменения текущего слоя? Мелковато, IMHO, чтобы извращаться. |
|||
![]() |
|
||||
Регистрация: 25.12.2005
Москва
Сообщений: 13,627
|
А хрень эта проявляется в том, что сочетание клавиш "Shift+правая кнопка мыши" вызывает контекстное меню временного переопределения объектных привязок. А мне надо начать полилинию с дуги или задать ширину полилинии после указания начальной точки. И что, бросать мышь и правой рукой вводить с клавиатуры опцию, а потом еще, допустим, надо ввести ширину, равную 0.5. Тут забудешь, что надо давить на клавиши еще и левой рукой. Придираюсь, наверное.
|
|||
![]() |
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Отвечая на №95-Profan
Именно для изучения неизвестных возможностей АС я и поднял эту тему. Несколько выдвинувшись в изучении некоторых разделов и в силу дурацкого склада характера хочу подтянуть до этого уровня других. Для этого-же создаются темы-загадки. Иногда бьют, и больно. Старожилы помнят, как в теме про наложение V-ports один известный в мире автокада спец походя ударил, не пожелав извиниться. Призываю всех к исследованию автокада. Это безумно интересно. Именно на исследовани повышается уровень владения Кадом. |
|||
![]() |
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Система временных клавиш работает не всегда четко. По протоколу F2 не очень понятно, что происходит (в отличие от работы с кнопочными макросами). Иногда сбоит при отпускании клавиш. В ком строке вдруг появляется буква той клавиши, которая в паре с Shift. Много непоняток. Видимо, это начало эксперимента Autodesk-a. Вроде как Tool Palettes. Младенец в 2004 и муж в 2006. Profan поначалу сомневался в нужности такой примочки. Вспоминаю старый спор-когда лучше образмеривать, когда все нарисовано, или по ходу рисования. Большинство (не подавляющее) ставит размеры по ходу. То есть работают (условно) по-очереди в 2-х слоях-то в рисуночном, то в размерном. И не только это касается размеров. Электрики могут рисовать параллельно две системы-нормальное питание и резервное. Технологи могут рисовать существующее оборудование и новое, и так далее. То есть, если текущим установлен слой, в котором объектов больше, то, прижав пару клавиш и получив временно текущим другой слой, удобно в нем нарисовать что-то мелкое. Я уже неск. дней рисую 3 параллельные системы при помощи временных клавиш
Таком образом, Autodesk в 2005 сделал подарок кнопочникам, позволив из Tool Palettes забирать команды рисования с нужными параметрами (например, слой). А в 2006 похожий, хотя и не совершенный подарок получили клавишники. Это Temporary Override keys. Паритет сохранился. . Уверен, это направление будет развиваться. Наш мозговой штурм удался. X-DeViL подал идею. Profan дал первый работающий код. Krieger убрал ^C^C, которое мешало. AY предложил кавычку, заменяющую ^C^C а Vova нашел, что клавиши назначаются только при низшем регистре. Все это маленькие открытия, не указанные в HELP. Будут ли еще предложения по мозговой атаке:?: ЗЫ. AY, как ты раскопал про кавычку? |
|||
![]() |