|
||
| Правила | Регистрация | Пользователи | Сообщения за день | | Поиск | | Справка по форуму | Файлообменник | |
|
![]() |
Поиск в этой теме |
![]() |
#1 | |
Автоматическое изменение атрибутов блоков
Регистрация: 01.07.2010
Сообщений: 521
|
||
Просмотров: 24070
|
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 40,377
|
Поиск по словам "автонумерация" и ему подобным. Вариантов решения - тьма.
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
![]() |
|
||||
Цитата:
![]()
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Offtop: Быть новичком и лениться юзать поиск - это не одно и то же. Кроме того, язык и версию автокада желательно указывать (на будущее).
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
дубль 2: язык и версия акада.
Offtop: Некоторое время спустя... п.с.моё уточнение настолько сильно призадумало автора топика? подсказка: под языком подразумевается язык программирования, на котором он ищет решение, а не что-то иное. ![]()
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: Последний раз редактировалось hwd, 30.09.2010 в 17:16. Причина: делаю предположение по поводу молчания автора топика |
||||
![]() |
|
||||
Я тоже тьму тем читал на эту тему, а решения по автонумерации так и не нашел. Мне тоже надо в атрибутах блока проставлять автоматически номер блока с префиксом и суффиксом. Я даже знаю принцип как это надо делать, да только лень самому писать.
Собрали набор блоков по какому-то признаку и в соотвествии расположением блока в наборе (а он там расположен по порядку создания) пронумеровали. Вот такой проги, которая создает набор блоков, просит указать имя атрибута в них и пронумеровывает не видел. |
||||
![]() |
|
||||
Цитата:
Offtop: А Zaghim так и молчит как рыба об лёд, насчёт языка и версии акада...
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Шаражпроектхалтурмонтаж Регистрация: 29.10.2004
Талды-Париж
Сообщений: 6,008
|
Ну если с автонумерацией разберешься (как, кстати?) - то и с ее продолжением справишься.
Подсчитал сколько блоков уже стоит, вставил новый и нумернул с приращением к количеству. Или перенумеровал весь набор, включая вновь вставленный. Я так нумерую блоки штампов последующих листов - у тебя не та же задача случайно? |
|||
![]() |
|
||||
Продуман Регистрация: 22.02.2007
Питер
Сообщений: 2,839
|
По моему правильней взять все блоки и инкрементировать максимальный атрибут.
__________________
Когда в руках молоток все вокруг кажется гвоздями. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Последние версии Binc BincA ApNum ApNumA
можно ли автоматизировать нумерацию блоков автоматическая нумерация в атрибутах блока Автоматическая нумерация в AutoCad 2006
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Цитата:
__________________
Надеюсь, ты не социальный овощ? Это определяется делами! :welcome: |
||||
![]() |
|
||||
Регистрация: 01.07.2010
Сообщений: 521
|
Жарко дискуссия развернулась))) Стараюсь писать пока только на Автолиспе, задачи которые себе ставил, все пока что получались именно при помощи его.... Автокад предпочтительно 2008, но есть и 10.
Вообще я думал это делать так, вначале вставил блок, потом entnext получить его свойства и как я думаю там будут эти самые атрибуты. Потом каким-то образом их заменить (кстати как это сделать не знаю, всегда только что то выдергивал, а втыкать назад не пробовал). В общем-то нужна будет не только нумерация, а еще и некоторые другие параметры, высотная отметка, например. А как выбрать все блоки программно? Понятно, что они должны быть все в одном слое, иначе возьмется лишнее. QuickSelect? Просто в лиспе не пробовал данный метод... У меня не блоки штампов, у меня колодцы))) |
|||
![]() |
|
||||
Шаражпроектхалтурмонтаж Регистрация: 29.10.2004
Талды-Париж
Сообщений: 6,008
|
с помощью (ssget "_X" '((0 . "INSERT") ...
а потом перебирать их и заносить данные в атрибуты. Примеры работы с атрибутами есть здесь: http://faqs.org.ru/progr/graph/autolisp2.htm [22] Атрибуты блоков [22.1] Как получать доступ к атрибутам блоков? [22.2] Как изменить (MODIFY) атрибуты блока? [22.3] Как подкорректировать (UPDATE) атрибуты блока? |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
Извлечение значений атрибутов блоков AutoCAD Electrical с помощью AutoLisp там смотреть ф-ции get-all-atts, mip-block-setattr-bylist и примеры их использования
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
|
||||
Регистрация: 01.07.2010
Сообщений: 521
|
Всех обнял сразу, спасибо за помощь!!!!!!!!!!!! Буду разбираться!
Немного усложнилась задача. Блок стал динамический, стало 4 визибл сета... В общем когда вставляю блок, нужно сделать так что бы во всех этих 4 сетах менялось первые два значения атрибутов. Не понял как пользоваться этим: Код:
В общем решил проблему опять по-своему, в таком виде: Код:
Но данные меняются только в одном визибл сете, как сделать что бы менялись во всех четырех? И еще вопрос немного не в тему, но как сделать в блоке, что когда я его перетаскиваю в разные углы, стрелка привязывалась к разным уголкам рамки с атрибутами...что-то наподобие мультистрелки Последний раз редактировалось Zaghim, 02.10.2010 в 13:34. |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Цитата:
![]() По умолчанию имя блока должно быть "block", имя тэга атрибута "tag". Никаких команд нет. Нужно 1. Открыть файл test.dwg 2. Загрузить в него лисп 3. Просто копируйте и удаляйте блоки Настройку имени блока и имени атрибута нужно менять в следующих строчках кода Код:
__________________
Как использовать код на Лиспе читаем здесь Последний раз редактировалось VVA, 29.11.2012 в 12:09. Причина: добавил url странички автора |
|||
![]() |
|
||||
Инженер LISP Регистрация: 11.05.2005
Минск
Сообщений: 6,996
|
Добавил к #18
__________________
Как использовать код на Лиспе читаем здесь |
|||
![]() |
![]() |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Массовое редактирование свойств атрибутов блоков | 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 |