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

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

Как взорвать все блоки на листах разом.

Ответ
Поиск в этой теме
Непрочитано 08.11.2014, 21:48 #1
Как взорвать все блоки на листах разом.
zmejsan
 
Регистрация: 27.06.2013
Сообщений: 58

Дорогие знатоки случилась вот такая штука с которой я не смог справиться самостоятельно:
В модели работаю с блоками (обычными, динамическими) с таблицами и расчетами в них. А в листах имеются таблицы ссылающиеся на таблицы в модели и денамические блоки. С этим со всем работать умею только я. И в компании требуют это все взрывать перед сдачей. Работа трудоемкая и долгая. Нужно сделать так чтобы при нажатии 1 кнопки запустился процесс поиска и взрыва. Причем не просто взорвать блоки динамические командой автокада а командой экспрестулса. т.е. все отребуты при это перевести в текст.
Надеюсь будут хоть какие нибудь идеи для сокращения моего времени. Все заранее спасибо!!!
Просмотров: 27701
 
Непрочитано 08.11.2014, 22:04
#2
Dakar


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


а быстрым выбором вхождения блоков выбрать и применить к ним экспрестулс не получиться?
Dakar вне форума  
 
Автор темы   Непрочитано 08.11.2014, 22:10
#3
zmejsan


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


Цитата:
Сообщение от Dakar Посмотреть сообщение
а быстрым выбором вхождения блоков выбрать и применить к ним экспрестулс не получиться?
Оно можно, только в модели или в поли листа а одновременно и там и там я не знаю как. Если есть такая возможность подскажите поподробнее.
zmejsan вне форума  
 
Непрочитано 08.11.2014, 22:13
#4
Dfds


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


Какая именно программа?
Dfds вне форума  
 
Автор темы   Непрочитано 08.11.2014, 22:14
#5
zmejsan


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


Цитата:
Сообщение от Dfds Посмотреть сообщение
Какая именно программа?
AutoCad 2010
zmejsan вне форума  
 
Непрочитано 08.11.2014, 22:24
#6
Dfds


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


Воспользуйся командой ВЗОРВАТЬ
Dfds вне форума  
 
Автор темы   Непрочитано 08.11.2014, 22:26
#7
zmejsan


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


Цитата:
Сообщение от Dfds Посмотреть сообщение
Воспользуйся командой ВЗОРВАТЬ
Dfds, дорогой друг. Возможно ты недочитал или не понял о чем я спрашиваю. Суть не в том как зворвать, а в том чтобы это сделать везде (в модели, во всех листах) нажатием одной кнопки.....
zmejsan вне форума  
 
Непрочитано 08.11.2014, 22:46
#8
Dfds


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


Цитата:
Сообщение от zmejsan Посмотреть сообщение
Dfds, дорогой друг. Возможно ты недочитал или не понял о чем я спрашиваю. Суть не в том как зворвать, а в том чтобы это сделать везде (в модели, во всех листах) нажатием одной кнопки.....
а в чем проблема занести все блоки в один слой, и потом их общим выделением взорвать, перед этим отключив все остальные слои?
Насчет сразу в модели и в листах, я не уверен, что такое возможно.
Dfds вне форума  
 
Автор темы   Непрочитано 08.11.2014, 22:47
#9
zmejsan


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


Цитата:
Сообщение от Dfds Посмотреть сообщение
а в чем проблема занести все блоки в один слой, и потом их общим выделением взорвать, перед этим отключив все остальные стили?
Насчет сразу в модели и в листах, я не уверен, что такое возможно.
Спасибо, но не в тему... Это не все так просто как вам кажется.
zmejsan вне форума  
 
Непрочитано 08.11.2014, 22:48
#10
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,002


Например, слепить лисп типа такого (написано на коленке - но смысл понятен)

Код:
[Выделить все]
 (defun c:ExplodeAllSheet ( / NameAddSheet)
(setq NewListLayouts (layoutlist))
(foreach NameAddSheet NewListLayouts
   (progn
       (setvar "ctab" NameAddSheet)
       ...
   )
)
вместо многоточия вставите нужный код - что хотите сделать с объектами на активном листе
Сергей812 вне форума  
 
Автор темы   Непрочитано 08.11.2014, 22:49
#11
zmejsan


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


я с лиспами как раз та и не в ладах. Если подскажете и поможете буду примного благодарен))
zmejsan вне форума  
 
Непрочитано 08.11.2014, 22:53
#12
Dfds


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


Все гениальное просто
__________________
Мы тут не элита, но и не чернь..

Последний раз редактировалось Dfds, 08.11.2014 в 22:59.
Dfds вне форума  
 
Непрочитано 08.11.2014, 23:13
#13
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,002


Цитата:
Сообщение от Dfds Посмотреть сообщение
Все гениальное просто
Не все так просто. Сначала по нормальному файл надо сохранить в особую папку для выдачи (чтобы случайно не выдать внешникам рабочие варианты чертежей), потом обработать ссылки и т.д (смотрим шапку темы). Вроде есть методы преобразования динблоков в статику (никогда не использовал)-т.е., возможно, не обязательно все расчленять. А под конец еще почистить чертеж и проверку сделать. В коде лишь перебирает листы в активном чертеже. И вполне возможно, что это надо делать через Active-X.
А если чертежей много и собраны через подшивку? в общем вещь индивидуальная..

zmejsan, В принципе, выше все написал.
Сергей812 вне форума  
 
Непрочитано 09.11.2014, 08:49
#14
Кулик Алексей aka kpblc
Moderator

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


Если руками - то ИМХО через экспортирование листов в модель и последующим burst. И то не факт, что получится красиво
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 09.11.2014, 13:37
#15
VVA

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


Цитата:
Сообщение от zmejsan Посмотреть сообщение
А в листах имеются таблицы ссылающиеся на таблицы в модели и денамические блоки. С этим со всем работать умею только я.
Надеюсь с обычными блоками в компании уже научились работать?
Тогда предлагаю следующий алгоритм
1. LISP. Подготовка подосновы
2. BGCFT - Конвертирует все поля в обычный текст
3. BGBLALLDYN2S - Преобразовывает ВСЕ динамические блоки в статические
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 09.11.2014, 13:41
#16
zmejsan


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


Цитата:
Сообщение от VVA Посмотреть сообщение
Надеюсь с обычными блоками в компании уже научились работать?
Тогда предлагаю следующий алгоритм
1. LISP. Подготовка подосновы
2. BGCFT - Конвертирует все поля в обычный текст
3. BGBLALLDYN2S - Преобразовывает ВСЕ динамические блоки в статические
Проблема только одна: при использовании данных лиспов нужно выбирать блоки, а они на разных листах.
zmejsan вне форума  
 
Непрочитано 09.11.2014, 13:48
#17
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,002


Цитата:
Сообщение от zmejsan Посмотреть сообщение
Проблема только одна: при использовании данных лиспов нужно выбирать блоки, а они на разных листах.
Возникает резонный вопрос - в вашей компании рисуют прямо на листах? Откуда там появились куча связей и динблоков?
Сергей812 вне форума  
 
Автор темы   Непрочитано 09.11.2014, 13:53
#18
zmejsan


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


Цитата:
Сообщение от Сергей812 Посмотреть сообщение
Возникает резонный вопрос - в вашей компании рисуют прямо на листах? Откуда там появились куча связей и динблоков?
Нет)) Так черчу только я. И на листах динамически сделаны рамки, условные обозначения и другая мелочь. А в модели я могу с помощью быстрый выбор выбрать все блоки и взорвать. Даже сделать макрос на кнопку-это не сложно. А вот в листах....
zmejsan вне форума  
 
Непрочитано 09.11.2014, 14:04
1 | #19
skkkk


 
Регистрация: 20.03.2008
Сообщений: 2,653


То ли из-за нелюбви взрывать блоки форумчане не хотят подсказать, то ли я чего-то не пойму, но ведь все решается одной строчкой. Я имею в виду выбор блоков на всем чертеже: и в модели, и в листах. Вот эта строчка:
Код:
[Выделить все]
(sssetfirst nil (ssget "_X" '((0 . "INSERT"))))
Она заминирует все блоки

Последний раз редактировалось skkkk, 09.11.2014 в 14:11.
skkkk вне форума  
 
Автор темы   Непрочитано 09.11.2014, 14:12
#20
zmejsan


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


Цитата:
Сообщение от skkkk Посмотреть сообщение
То ли из-за нелюбви взрывать блоки форумчане не хотят подсказать, то ли я чего-то не пойму, но ведь все решается одной строчкой. Я имею в виду выбор блоков на всем чертеже: и в модели, и в листах. Вот эта строчка:
Код:
[Выделить все]
(sssetfirst nil (ssget "_X" '((0 . "INSERT"))))
Не совсем понял данной команды. Ввожу-выделяет блоки на листе, взрываю, а на другом листе все по прежнему. Она как бы показывает сколько есть блоков в файле но выделяет только те что видит. Подскажите возможно я делаю чтото не так
zmejsan вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > Как взорвать все блоки на листах разом.

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поменяли плоттер. Как заменить разом плоттер на всех листах, в параметрах листов, на другой плоттер? Palomnic AutoCAD 5 14.12.2012 12:41
Динамические блоки при копировании перестают быть динамическими. *Voland* Динамические блоки 11 04.07.2012 10:51
ЛИСП слои цвета преобразование Gotch LISP 97 08.11.2011 10:22
Разбиение черечежа откоса на геологические блоки в VBA Skyper Программирование 1 18.03.2010 08:54
Взорвать все блоки файла сразу Red Nova AutoCAD 9 26.05.2009 11:16