Создание текстовой анатоции на чертежном виде.
Главная › Форумы › Python › Помогите с питон кодом › Создание текстовой анатоции на чертежном виде.
- В этой теме 8 ответов, 5 участников, последнее обновление 5 лет, 8 месяцев назад сделано Max.
-
АвторСообщения
-
Привет ребята, Legantmar выкладывал скрипт для создание шапки таблички. И Alexandr Popov тоже, для создание спецификаций. Так вот в 17 ревите появился новый класс для работы с текстами. И соответственно старые методы не работают. Я хотел переписать для новой, но столкнулся с трудностями. Может кто то поможет мне их разрешить.
Я думал что он ругается на то что текущий документ это объект динамо, а не ревит. Я попробовал его развернуть но ошибка все та же.
“доброжелатели” в очередной раз поменяли API и удалили эту Create.NewNextNote
ты почти правильно написал, TextNote.Create(doc, viewId, xyz, text, texttypeId) (где только не view (вид) и texttype (тип текста), а их Id)
все равно пришлось переписать заново. Скачать скрипт для 2017и да засада в том, что для получения этого texttype нужно указать надпись для примера (т.е. на листе должна быть какая-то надпись, ее и выбрать)
0,0,0 – координата нижнего левого угла рамки листа
p.s. также вставляется и на “слой” легенды, но нужно следить за его масштабом, ибо текст и линии зависят от него.
СтепанУчастник
Почемуто Динамо выдает ошибку, не нравится строка 30 :texttype = doc.GetElement(UnwrapElement(IN[2]).GetTypeId())
Ну на самом деле как я понимаю проблемма в выборе текста, не понимаю, почему компьютер ругается с выбором текстаДоброго времени суток, друзья! Напишу здесь, так как наиболее подходящая тема для вопроса. Есть ли возможность сейчас (Revit 2018) вставить текст на чертежном виде или легенде с выбором расположения текста по горизонтали и вертикале посредине? Получилось создать текст с помощью скрипта, созданного Антоном методом Create(Document, ElementId, XYZ, String, ElementId) через елемент.айди. Как показывает Revit API в методе Create Method (Document, ElementId, XYZ, String, TextNoteOptions) в XYZ зашифрована возможность вставки текста посредине, но как добраться к самому TextNoteOptions никак не могу понять. Прошу натолкнуть на мысли. Спасибо за внимание)
Анатолий, посмотри здесь пример на C# (легко переделывается на питон)
http://www.revitapidocs.com/2018.1/b0fd6ef8-a0ef-9cf4-5bc2-8cd65f81f648.htmесли не разберешься, то завтра помогу.
Спасибо, Антон! Поизучал возможности этого метода, раньше тоже искал где-то-здесь в Ревит апи, но его не увидел. К сожалению, получилось немало, но не то. Не смог побороться с
s = opts.HorizontalAlignment.Center
на эту строчку питон упрямо не обращает внимания, не зависимо
от
opts=TextNoteOptions(texttypeId)
в создании текста у меня строка note = TextNote.Create(doc, viewId, origin, len, Text[i], opts).
Но получился вариант выравнивания теста по центру предыдущим методом ,через Id, правда потом пришлось доставать все TextNote и потом параметрами их выравнивать с помощью LookupParameter, но у этого метода один существенный (для меня) минус – он работает только в английской версии ревита.
Спасибо за помощь!
И еще одна просьба посоветовать, можно ли добраться до компонентов легенды, хочу также их попытаться вставить в саму легенду. Не совсем понимаю как добраться до OST_LegendComponents и выбрать “типорозмеры” (неразмещенные еще) в проекте? Через категории не получается, не находит, а питоном еще не научился доставать существующий список типов BuiltIn. Прошу прощения, если не в ту тему задал этот вопрос.
Кстати, кому интересно, создание текста в русскоязычной версии ревита возможно методом опций, вместо id – note = TextNote.Create(doc, viewId, origin, len, Text[i], opts). Тоже нюанс, после создания тестовых аннотаций возможности отредактировать их нет, текстовые элементы в динамо не выбираются.
Для примера хочу предоставить скрипт создания заготовки таблицы ведомости оконных блоков в легенде.
По управляющим нодам: Дл – количество столбцов; Вс – количество строк; Ресет – поскольку элементы создаются нодами (не через питон),
динамо их отслеживает и если запустить скрипт с другими показателями количества, табличка может создаться некорректно; Название вида – новая пустая легенда в 100-м масштабе.
Скрипт
Видео https://youtu.be/JOtHG8sjAGkMaxУчастникВсем привет, ребят выручайте. Есть скрип по импорту спецификации из Excel в Revit. Это немного измененный скрипт от Александра Попова (теперь работает в Revit 2019). При создании линий таблицы, они появляются на плане этажа в виде обобщенной модели. Можно это как то убрать?
Вот так это выглядит на чертежном виде и плане этажа:
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.