|
||
| Правила | Регистрация | Пользователи | Поиск | Сообщения за день | Все разделы прочитаны | Справка по форуму | Файлообменник | |
|
Поиск в этой теме |
29.12.2015, 13:05 | #1 | |
Длина линий в динамическом блоке
Регистрация: 08.12.2015
Сообщений: 38
|
||
Просмотров: 18423
|
|
||||
Приложите сам блок, можно будет сделать с помощью атрибута с формулой.
__________________
Лучше не обещать, чем обещать и не исполнять. |
||||
|
||||
Регистрация: 08.12.2015
Сообщений: 38
|
Ниже пример. Необходимо получить длину по периметру(состоит из 4 линий и 4 дуг). Преобразовать в полилинию нельзя(так как есть сложние блоки с кучей зависимостей и построений).
|
|||
|
||||
Регистрация: 08.12.2015
Сообщений: 38
|
Цитата:
Мне нужно значение длины знать как информационное(для контроля). То есть, в чертеже его видно не должно быть. Как пример, посмотреть его в свойствах блока(то есть, присвоить значение длины пользовательской переменной(напр. user1)) Спасибо за помощь! p.s. пробовал присвоить переменной user1 в выражении атрибут length, не получается Последний раз редактировалось Yaryk777, 29.12.2015 в 14:38. |
|||
|
||||
Регистрация: 26.03.2015
Екатеринбург
Сообщений: 382
|
Раз уж используете параметризацию, можете вычертить копию контура полилинией и сделать её геометрией построения, прицепить её зависимостями к рабочей геометрии и навесить поле с значением длины.
Конкретно для этого блока не вижу причин не сделать контур замкнутой полилинией: акад воспримет её для параметризации, как набор дуг и отрезков. |
|||
|
||||
Регистрация: 08.12.2015
Сообщений: 38
|
Цитата:
На счет преобразования в полилинию: в этом блоке - согласен, но это пример, и я подчеркнул, что есть сложные блоки(куча зависимостей, порядок построения, вспомагательная геометрия). То есть, итоговый обьект получается с частей исходного+новые части, которые в формульных зависимостях. ----- добавлено через ~1 мин. ----- вот это не понял, что имеется ввиду? Последний раз редактировалось Yaryk777, 29.12.2015 в 14:55. |
|||
|
||||
Регистрация: 26.03.2015
Екатеринбург
Сообщений: 382
|
Вот переделанный блок, раз уж нужен скрытый атрибут. Меняете размеры, потом регенерируете чертеж и смотрите в свойствах значение Периметр.
Что такое Поле? Это текстовый фрагмент, привязанный к определенным свойствам. Как сделать сумму полей, как в файле LynxM: при задании атрибута в текстовом окошке нажимаете Ctrl+F и выбираете Формула. В поле для формулы снова жмете Ctrl+F, выбираете объект (отрезок 1) и для него выбираете свойство Длина, потом через сложение делаете то же самое для остальных примитивов в блоке. |
|||
|
||||
Регистрация: 08.12.2015
Сообщений: 38
|
Еще вопрос:
1.можно ли запретить изменение формулы для атрибута при двойном щелчке по блоку? Пробовал ставить параметр "постоянный" со значением "да" для атрибута, но тогда атрибут пропадает с окна свойств 2.Усложнаем задачу: можно ли подсчитать длину всех линий на определенном слое? Спасибо! Последний раз редактировалось Yaryk777, 29.12.2015 в 17:57. |
|||
|
||||
Регистрация: 26.03.2015
Екатеринбург
Сообщений: 382
|
Что-то подумалось...
А обязательно использовать динамический блок? Параметризация так же работает и в модели. Так же можно задавать пользовательские параметры. Можно отображать параметрические размеры, как аннотационные, т.е. выводить их на чертеж. Можно где-то рядом вставить табличку, в которую полями свести длины всех интересующих элементов и суммировать их. Для подсчета длин линий на слое есть лиспы, надо только поискать. На худой конец всегда можно посчитать геометрию через математику: в файле примера длина контура равна длине окружности радиуса скругления плюс удвоенные длины сторон минус четыре радиуса скругления...но это пример простой. PS: В редакторе правда есть одна удобная кнопка Constraint status, которая раскрашивает геометрию разными цветами (определенная/неопределенная), как в Solidworks...только цвета неудачно подобраны. |
|||
|
||||
Регистрация: 20.09.2011
Сообщений: 35
|
Не хочу создавать тему, подниму вопрос в наиболее близкой:
Есть ли какая-то возможность средствами автокада вытянуть свойство примитива, находящегося в блоке и добавить его в свойства блока с возможностью редактирования? (например есть блок с полилинией, возможно ли свойство полилинии "глобальная ширина" вытянуть в свойства блока и в дальнейшем уже редактировать этот параметр через свойства блока? для отслеживания "глобальной ширины" на примерах выше понял как это сделать атрибутом, а возможно ли именно редактирование?) |
|||
|
||||
идущий по граблям Регистрация: 26.05.2005
Сообщений: 5,095
|
Возможность напрямую менять из панели свойств какие-либо свойства отдельно взятого подпримитива, такие как ширина полилинии - отсутствует (по крайней мере до 2013 версии включительно). Однако значения всех динамических параметров автоматически добавляются в свойства блока, и если какое-то свойство подпримитива задается динамическим параметром блока (например, длина линии - параметром растягивания), то его вполне можно менять из панели свойств.
Последний раз редактировалось kp+, 20.01.2016 в 11:53. |
|||
|
||||
геолог Регистрация: 02.09.2009
Тында, Дальний Восток
Сообщений: 404
|
Создал дин. блок, в котором всего две операции - растягивание и поворот. Вроде всё работает, но... Мне бы хотелось, чтобы в свойствах можно было посмотреть длину блока после операции растягивания. И никак, кроме как наложить на блок полилинию или применив операцию измерения в утилитах. А хотелось, чтобы длина блока отображалась бы в панели свойств и/или при наведении на какую-нибудь точку блока в модели. Подскажите, что нужно сделать с блоком?
Последний раз редактировалось n0str0m0, 13.05.2021 в 11:00. Причина: Не там создал |
|||
|
||||
Moderator
LISP, C# (ACAD 200[9,12,13,14]) Регистрация: 25.08.2003
С.-Петербург
Сообщений: 39,832
|
Так вроде в свойствах и показывается - расстояние1, расстояние 2, угол1.
----- добавлено через ~1 мин. ----- Offtop: После нормальной полноценной очистки файл упал до 96 кб...
__________________
Моя библиотека lisp-функций --- Обращение ко мне - на "ты". Все, что сказано - личное мнение. |
|||
|
||||
геолог Регистрация: 02.09.2009
Тында, Дальний Восток
Сообщений: 404
|
del
----- добавлено через ~1 мин. ----- Цитата:
----- добавлено через ~3 мин. ----- А так работает. Только я не понял, как вы это сделали. Кроме того, параметр поворота не растягивается вместе с правым параметром растяжения. Последний раз редактировалось n0str0m0, 13.05.2021 в 12:08. |
|||
|
Опции темы | Поиск в этой теме |
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Создание нового типа линий | Apelsinov | AutoCAD | 915 | 08.07.2022 12:36 |
Почему не работает операция "Совпадение" в динамическом блоке | Geniy_Dzydo | Динамические блоки | 5 | 14.08.2012 20:32 |
Длина линий всего слоя | Hendrix | Программирование | 16 | 24.07.2006 10:23 |
Общая длина ломаных линий.....? | ed_moroz | AutoCAD | 3 | 18.02.2006 01:15 |
Общая длина ломаных линий.....? | ed_moroz | AutoCAD | 2 | 17.02.2006 10:40 |