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

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

Автоматическое изменение атрибутов блоков

Ответ
Поиск в этой теме
Непрочитано 30.09.2010, 16:19 #1
Автоматическое изменение атрибутов блоков
Zaghim
 
Регистрация: 01.07.2010
Сообщений: 521

Добрый день. Тема уже была, но ответа там, к сожалению, не было.
Как при помощи лиспа сделать так, что бы при вставке блока, автоматически заполнялись его атрибуты. Скажем порядковый номер - вставляем блок первый раз, соответственно атрибут - Блок 1, второй - Блок 2 и тд. Ну и таким же образом некоторые другие параметры. И самое главное реально ли, что, если я вышел из программы вставки блоков и закончил, например, на 10 блоке, что-то порисовал на чертеже, и теперь хочу продолжить вставлять блоки - запускаю заново прогу и блок у меня вставляется с номер 11, т.е. след по списку. Заранее всем спасибо!
Просмотров: 24205
 
Непрочитано 30.09.2010, 16:23
1 | #2
Кулик Алексей aka kpblc
Moderator

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


Поиск по словам "автонумерация" и ему подобным. Вариантов решения - тьма.
__________________
Моя библиотека lisp-функций
---
Обращение ко мне - на "ты".
Все, что сказано - личное мнение.
Кулик Алексей aka kpblc вне форума  
 
Непрочитано 30.09.2010, 16:30
#3
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от Кулик Алексей aka kpblc Посмотреть сообщение
Поиск по словам "автонумерация" и ему подобным. Вариантов решения - тьма.
Offtop: Топики Zaghim меня ещё не разу не удивили своей новизной...
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Автор темы   Непрочитано 30.09.2010, 16:38
#4
Zaghim


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


Естественно, у новичка типичные тупые вопросы))) у людей с опытом вопросы по-интереснее)
Zaghim вне форума  
 
Непрочитано 30.09.2010, 16:41
1 | #5
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от Zaghim Посмотреть сообщение
Естественно, у новичка типичные тупые вопросы))) у людей с опытом вопросы по-интереснее)
Offtop: Быть новичком и лениться юзать поиск - это не одно и то же. Кроме того, язык и версию автокада желательно указывать (на будущее).
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Автор темы   Непрочитано 30.09.2010, 16:43
#6
Zaghim


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


У меня вкладок 20 этого сайта открыто и толком ничего похожего не нашел... С автонумерацией разберусь. А как быть, с так скажем, автопродолжением?
Zaghim вне форума  
 
Непрочитано 30.09.2010, 16:48
1 | #7
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


дубль 2: язык и версия акада.

Offtop:
Некоторое время спустя...
п.с.моё уточнение настолько сильно призадумало автора топика? подсказка: под языком подразумевается язык программирования, на котором он ищет решение, а не что-то иное.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:

Последний раз редактировалось hwd, 30.09.2010 в 17:16. Причина: делаю предположение по поводу молчания автора топика
hwd вне форума  
 
Непрочитано 30.09.2010, 17:18
1 | #8
Supermax

Руководитель фирмы
 
Регистрация: 28.03.2007
Москва
Сообщений: 1,831
Отправить сообщение для Supermax с помощью Skype™


Я тоже тьму тем читал на эту тему, а решения по автонумерации так и не нашел. Мне тоже надо в атрибутах блока проставлять автоматически номер блока с префиксом и суффиксом. Я даже знаю принцип как это надо делать, да только лень самому писать.
Собрали набор блоков по какому-то признаку и в соотвествии расположением блока в наборе (а он там расположен по порядку создания) пронумеровали.
Вот такой проги, которая создает набор блоков, просит указать имя атрибута в них и пронумеровывает не видел.
Supermax вне форума  
 
Непрочитано 30.09.2010, 17:20
1 | #9
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от Supermax Посмотреть сообщение
Я тоже тьму тем читал на эту тему, а решения по автонумерации так и не нашел.
Я не понимаю, какая сложность в алгоритме реализации этого? Пример, в котором используется так вами желаемая автонумерация с произвольным начальным значением.
Offtop: А Zaghim так и молчит как рыба об лёд, насчёт языка и версии акада...
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Непрочитано 30.09.2010, 17:38
1 | #10
Nike

Шаражпроектхалтурмонтаж
 
Регистрация: 29.10.2004
Талды-Париж
Сообщений: 6,010


Цитата:
Сообщение от Zaghim Посмотреть сообщение
С автонумерацией разберусь. А как быть, с так скажем, автопродолжением?
Ну если с автонумерацией разберешься (как, кстати?) - то и с ее продолжением справишься.
Подсчитал сколько блоков уже стоит, вставил новый и нумернул с приращением к количеству. Или перенумеровал весь набор, включая вновь вставленный.
Я так нумерую блоки штампов последующих листов - у тебя не та же задача случайно?
Nike вне форума  
 
Непрочитано 30.09.2010, 17:46
1 | #11
Дима_

Продуман
 
Регистрация: 22.02.2007
Питер
Сообщений: 2,839


Цитата:
Сообщение от Nike Посмотреть сообщение
Подсчитал сколько блоков уже стоит, вставил новый и нумернул с приращением к количеству. Или перенумеровал весь набор, включая вновь вставленный.
По моему правильней взять все блоки и инкрементировать максимальный атрибут.
__________________
Когда в руках молоток все вокруг кажется гвоздями.
Дима_ вне форума  
 
Непрочитано 30.09.2010, 17:47
1 | #12
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Последние версии Binc BincA ApNum ApNumA
можно ли автоматизировать нумерацию блоков
автоматическая нумерация в атрибутах блока
Автоматическая нумерация в AutoCad 2006
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 30.09.2010, 17:50
1 | #13
hwd

C, C++, C#
 
Регистрация: 07.10.2009
С-Пб.
Сообщений: 2,762
Отправить сообщение для hwd с помощью Skype™


Цитата:
Сообщение от Zaghim Посмотреть сообщение
И самое главное реально ли, что, если я вышел из программы вставки блоков и закончил, например, на 10 блоке, что-то порисовал на чертеже, и теперь хочу продолжить вставлять блоки - запускаю заново прогу и блок у меня вставляется с номер 11, т.е. след по списку.
Было уже по форуму, причём недавно (я помню, просто лень искать). Что в этом сложного? Вот пример глянь.
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome:
hwd вне форума  
 
Автор темы   Непрочитано 30.09.2010, 18:04
#14
Zaghim


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


Жарко дискуссия развернулась))) Стараюсь писать пока только на Автолиспе, задачи которые себе ставил, все пока что получались именно при помощи его.... Автокад предпочтительно 2008, но есть и 10.
Вообще я думал это делать так, вначале вставил блок, потом entnext получить его свойства и как я думаю там будут эти самые атрибуты. Потом каким-то образом их заменить (кстати как это сделать не знаю, всегда только что то выдергивал, а втыкать назад не пробовал). В общем-то нужна будет не только нумерация, а еще и некоторые другие параметры, высотная отметка, например.
А как выбрать все блоки программно? Понятно, что они должны быть все в одном слое, иначе возьмется лишнее. QuickSelect? Просто в лиспе не пробовал данный метод...
У меня не блоки штампов, у меня колодцы)))
Zaghim вне форума  
 
Непрочитано 30.09.2010, 18:18
1 | #15
Nike

Шаражпроектхалтурмонтаж
 
Регистрация: 29.10.2004
Талды-Париж
Сообщений: 6,010


Цитата:
Сообщение от Zaghim Посмотреть сообщение
как выбрать все блоки программно?
с помощью (ssget "_X" '((0 . "INSERT") ...
а потом перебирать их и заносить данные в атрибуты.
Примеры работы с атрибутами есть здесь: http://faqs.org.ru/progr/graph/autolisp2.htm
[22] Атрибуты блоков
[22.1] Как получать доступ к атрибутам блоков?
[22.2] Как изменить (MODIFY) атрибуты блока?
[22.3] Как подкорректировать (UPDATE) атрибуты блока?
Nike вне форума  
 
Непрочитано 30.09.2010, 18:20
1 | #16
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Цитата:
Сообщение от Zaghim Посмотреть сообщение
Потом каким-то образом их заменить (кстати как это сделать не знаю, всегда только что то выдергивал, а втыкать назад не пробовал).
А где АКАД хранит значения атрибутов?
Извлечение значений атрибутов блоков AutoCAD Electrical с помощью AutoLisp там смотреть ф-ции get-all-atts, mip-block-setattr-bylist и примеры их использования
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Автор темы   Непрочитано 30.09.2010, 21:48
#17
Zaghim


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


Всех обнял сразу, спасибо за помощь!!!!!!!!!!!! Буду разбираться!

Немного усложнилась задача. Блок стал динамический, стало 4 визибл сета... В общем когда вставляю блок, нужно сделать так что бы во всех этих 4 сетах менялось первые два значения атрибутов. Не понял как пользоваться этим:
Код:
[Выделить все]
Используйте entmod, и список entget будет извлечен из (attele). 
;;; изменяет значение атрибута на новое, группа 1 
(defun ATTCHG (ele attname new / b) (if (setq b (attele ele attname)) (entmod (subst (cons 1 new) (getval 1 b) b))))
Куда это впихивать и как оно заметит мне значения атрибута не понятно(((Прикрепляю блок...


В общем решил проблему опять по-своему, в таком виде:
Код:
[Выделить все]
(defun c:mip ()
  (vl-load-com)
  (setq nambl "путь и имя файла")
  (command "INSERT" nambl)
  (command)
  (setq cl 1)
  (if (= num nil)
    (setq num 1)
  )  
  (while cl
    (setq pt (getpoint "\nТыкай точку или <Enter>:"))
      (if (= pt nil)
        (setq cl nil)
    (progn
      (setq numbl "Kk - ")
          (setq numm (itoa num))
          (setq numbl (strcat numbl numm))
          (setq num (1+ num))
          (vl-cmdf "INSERT" "Kk" pt 1 1 0 numbl"""""""")
    )
      )
  )

)
в данном случае, если прервать команду и вызвать в след раз нумерация продолжиться с последнего номера...
Но данные меняются только в одном визибл сете, как сделать что бы менялись во всех четырех?

И еще вопрос немного не в тему, но как сделать в блоке, что когда я его перетаскиваю в разные углы, стрелка привязывалась к разным уголкам рамки с атрибутами...что-то наподобие мультистрелки
Вложения
Тип файла: dwg
DWG 2004
Пример.dwg (65.1 Кб, 3561 просмотров)

Последний раз редактировалось Zaghim, 02.10.2010 в 13:34.
Zaghim вне форума  
 
Непрочитано 16.09.2011, 14:29
1 | #18
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Цитата:
Сообщение от Zaghim Посмотреть сообщение
Как при помощи лиспа сделать так, что бы при вставке блока, автоматически заполнялись его атрибуты. ... И самое главное реально ли, что, если я вышел из программы вставки блоков и закончил, например, на 10 блоке, что-то порисовал на чертеже, и теперь хочу продолжить вставлять блоки - запускаю заново прогу и блок у меня вставляется с номер 11,
Более того, если удалить блок, то атрибуты перенумеруются. AutoLabel Attributes the swamp или на страничке автора AutoLabel Attributes Lee Mac



По умолчанию имя блока должно быть "block", имя тэга атрибута "tag". Никаких команд нет.
Нужно
1. Открыть файл test.dwg
2. Загрузить в него лисп
3. Просто копируйте и удаляйте блоки
Настройку имени блока и имени атрибута нужно менять в следующих строчках кода
Код:
[Выделить все]
;; [Note: Block names and Attribute Tags are *not* case-sensitive]

(setq *blockname* "block"  ;; Name of Block to be Updated
      *blocktag*  "tag"    ;; Attribute Tag to be Updated
)
Вложения
Тип файла: lsp AutoLabelAttributesV1-0.lsp (7.8 Кб, 385 просмотров)
Тип файла: dwg
DWG 2004
test.dwg (38.9 Кб, 3721 просмотров)
__________________
Как использовать код на Лиспе читаем здесь

Последний раз редактировалось VVA, 29.11.2012 в 12:09. Причина: добавил url странички автора
VVA вне форума  
 
Непрочитано 22.09.2011, 16:37
#19
angel-fear

инженер-электрик
 
Регистрация: 21.10.2010
Краснодар
Сообщений: 134


VVA, можно выложить это непосредственно на форум?
angel-fear вне форума  
 
Непрочитано 23.09.2011, 10:14
1 | #20
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Добавил к #18
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 23.09.2011, 11:21
#21
angel-fear

инженер-электрик
 
Регистрация: 21.10.2010
Краснодар
Сообщений: 134


VVA, спасибо, полезная вещь!

А как можно подправить код, чтобы лисп работал не с одним набором block/tag, а с несколькими типа:

block1/tag1, block2/tag2... а еще лучше по маске - со всеми блоками block*/tag*?
хм... хотя пожалуй, маска для атрибута тут ни к чему. Просто block*/tag

а если еще добавить нумерацию блоков, вставленных в таблицу.... вообще сказка будет )
и поддержку префиксов/суффиксов ) запросы растут )

кстати, если из середины списка был удален какой-то блок, назад его уже никак не поставить?

Последний раз редактировалось angel-fear, 23.09.2011 в 12:36.
angel-fear вне форума  
 
Непрочитано 23.09.2011, 14:00
#22
Nike

Шаражпроектхалтурмонтаж
 
Регистрация: 29.10.2004
Талды-Париж
Сообщений: 6,010


совсем малюсенькая хотелочка
Nike вне форума  
 
Непрочитано 01.03.2012, 14:53
#23
Роман Амосов

энергетик
 
Регистрация: 01.03.2012
Владивосток
Сообщений: 72


Цитата:
Сообщение от hwd Посмотреть сообщение
Я не понимаю, какая сложность в алгоритме реализации этого? Пример, в котором используется так вами желаемая автонумерация с произвольным начальным значением.
Мне тоже интересно решение этого вопроса, но в этой ссылке нечего найти не смог
Роман Амосов вне форума  
 
Непрочитано 07.05.2012, 16:47
#24
Роман Амосов

энергетик
 
Регистрация: 01.03.2012
Владивосток
Сообщений: 72


Отличная програмка вышла. Спасибо.
Можно ли сделать так чтобы к нумерации добавлялась литера "а", "б", "с" поочередно. Чтобы нумерация выглядела так 1а, 2б, 3с, 4а, 5б, 6с, 7а .....
Роман Амосов вне форума  
 
Непрочитано 22.06.2012, 11:01
#25
Роман Амосов

энергетик
 
Регистрация: 01.03.2012
Владивосток
Сообщений: 72


Цитата:
Сообщение от angel-fear Посмотреть сообщение
кстати, если из середины списка был удален какой-то блок, назад его уже никак не поставить?
Здорово было бы доработать код.
1. Имя блока и тег изменять не в тексте кода, а чтобы програмно был запрос на ввод имени блока и тега
2. Чтобы бобавить блок с № n надо скопировать блок с атрибутом № n-1 с нажатой (с удерживанием) определеной комбинацией клавиш.
Если это конечно возможно
Роман Амосов вне форума  
 
Непрочитано 22.06.2012, 23:42
#26
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Роман Амосов, по п.1 ничего сложного нет. Тебе любой подскажет, как написать эти 2 строчки. Я сейчас не могу, т.к. нахожусь в отпуске с планшетом. По п.2 - ничего пока сказать не могу.
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 30.07.2012, 13:21
#27
Eddicordo

КИП и А
 
Регистрация: 28.04.2010
Киев
Сообщений: 101
<phrase 1=


Прикольная программка. Но бестолковая без доработки.
http://www.lee-mac.com/autolabelattributes.html
Мне бы она пригодилась если бы нумерация происходила с 001, 002, 003...015, 016....051, 052...125, 126 и т.д.
И перед работой проги указывать диапазон мышью где нумерация начинается с 001, и т.д. Если блок не попадает в указанный диапазон то нумерация не срабатывает.
Если указанно несколько диапазонов то в каждом из диапазонов нумерация начинается с 001.
Указать зависимость. В блоке к примеру есть 2 атрибута.
"tag" - атрибут который пронумеровывается
"text" - атрибут в котором забивается значение. (К примеру "Мама")
Если в указанном диапазоне вставлены блоки с одинаковыми значениями "Мама" в атрибуте "text". То нумерация начинается с 001, и т.д. (Таким образом происходит разная нумерация в одних и тех же блоках с одними и теми же атрибутами.) Если нужна нумерация единая, то значение в атрибуте "text" одно и то же везде.
Короче другими словами все одинаковые значения в атрибуте "text" нумеровать с 001, в указанном диапазон.

Ого закрутил. Но реально унифицировать цены бы не было.
VVA, Ты можешь я знаю

А лучше не выделять диапазон мышью, а указывать замкнутый контур. Неважно чем выполнен контур (Линиями, полилниями,область) главное что бы контур был замкнутый.

Добавил файл с примером для наглядности
Вложения
Тип файла: dwg
DWG 2007
test1.dwg (72.7 Кб, 2369 просмотров)

Последний раз редактировалось Eddicordo, 30.07.2012 в 17:24. Причина: Добавление файла с примером
Eddicordo вне форума  
 
Непрочитано 28.11.2012, 13:41
#28
Palomnic

ПГС
 
Регистрация: 22.05.2007
Москва
Сообщений: 638


Покрутился я тоже с AutoLabelAttributesV1-0, вроде усе заработало. Проблему с маской решил временно, просто добавил еще один атрибут окурат положив его перед "счетчиком" получилось BR4.1 - BR4.X, ну пока вроде и этого хватает, но вот расставил я блоки, от нумеровались они... А как мне к следующим блокам переходить? Менять строчки лиспа с нейма "Block"? А если он уже подгружен в автозагрузку? А как его изменить, когда он уже внутри Акада сидит? Ну конечно же его изменить можно, я не спорю, но хотелось бы как-то не по строчкам кода бегать, а так с помощью двух кнопок как-нибудь))...
Я уж думал, грешным делом, взрывать блоки и переназначать имя для следующих блоков. Вот для моих заний с программированием это ей богу проще)
В общем, автономераторов полно, но все равно вопросов пока больше чем ответов

Последний раз редактировалось Palomnic, 14.07.2014 в 16:28.
Palomnic вне форума  
 
Непрочитано 29.11.2012, 11:54
#29
Alexeipost


 
Регистрация: 07.12.2010
Уфа
Сообщений: 427
<phrase 1=


Цитата:
Сообщение от Zaghim Посмотреть сообщение
Добрый день. Тема уже была, но ответа там, к сожалению, не было.
Как при помощи лиспа сделать так, что бы при вставке блока, автоматически заполнялись его атрибуты.
Numinc от Lee-mac.com с этим справляется, но только с одним атрибутом

Цитата:
Сообщение от Zaghim Посмотреть сообщение
Скажем порядковый номер - вставляем блок первый раз, соответственно атрибут - Блок 1, второй - Блок 2 и тд. Ну и таким же образом некоторые другие параметры. И самое главное реально ли, что, если я вышел из программы вставки блоков и закончил, например, на 10 блоке, что-то порисовал на чертеже, и теперь хочу продолжить вставлять блоки - запускаю заново прогу и блок у меня вставляется с номер 11, т.е. след по списку. Заранее всем спасибо!
Алгоритм такой:
1. Выбор блока.
2. Выбор атрибута в выбранном блоке
3. Программа ищет количество существующих блоков и смотрит значения атрибутов. Если блоков нет, то "Блок 1". Если блоки есть, то находит блок с наибольшим атрибутом (речь же идет о числах???) и вставляет блок со следующим порядковым номером.
4. Если вставили 10 блоков, а потом удалили блок №3, то при запуске программы она должна выдать сообщение "Нет блока с №3!!! Переименовать блоки???" Жмешь "Да! Переименовать!" и она переименовывает 4 в 3, 5 в 4 и т.д. Или жмешь "НЕТ! Вставить блок с №3 заново!", и вставляешь блок с №3, а далее вставляешь блок с №11, №12,.....итд.
Alexeipost вне форума  
 
Непрочитано 29.11.2012, 12:12
#30
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Удалено
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 29.11.2012, 12:31
#31
Alexeipost


 
Регистрация: 07.12.2010
Уфа
Сообщений: 427
<phrase 1=


#18 не подходит - потому что допустим все расставил, а потом надо где-то посередине удалить - хорошо, удалил. А еще через пару дней надо примерно в тоже место вставить ещё два блока, то они получатся с последними номерами. Что несколько сбивает общую картину.
#12 - много программ, причем и работающих и не работающих - покопался в них в очередной раз - ничего полезного для себя не нашел. BINCA при выделении блока, выдает кучу атрибутов, а потом выдает ошибку (это в блоке с многими атрибутами), с одним атрибутом работает, но не нашел как делать замену. Т.е. он вставляет к уже существующему тексту ещё и свой текст.
Более того со всем этим лучше и быстрее справляется number.dvb и numinc.lsp
Alexeipost вне форума  
 
Непрочитано 30.11.2012, 09:14
#32
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Alexeipost, Проверил BINCA - у меня работает без ошибок. Пришли мне почтой образец. Посмотрю в чем проблема.

Цитата:
Сообщение от Alexeipost Посмотреть сообщение
с одним атрибутом работает, но не нашел как делать замену
Опять у меня все меняет. Присылай образец. Или здесь выложи
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
 
Непрочитано 14.07.2014, 14:31
#33
Screemer


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


Нужно тело программы для данного блока. Так чтобы атрибут был К1 до бесконечности и имя атрибута менялось в зависимости от изменения размера блока только по высоте и длине блока . Помогите пожалуйста чайнику который не шарит в программировании.
Вложения
Тип файла: dwg
DWG 2013
2000.dwg (30.3 Кб, 1437 просмотров)
Screemer вне форума  
 
Непрочитано 15.07.2014, 02:31
#34
Сергей812


 
Регистрация: 10.08.2013
Сообщений: 11,499


Цитата:
Сообщение от Screemer Посмотреть сообщение
имя атрибута менялось в зависимости от изменения размера блока только по высоте и длине блока
если нужны просто размеры - то те же поля в атрибутах, настроить на параметры растяжения и соответствующую точность отображения. Только нужно их принудительно обновлять для отображения новых значений. А автонумеровалок атрибутов различного вида только ленивый не может найти.
Сергей812 вне форума  
 
Непрочитано 15.11.2017, 07:02
#35
serega374


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


В некоторых файлах AutoLabelAttributesV1-2 выдаёт ошибку:

"Введите значения атрибутов
TAG:
; ошибка: ActiveX Server возвратил ошибку: неизвестное имя: ContentType"

Причём до этого в этих же файлах всё работало.
serega374 вне форума  
 
Непрочитано 30.03.2018, 14:35
#36
Роман Амосов

энергетик
 
Регистрация: 01.03.2012
Владивосток
Сообщений: 72


Всем доброго времени суток. Можно ли сделать так чтобы к нумерации добавлялась литера "а", "б", "с" поочередно. Чтобы нумерация выглядела так 1а, 2б, 3с, 4а, 5б, 6с, 7а ..... ОЧЕНЬ ОЧЕНЬ ОЧЕНЬ нааааадо. Помогите пожалуйста.
Роман Амосов вне форума  
 
Непрочитано 30.03.2018, 14:44
#37
Роман Амосов

энергетик
 
Регистрация: 01.03.2012
Владивосток
Сообщений: 72


А вот и код
Вложения
Тип файла: lsp Автонумерация_СВ.lsp (7.8 Кб, 75 просмотров)
Роман Амосов вне форума  
 
Непрочитано 30.10.2023, 12:35
#38
Kavalergrad


 
Регистрация: 21.11.2014
Москва
Сообщений: 60


Подскажите, пожалуйста, как запустить Автонумерация_СВ.lsp?
Kavalergrad вне форума  
 
Непрочитано 31.10.2023, 18:52
#39
VVA

Инженер LISP
 
Регистрация: 11.05.2005
Минск
Сообщений: 6,996


Kavalergrad, Как использовать лисп, опубликованный на форуме
код в #37 - это реакторы, поэтому достаточно загрузить. Имя блока - "св", таг атрибута - светильник
Цитата:
(setq *blockname* "св" ;; Name of Block to be Updated
*blocktag* "светильник" ;; Attribute Tag to be Updated
)
__________________
Как использовать код на Лиспе читаем здесь
VVA вне форума  
Ответ
Вернуться   Форум DWG.RU > Программное обеспечение > Программирование > Автоматическое изменение атрибутов блоков



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Массовое редактирование свойств атрибутов блоков kgb Программирование 11 13.06.2023 14:39
Как поменять цвет атрибутов уже вставленных в чертёж блоков? МишаИнженер Программирование 5 09.10.2012 20:55
Тормозит команда расчленения набора блоков batmax Программирование 4 31.08.2010 17:37
Автоматическое заполнение атрибутов блоков. TheBuTeK Программирование 8 24.12.2007 17:22