Тема: Связь графических объектов и текста

Возможно ли связать программно длину линии и текст, т.е. чтобы при изменении длины изменялясь и цифра (для спецификаций). Сразу оговорюсь в поиске ничего не нашел. Я думаю это облегчило бы жизнь проектировщикам

Re: Связь графических объектов и текста

> Electr
Можно применить Поле (Field). Для объекта типа отрезок можно задать в поле параметр "Длина".

Re: Связь графических объектов и текста

> Владимир Громов
А чтобы длину нескольких линий, например лежащих на определенном слое

Re: Связь графических объектов и текста

> Electr
Поиск

Re: Связь графических объектов и текста

> Electr
В ячейку таблицы (начиная с AutoCAD 2006) можно вставить поле, привязанное к отрезку. Сколько отрезков - столько и ячеек со своими полями. В отдельную ячейку можно вставить поле с формулой, которая будет подсчитывать сумму чисел, содержащихся в других, указанных ячейках. Про слои ничего не могу сказать. По-моему, в поле для одного объекта можно задать только одно свойство.

Re: Связь графических объектов и текста

> Кулик Алексей aka kpblc
В поиске ничего не смог найти, по крайней мере подходящего

Re: Связь графических объектов и текста

https://www.caduser.ru/forum/search.htm … 4%EB%E8%ED
http://dwg.ru/search.php?zone=2&mod … 4%EB%E8%ED

Re: Связь графических объектов и текста

> Кулик Алексей aka kpblc
Эти программы считают длину нескольких отрезков, а вот чтобы автоматически изменять цифру такого нет.

Re: Связь графических объектов и текста

> Electr
И не будет.

Re: Связь графических объектов и текста

> Александр Ривилис
Подождите, а я-то о чем писал? Про таблицу с полями. Там все должно пересчитываться как надо. А-а, это не программа.

Re: Связь графических объектов и текста

> Владимир Громов
Дело в том, что если появится новая линия на заданном Electr слое, то ее длина в таблицу сама не попадет. Ее все равно нужно вносить вручную.

Re: Связь графических объектов и текста

> Александр Ривилис
Так ведь изменять длину можно только у ранее нарисованной линии. Electr упоминает спецификацию. А в нее все равно нужно что-то вносить.

Re: Связь графических объектов и текста

Значит надеяться не на что?

Re: Связь графических объектов и текста

> Electr
А чем вам таблица с полями не нравится? Ну, будет не автоматически, а полуавтоматически. Если же линия - это у вас арматурный стержень, то попробуйте Project Studio от CS.

Re: Связь графических объектов и текста

Проблема все та же, надо уговорить начальство, а это трагедия. Вот и пытаемся облегчить жизнь.

Re: Связь графических объектов и текста

> Electr
Вот попробуйте http://dwg.ru/dnl/260
Только для полилиний.

Re: Связь графических объектов и текста

> serzh
Считает только площади и периметры, и выдает ошибку

Re: Связь графических объектов и текста

> Electr
площади можно выключить. периметр и есть длина. если прога заинтересовала про ошибки пишите по почте

Re: Связь графических объектов и текста

Насколько я понимаю отслеживать длину всех линий на определенном слое автоматически не представляется возможным?

Re: Связь графических объектов и текста

> serzh
А ваша программа удобная, уже половина конторы себе ее поставила. Спасибо.

Re: Связь графических объектов и текста

Еще бы не только с полилиниями работала, было бы прекрасно

Re: Связь графических объектов и текста

Можно попробовать реакторами...
Без проверок на выбор объектов, их типов и т.д.

(defun react-test (/ name-line name-txt line-reactor)
  (vl-load-com)
  (setq    name-line (vlax-ename->vla-object
            (car (entsel "\nВыберите линию: "))
          ) ;_ end of vlax-ename->vla-object
  ) ;_ end of setq
  (setq    name-txt (vlax-ename->vla-object
           (car (entsel "\nВыберите текст: "))
         ) ;_ end of vlax-ename->vla-object
  ) ;_ end of setq
  (setq    line-reactor
     (vlr-object-reactor
       (list name-line)
       (list name-txt)
       (list '(:vlr-modified . len))
     ) ;_ end of vlr-object-reactor
  ) ;_ end of setq
  (vlr-pers line-reactor)
) ;_ end of defun
(defun len (L txt arg /)
  (vla-put-TextString
    (car (vlr-data txt))
    (rtos (vla-get-Length L) 2 2)
  ) ;_ end of vla-put-TextString
) ;_ end of defun
;;;Запуск -> (react-test)

Re: Связь графических объектов и текста

> CB
Получается следующее:
Выберите линию:
Выберите текст: #<VLR-Object-Reactor>
и потом никакой реакции

Re: Связь графических объектов и текста

> [Re:] Electr
Реакция будет когда изменишь длину линии...

Re: Связь графических объектов и текста

Вот это уже интересно, а если нужна сумма нескольких линий