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

Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Внедрение всех внешних ссылок командой и последующее EXPLODE

Внедрение всех внешних ссылок командой и последующее EXPLODE

Ответ
Поиск в этой теме
Непрочитано 04.05.2013, 20:50 #1
Внедрение всех внешних ссылок командой и последующее EXPLODE
AVF83
 
Проектирование
 
Краснодар
Регистрация: 21.04.2013
Сообщений: 12

Здравствуйте! Всех с майскими праздниками!
Посмотрел на форуме, но не нашёл решения по внедрению внешней ссылки в чертёж (всех внешних ссылок) одной командой. Можно, конечно, вручную в каждом чертеже операцию провести, но их 500! Цель такая: освободить чертёж от всевозможных ссылок-связей и сделать его автономным (чтобы можно было "выдернуть" файл из пачки и он не потерял "вид"). Такое возможно осуществить?
Планирую использовать bat и scr:
Цитата:
FOR %%f in (..\*.dwg) do start /wait C:\"Program Files"\Autodesk\"AutoCAD 2012 - Russian"\acad.exe "%%f" /b dluse-1.scr
Цитата:
_DATALINKUPDATE _U _K _QSAVE _QUIT
Кстати, в первом случае (внедрить внешние ссылки) ответа найти не смог. А во втором (расчленение всех связей, блоков и пр.) вот что думаю:
Использую _ai_selall _explode в командной строке - всё работает! Но когда вставляю этот же набор команд в dluse-1.scr (между _K и _QSAVE ), то ничего не происходит! А точнее, после того, как чертёж открылся, после команды _EXPLODE в командной строке предлагается выбрать объекты и _QSAVE не является объектом. Т.е. связка _ai_selall _explode в сценарии не работает! Почему так происходит, кто-нибудь сталкивался?
Просмотров: 2734
 
Непрочитано 04.05.2013, 23:39
1 | #2
5hev

roads
 
Регистрация: 22.12.2010
msk
Сообщений: 121
<phrase 1= Отправить сообщение для 5hev с помощью Skype™


Внедрение (в файле scr)
Код:
[Выделить все]
 (vlax-for i (vla-get-blocks (vla-get-ActiveDocument (vlax-get-acad-object)))
  (if (equal (vla-get-isxref i) :vlax-true)
    (vla-bind i :vlax-false)
  )
)
Далее уже сохранение и выход.
5hev вне форума  
 
Автор темы   Непрочитано 05.05.2013, 00:20
#3
AVF83

Проектирование
 
Регистрация: 21.04.2013
Краснодар
Сообщений: 12


Спасибо, попробовал!
В файле сценария добавил dluse-1.lsp таким образом (на время эксперимента всё лишнее удалил из сценария):
Цитата:
(load "dluse-1.lsp")
_QSAVE
Однако, в командной строке пишет:
Цитата:
Команда: (load "dluse-1.lsp")
; ошибка: no function definition: VLAX-GET-ACAD-OBJECT
Команда: _QSAVE
Что-то не работает.
Может быть архив выслать?
__________________
Делай, что должен и будь, что будет!
AVF83 вне форума  
 
Непрочитано 05.05.2013, 00:25
1 | #4
5hev

roads
 
Регистрация: 22.12.2010
msk
Сообщений: 121
<phrase 1= Отправить сообщение для 5hev с помощью Skype™


В начале файла с программкой должно стоять
Код:
Я не добавил, потому что у меня это в автозагрузке по умолчанию
5hev вне форума  
 
Автор темы   Непрочитано 05.05.2013, 00:30
#5
AVF83

Проектирование
 
Регистрация: 21.04.2013
Краснодар
Сообщений: 12


Огромное спасибо! Отлично сработало! Теперь так все файлы буду прогонять.
__________________
Делай, что должен и будь, что будет!
AVF83 вне форума  
 
Непрочитано 02.07.2019, 06:08
#6
Sart


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


Добрый день. Подскажите как сделать лисп из кода в сообщении 2 для внедрения ссылок? Что то не получается, не дружу я с лиспом.
Sart вне форума  
 
Непрочитано 04.07.2019, 12:41
1 | #7
VVA

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


Sart,
Код:
[Выделить все]
 
(defun C:BINDALL ()
  (vl-load-com)
  (vlax-for i (vla-get-blocks
                (vla-get-activedocument (vlax-get-acad-object))
              ) ;_ end of vla-get-blocks
    (if (equal (vla-get-isxref i) :vlax-true)
      (vl-catch-all-apply 'vla-bind (list i :vlax-false))
    ) ;_ end of if
  ) ;_ end of vlax-for
  (princ)
) ;_ end 
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 04.07.2019, 13:24
#8
Sart


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


Спасибо огромное
Sart вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Внедрение всех внешних ссылок командой и последующее EXPLODE

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Слои внешних ссылок Werwolf AutoCAD 19 16.04.2015 20:48
Проверить нахождение внешних ссылок xref Apelsinov Программирование 22 18.09.2012 17:25
сбой в работе внешних ссылок АА2011 s_get Вертикальные решения на базе AutoCAD 21 11.05.2011 13:03
Вложенность внешних ссылок. shartal AutoCAD 1 11.05.2011 11:13
Как выполнить команду Explode для всех деталей с сборок? DonVik Программирование 2 23.02.2009 12:41