Здравствуйте, форумчане! Подскажите как можно сделать так, что атрибут блока (текст) отображал результат расчёта по формуле в которой участвуют свойства блока в качестве переменных. например цифра или линейный размер, координаты. К примеру чтобы можно было сделать блок облегчающий отрисовку исполнительных схем. Я понимаю, что есть уже много программ позволяющих сделать это с помощью lisp или vba или .net, но обладают ли блоки автокада такой возможностью? Не могу в интернете нигде найти более менее продвинутую инструкцию по созданию сложных динамических блоков. Заранее спасибо!
Вот, но дальше создания блока я не пошёл. Программно оно как-то быстрее ;-) Этому видосу уже 8 лет :-)
Это уже интересно, спасибо! А как из лиспа обратиться к точкам и переключателям из такого блока? К примеру из лиспа переключить стрелочку туда-сюда. И являются ли точки (ручки) элементами блока к которым можно также обратиться из лиспа и изменить их координаты? А то я задумал написать лисп довольно сложный. И было бы куда проще вырисовывать всё с использованием блоков, чем всю математику вырисовывания прописывать через функции. Да и последующая редактируемость проще с блоками.
Тут 2 момента. Первое, динамические блоки не такая уж панацея, есть много ограничений с ними связанные, например, при изменение масштаба блока динамика пропадает. Ну и работать с такими блоками программно, а тем более из Lisp не просто. Да и сами такие блоки сильно утяжеляют чертёж. Я в своих приложениях использую блоки, но не динамические, из-за этого пришлось создавать штук 10 их вариантов, а потом ещё доп функцию для работы с ними, но мне показалось так проще для меня да и для пользователей, чем с динамическими заморачиваться. Второе, таких приложений написано уже куча, как бесплатных так и платных, точно ты сможешь сделать что-то лучше?
Не то чтобы лучше или хуже. Просто под свои самые распространённые задачи хочу сделать обработку лиспом текстовика с точками по кодам. Ну, если с блоками никак, то придётся всё программно описывать. Потом покажу, что получится, если кому-то будет интересно =)