Серия обучающих вебинаров по nanoCAD
dwg.ru forum rss xml
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны |  Справка по форуму |

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

Экспорт и импорт атрибутов и динамических свойств блоков

Версия для печати
 
Ответ
Опции темы Поиск в этой теме
Непрочитано 12.02.2018, 11:49 2 | #1
Экспорт и импорт атрибутов и динамических свойств блоков
Boxa
 
КЖ; C#
 
Санкт-Петербург
Регистрация: 03.11.2005
Сообщений: 1,786

Boxa на форуме Вставить имя

Программа в общем то, как прототип или демка, готова, но доработки вносить можно и нужно.
Слегка протестил на нескольких блоках.

Назначение программы:
Экспорт и импорт свойств, атрибутов и динамических свойств блоков AutoCAD в csv файл, для правки этих свойств во внешних программах.

Принцип работы:
Такой же как и у ATTIN и ATTOUT из Express Tools, выбираем куда будем сохранять, потом выбираем блоки из которых будем вытягивать данные.
По сути программа просто расширенная версия версия ATTIN и ATTOUT.

Команды для запуска:
dynOUT - сохранить в текстовый файл
dynIN - прочитать из текстового файла

Запуск / загрузка:
Размещаем dll-ки в любом удобном месте, главное локально, а не в сети.
Проверяем в свойствах библиотеки, что бы она была разблокирована
Командой _netload грузим выбранную dll в автокад

Open Source:
Написано на C#, код опубликован тут: https://github.com/BoxaShu/dynIN_dynOUT


Видео
Вот тут: ссылка на видео, можно посмотреть пример подсчета арматуры и назначения позиций
Вот тут: ссылка на видео, можно посмотреть пример показывающий составления ведомости отверстий
Вот тут: ссылка на видео, можно посмотреть пример показывающий экспорт свайного поля из Lira SAPR. подробности

Скачать dll
Все последние версии библиотеки, для AutoCAD 2013 - 2019, можно скачать тут: _Release
Так же обращаю внимание на файлик dynINOUT_UI.dll, он один для всех версий и его так же нужно скачивать и так же разблокировать.
__________________
_бложиг

Последний раз редактировалось Boxa, 15.06.2018 в 10:25. Причина: про dynINOUT_UI.dll файл дописал
Просмотров: 5634
 
Непрочитано 12.02.2018, 14:27
#2
Romanich

Robot и Хобот
 
Регистрация: 29.08.2003
Abu Dhabi
Сообщений: 938
Отправить сообщение для Romanich с помощью Skype™


Boxa, спасибо! Можно под 2018 акад версию?
__________________
Robot и Хобот
Romanich вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Автор темы   Непрочитано 12.02.2018, 14:35
1 | #3
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 1,786


Да, почему нет, обновил архив в шапке темы и обновил репозиторий
__________________
_бложиг
Boxa на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 14.02.2018, 20:35
#4
kacugu

начинающий инженер-гидротехник
 
Регистрация: 18.04.2010
Санкт-Петербург
Сообщений: 588


Спасибо за программу. Потестировал на 2015 автокаде - работает.
Из замеченных неудобств, но это проблема чисто Excel: при открытии txt-файлов с данными, похожими по формату на дату, Excel форматирует их на свою манеру. Например преобразует 15.02.18 в 15.02.2018, соответственно о таких вещах нужно помнить и отслеживать. Вот здесь решали эту проблему добавлением апострофа к экспортируемым данным.
kacugu на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Автор темы   Непрочитано 15.02.2018, 06:56
#5
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 1,786


kacugu, не сталкивался, но спасибо. подправил код и пересобрал dll.
В обсуждении на сайте Алексея идет разговор про имя блока, а оно реально кому то нужно? (про костылик в виде атрибута с полем читал...)
Просто привык, что нужные блоки лежат на одном слое и есть нужно экспортировать, то можно просто изолировать этот слой и махом выбрать нужные блоки.
__________________
_бложиг
Boxa на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 15.02.2018, 07:26
#6
trir


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


Цитата:
а потому все последние библиотеки можно скачать тут:
там как бы releases для этого есть
trir вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 15.02.2018, 07:31
#7
kacugu

начинающий инженер-гидротехник
 
Регистрация: 18.04.2010
Санкт-Петербург
Сообщений: 588


Цитата:
Сообщение от Boxa Посмотреть сообщение
В обсуждении на сайте Алексея идет разговор про имя блока, а оно реально кому то нужно?
Offtop: я и сам не понял зачем оно там нужно
kacugu на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Автор темы   Непрочитано 15.02.2018, 07:53
#8
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 1,786


И вот первый вопрос, некоторые динамические свойства могут иметь метку ReadOnly, понятно что обновить значения таких параметров не получиться, а вот следует ли их при этом выводить в txt файл?

Цитата:
Сообщение от trir Посмотреть сообщение
там как бы releases для этого есть
Спасибо, я не опытный пользователь ГитХаба и этой функцией еще не пользовался, но думаю для релиза пока рановато. Как не сложно заметить из кода, в классе DynIN в районе 215 строчке не обрабатываются "сложные" динамические свойства. Написан код за пару часов в "свободную минуту", когда чертежи достали, так что я думаю там есть что доделать.

ЗЫ.
Одна из целей публикации всего этого на ГитХабе в том числе научиться им пользоваться, посмотреть и поучиться как это работает в команде, как исправления и баги фиксируются, как пушаться и мержаться коммиты от других разработчиков.
__________________
_бложиг

Последний раз редактировалось Boxa, 15.02.2018 в 09:39.
Boxa на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 15.02.2018, 09:40
#9
румата


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


Цитата:
Сообщение от Boxa Посмотреть сообщение
Одна из целей публикации всего этого на ГитХабе в том числе научиться им пользоваться, посмотреть и поучиться как это работает в команде
Я пока совсем не понял как этот ГитХаб работает, и какая от него польза. Может есть где посмотреть для чего оно нужно?
румата вне форума вставить имя Обратить внимание модератора на это сообщение  
 
Автор темы   Непрочитано 15.02.2018, 09:48
#10
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 1,786


румата, для себя я его использую как очень удобную папку хранения кода.
Т.е. когда есть минутка пишу код на работе, проверяю какую то идею, потом отправляю коммит на гитхаб (или bitbucket), приходя домой я обновляю локальный репозиторий и продолжаю с того же места где остановился на рабочем компе и в обратную сторону. Но это все и облачная папке может, а вот попробовать совместную разработку и ветвление пока не приходилось, а очень хочется посмотреть что это.
__________________
_бложиг
Boxa на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Автор темы   Непрочитано 28.02.2018, 13:44
#11
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 1,786


В DynIn добавил обработку Flip state; Lookup; Block Properties Table.
__________________
_бложиг
Boxa на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Автор темы   Непрочитано 21.03.2018, 08:56
#12
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 1,786


В шапке добавил ссылки на видео ролики, показывающие примеры работы с данной библиотекой
__________________
_бложиг

Последний раз редактировалось Boxa, 21.03.2018 в 12:54. Причина: во множественном числе...
Boxa на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Автор темы   Непрочитано 23.03.2018, 08:55
#13
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 1,786


Добавил фильтр выбора блоков и сборку под 2019 автокад.
__________________
_бложиг
Boxa на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Автор темы   Непрочитано 26.03.2018, 19:19
1 | #14
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 1,786


Изменения:
Экспортируются и импортируются не только атрибуты и дин. свойства, но и некоторые основные свойства блока: Слой, цвет, масштаб, точка вставки, поворот.
При этом, в процессе импорта, если слоя с указанным именем нет в чертеже, то он будет создан.

Добавлена возможность не только экспортировать/импортировать свойства блоков, но и вставлять копии существующих в чертеже блоков и назначать им нужные свойства.

Релиз пока не обновлял, кто хочет поиграться, брать тут: Debug

----- добавлено через ~12 ч. -----
Обновил релиз и перегнал код в основную ветку.

Из намеченного, осталось дописать настройку работы программы и что-то решить с полями в атрибутах и много строчными атрибутами.
Есть предложения?
__________________
_бложиг

Последний раз редактировалось Boxa, 26.03.2018 в 20:52. Причина: забыл про поворот
Boxa на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 27.03.2018, 22:41
#15
kacugu

начинающий инженер-гидротехник
 
Регистрация: 18.04.2010
Санкт-Петербург
Сообщений: 588


Цитата:
Сообщение от Boxa Посмотреть сообщение
Есть предложения?
а что нужно с ними решать?
kacugu на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Автор темы   Непрочитано 28.03.2018, 07:59
#16
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 1,786


Что с ними делать: как экспортировать, как импортировать, как то выделять в табл.
не знаю, потому и спрашиваю идеи и пожелания.
__________________
_бложиг
Boxa на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 28.03.2018, 12:29
#17
kacugu

начинающий инженер-гидротехник
 
Регистрация: 18.04.2010
Санкт-Петербург
Сообщений: 588


Цитата:
Сообщение от Boxa Посмотреть сообщение
как экспортировать, как импортировать
Мне задача кажется трудновыполнимой (но я не программист).
При обычном экспорте поля и мтекст превращаются в обычный текст, слетает форматирование и "коды" полей (всякие %<\AcVar...).
Как следствие, нужно экспортировать, сохраняя все детали оформления. Но работать с таким экспортированным текстом в excel будет очень сложно.
kacugu на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Автор темы   Непрочитано 01.04.2018, 13:58
#18
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 1,786


Есть несколько идей по поводу оформления и полей, и в принципе это решаемо, но судя по активности пользователей не шибко и нужно. =))
Так что видимо оставлю на потом, когда самому понадобится.
__________________
_бложиг
Boxa на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Непрочитано 01.04.2018, 21:27
#19
kacugu

начинающий инженер-гидротехник
 
Регистрация: 18.04.2010
Санкт-Петербург
Сообщений: 588


Offtop:
Цитата:
Сообщение от Boxa Посмотреть сообщение
судя по активности пользователей не шибко и нужно
так те, кому надо, либо придумали что-то своё, либо подстроились под стандартные возможности экспрессовских attin и attout. Мне тема интересна, но я знаю, что у меня так много работы, что в ближайшие месяцы мне эта программа банально не потребуется
kacugu на форуме вставить имя Обратить внимание модератора на это сообщение  
 
Автор темы   Непрочитано 28.04.2018, 09:45
1 | #20
Boxa

КЖ; C#
 
Регистрация: 03.11.2005
Санкт-Петербург
Сообщений: 1,786


Хотел бы обратить внимание, что файлик dynINOUT_UI.dll, он один для всех версий и его так же нужно скачивать и так же разблокировать.
Внутри этого файла находится окошко для фильтрации блоков.
__________________
_бложиг
Boxa на форуме вставить имя Обратить внимание модератора на это сообщение  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Готовые программы > Экспорт и импорт атрибутов и динамических свойств блоков

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

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

Быстрый переход

Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Назначение свойств атрибутов блока без attsync Кулик Алексей aka kpblc Программирование 9 15.08.2017 06:32
Изменение значения атрибутов с одинаковым тегом во множестве блоков Red Nova Готовые программы 8 25.02.2017 21:54
Применение готового lisp-а для динамических блоков Denver-22 LISP 6 15.09.2016 15:32
Извлечение значений атрибутов блоков AutoCAD Electrical с помощью AutoLisp zaraki_kenpachi LISP 16 19.02.2011 15:30
Ошибка 0xC0000005 (access violation) при импорте свойств динамических блоков Ax3 Программирование 17 24.12.2010 09:43

|| Главная || Каталог САПР || Тендеры || Публикации || Объявления || Биржа труда || Download || Галерея ||
|| Библиотека || Кунсткамера || Каталог предприятий || Контакты || Файлообменник || Блоги ||