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

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

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

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

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

Выкладываю 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:
Просмотров: 448521
 
Автор темы   Непрочитано 10.06.2008, 13:13
#21
zenon

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


Кулик Алексей aka kpblc, я в курсе, просто хочу создать свою панель менюшек, один раз загрузил и все.
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon вне форума  
 
Непрочитано 10.06.2008, 13:24
1 | #22
VVA

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


zenon,
У меня грузится лиспом с проверкой версии Автокада.
Но можно так
Код:
[Выделить все]
^C^C(if(not(member "explodeproxy200X.arx" (arx)))(arxload "explodeproxy200X.arx"));EXPLODEALLPROXY;REMOVEALLPROXY;_AUDIT;_Y;_LAYERP;_LAYERP;
Вместо X вписать
0 - 2002 Автокад
6 - 2004,2005,2006 Автокад
7 - 2007, 2008, 2009 Автокад
Вариант для 2004,2005 и 2006 Автокада
Код:
[Выделить все]
^C^C(if(not(member "explodeproxy2006.arx" (arx)))(arxload "explodeproxy2006.arx"));EXPLODEALLPROXY;REMOVEALLPROXY;_AUDIT;_Y;_LAYERP;_LAYERP;
Сами arx'и по ссылке в посте #18
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 10.06.2008, 13:37
#23
zenon

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


VVA,
__________________
Мы можем делать быстро, качественно и недорого, выбирайте любые 2 условия.:search:
zenon вне форума  
 
Непрочитано 10.06.2008, 16:51
#24
Vova

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


Цитата:
Сообщение от Makswell Посмотреть сообщение
ИМХО сейчас макросов меньше, потому что сейчас до них дольше добраться в CUI. Раньше нажал ПКМ на кнопке, и сразу можно править макрос. Проще было экспериментировать. Поменял что-то - посмотрел результат, опять поменял что-то и т.д...
.
Когда я впервые пощупал 2006. то сказал об этом-же на форуме почти такими-же словами. Но потом пощупал Tool Palettes и понял, что здесь доступ к редактированию макроса даже проще, чем в старом Customize. Жаль только, что длинные макросы здесь не вмещаются
Vova вне форума  
 
Непрочитано 11.06.2008, 01:51
#25
Димас

джедай
 
Регистрация: 31.01.2005
Магадан
Сообщений: 460
<phrase 1=


небольшой офтоп
Цитата:
Сообщение от VVA Посмотреть сообщение
Чато приходят чужие чертежи с кучей прокси объектов. Благодаря Александру Ривилису с этой бедой можно бороться.
Макрос расчленяет, удаляет прокси объекты, делает аудит рисунка и восстанавливает предыдущее состояние слоев.
а разве не тоже самое делает команда aectoacad
или она только в 2009 появилась?
Димас вне форума  
 
Непрочитано 11.06.2008, 08:16
#26
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


Цитата:
Сообщение от Димас Посмотреть сообщение
а разве не тоже самое делает команда aectoacad
или она только в 2009 появилась?
в 2008-м её точно нет
Makswell вне форума  
 
Непрочитано 11.06.2008, 10:16
#27
Кулик Алексей aka kpblc
Moderator

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


Димас, команда AecToACAD существует только в ADT. В чистом AutoCAD ее нет.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 11.06.2008, 12:16
#28
stas_org


 
Регистрация: 05.04.2007
Самара
Сообщений: 1,199


Строит qleader по трем параметрам, предварительно отключая ОРТО, а затем его включает. Простая и распространенная выноска для строительных чертежей

для русского акада
^C^Cорто откл _qleader \\\;;орто вкл
для не русского акада
^C^Cortho off qleader \\\;;ortho on

Назвал Супер выноска
stas_org вне форума  
 
Непрочитано 11.06.2008, 12:53
#29
Makswell

Инженер-строитель
 
Регистрация: 15.08.2007
Киров
Сообщений: 2,204


Добавлю stas_org.
для любого акада:
Код:
[Выделить все]
^C^C_.ORTHO;_Off;_.QLEADER;\\\;;_.ORTHO;_On
Makswell вне форума  
 
Непрочитано 11.06.2008, 16:49
#30
Vova

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


stas_org>
А если ORTHO до применения команды было отклучено?
Vova вне форума  
 
Непрочитано 14.06.2008, 16:36
#31
Vova

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


Кто рисует по растру знает, что периодически растр накрывает собой нарисованное и надо делать Draworder, что достает.
(чтобы перейти к теме о макросах придется вытерпеть небольшое вступление)
Несколько лет назад здесь обсуждалась моя тема о наложении в-портов для создание невсплывающей заливки.. Эту идею (по подсказке, кажется, VK) я применил и к растру.
Итак, в модели имеется растр. В листе он выведен во Vport. В листе-же на него наложен другой V-port с некоторым смещением одной или двух сторон, чтобы можно было открыть любой без Ctrl+R. В этот Vport выводится участок пространства модели, отстоящий от растра на круглое расстояние, пусть вправо на 1000 единиц. Рисовать надо в модели через дырку во втором V-porte. (Да-да, через дырку, но цель оправдывает средства!) прямо по растру. На самом деле в модели рисунок оказывается на расстоянии в 1000 правей растра. Оба впорта должны быть заблокированы и их слой тоже. И тем не менее нет-нет, а автокад поднимает наверх впорт с растром и он топит все; что нарисовано во 2-м в-порте. И Draworder здесь НЕ РАБОТАЕТ!.
Вот макрос. мгновенно исправляющий положение
^c^c -_La;_U;ИмяслояВЭ;;_Cp;\0,0;10,0;_E;_P;;_M;L;;0,0;-10,0;_-La;_Lo;ИмяслояВЭ;;
Кто заинтересуется; расскажу подложенную под макрос идею, она довольно интересная и понять ее навскидку вряд-ли возможно
Vova вне форума  
 
Непрочитано 15.06.2008, 00:37
#32
Кулик Алексей aka kpblc
Moderator

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


Может, подложить свинью и расшифровать все что делает этот макрос?
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 15.06.2008, 04:53
#33
Vova

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


Валяй. В смысле озвучь идею, так как зная ее, макрос становится несложным
Vova вне форума  
 
Непрочитано 15.06.2008, 05:18
#34
Profan


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


Обидно, конечно, но этот макрос не работает. Это и есть свинья?
Profan вне форума  
 
Непрочитано 15.06.2008, 11:36
#35
VVA

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


Profan, Почти. Здесь используются сокращенные названия команд для Английского Автокада
_-LA - _-LAYER
_CP - _COPY
_M - _MOVE
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 15.06.2008, 21:31
#36
Vova

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


Profan> чтобы макрос заработал, надо иметь два ВЭ один над другим. Кроме того, я списал макрос на бумажку и запустил на форум уже дома. Вполне мог и ошибиться. Проверю завтра на работе, скопировав его с форума. Как ты понимаешь, я бы не запустил макрос в тему не убедившись, что он работатет. Потому что хвастался перед всеми на работе и показывал как ловко он поднимает содержимое одного ВЭ над другим. Все-же главное в моем сообщении это как можно работать по растру. (раньше мне не приходилось рисовать по растру).
Vova вне форума  
 
Непрочитано 15.06.2008, 22:33
#37
Кулик Алексей aka kpblc
Moderator

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


Vova, VVA указал на причину "неработы" макроса не в английских версиях. Должно быть нечто типа:
Код:
[Выделить все]
^C^C-._Layer;_Unlock;ИмяслояВЭ;;_Copy;\0,0;10,0;_Erase;_P;;_Move;_L;;0,0;-10,0;_.-Layer;_Lock;ИмяслояВЭ;;
P.S. Код не проверял.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 16.06.2008, 02:09
#38
Димас

джедай
 
Регистрация: 31.01.2005
Магадан
Сообщений: 460
<phrase 1=


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Димас, команда AecToACAD существует только в ADT. В чистом AutoCAD ее нет.
только что проверял - автокад 2009 ENG
команду понимает, в хелпе правда ее нет
Димас вне форума  
 
Непрочитано 16.06.2008, 02:53
#39
Vova

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


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Vova, VVA указал на причину "неработы" макроса не в английских версиях. Должно быть нечто типа:
Код:
[Выделить все]
^C^C-._Layer;_Unlock;ИмяслояВЭ;;_Copy;\0,0;10,0;_Erase;_P;;_Move;_L;;0,0;-10,0;_.-Layer;_Lock;ИмяслояВЭ;;
А разве обязательно для русского автокада называть англ. команду полностью? У меня было "_M" у тебя _Move и т. д. В одном только месте я забыл подчеркивание при "L" но не думаю, что Profan не подправил. Завтра проверю, нет-ли ошибки путем прямого копирования
Vova вне форума  
 
Непрочитано 16.06.2008, 05:34
#40
Profan


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


Алексей, Vova! Что же вы, блин. Не будет работать этот макрос в таком виде, как вы его написали:
^C^C-._Layer...
Profan вне форума  
Ответ
Вернуться   Форум 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