Связь оконных/дверных проёмов с частями стен

Главная Форумы Задать вопрос Связь оконных/дверных проёмов с частями стен

Помечено: , , ,

В этой теме 5 ответов, 2 участника, последнее обновление  Legantmar 2 мес., 3 нед. назад.

Просмотр 6 сообщений - с 1 по 6 (из 6 всего)
  • Автор
    Сообщения
  • #6837 Score: 0

    stqwer
    Участник

    Коллеги, помогите разобраться или хотя бы понять куда копать.

    Связь стен и окон/дверей легко устанавливается. И через host и через FindInserts.

    Но как быть, если стены поделены на части? Ни host, ни FindInserts c частями не работает. Через Revit Lookup тоже не прослеживаю связь.

    Исходные данные: стена, в которой два окна и дверь. Стену поделили на две части. Одно окно и одна дверь оказалась в одной части. Другое окно в другой части стены. Как получить связку part.Id с Id находящихся в них дверей/окон?

    p.s. решать задачу через координаты не очень хотелось бы

     

    #6838 Score: 0

    Legantmar
    Хранитель
    370 pts

    выложи файлик rvt
    что нужно в итоге ?

    #6841 Score: 0

    stqwer
    Участник

    https://yadi.sk/d/gk_PA9IO3N9VxU – rvt для примера. Хотя не очень понял зачем.

    в итоге я должен на входящий перечень (элементов или их id) частей стен получить перечень окон и дверей (элементов или их id), которые входят в эти части стен

    для самих стен это сделать не сложно. А вот для частей стен – не пойму как

    #6843 Score: 1

    Legantmar
    Хранитель
    370 pts

    прямым путем сложно (нет прямой взаимосвязи)
    но можно через пересечение геометрий частей и окон/дверей (вложенные циклы лучше делать в python)

    1. собираешь все части в проекте (через FilterCollection и OST_Parts)
    2. собираешь все окна и двери в проекте (аналогично)
    3. делаешь вложенный циклы – пройтись по всем частям и геометрию каждой сравнить с геометрией каждого окна или двери
    4. пересекаются!?-  собираешь готовый список окон/дверей для каждой части
    #6854 Score: 0

    stqwer
    Участник

    Спасибо! Подошло такое решение. Единственный нюанс – оказалось, что у дверного проёма (пустого) нельзя вызвать Geometry. Выдаёт Empty List. Поэтому пришлось для них решать вопрос через BoundaryBox и далее как у Вас указано

    #6855 Score: 0

    Legantmar
    Хранитель
    370 pts

    я сначала так и набросал, но потом подумал, что баундинг бокс это лишнее, если есть определение пересечений геометрий (в моем случае это подошло и пустой проем я не проверял). но ты тоже молодец.

Просмотр 6 сообщений - с 1 по 6 (из 6 всего)

Для ответа в этой теме необходимо авторизоваться.