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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Мои макрокоманды

Мои макрокоманды

Ответ
Поиск в этой теме
Непрочитано 19.05.2008, 15:20 1 |
Мои макрокоманды
zenon
 
Остекляем!!! Алюминим!!!
 
Москва
Регистрация: 21.02.2005
Сообщений: 3,825

Предлагаю в данной теме выкладывать используемые макрокоманды.
Выкладывать прошу с описанием, что данная макрокоманда выполняет и как. Если можно, то и рисунки к кнопкам соотвественно.

Выкладываю 4 своих макрокоманды.

Улучшенная команда _Break, разрыв в одной точке с повтором по правой клавише мышки.
Цитата:
^C^C^P(defun c:break2 () (vl-cmdf "_break" pause "f" pause "@")(princ));break2;
ps. Макрокоманда не моя. Рисунок со старой кнопки.


Объект Xline строится горизонтально
Цитата:
^C^C_xline;_h;
Объект Xline строится вертикально
Цитата:
^C^C_xline;_v;

Объект Xline строится по объекту (не работает по примитивам блока и arx объектов сторонних навесок на автокад).
Цитата:
*^C^C_xline;_offset;_Through;_nea;\_none;@;;
Макрокоманда зациклена, выход по Esc.
ps. Макрокоманда не моя.


Объект Xline строится по объекту, с поворотом в указанной точке на 90 градусов (не работает по примитивам блока и arx объектов сторонних навесок на автокад)
Цитата:
^C^C_xline;_offset;_Through;_nea;\_none;@;^C^C_rotate;_last;;\90;
ps. Макрокоманда доработана из предыдущей.

Соотвественно и кнопочки
Button.rar

__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
Просмотров: 448829
 
Непрочитано 07.04.2009, 14:18
#201
Hans667

сети
 
Регистрация: 12.04.2007
SPb
Сообщений: 536
Отправить сообщение для Hans667 с помощью AIM Отправить сообщение для Hans667 с помощью Skype™


т.е. вместо browser можно записать firefox?
__________________
Errare humanum est, insipientis perseverare
Hans667 вне форума  
 
Непрочитано 07.04.2009, 14:21
#202
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


Hans667, Установить firefox браузером по умолчанию и оставить browser
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 07.04.2009, 14:23
#203
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


Нет, нельзя. "_browser" - это команда AutoCAD'а. Она определяет, какой браузер является текущим и запускает его. Значит, предварительно надо в Windows назначить Firefox браузером по умолчанию.
Profan вне форума  
 
Непрочитано 07.04.2009, 14:32
#204
Hans667

сети
 
Регистрация: 12.04.2007
SPb
Сообщений: 536
Отправить сообщение для Hans667 с помощью AIM Отправить сообщение для Hans667 с помощью Skype™


Почему то подгрузил сейчас свой CUI файл (удаляю его ибо не разрешается), чтобы кнопку написать,а он мне пишет что тот -райт протекшн. И рид онли еще..чего такое произошло то?Все работает,а изменить нельзя
__________________
Errare humanum est, insipientis perseverare
Hans667 вне форума  
 
Непрочитано 07.04.2009, 14:41
#205
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


А что, Firefox по другому (стандартно) нельзя что ли запустить?
Profan вне форума  
 
Непрочитано 07.04.2009, 14:44
#206
Hans667

сети
 
Регистрация: 12.04.2007
SPb
Сообщений: 536
Отправить сообщение для Hans667 с помощью AIM Отправить сообщение для Hans667 с помощью Skype™


да это я на самом деле чтобы сразить наповал начальницу- мне не двг нужен был а русско-финский словарь.Я просто до этого спрашивал как сделать,все молчали,а как до двг дело дошло,так все сразу знают
З.Ы. А почему CUI то не редактируемым стал?
__________________
Errare humanum est, insipientis perseverare

Последний раз редактировалось Hans667, 07.04.2009 в 14:56.
Hans667 вне форума  
 
Автор темы   Непрочитано 07.04.2009, 15:39
#207
zenon

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


Макрос
Цитата:
^C^C-scalelistedit;_R;_Y;_E;
Чистит список масштабов.
спасибо Александру Ривилису
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon на форуме  
 
Непрочитано 07.04.2009, 15:46
#208
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,990
<phrase 1= Отправить сообщение для VVA с помощью Skype™


zenon, Почитай еще здесь же, начиная с поста #70
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 07.04.2009, 15:53
#209
zenon

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


VVA, у меня просто 1 макросом, без лиспа
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon на форуме  
 
Непрочитано 07.04.2009, 19:03
#210
victor.m4


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


Дело в том, что прежде чем задавать вопросы на уважаемом форуме, я поискал во встроенном Руководстве пользователя к AutoCADу 2006
(офиц. русская версия - справка на русском), по методике построения макросов там страниц 20-30. Но то, что мне нужно не нашёл. Затем
воспользовался поиском по форуму и нашёл много ссылок на упомянутую книгу. Скачал её. Но в ней обнаружил лишь то, что есть в Руководстве,
только размазано на 300 страниц. А того, что мне нужно в ней тоже нет...(Меня интересовало: как сделать отдельную кнопку "перспектива", как
изменить по умолчанию путём непосредственного ввода значение системной переменной LENSLENGTH, как в команды "быстрый выбор" и
"фильтр" добавить критерий "по материалу" и д.р.)...

AlphaGeo и Ser-grey, спасибо за участие, но к сожалению эти макросы не сработали в AutoCAD 2006 офиц. русская версия...
victor.m4 вне форума  
 
Непрочитано 07.04.2009, 19:50
#211
Profan


 
Регистрация: 25.12.2005
Москва
Сообщений: 13,627


victor.m4, а ты AutoCAD-то знаешь? Для создания собственных макросов необходимо знать команды AutoCAD'а и их опции. Надо уметь создавать сами кнопки. И надо иметь терпение при проверке работы макроса.
Знаешь ли ты, как включить перспективу без употребления команды "_3dorbit" ("3-Орбита")?
Знаешь ли ты, что "материал" не является в AutoCAD 2006 свойством объекта?
Знаешь ли ты, что для того, чтобы изменить значение системной переменной, надо сначала набрать на клавиатуре ее название и нажать Enter?

Вот пример одной из моих программ для включения перспективы:
Код:
[Выделить все]
 
;************** PERROST.LSP *********************************************
;               Перспектива с высоты роста 
;               Громов В.В. Апрель 1999.
;
(defun C:PERROST ( / echo tsel hsel tkam hkam thc thk rast)
   (setq echo (getvar "CMDECHO"))
   (setvar "CMDECHO" 0)
   (princ "\n ПЕРСПЕКТИВА.")
   (princ "\n Параметр-РАССТОЯНИЕ от камеры до цели.")
   (setq tcel (getpoint "\n Укажите в плане точку ЦЕЛИ: "))
   (setq hcel 1000)
   (setq tkam (getpoint tcel "\n Укажите в плане точку КАМЕРЫ: "))
   (setq hkam 1800)
   (setq thc (list (nth 0 tcel) (nth 1 tcel) hcel))
   (setq thk (list (nth 0 tkam) (nth 1 tkam) hkam))
   (setq rast (distance thk thc))
   (command "_DVIEW" "_C" (list (- (car tcel) 24000) (- (cadr tcel) 24000))
                          (list (+ (car tcel) 24000) (+ (cadr tcel) 24000)) ""
                          "_PO" thc thk "_D" (* 2 rast) "_h" "_X")
   (setvar "CMDECHO" echo)
   (princ)
)
Если код будет сохранен в файле perrost.lsp, то макрос для кнопки может иметь вид:
Код:
[Выделить все]
 
^C^C(if (not C:PERROST) (load "perrost")) PERROST

Последний раз редактировалось Profan, 07.04.2009 в 20:04.
Profan вне форума  
 
Непрочитано 07.04.2009, 20:45
#212
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Цитата:
Сообщение от victor.m4 Посмотреть сообщение
я поискал во встроенном Руководстве пользователя к AutoCADу 2006
(офиц. русская версия - справка на русском), по методике построения макросов там страниц 20-30. Но то, что мне нужно не нашёл. Затем
воспользовался поиском по форуму и нашёл много ссылок на упомянутую книгу. Скачал её. Но в ней обнаружил лишь то, что есть в Руководстве,
только размазано на 300 страниц.
victor.m4, Ты мне льстишь! Когда писалась книга, был только автокад 2002, и в том руководстве я нашел всего несколько страниц про menu macro. Все остальное я выстрадал сам, имея под руками немного Омуры (несколько страничек) и Maximizing Autocad release 12, 1992, из которой почти ничего не взял. Таким образом, по твоим сведениям, автодеск взял мою книгу и сжал мои 300 стр до своих 20 для справки. Даже не знаю, гордиться-ли эти или подать на них в суд и стребовать денег. (если получится-поделюсь с тобой)
Для сведения: чтобы создать команду Copy-rotate я потратил 2 месяца, тупо разглядывая в метро листок с вариантами макроса, который не хотел работать, пока не понял, что надо сделать копию саму на себя. После этого принял решение написать брошюру. И она вылилась в книгу. Еще для сведения. На форуме, который тогда реставрировался, я предложил создать раздел Макросы, полагая, что их все знают и применяют, кроме меня. Раздел вскоре закрыли, так как не было ни сообщений, ни ответов на мои вопросы.

Последний раз редактировалось Vova, 07.04.2009 в 20:56.
Vova вне форума  
 
Непрочитано 08.04.2009, 16:56
#213
victor.m4


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


Profan
...Вообще, я работаю в 3D-Constructore 3.5. Это AutoCAD 2006 плюс параметрическое ядро от "Элекран-софт". Приложение, которое позволяет более быстро, чем в чистом ACADе проектировать мебель, создавать чертежи и спецификацию более автоматизированно и интеллектуально. Параметрика позволяет задавать условия изменения размеров как отдельных деталей, так и условия взаимодействия деталей в сборках. Достигается это путём ввода среды переменных в проектирование, а также путём использования математических и тригонометрических функций и многих других фич...Классная вещь, обожаю его...3D-Constructor существует как отдельный профиль в AutoCADе, называемый КМ. Путём экспорта из файла acad.cui в KM.cui я добавил в него многие ACADовские кнопки и панели... Но версия 3D-Constructor 3.5 работает только максимум с AutoCAD 2006... А в нём, вы конечно же знаете, рендеринг слабоват - невозможно добиться мягких теней... А хотелось бы получить более качественную визуализацию в 3DS MAX... Для последующего импорта dwg файла в 3DS MAX необходимо предварительно присвоить в 3D-Constructor-е трёхмерным объектам с различными материалами различный цвет-номер. Но в 3D-Constructor-е практически все основные трёхмерные объекты лежат в одном слое (слой KM_WORK и изменить это умолчание программы нельзя!). Вот для быстрого автоматизированного присвоения цвета и нужен был ФИЛЬТР по Материалу (которого нет в AutoCAD 2006), а вручную присваивать цвет трёхмерным объектам (которых в проекте более 200) это гемор...Так же для визуализации нужна отдельная кнопка "Перспектива" и возможность непосредственным вводом задавать фокусное расстояние. Просто когда уже имеешь качественную конструкторскую документацию хочется ещё больше -- качественную трёхмерную визуализацию... Человеку всегда хочется больше, чем есть... Про системные переменные вы верно сказали, но они ещё бывают с признаком "Только чтение", т.е. непосредственным вводом значения в командной строке изменить её нельзя. Так вот LENSLENGTH именно из таких...Просто почитав о макросах и решил, что можно немного модернизировать AutoCAD 2006. Но видимо здесь нужны более глубокие знания программирования...А лекций мне читать не надо, я просил ответа на свой вопрос, а не про изобретение "велосипеда" ...

P.S. Видимо придётся снять свои вопросы, ответа на них я так понял нет... Сейчас поставил AutoCAD 2009 офиц. русская версия. Да-а-а... Оказывается Autodesk уже давно сделал то, что мне надо... И отдельная кнопка "Перспектива", и задание фокусного расстояния, и ФИЛЬТР по Материалу и рендер с глобальным освещением уже приближается к 3DS MAX... Фантастика... Видимо кто-то уже попросил производителя о моих "глупостях" и он внедрил это стандартно... Спасибо Autodesk-у... Что ж теперь буду не в 3DS MAXе импортировать, а просто открывать файл dwg 2006 в AutoCAD 2009, гораздо проще...

для Vova
Тогда вообще не вижу смысла давать ссылки на эту книгу - на дворе уже 2009 год...
Миниатюры
Нажмите на изображение для увеличения
Название: image1.jpg
Просмотров: 287
Размер:	129.5 Кб
ID:	18528  
victor.m4 вне форума  
 
Автор темы   Непрочитано 08.04.2009, 17:17
#214
zenon

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


victor.m4, поставь еще 2010, еще больше удивишься
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon на форуме  
 
Непрочитано 08.04.2009, 22:37
#215
Кулик Алексей aka kpblc
Moderator

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


Цитата:
Сообщение от victor.m4 Посмотреть сообщение
<...>Тогда вообще не вижу смысла давать ссылки на эту книгу - на дворе уже 2009 год...
А то, что она еще актуальна, уже не важно?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 09.04.2009, 01:00
#216
Vova

Engineer
 
Регистрация: 05.09.2003
New-York
Сообщений: 10,288


Цитата:
Сообщение от victor.m4 Посмотреть сообщение
А лекций мне читать не надо, .... для Vova
Тогда вообще не вижу смысла давать ссылки на эту книгу - на дворе уже 2009 год...
Не надо прежде всего походя охаивать чужую работу, не разобравшись в ней. Ты признался, что нашел много ссылок на книгу. Будь так любезен, посчитай сколько раз ссылка шла от имени Vova.
Насчет того, насколько быстро устаревает автокадовская литература. Здесь есть специальная тема про книгу (если интересуешься, найду), там показано, сколько глав устарело. Всего одна, там не показана новая CUI. Зато этот пробел восполнен статьей на главной стр. нашего форума. Вот и прикинь, надо-ли давать на книгу ссылку
Vova вне форума  
 
Непрочитано 12.04.2009, 17:47
#217
Gecuba


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


Здравствуйте!
Цитата:
Сообщение от zenon Посмотреть сообщение
Улучшенная команда _Break, разрыв в одной точке с повтором по правой клавише мышки.
Прошу не пинать, если вопрос совсем дилетантский (потому как дилетантка я в программировании ;-).
Улучшенный макрос для команды "break" отлично работает в 2010 (конечно англ.) - т.е. не вырывает кусочки при повторе команды с помощью правой кнопки мышки. А вот в 2009 русс. - вырывает при первом же обращении к команде.
В чем может быть проблема? (Догадка - Может макрос написан для англ.версии када?)
Уточнение - 2009 и 2010 стоят на разных машинках.
Спасибо!

Последний раз редактировалось Gecuba, 12.04.2009 в 17:54.
Gecuba вне форума  
 
Непрочитано 12.04.2009, 18:31
#218
AlphaGeo


 
Сообщений: n/a


Цитата:
Сообщение от Gecuba Посмотреть сообщение
Догадка - Может макрос написан для англ.версии када?
По-моему, догадка правильная!
У меня на ACAD 2006 Рус команда работает в таком виде:
Код:
[Выделить все]
^C^C^P(defun c:break2 () (vl-cmdf "_break" pause "_f" pause "@")(princ));break2;
 
 
Непрочитано 12.04.2009, 18:42
#219
Gecuba


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


AlphaGeo, спасибо большое за помощь! Теперь работает!
Да, трудно неучем быть...

ПС А зацикливал кто-нибудь эту команду?..
Вставка "*" перед макросом не помогла.

Последний раз редактировалось Gecuba, 12.04.2009 в 19:16. Причина: Пришла в голову еще одна дилетантская идея...
Gecuba вне форума  
 
Непрочитано 12.04.2009, 21:03
#220
AlphaGeo


 
Сообщений: n/a


Цитата:
Сообщение от Gecuba Посмотреть сообщение
А зацикливал кто-нибудь эту команду?..
Вставка "*" перед макросом не помогла.
Это не простой макрос, без использования DIESEL (как я понимаю), а макрос-команда со своим именем. Его звездочкой не зациклишь, но зато можно вызвать повторно, как любую другую команду, нажав пробел или Enter (или правую клавишу мыши, если она настроена соотвествующим образом).
Чтобы использовать зацикленный макрос, его следует записывать в следующем виде:
Код:
[Выделить все]
*^C^C_break;\_f;\@;
 
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Мои макрокоманды

Размещение рекламы
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Мои динамические блоки Shoorup Динамические блоки 2713 21.04.2011 23:34
Повторение выполнения макрокоманды по циклу. КАК? Kostinok AutoCAD 12 05.12.2007 15:40
Мои проекты Vova Разное 10 08.10.2007 23:18
Мои палитры инструментов на соседний компьютер Pave1 AutoCAD 4 27.06.2006 09:45