Доступ к эскизным линиям
Главная › Форумы › Python › Revit Library (API) › Доступ к эскизным линиям
- В этой теме 9 ответов, 4 участника, последнее обновление 7 лет назад сделано Анатолий.
-
АвторСообщения
-
Друзья, если кто проходил этот этап и можете подсказать, прошу натолкнуть на мысли. Хочу добраться до эскизных линий крыши, но не получается найти подходящие команды с помощью dotpeek . После команды GetProfiles() и следующей(например) ToString() (илиGetType()) получаем некий элемент ModelCurveArray. Но этом к сожалению, все творческие мысли заканчиваются(..
С помощью RevitLookUp, который также явно указывает на GetProfiles – ModelCurveArray – Model line ничего выудить не получается, направление есть, а команды не найти. Спасибо всем, кто откликнется.
А что требуется, собственно? Свойства есть вроде
Все верно, ent1g, свойства в RevitLookUp показываются, а как добраться в питоне до них?
Спасибо, Антон! Вчера целый вечер изучал твой скрипт – очень интересный, хоть я до конца, конечно и не осилил и тоже возникают вопросы.. Не смог понять откуда взялась рабочая команда get_Geometry , в dotpeek почему-то не смог ее найти, попробовал поработать с четырехскатной крышей с помощью скрипта, периметр обсчитывается только по тем линиям, которые соответствуют эскизным линиям крыши, на которых выставлена галка Формирование уклона. И, к сожалению, к эскизным линиям не понял как обратиться с помощью данных команд в коде питона. Если не ошибаюсь – создается некое тело (Solid), из которого вытаскиваются точки, линии, которые в некоей мере соответствуют эскизным.. Еще раз спасибо, буду искать дальше.
Благодарю, @zhukoven.com! Очень полезный нод, буду изучать внутренний код питона. Действительно создает все линии, на подобии эскизным модельным, но, все-таки это немножко не тот результат в аналогии с линиями, которые можно посмотреть в лукап и имеют свой id и параметры (для крыш – ModelCurve).
Анатолий, ты же сам все нашел )
curves = roof.GetProfiles()
мы до них добрались, дальше-то что нужно? )
ent1g, может я неверно свою мысль изложил) в первом посте, на картинке привел небольшое сравнение: с одной стороны вытащил крышу через категорию, а ниже на рисунке, зайдя в редактирование крыши выбрал одну ее эскизную линию с номером 645776, как видно тип объекта она имеет ModelCurve и имеет свои параметры, которые можно изменить. Вся задача состояла в том, чтобы через сам элемент крыши FootPrintRoof добраться до ее эскизных линий ModelCurve. Что получилось достать, так это только линии типа Autodesk.Revit.DB.ModelCurveLine через
GetProfiles()
или Autodesk.Revit.DB.ModelCurveArray далее добавив GetType(), но, к сожалению это не те необходимые эскизные линии, которые имею свои параметры. Еще раз спасибо за внимание к вопросу)Огромное спасибо зарубежным коллегам! Вот и решение, все, как оказалось с данном случае, очень просто.
Единственный нюанс, у меня ревит вместе с динамо виснет, если все подключить и выставить на автоматический запуск скрипта.
-
АвторСообщения
- Для ответа в этой теме необходимо авторизоваться.