ADN Club > Revit API

Wall Duct пересечение и добавление Opening

<< < (2/3) > >>

Александр Игнатович:

--- Цитата: begiz от 20-09-2019, 11:54:13 ---используя данное предложение я могу получить обе точки пересечения трубы и стены.
--- Конец цитаты ---

Зачем обе? Одного пересечения будет достаточно.



--- Цитата: begiz от 20-09-2019, 11:54:13 ---далее мне нужно будет взять радиуц трубы и построить окружность (при пересечении под приамым углом) с радиусом трубы и центром в точке пересечения и потом повернуть эту окружность(плоскость) чтобы она была параллельна плоскости стены, так?
--- Конец цитаты ---

Не. Слишком сложно. Всё проще. Получаете поверхность (Face) стены, с которой пересекается труба. Точку пересечения уже нашли. Находим нормаль методом Face.ComputeNormal. Ну, собственно, этого достаточно для того, чтобы построить окружность.


--- Цитата: begiz от 20-09-2019, 11:54:13 ---а как получить из солида обшиую со стеной поверхность?
--- Конец цитаты ---

Origin поверхности solid-а лежит на поверхности стены. Нормаль поверхности solid-а совпадает с нормалью поверхности стены

begiz:

--- Цитировать ---Зачем обе? Одного пересечения будет достаточно.
--- Конец цитаты ---

2 точки нужны на случай если пересечение не под прямым углом.
тады нужно будет дырку делать с учетом смещения.

точки пересечения есть, радиус есть, нормаль есть, окружность построил.
тер как получить BoundingBox окружности?
у солидов есть такой метод, а у 2D фигур?

можно просто 2 точки от центра под углом 45 и 225 градусов на расстоянии радиуса вычислить?

или можно/нужно как то проще делать?

begiz:

--- Цитировать ---можно просто 2 точки от центра под углом 45 и 225 градусов на расстоянии радиуса вычислить?

--- Конец цитаты ---

построил арку от 45 до 225 градусов и взял координаты концов

прямоугольное отверстие получилось!!!

Александр Игнатович:
Ну, как бы описание метода предполагает:

--- Код - C# [Выбрать] ---public Opening NewOpening(        Wall wall,        XYZ pntStart,        XYZ pntEnd)

--- Цитировать ---Creates a rectangular opening on a wall.
--- Конец цитаты ---

Да и в UI кнопка создания проема в стене позволяет только прямоугольные делать, это в перекрытиях и крышах проемы произвольной формы создаются, а в API очень и очень немного функционала, которого нет в UI, процентов так 5, наверное. Тут лучше, конечно, спросить инженеров, как они проемы делают, но, вероятнее всего у них есть своё семейство окон или дверей для создания круглых проемов.

begiz:
ну так я и хотел приемоугольное для начала :)
я эту арку строил чтобы размеры подобратьм которыэ в фукцию передаются.

Да, так в прицепленном фаиле есть семейство для круглых отверстий, но его через NewFamilyInstance надо вставлять.

Навигация

[0] Главная страница сообщений

[#] Следующая страница

[*] Предыдущая страница

Перейти к полной версии