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

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

Динамический блок завязка с самодельной кнопкой

Ответ
Поиск в этой теме
Непрочитано 06.12.2010, 06:10 #1
Динамический блок завязка с самодельной кнопкой
void2005
 
Инженегр-констбезруктор
 
Красноярск
Регистрация: 12.11.2010
Сообщений: 61

В автолиспе я новичек, подскажите на примерах, или ссылками на литературу, как в автокаде сделать самодельную кнопку по нажатии которой в область модели будет вставлятся блок с исходной точкой (с привязкой)
точнее имеется база блоков, разные файлы dwg, по нажатии кнопки необходимо чтобы блок вставлялся в новый чертеж, для каждого блока своя кнопка.
С кнопками все более менее ясно, нужна лисп програмка! подскажите кто чего сможет!!!

Последний раз редактировалось void2005, 06.12.2010 в 08:25.
Просмотров: 4987
 
Непрочитано 06.12.2010, 10:31
#2
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


нажми Ctrl+2
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 06.12.2010, 12:08
#3
Do$

AutoCAD/Civil3D LISP/C#
 
Регистрация: 15.08.2008
Санкт-Петербург
Сообщений: 1,701
Отправить сообщение для Do$ с помощью Skype™


Ctrl+3 тоже вполне подойдет
Do$ вне форума  
 
Автор темы   Непрочитано 07.12.2010, 04:21
#4
void2005

Инженегр-констбезруктор
 
Регистрация: 12.11.2010
Красноярск
Сообщений: 61


Цитата:
Сообщение от Дима_ Посмотреть сообщение
нажми Ctrl+2
откуда столько сарказма, тут маленько другая ситуация, необходимо чтоб по нажатии кнопки вставлялся блок в модель чертежа, а не выбор из существующих. Кнопки я уже сделал, им нужно присвоить макрокоманды... вобщем нужен лисп...
void2005 вне форума  
 
Непрочитано 07.12.2010, 05:52
#5
Vova

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


В общем, нужен Ctrl+2 или +3. Блок на палитру затянешь из специального чертежа-библиотеки, которую требуется создать, а с палитры стянешь точно так, как уже попробовал на существующих там примерах. И не надо засорять экран кнопками.
И что такое завязка (из заголовка)
Vova вне форума  
 
Автор темы   Непрочитано 07.12.2010, 06:00
#6
void2005

Инженегр-констбезруктор
 
Регистрация: 12.11.2010
Красноярск
Сообщений: 61


Цитата:
Сообщение от Vova Посмотреть сообщение
В общем, нужен Ctrl+2 или +3. Блок на палитру затянешь из специального чертежа-библиотеки, которую требуется создать, а с палитры стянешь точно так, как уже попробовал на существующих там примерах. И не надо засорять экран кнопками.
И что такое завязка (из заголовка)
Нужно засорять экран кнопками или нет решать мне! а с палитры можно стянуть блок макрокомандой? завязка- это значит связь блока с кнопкой
void2005 вне форума  
 
Непрочитано 07.12.2010, 07:42
1 | #7
mamuk


 
Регистрация: 06.05.2010
Сургут
Сообщений: 248


вставляется блок, положение задаешь курсором
*^C^C_-insert;p3;\;;;
вставляется блок с указаными координатами (0,0,0)
*^C^C_-insert;p3;0;0;0;
звездочка в макросе бесконечное повторение макроса(*)
Поищи книгу В.Свет Autocad. Язык макрокоманд и создание кнопок.
вроде в здесь в загрузках есть
http://dwg.ru/dnl/3480
mamuk вне форума  
 
Автор темы   Непрочитано 07.12.2010, 09:39
#8
void2005

Инженегр-констбезруктор
 
Регистрация: 12.11.2010
Красноярск
Сообщений: 61


Цитата:
Сообщение от mamuk Посмотреть сообщение
вставляется блок, положение задаешь курсором
*^C^C_-insert;p3;\;;;
вставляется блок с указаными координатами (0,0,0)
*^C^C_-insert;p3;0;0;0;
звездочка в макросе бесконечное повторение макроса(*)
Поищи книгу В.Свет Autocad. Язык макрокоманд и создание кнопок.
вроде в здесь в загрузках есть
http://dwg.ru/dnl/3480
да действительно стоящий ответ! только макрос хочу сделать такого вида:
^C^C_xattach Attach Xref "NKNL_160": C:\automenu\NKNL_160.dwg

только вместо _insert использую _xattach

c _-insert получается вставлять блок р3 только в файле где прописан блок р3
а можно сделать так, чтоб блок р3 вставить в новый файл где нет инфы про блок р3 (задача состоит в этом)

блоки по нажатии кнопки становятся нормально, макрос маленько доработал но в целом идея оч. правильная...! далее буду задавать вопросы по лиспу...

Последний раз редактировалось void2005, 08.12.2010 в 10:12.
void2005 вне форума  
 
Непрочитано 07.12.2010, 16:17
#9
Vova

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


Цитата:
Сообщение от void2005 Посмотреть сообщение
а с палитры можно стянуть блок макрокомандой?
Зачем? просто стягиваешь мышом. На палитру можно и команды вешать, вместо кнопок. Хоть макрос, хоть лисп вызывать.
Твой макрос, начинающийся с _Xattach вызовет диалоговое окно. И что ты с ним будешь делать? Если нужен блок, то используют команду _-Insert. Если xref, то команду _-Xref. Но сажать на кнопку вызов хрефа вряд-ли целесообразно. На палитру можно и команды вешать, вместо кнопок. Хоть макрос, хоть лисп вызывать.
Для вставки хрефа надо еще и слой ему подложить правильный, а потом вернуть предыдущий. Так что макрос усложниться
Но вызывать блоки удобней с палитры. Когда к этому придешь, не забудь признаться в этом первым советчикам.
Книга и статья того-же автора о макросах есть в ДН и в публикациях (статья)
Vova вне форума  
 
Автор темы   Непрочитано 08.12.2010, 04:24
#10
void2005

Инженегр-констбезруктор
 
Регистрация: 12.11.2010
Красноярск
Сообщений: 61


Цитата:
Сообщение от Vova Посмотреть сообщение
Зачем? просто стягиваешь мышом. На палитру можно и команды вешать, вместо кнопок. Хоть макрос, хоть лисп вызывать.
Твой макрос, начинающийся с _Xattach вызовет диалоговое окно. И что ты с ним будешь делать? Если нужен блок, то используют команду _-Insert. Если xref, то команду _-Xref. Но сажать на кнопку вызов хрефа вряд-ли целесообразно. На палитру можно и команды вешать, вместо кнопок. Хоть макрос, хоть лисп вызывать.
Для вставки хрефа надо еще и слой ему подложить правильный, а потом вернуть предыдущий. Так что макрос усложниться
Но вызывать блоки удобней с палитры. Когда к этому придешь, не забудь признаться в этом первым советчикам.
Книга и статья того-же автора о макросах есть в ДН и в публикациях (статья)
про затягивание блоков на палитру я знал давно и задача не в этом. Я повторяю нужны именно кнопки (делаю что то типа веткада или нанокада, но проще и заточенную под свою определенную специфику)
void2005 вне форума  
 
Непрочитано 08.12.2010, 07:56
1 | #11
mamuk


 
Регистрация: 06.05.2010
Сургут
Сообщений: 248


Цитата:
Сообщение от void2005 Посмотреть сообщение
да действительно стоящий ответ! только макрос хочу сделать такого вида:
c _-insert получается вставлять блок р3 только в файле где прописан блок р3
а можно сделать так, чтоб блок р3 вставить в новый файл где нет инфы про блок р3 (задача состоит в этом)
создаешь свою папку с именем например "Мои блоки"
создаешь файл(имя файла это имя бока) dwg в нем рисуешь блок, привязываешь его к началу координат, 0,0,0 это будет точка вставки блока, блок в сохраняешь в созданую папку. потом в Autocad заходишь "меню" (правая КЛМ)настройка , находишь вкладку "Файлы", в "дереве" вкладок выбираешь путь доступа к вспомогательным вайлам, нажимаешь добавить-обзор и указываешь путь к папке с блоком. теперь можно вставлять блоки хоть как. и создавай блоки и сохраняй в папочку.(имя файла это имя бока)
mamuk вне форума  
 
Непрочитано 08.12.2010, 09:22
#12
AlexV

Инженер
 
Регистрация: 02.10.2008
С-Пб
Сообщений: 3,692


Цитата:
Сообщение от void2005 Посмотреть сообщение
про затягивание блоков на палитру я знал давно и задача не в этом. Я повторяю нужны именно кнопки (делаю что то типа веткада или нанокада, но проще и заточенную под свою определенную специфику)
Вот интересно, а в чем это ты делаешь "что-то типа веткада или нанокада"? В ObjectArx небось или в Net?
__________________
...Не пытайся гнуть ты ложку,
Не вяжи её узлом.
Ложка - ложка понарошку,
А по правде, - это лом!
AlexV вне форума  
 
Автор темы   Непрочитано 08.12.2010, 10:01
#13
void2005

Инженегр-констбезруктор
 
Регистрация: 12.11.2010
Красноярск
Сообщений: 61


Цитата:
Сообщение от AlexV Посмотреть сообщение
Вот интересно, а в чем это ты делаешь "что-то типа веткада или нанокада"? В ObjectArx небось или в Net?
хороший вопрос...чем дальше в лес тем толще партизаны! на даном этапе пока тупо пишу макросы под кнопки, далее пойдут лиспы под кнопки...надеюсь с обджектами пока не связываться... повторяю должно все быть тупо просто!!!

Последний раз редактировалось void2005, 08.12.2010 в 10:14.
void2005 вне форума  
 
Непрочитано 08.12.2010, 14:31
#14
Vova

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


Цитата:
Сообщение от void2005 Посмотреть сообщение
на даном этапе пока тупо пишу макросы под кнопки
Значит ты в самом начале пути. Потому что "тупо", а надо осмысленно. Потому что первое, что пишут начинающие макрос-программисты это вставка блока с кнопки, а уже потом другие макросы. У тебя получается наоборот.
Книга AutoCAD, Язык макрокоманд и создание кнопок написана для тебя.
Vova вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Динамический блок завязка с самодельной кнопкой



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как сделать динамический блок из нескольких солид тел? Scrubber Динамические блоки 5 22.09.2010 22:29
Динамический блок узловой ответки под Автокад 2009. hwd Динамические блоки 5 04.02.2010 09:50
Динамический блок с вложенным динамическим блоком? Sync02 Динамические блоки 17 18.05.2009 17:51
Динамический блок сварного шва Vavan Metallist Динамические блоки 10 11.04.2008 18:42
Как добавить атрибуты в динамический блок? Archeo Динамические блоки 20 17.11.2006 11:30