ИваСерж
-
ИваСерж ответил(а) на тему Разделение воздуховодов и трубопроводов в форуме Задать вопрос 6 лет, 3 месяца назад
https://www.dropbox.com/s/f4vdwdur1b18abs/CableTrayDivide.zip?dl=0
Вот работающий скрипт по разделению кабельных лотков.
Только у меня условия деления сложнее. У меня есть лотки 1м, 2м и 3м.
Соответственно я делю лотки на такие отрезки.
Я полностью удаляю старые лотки и по точкам следования старых лотков строю новые.
В точки разреза вставляю…[Читать далее] -
ИваСерж ответил(а) на тему Замена марки трубы – как назначить типоразмер? в форуме Задать вопрос 6 лет, 4 месяца назад
А вот марка это IndependentTag.
Получить тип IndependentTag.GetTypeId()
Изменить тип:
IndependentTag.ChangeTypeId(Id) -
ИваСерж ответил(а) на тему Замена марки трубы – как назначить типоразмер? в форуме Задать вопрос 6 лет, 4 месяца назад
Мы говорим о марках или о самих трубах?
Труба это не семейство (не Фемели инстанс).
Очевидно, нет у трубы FamilyInstance.TypeЗато у трубы есть PypeType
В динамо есть даже нод GetPypeTypeВозможно, подтолкнет на какие-то идеи по замене трубы.
А вот и пример скрипта который соединяет 2 любые трубы и вставляет фитинги по умолчанию.
Проверил. У…[Читать далее] -
ИваСерж ответил(а) на тему Создание параметра только для чтения в семействе в форуме Помогите с питон кодом 6 лет, 6 месяцев назад
Вариант 1 – использовать формулы в обычном параметре.
Вариант 2 – использовать параметры отчета. -
ИваСерж ответил(а) на тему почему не получается Boolean? в форуме Задать вопрос 6 лет, 6 месяцев назад
Библиотека насколько я понял, самая обычная – ревит АПИ.
А вот метод лежит в классе BooleanOperationsUtils
Сначала обращаемся к классу, а потом через точку уже и к самому методу
BooleanOperationsUtils.ExecuteBooleanOperationModifyingOriginalSolid – должно отработать.можно попробовать…[Читать далее]
-
ИваСерж ответил(а) на тему Параметр Пространства в MEP компоненте в форуме Задать вопрос 6 лет, 6 месяцев назад
Копнул поглубже, но объяснить ЭТО я тольком не могу.
Вот ссылка на то, что дало подсказкуТеперь код:
unwElem = UnwrapElement(elem)
elemPhase = doc.GetElement(UnwrapElement(x).CreatedPhaseId)
elemSpace = unwElem.Space[elemP…[Читать далее] -
ИваСерж ответил(а) на тему Параметр Пространства в MEP компоненте в форуме Задать вопрос 6 лет, 6 месяцев назад
Задача элементарно решается если есть ревит Лукап.
Высоту пространства Меп-комнаты по элементу можно считать в одну строчку.
Результат в футах!
h = element.Space.limitOffsetВ питон-коде будет выглядеть примерно так:
elements = IN[0]
OUT = map(lambda x: UnwrapElement(x).Space.limitOffset, elements) -
ИваСерж ответил(а) на тему Схемы в Revit в форуме Задать вопрос 6 лет, 7 месяцев назад
http://prorubim.com/ru/tools/r-one-line-diagrams/
Вот, кстати, ссылка на коммерческий скрипт по работе с электрикой.
Как по мне, имеет место быть.
Если предприятие толькло внедряет технологии БИМ, то можно взять за основу.
К сожалению, фактически бесполезен или требует больших трудозатрат при внедрении в уже работающую несколько лет систему.
Лич…[Читать далее] -
ИваСерж ответил(а) на тему Редактирование размера аннотаций в форуме Задать вопрос 6 лет, 7 месяцев назад
Предлагаю искать пересечения через Баундинг-бокс и фильтры.
http://thebuildingcoder.typepad.com/blog/2010/12/find-intersecting-elements.htmlЕдинственный недостаток – баундинг бокс ортогонален. Если сильно захочется вращать примечания под углом – будут сложности. Но для ортогонально располагаемых примечаний – быстро и эффективно.
-
ИваСерж ответил(а) на тему Схемы в Revit в форуме Задать вопрос 6 лет, 7 месяцев назад
Возможно. Задача легкая и реализована как в коммерческих так и в любительских плагинах. Для различных организаций ставятся разные цели и нужно подгонять под свои стандатные шаблоны.
-
ИваСерж ответил(а) на тему Редактирование размера аннотаций в форуме Задать вопрос 6 лет, 7 месяцев назад
Это почему это? для практической работы достаточно 6-10 типов. Я пользуюсь типами 5,7,10,15,20,25,35 мм. Хватает на все. Делать округлением в 5 мм. Норм будет отрабатывать.
-
ИваСерж ответил(а) на тему Работа со спецификацией в форуме Синтаксис и родные библиотеки Python 6 лет, 7 месяцев назад
Каким образом вы бы реализовали это вручную?
Я бы добавил доп-параметр, по которому таки можно фильровать. Записал бы в этот параметр значение уровня и только потом фильтровал по этому параметру.Тогда алгоритм по скрипту:
1. Добавить в проект нужный параметр к нужным категориям.
2. найти все семейства.
3. Считать уровень семейства…[Читать далее] -
ИваСерж ответил(а) на тему Редактирование размера аннотаций в форуме Задать вопрос 6 лет, 8 месяцев назад
Николай, хорошо, что вы проработали свой вариант.Мне кажется, что этот вариант не самый эффективный. Ваша фраза о невозможности изменять семейства не совсем корректна.
Я предложу свой вариант.
Ранее вы писали:семейство марок невозможно изменять, задавая параметры.
Мне не нравится слово “семейство”, потому, что мы меняем не семейство а “т…[Читать далее]
-
ИваСерж voted up to a reply by Nickolay in the topic Редактирование размера аннотаций 6 лет, 8 месяцев назад
-
ИваСерж ответил(а) на тему Наборы листов и видов – получить список в форуме Задать вопрос 6 лет, 8 месяцев назад
в коде строчки 14 и 15 не нужны.
Цикл не надо организовывать вообще.
Вся магия сделана в генераторе списков.Проверил – удаляет все.
-
ИваСерж ответил(а) на тему Наборы листов и видов – получить список в форуме Задать вопрос 6 лет, 8 месяцев назад
цикл с for надо переписать предлагаю так:
———————————-SetList = [f for f in fec]
#Получаем все id
IdList = map(lambda x:x.Id, SetList)#Удаляем все id, естественно, в тразнакции
TransactionManager.Instance.EnsureInTransaction(doc)
for i in IdList:
doc.Delete(i)
TransactionManager.Instance.TransactionTaskDone()#OUT…[Читать далее]
-
ИваСерж ответил(а) на тему Ограничение процессов Dynamo в форуме Задать вопрос 6 лет, 8 месяцев назад
Но всё же, мне кажется, дело не в отображении геометрии.
К сожалению, большая растрата памяти на прорисовку геометрии – это не мои догадки, а официальное заявление от создателей.
Вот статья на эту тему
https://github.com/DynamoDS/Dynamo/wiki/Efficiently-Working-With-Large-Data-Sets-In-DynamoGeometry nodes in Dynamo are always tessellated*…
-
ИваСерж ответил(а) на тему Ограничение процессов Dynamo в форуме Задать вопрос 6 лет, 8 месяцев назад
Если речь идет о скрипте из прошлой темы, то я сразу видел проблемы с оптимизацией.
Самое простое решение – отказаться от построения “красивой” геометрии в Динамо. Т.е. Динамо тратит очень большую часть памяти на просчет и рендер графики. От этой фигни можно уйти и пользоваться для отрисовки не нодом Line.ByStartPointEndPoint, а методами…[Читать далее] -
ИваСерж ответил(а) на тему Ограничение процессов Dynamo в форуме Задать вопрос 6 лет, 8 месяцев назад
Динамо таки плох для обработки больших массивов данных. Постоянно приходится думать об оптимизации алгоритмов и облегчении способов фильрации. Особенно плохо Ревит (а не динамо) работает с большим количеством транзакций.
Вывод: если надо что-то действительно серьезное – ситуацию немножко ускорит python for revit, revitpythonshell, или любая дру…[Читать далее]
-
ИваСерж voted down to a reply by Nickolay in the topic Редактирование размера аннотаций 6 лет, 8 месяцев назад
- Загрузить еще