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

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

Нужен макрос на разбиение блоков

Ответ
Поиск в этой теме
Непрочитано 28.10.2010, 11:20 #1
Нужен макрос на разбиение блоков
dallaskassel
 
Регистрация: 28.10.2010
Сообщений: 18

Добрый день.
Очень нужен макрос, разбивающий проект на составляющие и чистящий чертёж после этого. Почистить - не проблема, многократный purge, это вопросов не вызывает. Вопрос в разбиении, а именно: в приложении есть однолинейная схема, в ней номера отходящих линий выставлены атрибутами, атрибуты зависят от положения. _burst не помогает, также на форуме были выложены другие программы по глубокому разрушению блоков - также не удавалось разбить так, чтобы нумерация не изменилась. И нужно, чтобы разбивались все листы проекта. А то этих листов и сотня бывает.
Надеюсь на понимание, спасибо.

Вложения
Тип файла: dwg
DWG 2004
dwg.ru.dwg (199.0 Кб, 444 просмотров)

Просмотров: 3503
 
Непрочитано 28.10.2010, 15:11
#2
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Атрибуты здесь ни при чем. У тебя в блоке есть мтекст с полями.
1. Применяешь команду CFT отсюда: Как все поля чертежа сразу преобразовать в текст?
2. Потом можно и Burst, лучше BGBLEXP отсюда
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 28.10.2010, 15:56
#3
dallaskassel


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


CFT - круть! Спасибо!
а как применить BGBLEXP сразу ко всем листам?
dallaskassel вне форума  
 
Непрочитано 28.10.2010, 17:08
#4
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Цитата:
Сообщение от dallaskassel Посмотреть сообщение
а как применить BGBLEXP сразу ко всем листам?
Пробуй так. bgtools должны быть загружены!!! А еще лучше добавь это к bgtools.lsp
Код:
[Выделить все]
(defun C:BGBLLAYEXP ( / i ss blk count xcount tmp lay itm ctb)
  ;;; BGBLLAYEXP - explode block on alll layouts
  (vl-load-com)
  (setq count 0 xcount 0 ctb (getvar "CTAB"))
  (command "_.UNDO" "_Mark")
  (foreach lay (layoutlist)
    (setq i '-1)
    (setvar "CTAB" lay)
  (if (setq ss nil ss (ssget "_X" (list '(0 . "INSERT")(cons 410 (getvar "CTAB")))))
    (progn
      (vla-StartUndoMark (vla-get-activedocument (vlax-get-acad-object)))
      (repeat (sslength ss)
	(if (and (setq blk (ssname ss (setq i (1+ i))))
	         (setq tmp(bg:block-GetXclip (vlax-ename->vla-object blk)))
		 (= 1 (cdr(assoc 71 tmp)))
		 )
	  (setq xcount (1+ xcount))
	  (progn
	    (if (vlax-write-enabled-p (vlax-ename->vla-object blk))
	      (bg:explode-block blk t)
	      )
	    (setq count (1+ count))
	    )
	  )
	)
      (vla-EndUndoMark (vla-get-activedocument (vlax-get-acad-object)))
      )
    )
    )
  (setvar "CTAB" ctb)
  (princ "\nExploded ")
  (princ count)
  (princ " blocks. Found ")
  (princ xcount)
  (princ " blocks has xclip boundary.")
  (if(not(zerop count))(princ "\n*** Command _.UNDO _Back restore your drawing"))
  (princ)
  )
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 28.10.2010, 18:59
#5
dallaskassel


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


Работает. осталась мелочь: хотел бы, чтобы CFT не задавал вопросов, а просто запускался, и чтобы разбивался и Мтекст в том числе. а так - клёво!
dallaskassel вне форума  
 
Непрочитано 29.10.2010, 10:17
#6
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Цитата:
Сообщение от dallaskassel Посмотреть сообщение
чтобы CFT не задавал вопросов, а просто запускался,
Обновил. см. ссылку в посте #2
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 29.10.2010, 16:33
#7
dallaskassel


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


ещё раз - большое спасибо! похоже, надо разобраться самому, потому, что есть ещё маленькие вопросики. добью, чтобы ещё mtext расчленялся. за недельку разберусь.
dallaskassel вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Нужен макрос на разбиение блоков



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Нужен макрос для AutoCAD, экспортирующий список деталей в текстовый файл technos Программирование 20 24.10.2015 18:11
Тормозит команда расчленения набора блоков batmax Программирование 4 31.08.2010 17:37
Нужен макрос для черчения почасовых графиков SON Программирование 2 03.08.2010 21:11
Нужен макрос (поворот на 90 предварительно выделенного) dextron3 Программирование 20 10.07.2007 21:36
разбиение блоков и процедура автосохранения Visla AutoCAD 6 23.03.2004 12:23