ADN Club > Revit API
Вырезание геометрии
Адамчук Николай:
Добрый день!
В примерах есть пример реализации вырезания solid`s при помощи SolidSolidCutUtils.AddCutBetweenSolids.
Как можно выполнить "Вырезание геометрии" для балки(колонны) и рабочей плоскости ?
Спасибо.
Виктор Чекалин:
Николай,
вы хотите сделать подобное "вырезание" в редакторе семейства или непосредственно для конекретной балки(колонны) в проекте?
Адамчук Николай:
Мне необходимо сделать это в проекте для выбранной балки (колонны)
Виктор Чекалин:
RevitAPI содержит два класса для работы с вырезанием геометрии: SolidSolidCutUtils и InstanceVoidCutUtils.
Первый класс вы уже уопомянули и даннный класс не подходит для того чтобы вырезать геометрию между экземпляром семейства и рабочей плоскостью.
Второй класс на первый взгляд является более подходящим. Единственный метод предназначенный для вырезания геометрии, AddInstanceVoidCut, в качестве входящих параметров принимает два элемента. Первый - элемент, для которого необходимо вырезать геометрию, и второй - элемент, с помощью которого будет происходить вырезание.
--- Код - C# [Выбрать] ---public static void AddInstanceVoidCut( Document document, Element element, Element cuttingInstance)
Однако, второй элемент должен быть экземпляром семейства:
--- Цитировать ---cuttingInstance
Type: Autodesk.Revit.DB..::..Element
The cutting family instance
--- Конец цитаты ---
На всякий случай попробовал выполнить этот метод для балки и рабочей поверхности. Ожидаемо получил ошибку.
Похоже это тот случай, когда операцию можно выполнить в интерфейсе, но нельзя выполнить с помощью API.
Задал вопрос в службу поддержки, чтобы на 100% убедиться. О результатах сообщу.
Виктор Чекалин:
Николай, пришел ответ из техподдержки.
Мои выводы подтвердились. На текущий момент нельзя сделать вырезание геометрии между экземпляром семейства и рабочей плоскостью с помощью API.
Навигация
Перейти к полной версии