|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Извлечение данных: блоки с атрибутами
инженер
Минск
Регистрация: 30.03.2010
Сообщений: 7
|
||
Просмотров: 10800
|
|
||||
Moderator
Конструктор (машиностроение) Регистрация: 23.10.2006
Россия
Сообщений: 23,258
![]() |
|
|||
![]() |
|
||||
Цитата:
__________________
14 Ибо если вы будете прощать людям согрешения их, то простит и вам Отец ваш Небесный (Мф 6, 14) |
||||
![]() |
|
||||
сети Регистрация: 03.11.2008
Московия*
Сообщений: 5,918
|
Почему не задуматься о другом пути использования атрибутов? То есть вместо одного атрибута с ; делать три атрибута без разделителей?
|
|||
![]() |
|
||||
инженер Регистрация: 30.03.2010
Минск
Сообщений: 7
|
2 wetr:
понял. завтра вечером выложу .dwg и подробные коментарии как должно быть в эксель. спасибо 2 engngr: да. это первое решение, что приходит на ум, но... выравнивание этих 7 атрибутов, должно быть по одной оси, а в обсуждаемом атрибуте будет встречаться не только запись типа "опора; фундамент; анкер", но и просто "опора" или "опора; фундамент". да и за опорой, например, скрывается определенный тип (с разным количеством знаков)... так что центровки по оси - я, во всяком случаи, при таком решении не добился |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
1. Использовать команду _-ATTEXT 2. Прочитать в хэлпе про файл шаблонов (выдержка в виде pdf выложена здесь) 3. В шаблоне настроить C:DELIM c(Разделитель полей) на ; и (при необходимости) C:QUOTE c(Ограничитель символьной строки)
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
BIM, С#, AutoCAD, LISP Регистрация: 15.03.2006
Дуброво
Сообщений: 657
|
Что пришло на ум самое простое и без программирования - использовать команду в Exel - "Текст по столбцам" находится в меню "Данные"
Разделителем, соответственно, сделай точку с запятой. Если не получится по "точке с запятой", тогда поставь галочку "другой" и вбей нужный символ разделения столбцов. Не знаю как в Exel'e а в Open Office предварительно нужно было сделать ещё пару-тройку новых столбцов чтобы после разделения не убить данные справа от разбиваемого столбца.
__________________
"Молодой человек, Вы не представляете всей широты поставленной перед Вами задачи." © Панкратова Г.Е. |
|||
![]() |
|
||||
инженер Регистрация: 30.03.2010
Минск
Сообщений: 7
|
пробовал
20 листов - двадцать раз приходиться извлекать (именно экспортом атрибутов с помощью express tools. просто в дальнейшем их надо дорабатывать и обратно импортировать) чувствую себя обезьяной - открыть лист, экспорт атрибутов, выбор блоков, сохранение, открыть лист, экспорт атрибутов, выбор ... а если таких листов 100?! вот и ищу решение, может кто из знающих подскажет как быть |
|||
![]() |
|
||||
сети Регистрация: 03.11.2008
Московия*
Сообщений: 5,918
|
Бегло в голову приходит написать макрос: -dataextraction + нажатие ctrl+pgdw - и зациклить.
upd: из справки по извлечению 'Все типы объектов в чертеже - Включает все объекты на чертеже в пространство модели и пространство листа, вместе с информацией чертежа. По умолчанию вкл.' - не фурычит? |
|||
![]() |
|
||||
инженер Регистрация: 30.03.2010
Минск
Сообщений: 7
|
да это не -dataextraction... тут дело в том, что используя эту команду она не позволяет извлечь тег "hadle", а обратно импортировать без него не получиться!
я имею в виду команду _attout из express tools (по какому критерию остановить цикл?) Последний раз редактировалось integraloff, 21.02.2011 в 10:42. |
|||
![]() |
|
||||
Регистрация: 21.04.2011
Сообщений: 135
|
Всем привет не пинайте если не по теме, помогите с обработкой таблиц полученных при извлечении атрибутов (пример в прикрепленном файле).
Конечно можно экспортировать таблицу в эксель и там сделать сводную, но таких таблиц бывает довольно много. Хотелось решить проблему при помощи LISP кода, но изучать пока некогда да и не думаю что осилю. Всем спасибо. Последний раз редактировалось WST, 22.04.2011 в 21:22. |
|||
![]() |
|
||||
Регистрация: 26.12.2013
Сообщений: 283
|
Привет всем!
У меня противоположная задача. "ЕСТЬ" БД в виде EXEL(множество листов и ячеек). Программно надо брать дынные из нужной ячейки(статической) и вносить в нужный атрибут определенного блока (программным поиском и вставкой). Атрибуты могут быть многострочные и однострочные. При это надо что бы выбирался определенный шрифт с нужными параметрами(не курсив, высота, сужение, междустрочный интервал, выравнивание и т.п.). Идеально сразу что бы текст из БД попадая в атрибут вписывался в рамку(область за которую текст не должен вылезти) - так что бы при необходимости (если не влазит) менялось сужение и высота и междустрочный интервал автоматически(программно). Так же надо вставлять картинку из Экселя в динБлок, вписывая в нужные границы. такой еще вопрос: можно сделать так, что бы нужный примитив не печатался ? в чертежах он есть, а на бумаге его нет- программно включать и отключать функцию. На примере- иногда надо что бы чертежи были подписаны- печать на бумагу с подписью. А иногда надо печатать без подписи. Все надо решать программно- в блоки лазить нельзя. И еще- скажем блок в котором надо отключить примитив- вставить в новый лист автокада- имя/адрес примитива меняется? в случае если программно примитив искать по имени и не терять его при создании новых чертежей. Из всех главный вопрос про вставку данных из Экселя- остальное из спортивного интереса. |
|||
![]() |
|
||||
CAD Регистрация: 28.08.2003
Киев
Сообщений: 1,834
![]() |
----- добавлено через ~1 мин. -----
Цитата:
Цитата:
__________________
По теории майский жук летать не может. Но он этого не знает. И летает... |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 24.04.2016
Сообщений: 16
|
У меня появились сложности с извлечением данных из блока методом низкого уровня (через шаблон).
Автокад 2011 LT пишет мне ошибку: " ** неверная спецификация поля BL:NAME Cwww000". В моём шаблоне всего 2 строки: BL:NAME Cwww000 BL:LAYER Cwww000 Сохраняю файл шаблона через эксель, как текст для MS-DOS, хотя не уверен, что кодировка будет ASCII. А в блокноте у меня есть только более близкое ANSI (но с ANSI та же ерунда). Как сохранить именно в ASCII, чтобы это было наглядно я не знаю. Подскажите, пожалуйста, что не так. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Файл шаблона не правильный. Настройка файла шаблона вывода атрибутов
В цитате ошибку выделил жирным Цитата:
Цитата:
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 24.04.2016
Сообщений: 16
|
Большое спасибо за ответ. Сейчас уже вспомнил, что когда-то давно вписывал цифры, когда пробовал делать шаблоны, а сейчас забыл об этом. Но на самом деле главной моей ошибкой, что тогда, что сейчас, была неверная, как оказалось, запись имени атрибутов. Для красивости в самом блоке я всегда перебиваю имя атрибута со строчных букв на прописные. А вот с шаблоном эта фишка не прошла. В общем, всё получилось, хоть и строчные буквы в свойствах блока теперь мазолят глаза.
|
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
блоки с атрибутами если разбить | baaba | AutoCAD | 2 | 26.02.2010 15:21 |
Извлечение данных. | shartal | AutoCAD | 1 | 05.11.2009 04:05 |
извлечение данных в AutoCAD 2008 | versus1984 | AutoCAD | 10 | 27.03.2009 09:33 |
Извлечение данных в шаблон EXEL. | OHUKC | Программирование | 23 | 15.09.2008 19:45 |
как программно вставлять блоки с атрибутами без запроса? | kp+ | Программирование | 2 | 14.10.2005 15:11 |