|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
|
||||
Регистрация: 02.10.2008
Сообщений: 198
|
Господа, хочу с вами обсудить такой макрос:
свойства;слой;основные;^C^C_-layer;_set;основные;^C^C Что я от него хочу: например, я забыл перейти на слой "основные" после того как чертил оси, и начертил стены в слое с осями. Хочу выделить этот объект (стену), запустить макрос и что бы он поменял слой объекта на "основные" и сделал текущим слой "основные". А при отсутствии выбранного объекта хочу что бы просто делал текущим слой "основные". Отдельно ^C^C_-layer;_set;основные;^C^C работает - устанавливает текущий слой "основные". отдельно свойства;слой;основные ;^C^C работает - меняет слой выбранного объекта на "основные". А вместе фигня получается, только при выбранном объекте меняет его слой, а при отсутствии выбора стопорится...подскажите пожалуйста Последний раз редактировалось rain_day, 29.08.2010 в 13:19. |
|||
![]() |
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Я не по делу выступлю, а как воспитатель
![]() rain_day судя по тексту работает в строительстве, а названия слоев у него никак не соответствует названиям об-ектов. Скажи, знаешь-ли ты о существовании панели инструментов, где команды начинаются с Lay...? (не знаю. как в русском) Сможешь-ли выделить, скажем, все стены нажатием кнопки, чтобы одним махом скопировать их на другой этаж? |
|||
![]() |
|
||||
Регистрация: 27.05.2009
Сообщений: 153
|
Слои-2, судя по всему.
Да там половина команд, по большому счету и не нужны. Например, смена слоя на текущий или те, команды, которые полностью дублируются в диспетчере слоев (заморозить слой, отключить и т.д.). Это все можно сделать через панель Слои. |
|||
![]() |
|
||||
Регистрация: 25.12.2005
Москва
Сообщений: 13,627
|
rain_day, попробуй вот такой макрос:
Код:
Раз присутствет слой "Оси", то логично иметь и слой "Стены". Для успешного выполнения этого макроса слой "Стены" должен существовать. Макрос выполняется только при предварительном выборе объектов. Без предварительного выбора: Код:
Последний раз редактировалось Profan, 29.08.2010 в 17:01. |
|||
![]() |
|
||||
Регистрация: 02.10.2008
Сообщений: 198
|
Цитата:
Одним нажатием? Пожалуй, нет. Я бы сделал так: слойобх (laywalk), выбрал бы нужный слой, выделил всё и редактировал. Или так: выбрал бы линию стены, далее слойотд, выделение всего и редакт. Profan, Не получается так, после выбрать зачем пауза? Стопорится же макро для выбора объекта. А я хочу что бы при отсутствии выбора просто сменился текущий слой. Если паузу убрать, тоже не то выходит. В общем, есть ли оператор для макро, который бы продолжал выполнение макро несмотря на *неверный выбор*? Иными словами, макро ^C^Cсвойства;слой;основные;;-слой;уст;основные;; меня бы полностью устроил, если бы при отсутствии выбранного объекта он не останавливался после "слой;" и не просил бы всё-таки выбрать объект, а продолжил бы выполнение следующих команд Последний раз редактировалось rain_day, 31.08.2010 в 11:51. |
|||
![]() |
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Цитата:
Представляю, команда Laywalk по слою Основные. А на экране все-все, кроме пунктирных. Вентиляция с унитазами вместе, ты многостаночник? Тот кто делает вентиляцию, наверное, имеет архитектурную подоснову в виде блока либо хрефа. У нас бывает - 1000 слоев, из них сотня моя. Обычно, если слои выбраны грамотно, и в них разложено грамотно, это помогает. А Laywalk как раз и предназначена чтобы выловить ошибку, если что-то не туда попало, и исправить ее. |
|||
![]() |
|
||||
Регистрация: 02.10.2008
Сообщений: 198
|
Начал изучать сам, будь добрым - посоветуй хорошую книгу. А то как-то все обрывками по инету собираю. Книжки пробовал читать, но они написаны явно не для начинающего, просто не понятны какие-то принципиальные моменты. Еще интересуюсь diesel (проде так называются макросы. Те, что в скобках пишутся.
|
|||
![]() |
|
||||
Регистрация: 29.10.2004
СПб
Сообщений: 16,379
|
|
|||
![]() |
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
Пока книгу не скачал, начни с этого
http://dwg.ru/pub/ там внизу две строки. Того-же автора. А книжку удобнее купить |
|||
![]() |
|
||||
Регистрация: 02.10.2008
Сообщений: 198
|
Цитата:
^C^C_Copy;;@;_Ddedit;_Last я пишу ^C^C_copy;\;\\;^C^C_ddedit;_last;; что бы работало. От чего это происходит? Из-за различий в версиях автокада или различий в локализации версии(рус, англ)? |
|||
![]() |
|
||||
Во первых, чтобы не потерять набор объектов до вызова команды, можно пользоваться кнопкой с выражением Diesel из #25
В другом варианте набор сохраняется после ^S сохранение чертежа или после вызова (пускай и прерванного по ESC) любой команды, если же в процессе выбора было ESC набор вернуть невозможно, (по крайней мере у меня не вышло). За сим если вы собираетесь сделать мега выбор объектов, луше пользоваться выражением Diesel из #25 , но встает вопрос об обнулении предыдущего (текущего, в неточном переводе последних версий) выбора. Во вторых. Вопрос к гуру - обнулении предыдущего (текущего, в неточном переводе последних версий) выбора - это возможно? |
||||
![]() |
|
||||
Программист-энтузиаст Регистрация: 17.07.2009
Воронеж
Сообщений: 575
|
Прочитал тему по диагонали, может всем интересующимся подойдет программное решение LISP. Повтор предыдущего выбора элементов код из поста #11
__________________
cadtools |
|||
![]() |
|
||||
Огромное человеческое спасибо - работает. Разрешите испросить дозволения включить сей чудесный код в частичный CUIx, для последующего обнародования на сайте DWG.ru
Как то никто не торопится выкладывать CUI, а сколько уже чудесных вещей зарыто на богом забытых страничках, где последний прохожий бывал 20... лохматом году. ![]() |
||||
![]() |
|
||||
Программист-энтузиаст Регистрация: 17.07.2009
Воронеж
Сообщений: 575
|
Конечно можно.
__________________
cadtools |
|||
![]() |
|
||||
Engineer Регистрация: 05.09.2003
New-York
Сообщений: 10,288
|
|
|||
![]() |
|
||||
Из acad.acr 2006
Цитата:
|
||||
![]() |
|
||||
Регистрация: 22.11.2007
Сообщений: 10
|
Ребята, у меня получилось использовать макросы в связке с другими командами.
Команда для предыдущего выбора Код:
Просто нажатие на предыдущий выбор действительно выделяет объекты, но не позволяет применить к ним команды - в строке все еще активна команда выбора. Как вариант - запустить команду переместить или создание блока (что требуется сделать с выбранными объектами), а затем вместо ручного выбора объектов нажать на созданную кнопку предыдущий выбор - все заработает. ![]() Нашел еще интересную команду выбор объектов многоугольной рамкой $M=$(if,$(getvar,cmdactive),,_select; )_wp; |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Как повторить выбор? | Red Nova | AutoCAD | 15 | 10.07.2008 09:48 |
Выбор расчетной программы | Elena cH | Расчетные программы | 135 | 25.02.2008 01:56 |
Как сделать правильный чертеж | pk77 | Разное | 64 | 03.04.2007 16:36 |
Выбор объектов в VBA | Бродяга | Программирование | 19 | 12.03.2007 09:33 |
Выбор примитивов в функции (command) | mmax | Программирование | 12 | 19.05.2006 20:02 |