Сообщество программистов Autodesk в СНГ

ADN Club => AutoLisp / VisualLISP и DCL => Тема начата: I_stiv от 20-11-2019, 10:52:43

Название: Lisp переменную --> в поле текста
Отправлено: I_stiv от 20-11-2019, 10:52:43
Добрый день.

задача вообще состоит в том чтобы исправить LISP http://www.lee-mac.com/numinc.html  (http://www.lee-mac.com/numinc.html) так, чтобы он в блоке менял значение текста  в блоке.
Сейчас он меняет значение атрибута блока подставляя значение сквозной нумерации. Нужно это же для Mtext.

Однако, LISP править skills не хватает. и подумал , м.б. есть альтернатива.
вроде в редакторе полей можно вставлять значения LISP переменных (хотя вероятно это какие то системные).

идея в том , чтобы попробовать настроить блок так , чтобы он "читал" какое то значение в памяти во время выполнения.  LISP же создает переменные во время выполнения, и в считать как то это значение  :o

Возможно ли такое? или "проще" отредактировать LISP ?

P.S. вероятно плохая идея...
Название: Re: Lisp переменную --> в поле текста
Отправлено: Александр Ривилис от 20-11-2019, 11:46:46
задача вообще состоит в том чтобы исправить LISP http://www.lee-mac.com/numinc.html так, чтобы он в блоке менял значение текста  в блоке.
Сейчас он меняет значение атрибута блока подставляя значение сквозной нумерации. Нужно это же для Mtext.
И что это будет? К примеру у тебя есть десять вставок блока с именем AAA, содержащие MTEXT. Но любое изменение MTEXT в этом блоке отобразится на всех вставках блока....
Название: Re: Lisp переменную --> в поле текста
Отправлено: I_stiv от 20-11-2019, 12:00:38
да точно, спасибо. надо другой способ искать.
почему именно в Mtext пробовал , потому что у Mtext  в дин блоке можно настроить "всегда парралельно X" чего я не смог сделать у атрибутов.
видимо надо пробовать доделать LISP чтобы он умел атрибут крутить.
Название: Re: Lisp переменную --> в поле текста
Отправлено: I_stiv от 20-11-2019, 13:56:34
вопрос закрыт.
методом научного тыка вставил в нужное место код и заработало как нужно.
Код - Auto/Visual Lisp [Выбрать]
  1. (mapcar '(lambda (a) (vla-put-rotation a 0.)) (vlax-invoke obj 'getAttributes))
P.S. думаю тему можно удалить ибо полезной нагрузки она не несет..
Название: Re: Lisp переменную --> в поле текста
Отправлено: Александр Ривилис от 20-11-2019, 14:08:26
P.S. думаю тему можно удалить ибо полезной нагрузки она не несет..
Она несёт двойную полезную нагрузку:
1) Объясняет бессмысленность изменения текстов в описании блока.
2) Даёт код для выравнивания атрибутов вдоль оси X.