Публичное API помогает разработчикам, использующим платформу AIS для распространения своих решений, создавать и адаптировать решения для распространения через Маркетплейс.
Поддерживаемые языки программирования
Наименование ЯП | Начиная с версии | До версии (включительно) |
---|---|---|
C# | 8.0 | 12.x |
Поддерживаемые Продукты
Наименование | Начиная с версии | До версии (включительно) |
---|---|---|
Revit | 2019 | 2025 |
Поддерживаемые фреймворки и программные пакеты
Наименование | Версия | ЯП | Продукты |
---|---|---|---|
.NET Framework | 4.8 | C# | Revit 2019 - 2024 |
.NET | 8 | C# | Revit 2025 |
|
Для расширений возможностей поддерживаемых Родительских Продуктов используются базовые объекты выполняющие описания Команды и ее составляющих. Команда подразумевает минимальный набор связанного программного функционала. Например: подсчет чего-либо, замена определенных значений попадающих под условие и т.п. - являются Командами в рамках платформы AIS. Не рекомендуется определять целые наборы функционала в одну команду. Например: набор из инструментов по работе с текстом и т.п. - должны быть разбиты на отдельные Команды и объединены в Плагин, в случае, если раздельное использование инструментов из набора невозможно, либо в Пакет или Пакеты, если инструменты из набора допускают логическую(ие) группировку(и).
Рекомендуется использовать для каждой Команды свою (отдельную) Сборку, Сборки объединять, по необходимости, в Пакеты.
Основными объектами для описания Команды являются реализации:
Объект | Обязательно | Специфично для РП | Примечание |
---|---|---|---|
Дочерние описания ICommand | Да | Уникальные описания для каждой Команды размещенной в Сборке | |
Описание IDeveloper | Да | Уникальное описание Разработчика которому принадлежат Команды размещенные в Сборке | |
Описание IPlugin | Указывается в случае невозможности деления Команд размещенных в Сборке | ||
Описание IPackage | Указывается в случае участия Команд размещенных в Сборке в Пакете(ах) | ||
Дочерние описание поддерживаемых элементов управления IRevitControl | Да | Revit 2019 - 2025 | Выполняет описание допустимого элемента управления для Команды |
Описание IDeveloper должно всегда присутствовать в каждой Сборке. Допускается только единственное описание IDeveloper для всей Сборки.
В каждой Сборке должно присутствовать минимум одно дочернее описание ICommand. Допускается, но крайне не рекомендуется, наличие описания для различных Родительских Продуктов в рамках одной Сборки. Рекомендуется располагать в одной Сборке описание только одной Команды.
Описания IPlugin и/или IPackage должны присутствовать в случаях физической и/или логической группировки расположенных в Сборке Команд. Допускается множественное описание IPlugin и/или IPackage.
Дочерние описание одного из поддерживаемых элементов управления IRevitControl должно быть обязательно указано/реализовано в описании Команды (IRevitCommand). Команды без описания элемента управления у Команды не будут видны/доступны для вызова в графическом интерфейсе Родительского Продукта.
Допускается отсутствие реализации элемента управления IRevitControl только у фоновых и вспомогательных Команд.
Функционал фоновых и вспомогательных Команд находится в разработке и будет доступен в будущих версиях/релизах. |
Все объекты API можно разделить на несколько групп: описательные, вспомогательные, служебные, справочные.
Помогают выполнить описание программного(ых) решения(й) размещаемых в Сборке.
К описательным объектам относятся:
Помогаю Разработчику в создании/адаптации программного решения под платформу AIS.
К вспомогательным объектам относятся:
Помогают в реализации дополнительных параметров описания. Являются самостоятельными инструментами.
К служебным объектам относятся:
Помогают кодировать параметры числовыми значениями, основываясь на текстовом представлении понятном для Разработчика.
К справочным объектам относятся: