ADN Open CIS
Сообщество программистов Autodesk в СНГ

26/04/2014

Revit 2015 и обновленный SDK

Совсем недавно (11 апреля) был выпущен новый релиз Revit 2015. Скачать новую версию можно на странице Autodesk Revit (на англ.). Русcкая версия пока не доступна.

Опубликовано 26.04.2014     Читать далее >>>
26/04/2014

Новости Revit API 2015 - Материалы DevDays

Опубликовано 26.04.2014     Читать далее >>>
24/04/2014

Использование метода NewTakeOffFitting для создания врезки

Вопрос: В середине одного из воздуховодов моей MEP модели я хочу сделать врезку. В API для этого есть метод NewTakeOffFitting, который принимает 2 аргумента: коннектор и MEP-кривую (трубу, воздуховод, кабельные лотки) и возвращает созданный экземпляр семейства. Вопрос состоит в том, что я не пойму, как создать эту кривую и коннектор. Можете привести пример кода по созданию врезки с использованием этого метода? Спасибо

Опубликовано 24.04.2014     Читать далее >>>
14/04/2014

WPF Control для отображения штриховки поверхностей

Как-то я создавал контрол для отображения штриховки поверхностей и уже давным-давно забыл про него. Однако, мой бывший коллега, Александр Игнатович, поделился моими наработками с Джереми.

Опубликовано 14.04.2014     Читать далее >>>
14/04/2014

Добавление материалов из списка

Еще в далеком 2011 году мы обсуждали как импортировать материалы из файла Excel в Revit.

Входные данные хранились в файле Excel и содержали следующие параметры:

Наименование

  • Код
  • Название
  • Сила

Графика

  • Цвет в RGB
  • Прозрачность
  • Штриховка разреза
  • Штриховка поверхности

Идентификация

  • Класс
  • Информация о продукте
  • Пользовательские параметры
Опубликовано 14.04.2014     Читать далее >>>
13/04/2014

Создание наклонного перекрытия

Опубликовано 13.04.2014     Читать далее >>>
08/04/2014

BindingMap в редакторе семейства

Вопрос: В своей надстройке я добавляю общий параметр в семейство, находясь в редакторе семейств. Все работало замечательно, начиная с версии 2009. Но в Revit 2014 версии метод создания параметра падает с исключением: «Невозможно получить свойство BindingMap в редакторе семейств» (Cannot get BindingMap of a family document.)

Как оказалось, исключение происходит при попытке воспользоваться свойством Document.ParameterBindings.

Опубликовано 08.04.2014     Читать далее >>>
31/03/2014

Использование типизированных коллекций в фильтрах и формах

В сегодняшней теме обсудим использование типизированных коллекций для легкой и эффективной работы со списками элементов Revit в Windows Forms, а именно:

  • Извлечение всех печатных видов плана этажей из модели с помощью всего одной строчки кода
  • Извлечение всех выбранных видов плана этажей из списка на форме с помощью одной строки кода
Опубликовано 31.03.2014     Читать далее >>>
24/03/2014

Хранение пользовательских настроек плагина для Revit

Вопрос: Я ищу подходящий способ как сохранить пользовательские настройки для моего плагина.

В моем случае мне нужно сохранить пути к файлам, настройки импорта и т.п., чтобы при следующем запуске плагина, все данные, введённые пользователем ранее, оставались такими же, без необходимости забивать их заново.

Есть какая-нибудь инструкция, или может быть в Revit API существует подобная функциональность?

Опубликовано 24.03.2014     Читать далее >>>
23/03/2014

Использование всплывающих подсказок в надстройке Revit

Вопрос: Кто-нибудь знает можно ли использовать строку состояния для отображения своих собственных сообщений в любой момент? И если можно, то как?

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

Опубликовано 23.03.2014     Читать далее >>>
15/03/2014

Отсоединение балки от плоскости

Вопрос: В пользовательском интерфейсе с помощью контекстного меню балки есть команда «Отсоединить от плоскости». А как можно сделать то же самое, только программно?

После того, как я нажал правую кнопку на балке и выбрал «Отсоединить от плоскости», Revit удаляет параметр Рабочая плоскость, т.е. встроенный параметр BuiltInParameter.SKETCH_PLANE_PARAM, и делает активным параметр Базовый уровень, который до этого был только для чтения. Хотелось бы проделать эти действия с помощью Revit API.

Я попробовал удалить параметр Рабочая плоскость, но это не помогло. Свойство FamilyInstance.Host также является только для чтения, поэтому с помощью него не получится отсоединить балку от рабочей плоскости.

Есть ли способ отсоединить балку от плоскости программно?

Опубликовано 15.03.2014     Читать далее >>>
10/03/2014

Наименование системных семействАвтор: Виктор Чекалин

В Revit существует 2 типа семейств: пользовательские семейства и системные семейства. Пользовательские семейства в большинстве случаев являются редактируемыми и их можно сохранить в отдельный файл семейства (.rfa). С системными же семействами такое проделать не получится. Можно лишь создавать новые типоразмеры системных семейств.

Опубликовано 10.03.2014     Читать далее >>>
09/03/2014

RevitLookup. Исследуем базу данных RevitАвтор: Виктор Чекалин

В статьях я часто упоминаю о довольно полезной утилите – RevitLookup.

Данная утилита позволяет нам взглянуть на внутреннюю базу данных Revit прямо из пользовательского интерфейса без необходимости писать тестовые надстройки, в которых будем проверять значение каких-либо свойств элемента.

С помощью утилиты мы можем просмотреть:

  • Абсолютно все элементы, которые существуют в базе данных текущего проекта, включая те, которые пользователь никогда не увидит.
  • Значения всех свойств класса элемента.
  • Свойства приложения и открытых документов
  • Распечатать свойства элемента на принтере
Опубликовано 09.03.2014     Читать далее >>>
27/02/2014

Список элементов инженерной системыАвтор: Виктор Чекалин

Инженерная система в Revit API описывается классом MEPSystem.

Для того чтобы получить список всех элементов, входящих в систему, достаточно воспользоваться свойством MEPSystem.Elements.

Но, как оказалось, это свойство не всегда возвращает полный список элементов, принадлежащих системе.

Опубликовано 27.02.2014     Читать далее >>>
25/02/2014

Как получить значение BuiltInCategory для объекта класса CategoryАвтор: Виктор Чекалин

Категории в Revit API определяются двумя различными способами: классом Category и перечислением BuiltInCategory.

 

Если перечисление по сути представляет собой некое целочисленное значение, то класс Category содержит в себе более полную информацию, такую как наименование (локализованное название), подкатегории, а также методы для управления видимостью объектов категории на заданном виде.

Опубликовано 25.02.2014     Читать далее >>>
20/02/2014

Решение по созданию стены со смещением

Как вы знаете, при создании стены, ее осевая линия всегда располагается по середине стены.  Мы это обсуждали в статье Структурные слои стены.

Опубликовано 20.02.2014     Читать далее >>>
14/02/2014

Два различных типа соединений элементов

В Revit очень много элементов имеют взаимосвязь друг с другом.

Мы уже ранее затрагивали пару раз тему работы с объединением элементов:

Опубликовано 14.02.2014     Читать далее >>>