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

11/08/2014

Преобразование цветов между RGB и AutoCAD ACI в ObjectARX

Преобразование цвета в RGB к ближайшему эквивалентному индексу в палитре индексов AutoCAD (ACI) может быть сделано при помощи методов loopUpACI и lookUpRGB, реализованных в классе AcCmEntityColor.

Следующий пример использует метод lookUpRGB() для конвертации индекса цвета 47 в соотвествующий цвет в RGB, а затем используя полученный RGB найдем ближайший индексный цвет при помощи метода lookUpACI()

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

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

Папки. Введение
Опубликовано 11.08.2014     Читать далее >>>
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     Читать далее >>>