Тема: Как узнать значение длины из атрибута блока?
Имеется блок с атрибутами, как узнать длину атрибута?
Информационный портал для профессионалов в области САПР
Вы не вошли. Пожалуйста, войдите или зарегистрируйтесь.
Форумы CADUser → Программирование → VBA → Как узнать значение длины из атрибута блока?
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Имеется блок с атрибутами, как узнать длину атрибута?
Имеется блок с аттрибутами,подскажите как получить
длину(длину значения Value) АТТРИБУТ1 и АТТРИБУТ2,
аттрибуты связаны с диологовым окном с помощью этих команд
Case "АТТРИБУТ1" '' 'проверяемый аттрибут Tatts(I).TextString = GetText(АТТРИБУТ1) Case "АТТРИБУТ2" '' 'проверяемый аттрибут Tatts(I).TextString = GetText(АТТРИБУТ2) Case "АТТРИБУТ1" '' 'проверяемый аттрибут Call АТТРИБУТ1.AddItem(Tatts(I).TextString) Case "АТТРИБУТ2" '''проверяемый аттрибут Call АТТРИБУТ2.AddItem(Tatts(I).TextString)
Что такое "длина атрибута"?
Имеется ввиду длина(ширина) значения Value Атрибута, так понятно
> boban
Нет. Не понятно. Длина - это количество символов или геометрические размеры на чертеже?
Если количество символов, то тут все просто: функция Len()
Если геометрические размеры, то нужно воспользоваться функцией GetBoundingBox() для объекта AcadAttributeReference. А из нее уже получить высоту и ширину.
P.S.: А если речь идет об аттрибутах с фиксированной длиной, то для получения этой длины нужно воспользоваться свойством FieldLength
> Александр Ривилис
Длина это геометричекие размеры на чертеже, нужно узнать какой длины будет значение Value на чертеже, про GetBoundingBox() я понял но как эту функцию привязать, к нужному атрибуту из хрдя из моей ситуации
> boban
Ты должен найти по имени атрибута реальный атрибут блока и к нему применить эту функцию.
Здесь есть что-то подобное:
https://www.caduser.ru/forum/topic16366.html
> Александр Ривилис
Это не то....
Case "АТТРИБУТ2" '' 'проверяемый аттрибут Dim a as String Dim min(0 To 2) As Double Dim max(0 To 2) As Double Tatts(I).TextString = GetText(АТТРИБУТ2) a = Tatts(I).TextString a.GetBoundingBox min, max
Применяю GetBoundingBox к атрибуту а, а координыты получить не могу
Страницы 1
Чтобы отправить ответ, вы должны войти или зарегистрироваться
Форумы CADUser → Программирование → VBA → Как узнать значение длины из атрибута блока?
Форум работает на PunBB, при поддержке Informer Technologies, Inc