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

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

артефакты после импорта в AutoCAD

Ответ
Поиск в этой теме
Непрочитано 04.05.2007, 12:20 #1
артефакты после импорта в AutoCAD
pericl17
 
инженер-проектировщик
 
Нижний Новгород
Регистрация: 16.08.2006
Сообщений: 302

Значит импортировал в AutoCAD из ArchiCAD-а план, все причесал, удалил "лишние" слои, а чертеж не хочет копировать из одного файла в другой.
__________________
Жизнь хороша, но в ней хватает де@#ма,
Мы стены ломаем нашей силой ума...
Просмотров: 3809
 
Непрочитано 04.05.2007, 13:53
#2
ТулаОТС

студент
 
Регистрация: 21.04.2007
Венев
Сообщений: 110


Взорвите чертежик пару раз, добейте вредные блоки.
ТулаОТС вне форума  
 
Непрочитано 04.05.2007, 14:11 Re: артефакты после импорта в AutoCAD
#3
lee


 
Регистрация: 28.02.2004
43
Сообщений: 1,819
<phrase 1=


Цитата:
Сообщение от pericl17
Значит импортировал в AutoCAD из ArchiCAD-а план, все причесал, удалил "лишние" слои, а чертеж не хочет копировать из одного файла в другой.
Повесть прочитал. История твоей жизни ?
lee вне форума  
 
Автор темы   Непрочитано 04.05.2007, 14:12
#4
pericl17

инженер-проектировщик
 
Регистрация: 16.08.2006
Нижний Новгород
Сообщений: 302


Цитата:
Сообщение от ТулаОТС
Взорвите чертежик пару раз, добейте вредные блоки.
В том то и дело, что после взрыва тоже не копируется, уж отались одни примитивы. Не знаешь, как проверить в чем загвоздка автоматически, потому что в ручную перелопатить чертеж архитекторов (удалять подозрительные элементы), это и свихнуться можно.
__________________
Жизнь хороша, но в ней хватает де@#ма,
Мы стены ломаем нашей силой ума...
pericl17 вне форума  
 
Непрочитано 04.05.2007, 14:19
#5
Кулик Алексей aka kpblc
Moderator

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


Приложи файлик, глянем
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 04.05.2007, 14:39
#6
pericl17

инженер-проектировщик
 
Регистрация: 16.08.2006
Нижний Новгород
Сообщений: 302


Цитата:
Сообщение от Кулик Алексей aka kpblc
Приложи файлик, глянем
Возможно я не совсем прав некоторые файлы вроде работают, но вот например вот эти два упрямо не хотят вставляться друг в друга.
[ATTACH]1178275143.dwg[/ATTACH]
__________________
Жизнь хороша, но в ней хватает де@#ма,
Мы стены ломаем нашей силой ума...
pericl17 вне форума  
 
Автор темы   Непрочитано 04.05.2007, 14:39
#7
pericl17

инженер-проектировщик
 
Регистрация: 16.08.2006
Нижний Новгород
Сообщений: 302


Блин, как вставить сразу два.
[ATTACH]1178275192.dwg[/ATTACH]
__________________
Жизнь хороша, но в ней хватает де@#ма,
Мы стены ломаем нашей силой ума...
pericl17 вне форума  
 
Непрочитано 04.05.2007, 14:41
#8
Огурец

Profan
 
Регистрация: 27.04.2005
Москва
Сообщений: 6,761
Отправить сообщение для Огурец с помощью Skype™


Уважаемый модератор! Дорогой наш Кулик Алексей aka kpblc!

По возможности (я не тороплю, проблема постоянная) опишите Вашу технологию приведения импортированых архикадовских файлов в нормальный вид (да отформатируется у них диск С!). Может быть закрепить тему?
Имеем 11 (одиннадцать) размерных стилей и прочую гадость, надо приводить в порядок, а вручную долго и муторно. Помогают Ваши лиспы, unformat в частности, но хотелось бы системного подхода к проблеме.
Огурец вне форума  
 
Непрочитано 04.05.2007, 15:10
#9
Кулик Алексей aka kpblc
Moderator

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


Уважаемый Огурец!
К сожалению, стандартных методов практически нет. Как правило, просто требуется привести все тексты к одному стилю, установить примитивы в вид "ПоСлою", вот и все. А эти два файла... Как бы сказать-то поцивильнее... В общем, убили они у меня acad Насмерть. Давно вылета не было
Пробовал через _wblock сначала записать и потом вставить,- мимо. _xref с последующим bind'ом работать отказался. Во всех вариантах. Сейчас попробую на 2007-м провернуть.
===
Добавлено: Блин, в этих файлах еще и СПДС-ка покопалась...
===
Добавлено 2: Все, я в ауте. 2006 и 2007 отказываются обрабатывать эти файлы. Напрочь!
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 04.05.2007, 15:41
#10
Кулик Алексей aka kpblc
Moderator

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


В общем, удалось победить. Но какой кровью!
1. Сначала открываем оба файла в СПДС GraphiCS, и там выполняем разбиение всех объектов и примитивов СПДС в мелкую пыль (кстати, может не помешать перенести содержимое файлов в 0,0,0 - а то уж больно далековато).
2. Затем открыть файлы в "чистом" acad'e (предварительно выполнив demandload -> 2, чтоб СПДС-ка туда не лезла). Я открывал в 2008, но, думаю, и 2005 будет достаточно.
3. Найти все примитивы, у которых тип линии назначен напрямую "С изломами" или "С кружочками" (во блин, придумали название...). И назначить им ByLayer.
4. _.audit с исправлением ошибок.
5. пробуем через _insert вставить оба файла в новый.
---
Я выполнял шаги 2-5 в 2008, а потом просто сохранил в формате 2005 и в 2005-м уже сделал _etransmit. В аттаче.
[ATTACH]1178278865.zip[/ATTACH]
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 04.05.2007, 15:45
#11
pericl17

инженер-проектировщик
 
Регистрация: 16.08.2006
Нижний Новгород
Сообщений: 302


Большое спасибо!!!
__________________
Жизнь хороша, но в ней хватает де@#ма,
Мы стены ломаем нашей силой ума...
pericl17 вне форума  
 
Автор темы   Непрочитано 04.05.2007, 16:09
#12
pericl17

инженер-проектировщик
 
Регистрация: 16.08.2006
Нижний Новгород
Сообщений: 302


Вопрос еще такой, может быть пошлете в другую тему, но все равно задам. Опять же после импорта, но другой объект, создается куча слоев аля:наружные стены, внутренние стены. Я все примитивы и блоки из этих слоев кидаю в свои (для удобного черчения) после этого проверяю все вроде бы чисто, но слой этот не удаляется и AutoCAD говорит, что в нем что то есть или имеется ссылка. Но я точно знаю что только что все переместил на друго слой. Использовать фильтр слоев муторно учитывая то, что кроме моих слоев и архикадовских ничьего больше нет.
__________________
Жизнь хороша, но в ней хватает де@#ма,
Мы стены ломаем нашей силой ума...
pericl17 вне форума  
 
Непрочитано 04.05.2007, 16:12
#13
Кулик Алексей aka kpblc
Moderator

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


А ВЭ часом не на нем? Попробуй удалить пространство листа.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 04.05.2007, 16:15
#14
pericl17

инженер-проектировщик
 
Регистрация: 16.08.2006
Нижний Новгород
Сообщений: 302


Цитата:
Сообщение от Кулик Алексей aka kpblc
А ВЭ часом не на нем? Попробуй удалить пространство листа.
То есть!? Уменя конечно есть листы и вних создал видовые окна которые ссылаются на модель, но как это может мешать удалить слои?
__________________
Жизнь хороша, но в ней хватает де@#ма,
Мы стены ломаем нашей силой ума...
pericl17 вне форума  
 
Автор темы   Непрочитано 04.05.2007, 16:22
#15
pericl17

инженер-проектировщик
 
Регистрация: 16.08.2006
Нижний Новгород
Сообщений: 302


Вот малая часть того файла, в нем созданы новые слои на русском языке, слои на английском упрямо не хотят удаляться.
[ATTACH]1178281357.dwg[/ATTACH]
__________________
Жизнь хороша, но в ней хватает де@#ма,
Мы стены ломаем нашей силой ума...
pericl17 вне форума  
 
Непрочитано 04.05.2007, 16:44
#16
Хмурый


 
Регистрация: 29.10.2004
СПб
Сообщений: 16,379


В чертеже есть блоки, в которых имеются элементы созданные на этих слоях, например блок "D1 Segmented Transom 10_13" содержит примитивы, находящиеся на слое "Exterior walls"
До тех пор пока на этом слое будут примитивы - его будет не удалить.
Есть еще много ссылок на неиспользованные в чертеже блоки. Удаление этих ссылок командой _purge позволит удалить и часть слоев, на которых находятся примитивы этих блоков
Хмурый вне форума  
 
Непрочитано 04.05.2007, 16:57
#17
Кулик Алексей aka kpblc
Moderator

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


Так а что ж ты хотишь-то? У тебя на них действительно лежат примитивы (воспользуйся _qselect, к примеру, или _filter - по вкусу)
--
Добавлено: спробуй лиспину
Код:
[Выделить все]
(defun c:clear (/ adoc selset lst clean-xdata)
  (defun clean-xdata (ent / app_lst ent_lst)
    (if (and ent
             (cdr (assoc -3 (setq ent_lst (entget ent (list "*")))))
             (/= (cdr (assoc 0 (entget ent))) "VIEWPORT")
             ) ;_ end of and
      (progn
        (setq app_lst (mapcar 'car (cdr (assoc -3 (entget ent (list "*"))))))
        (foreach app app_lst
          (entmod (subst (cons -3 (list (list app))) (assoc -3 ent_lst) ent_lst)
                  ) ;_ end of entmod
          ) ;_ end of foreach
        ) ;_ end of progn
      ) ;_ end of if
    ) ;_ end of defun

  (vl-load-com)
  (vla-startundomark
    (setq adoc (vla-get-activedocument (vlax-get-acad-object)))
    ) ;_ end of vla-startundomark
  (vlax-for blk_def (vla-get-blocks adoc)
    (if (wcmatch (strcase (vla-get-name blk_def) t) "*_space*")
      (vlax-for subent blk_def
        (clean-xdata (vlax-vla-object->ename subent))
        ) ;_ end of vlax-for
      (progn
        (clean-xdata (vlax-vla-object->ename blk_def))
        (vlax-for subent blk_def
          (vla-put-layer subent "0")
          (vla-put-color subent 0)
          (vla-put-linetype subent "byblock")
          (vla-put-lineweight subent aclnwtbyblock)
          ) ;_ end of vlax-for
        ) ;_ end of progn
      ) ;_ end of if
    ) ;_ end of vlax-for
  (if (setq selset
             (ssget "_X" (list '(-4 . "<NOT") '(0 . "VIEWPORT") '(-4 . "NOT>")))
            ) ;_ end of setq
    (progn
      (princ
        (strcat
          "\n Не удалены расширенные данные у "
          (vl-princ-to-string
            (length (setq
                      lst (vl-remove-if-not
                            '(lambda (x) (cdr (assoc -3 (entget x '("*")))))
                            (vl-remove-if 'listp (mapcar 'cadr (ssnamex selset)))
                            ) ;_ end of vl-remove-if-not
                      ) ;_ end of setq
                    ) ;_ end of length
            ) ;_ end of vl-princ-to-string
          " примитивов"
          ) ;_ end of strcat
        ) ;_ end of princ
      (setq selset nil
            selset (ssadd)
            ) ;_ end of setq
      (foreach item lst (ssadd item selset))
      (sssetfirst selset selset)
      ) ;_ end of progn
    ) ;_ end of if

  (repeat 3 (vla-purgeall adoc))
  (vl-catch-all-apply '(lambda () (command "_.-purge" "_r" "*" "_n")))
  (vla-endundomark adoc)
  (princ)
  ) ;_ end of defun
Она сносит расширенные данные (там тоже могут быть проблемы), одновременно проходит по всем блокам и устанавливает их примитивам свойства ByBlock и помещает на слой "0". Заодно чистит файл ото всего, от чего можно очиститься.
---
Добавлено 1: немного подправил код
---
Добавлено 2: В обработку не попадают ВЭ, поскольку у них РД слишком сильно нужны.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Автор темы   Непрочитано 04.05.2007, 17:00
#18
pericl17

инженер-проектировщик
 
Регистрация: 16.08.2006
Нижний Новгород
Сообщений: 302


Все спасибо, расчистил. Просто я впервые пользуюсь командой purge и не все тонкости еще знаю.
__________________
Жизнь хороша, но в ней хватает де@#ма,
Мы стены ломаем нашей силой ума...
pericl17 вне форума  
 
Непрочитано 04.05.2007, 17:06
#19
Аshаs-ка

проектировсчик
 
Регистрация: 06.01.2006
Москва
Сообщений: 1,986


Вы все будете смеяться, но ZWCAD 2006 pro открыл все без писков и воплей. Просто уважаю китайцев теперича! Жаль, что энаблеров на него нет - АДТшные объекты не ловит... но и не виснет! (Не открывает- это минус, но и не виснет - это плюс!)
Аshаs-ка вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > AutoCAD > артефакты после импорта в AutoCAD