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

10/08/2014

Обновление файлов семейств без отображения диалога

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

Есть ли способ загрузить семейства в тихом режиме, т.е. без отображения каких-либо диалогов? Я хочу, чтоб семейство все-таки обновилось, но без предупреждений. Либо чтобы это предупреждение появлялось только один раз.

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

Фильтрация системных семейств

Вопрос: Возможно ли создать такой фильтр, чтобы получить только системные семейства, игнорируя пользовательские? Я пробовал использовать пример, описанный в статье http://adndevblog.typepad.com/aec/2012/05/accessing-system-families-in-a-revit-template.html, однако, этот фильтр возвратил все семейства.

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

Работа с кодом надстройки для различных версий RevitАвтор: Виктор Чекалин

Как правило, с выпуском новой версии Revit меняется и его API – появляются новые методы, исчезают старые. Надстройка же зачастую должна работать как в новой версии, так и в старой. Разработчик должен при этом должен как-то обслуживать код для различных версий Revit.

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

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

Преобразование Polyline в Polyline2d

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

Лёгкое программирование под Autodesk Vault Часть 28

Перемещение файлов
Опубликовано 08.08.2014     Читать далее >>>
07/08/2014

Лёгкое программирование под Autodesk Vault Часть 26Автор: Дмитрий Емельянов

Специально для проведения курсов обучения программистов Autodesk Vault, разработан модуль на языке сценариев PowerShell
Опубликовано 07.08.2014     Читать далее >>>
07/08/2014

Лёгкое программирование под Autodesk Vault Часть 27Автор: Дмитрий Емельянов

Файлы. Удаление
Опубликовано 07.08.2014     Читать далее >>>
06/08/2014

Запись и чтение Lisp-переменных в .NET API

Мы знаем, что записывать и читать lisp-переменные можно при помощи P/Invoke функций acedGetSym/acedPutSym из ObjectARX. Однако начиная с AutoCAD 2013 мы можем воспользоваться методами SetLispSymbol и GetLispSymbol класса Document.

В следующем примере мы обратим внимание на запись нескольких фрагментов данных в lisp-переменную. Для этой цели используем тип TypedValue со значением перечисления LispDataType

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

Revit 2015 Обновление 3

Вышло третье обновление для Revit 2015.

Обновление включает в себя большое количество важных улучшений из них:

  • 45 – для Revit Architecture
  • 18 – для Revit MEP
  • 7 – для Revit Structure
  • 9 – для Revit API
Опубликовано 06.08.2014     Читать далее >>>
04/08/2014

Лёгкое программирование под Autodesk Vault Часть 25

Удаление файлов из Autodesk Vault. Обзор методов.
Опубликовано 04.08.2014     Читать далее >>>
24/07/2014

Извлечение полезной информации об элементе

Вопрос: Я бы хотел определить, какие элементы лежат на другом элементе.

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

Опубликовано 24.07.2014     Читать далее >>>
22/07/2014

Секция конструкции

Следующий пример по созданию секции конструкции был реализован Andrzej Trelinski из команды разработчиков Revit, за что ему большое спасибо.

В примере демонстрируется, как можно программно создать секцию конструкции для балки. Интересной особенностью, является то, что метод FamilySymbol.HasStructuralSection, не смотря на свое название (имеет секцию конструкции – прим. переводчика), возвращает ИСТИНА, в том случае, если типоразмер лишь может содержать в себе секцию конструкции.

Опубликовано 22.07.2014     Читать далее >>>
17/07/2014

Autodesk Exchange Apps - Информация для разработчиков приложений на базе Autodesk Maya

Это руководство предназначено для разработчиков, желающих опубликовать свои приложения и другие продукты в онлайн - магазине Autodesk® Exchange Apps в виде платных, бесплатных, или пробных (trial) версий. В руководстве приведены практические рекомендации и требования к процессу публикации в Autodesk Exchange Apps. Рекомендации призваны максимально облегчить загрузку пользователями приложений из Autodesk Exchange Apps.
Опубликовано 17.07.2014     Читать далее >>>
16/07/2014

Autodesk Exchange Apps - Информация для разработчиков приложений на базе Autodesk 3ds Max

Это руководство предназначено для разработчиков, желающих опубликовать свои приложения и другие продукты в онлайн - магазине Autodesk® Exchange Apps в виде платных, бесплатных, или пробных (trial) версий. В руководстве приведены практические рекомендации и требования к процессу публикации в Autodesk Exchange Apps. Рекомендации призваны максимально облегчить загрузку пользователями приложений из Autodesk Exchange Apps.
Опубликовано 16.07.2014     Читать далее >>>
15/07/2014

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

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

Для этого я использовал значение параметра элемента Имя системы и затем сравнивал его с наименованием конкретной системы. Для этого я использовал фильтр ElementParameterFilter, позволяющий выбирать элементы по значению параметра:

Код - C#: [Выделить]
            FilterableValueProvider valueProvider =

                new ParameterValueProvider(new ElementId(BuiltInParameter.RBS_SYSTEM_NAME_PARAM));

 

            FilterRule filterRule =

                new FilterStringRule(valueProvider, new FilterStringEquals(), system.Name, true);

 

            ElementParameterFilter systemNameParameterFilter =

                new ElementParameterFilter(filterRule);

 

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

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

Autodesk Exchange Apps - Информация для разработчиков приложений на базе Autodesk Revit

Это руководство предназначено для разработчиков, желающих опубликовать свои приложения и другие продукты в онлайн - магазине Autodesk® Exchange Apps в виде платных, бесплатных, или пробных (trial) версий. В руководстве приведены практические рекомендации и требования к процессу публикации в Autodesk Exchange Apps. Рекомендации призваны максимально облегчить загрузку пользователями приложений из Autodesk Exchange Apps.
Опубликовано 15.07.2014     Читать далее >>>
15/07/2014

Autodesk Exchange Apps - Информация для разработчиков приложений на базе Autodesk Inventor

Это руководство предназначено для разработчиков, желающих опубликовать свои приложения и другие продукты в онлайн - магазине Autodesk® Exchange Apps в виде платных, бесплатных, или пробных (trial) версий. В руководстве приведены практические рекомендации и требования к процессу публикации в Autodesk Exchange Apps. Рекомендации призваны максимально облегчить загрузку пользователями приложений из Autodesk Exchange Apps.
Опубликовано 15.07.2014     Читать далее >>>
13/07/2014

Использование объекта DataStorage для хранения настроекАвтор: Виктор Чекалин

У разработчиков часто возникает вопрос, где хранить настройки приложения либо другую информацию, которая привязана к конкретной модели.

Традиционно для этих целей использовались общие параметры, затем, расширяемая область хранения Extensible Storage. Но у обоих вариантов возникала проблема, какой элемент нужно использовать для хранения параметра или к какому применить расширяемую область. Одним из вариантов – использовать элемент ProjectInfo, содержащий в себе информацию о проекте.

Однако, при совместной работе над проектом часто возникает ситуация, когда один из пользователей заблокировал этот элемент для изменения, например, когда элементарно поменял настройки проекта.

В Revit 2013 API для этих целей появился специальный объект – DataStorage. Объект наследуется от класса Element, а, следовательно, его можно и нужно использовать для хранения расширяемой области хранения.

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