Импорт/экспорт атрибутов и дин.свойств

В теме на dwg.ru LISP для изменения настраиваемых (Custom) параметров динамических блоков помянули мои решения по дин.блокам и по импорту-экспорту атрибутов. И понадобилось объединить их.
Ок, не вопрос. Забирайте, тестируйте :) Пожелания, критика и проч. - либо здесь, либо на dwg.ru. Где больше нравится

dp-att-export-import_1.0
Исправления:
- убрана лишняя регенерация
- исправление ошибки назначения дин.свойств при некоторых условиях
dp-att-export-import_1.1

Забыл одну функцию, сейчас вроде бы работает: dp-att-export-import_1.2

По первому приближению вроде бы работает как надо. Но есть несколько "но":
1. Углы передаются в радианах. Если собираетесь высчитывать в Excel, используйте функцию =ПИ() для преобразования углов
2. Нецелые числа передаются с разделителем "." (точка). Если сделаете вдруг в числе разделитель "," (запятая), я ни за что не отвечаю ;) Пофиксено.

Версия 1.3 - исправлена обработка *.txt файлов.dp-att-export-import_1.3



Комментарии

Есть 4 коммент. к “Импорт/экспорт атрибутов и дин.свойств”
  1. Женя пишет:

    Добрый день! Ой как Вы меня выручили с данным лиспом. Огромное спасибо!
    Один вопрос - как можно изменить lisp, что происходил экспорт не всех атрибутов, а конкретных?

  2. Кулик Алексей aka kpblc пишет:

    Если известны тэги атрибутов, то можно поменять код, фильтруя тэги. Можно вообще извратиться и:
    - получить список всех тэгов атрибутов
    - вывести dcl-диалог, в котором запросить отображаемые в отчете атрибуты
    - выполнить экспорт
    ...
    - импортировать данные.

    Насколько я помню, надо будет менять получение и обработку tag_lst.

  3. Женя пишет:

    "Если известны тэги атрибутов, то можно поменять код, фильтруя тэги." - Тэги известны. А в каких строчках надо провести изменения и на что поменять? Лисп - для меня пока не посильная ноша. Интересно, но страшно))))

  4. Кулик Алексей aka kpblc пишет:

    Ну, в принципе можно как угодно менять код - если что, его можно повторно скачать.
    Советую посмотреть описание функции _kpblc-block-attr-get-pointer-mask и ее вызовы - по идее, этого должно быть достаточно.
    P.S. Прошу прощения, что так долго отвечал - безумно много работы, я ничего не успеваю :(

Поделитесь своим мнением


Я не робот.