Разрезка элементов на уровни (стены, колонны)

Автор Тема: Разрезка элементов на уровни (стены, колонны)  (Прочитано 7176 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Ksenia VeselovaАвтор темы

  • ADN OPEN
  • Сообщений: 4
  • Карма: 0
Добрый день, подскажите пожалуйста можно ли через апи сделать следующее:

нужно разделить все стены и колонны по уровням, сейчас они сделаны на всю высоту,
может подскажете с чего начать?
вообще насколько эта задача сложная?может мне как новичку она неподъемной пока будет

Оффлайн Виктор Чекалин

  • Administrator
  • *****
  • Сообщений: 694
  • Карма: 111
  • Skype: chekalin-v
Ксения, добро пожаловать на форум.

Начать следует с того, что попробовать выполнить эту задачу в пользовательском интерфейсе, скажем для одной стены или колонны. Таким образом у вас будет некий алгоритм того, что нужно сделать программно. Затем уже эту последовательность действий реализовывать с помощью API для всех стен/колонн.

Я вижу два способа, но один из них с помощью API реализовать не удастся. Но для начала хочу услышать как бы вы решали эту задачку без программирования.

Оффлайн Ksenia VeselovaАвтор темы

  • ADN OPEN
  • Сообщений: 4
  • Карма: 0
Выбрать разрез с уровнями и стенами , перейти на вкладку изменить и выбрать точки пересечения линии уровня и стен

а с колоннами- сделать колонны на 1 этаж, и потом копировать на все оставшиеся

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

  • Administrator
  • *****
  • Сообщений: 1152
  • Карма: 338
  • Skype: alexandr.ignatovich.itc
А точно Вам нужно делить изначальные элементы - колонны, стены и т.д.? Возможно, Вам поможет инструмент "Детали" (Part по английски, PartUtils - основной инструмент для работы с ними). Эти детали могут привязываться как раз к сеткам, уровням и т.д.

Оффлайн Ksenia VeselovaАвтор темы

  • ADN OPEN
  • Сообщений: 4
  • Карма: 0
А что значит изначальные элементы?

просто архитекторы очень любят поднимать коробку на всю высоту, не деля их по уровням,так быстрее
а когда конструктора получают такую красоту, им приходить вручную всё это разбивать, так как для них важно чтобы конструкции были по уровням
Это не очень удобно(было бы хорошо для архитекторов быстро поднимать коробку, а конструкторам потом просто разбивать её по уровням автоматом

Оффлайн Виктор Чекалин

  • Administrator
  • *****
  • Сообщений: 694
  • Карма: 111
  • Skype: chekalin-v
Ксения, к сожалению, в Revit API нет аналога команды "Разделить", что в пользовательском интерфейсе. Для колонн могу предложить такой способ:
1) Берем колонну
2) Определяем, через сколько уровней она проходит.
3) Копируем исходную колонну и вставляем в то же место столько раз, через сколько уровней проходит колонна
4) Для каждой колонны устанавливаем значение Базовый Уровень и Верхний Уровень.

Например, есть колонна, которая проходит через Уровень 1, 2, 3
Копируем колонну дважды. Получаем три колонны.
Для первой колонны задаем Базовый Уровень - Уровень 1, Верхний Уровень - Уровень 2. Для второй колонны: Базовый Уровень - Уровень 2, Верхний уровень - Уровень 3 и т.д.
Естественно нужно учитывать и смещения относительно базового уровня.

Для стен по идее можно пробовать такой же способ. Но там гораздо сложней, так как надо учитывать окна, двери. Но смысл тот же самый.

Оффлайн Ksenia VeselovaАвтор темы

  • ADN OPEN
  • Сообщений: 4
  • Карма: 0
Виктор!Спасибо, попробую разобраться в этом способе, хотя бы с колоннами

стены на начальном этапе без окон и дверей будут