Сообщество программистов Autodesk в СНГ
ADN Club => AutoCAD .NET API => Тема начата: Захаров Максим от 19-02-2024, 10:16:16
-
Добрый день.
Подскажите пожалуйста, почему в стиле мультивыноски переменная userMLeaderStyle.ArrowSymbolId=null ?
Я точно уверен что стилю назначен символ стрелки (встроенный символ, не пользовательский блок)
Мне надо получить ArrowSymbol из внешнего файла, который содержит все стили мультивыносок
-
Захаров Максим,
Если я правильно понял, то ArrowSymbolId==null в случае если символ стрелки - Closed filled. В других случаях он не null.
-
А это имена блоков, которые получаются при установке встроенных символов стрелок:
(https://live.staticflickr.com/65535/53539313085_54365276f0_o.png)
Не хватает только одного для "Closed Filled".
-
Да, Александр, правильно. Как мне получить имя этого символа?
Dim arrowSumbId As ObjectId = userStyleMLeader.ArrowSymbolId
И я получаю null ну и дальше тупик у меня...
-
И я получаю null ну и дальше тупик у меня...
Ты видимо не понял. Что ты имеешь в виду под именем? Имя в редакторе стилей MLeader? Так я и написал - "Closed filled" для null. Если имя BlockTableRecord - то имени никакого нет, так как и блока нет (видимо рисуется без блока).
-
Мне просто надо узнать, какой символ используется в качестве наконечника у моего стиля мультивыноски. Как его получить я не понимаю пока.
-
Скажите Александр, я могу получить имя этого объекта?
(https://i.postimg.cc/v1wLYyrG/2.png) (https://postimg.cc/v1wLYyrG)
-
Мне просто надо узнать, какой символ используется в качестве наконечника у моего стиля мультивыноски. Как его получить я не понимаю пока.
Если ты получил null, то это значит, что "Closed Filled". Для остальных ты получаешь нормальные ObjectId и по ним получаешь имя блока. Что непонятного?
-
Скажите Александр, я могу получить имя этого объекта?
"Закрашенная замкнутая" это и есть "Closed Filled", о которой я писал выше. У него нет блока - видимо изображение генерируется автоматически самим AutoCAD без создания блока.
-
Если расчленить (_EXPLODE) такой MLEADER (с ArrowSymbolId == null), то стрелка представляет из себя не блок, а примитив SOLID (ФИГУРА), а в других случаях - это вставка блока.
-
Да, я понял, что если null - то это встроенный символ. Но ведь это не обязательно - закрашенная замкнутая, это может быть и треугольник и интеграл и другой. Есть возможность получить имя этого встроенного символа?
-
Но ведь это не обязательно - закрашенная замкнутая, это может быть и треугольник и интеграл и другой
Нет! Только закрашенная замкнутая! Я же не зря тебе привел список блоков, которые создались, когда я менял символ стрелки в диалоге редактирования стиля MLEADER. Т.е. для всех остальных создается блок и ссылка на него не null.
-
Спасибо Александр за помощь. А я что то зациклился на этой закрашенной замкнутой, остальные и не проверил.... Да мне как то и в голову не могло придти, что есть такое "чудо"