Моя первая программа для Autodesk Revit, Вводная часть

Моя первая программа для Autodesk Revit, Вводная часть

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

Курс «Моя первая программа» позволяет самостоятельно освоить азы программирования. В нем реализован комплексный подход к объяснению основ процесса пользователям, которые уже хорошо знакомы с продуктами Autodesk и теперь решили заняться самостоятельным созданием дополнений к ним. В ходе курса обучаемые будут работать с Autodesk Revit .NET API и языком программирования C#. Для тех, кто предпочитает VB.NET, подготовлены образцы кода и на этом языке.

Продукт: Autodesk Revit*
Язык программирования: C# (а также VB.NET, но без письменных пояснений к образцам кода)
Интерфейс прикладного программирования (API): Revit .NET API

*В учебном курсе рассматривается работа с Autodesk Revit Architecture, однако все описанные действия можно применить и для других вариантов Revit. Принципы написания дополнений для 2011 (и последующих) версий продуктов Revit Architecture, Revit Structure и Revit MEP идентичны. Для 2011 и 2012 версий в ходе занятий пользователям предлагается работать в среде Visual Studio Tools for Applications (VSTA). В Revit 2013 VSTA заменена на SharpDevelop.

Общая информация

 

В Интернете доступно множество учебных ресурсов по Autodesk Revit API, но большинство из них предназначено для пользователей, имеющих достаточный опыт в программировании. Этот учебный курс организован по-другому: не предполагая наличия навыков программирования у обучаемого, он помогает создать первый плагин, при этом не перегружая пользователя лишней информацией. Вне зависимости от уровня владения основами программирования, уже через час после начала занятий обучаемый будет иметь вполне работоспособное приложение. Курс открывается обзором преимуществ адаптации продуктов Autodesk, а затем мы перейдем непосредственно к занятиям по использованию Autodesk Revit API. Обучаемые создадут работоспособный плагин, и лишь после этого во всех подробностях ознакомятся с основополагающими принципами и приступят к расширению функциональных возможностей приложения.

 

Преимущества адаптации Autodesk Revit

 

Современные условия требуют постоянного повышения эффективности работы. Именно на это нацелена адаптация продуктов: подстройка используемого ПО под свои производственные задачи значительно повышает эффективность совершаемых действий. Компания Autodesk предоставляет мощные API и SDK (наборы инструментов для разработки приложений), призванные помочь в повышении окупаемости инвестиций в ее продукты. Autodesk Revit обладает многофункциональным API, с помощью которого можно модернизировать существующие функции продукта и добавлять новые. Вы можете автоматизировать повторяющиеся, требующие больших затрат времени задачи и усовершенствовать базовый функционал, не покидая среды Autodesk Revit. API служит средством для создания собственных инструментов и функций, которые встраиваются в среду Autodesk Revit и расширяют возможности этого продукта. В Autodesk Revit есть также .NET API; это означает, что пользователь может применять любой язык программирования, использующий платформу .NET (C#, VB.NET, F# и т.д.) для создания плагинов. У каждого из этих языков есть свои достоинства, но для данного курса из-за простоты освоения и применения, а также благодаря наследованию всей мощи платформы .NET Framework был выбран язык C#. После того как вы привыкнете к технике программирования и в достаточной мере освоите C#, можно будет переходить к решению более сложных задач с помощью этого языка. Несмотря на очевидность предпочтения C#, язык не всегда можно свободно выбрать, так как в некоторых компаниях существуют свои ограничения. Следом за C# по своим характеристикам идет язык программирования VB.NET. Для тех, кто планировать писать приложения для Autodesk Revit на этом языке, мы продублировали весь используемый на занятиях программный код на VB.NET. Умение программировать очень полезно. Будем надеяться, что после завершения учебного курса в этом убедятся все.

 

Общая информация о плагине

 

В ходе учебного курса «Моя первая программа» будет создана новая команда, копирующая группу объектов (в нее могут входить мебель, перегородки и элементы инженерных систем) из одной комнаты в другую. В моделях зданий часто встречается одинаковая компоновка мебели. Ее копирование вручную – довольно трудоемкий процесс: проблемой может стать, например, сохранение одинакового положения. Задачи такого рода идеально подходят для автоматизации посредством Autodesk Revit API, что и будет представлено вниманию обучаемых в этом курсе.

Видео: Готовый плагин

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

 

Необходимое программное обеспечение

 

  • Autodesk® Revit® Architecture
    В данном курсе подразумевается, что работа ведется в Autodesk Revit Architecture 2011 или одной из более поздних версий.

  • Microsoft® Visual C# Express
    Данный курс рассчитан на применение Microsoft Visual C# 2010 Express. Также возможно использование других версий Visual Studio с поддержкой C#.

 

 

 

Видео: Установка Visual C# 2010 Express

 

Краткое содержание уроков

 

Урок 1. Общее представление о программе
На этом уроке мы создадим первый базовый плагин для Autodesk Revit, который копирует выбранную пользователем группу в указанное место.

Урок 2. Знакомство со средой разработчика
На этом уроке мы подробнее взглянем на то, что происходит при выполнении программного кода плагина, а также познакомимся с принципами работы в среде Visual C# Express.

Урок 3. Первый взгляд на код
На этом уроке будет продолжено изучение Autodesk Revit API. Мы еще более детально проанализируем код C#, который был введен на первом уроке, разобравшись с каждой строкой. Выполнив анализ кода, вы ближе подойдете к пониманию понятий объектно-ориентированного программирования, классов, методов, объявления переменных, создания объектов-классов и свойств.

Урок 4. Отладка кода
На этом уроке мы научимся использовать отладчик Visual Studio для пошагового исполнения плагина и отслеживания изменения переменных.

Урок 5. Простой выбор группы
На этом уроке мы доработаем функцию выбора, сделав ее проще для пользователя при выборе группы. Мы также исключим возможные неожиданные ситуации, приводящие к ошибкам.

Урок 6. Работа с геометрией комнаты
На этом уроке мы расширим возможности плагина, сделав так, чтобы выбранная группа копировалась относительно центра комнаты, в которой она расположена. Кроме того, мы изучим реализованные в Revit API возможности фильтрации с помощью класса FilteredElementCollector и условный оператор if.

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

Урок 8. Дополнительные ресурсы
На этом уроке мы предоставим вам дополнительную информацию, которая поможет повысить эффективность разработки плагинов для Autodesk Revit. Мы покажем, где найти справочные сведения по API, документацию, примеры, а также порекомендуем ресурсы для дальнейшего изучения Autodesk Revit API.