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

ADN Club => Revit API => Тема начата: Денис Перепецкий от 12-02-2015, 10:11:50

Название: Доступ к аналитической модели
Отправлено: Денис Перепецкий от 12-02-2015, 10:11:50
Подскажите, направьте...
Как и откуда мне получить доступ к аналитике? Ответ есть в SDK. Поизучаю пока, но вопросы будут точно )

Собственно мне нужно получить доступ к аналитике и далее генерировать выходной файл для различных расчетных комплексов.
Название: Re: Доступ к аналитической модели
Отправлено: Денис Перепецкий от 12-02-2015, 15:03:35
Код - C# [Выбрать]
  1. public Result Execute(ExternalCommandData commandData, ref string message, ElementSet elements)
  2.         {
  3.             mApplication = commandData.Application.Application;
  4.  
  5.             if(commandData.Application.ActiveUIDocument.Selection.Elements.Size > 0)
  6.             {
  7.                 foreach(Element element in commandData.Application.ActiveUIDocument.Selection.Elements)
  8.                 {
  9.                     if(element is Wall)
  10.                     {
  11.                         Wall wall = element as Wall;
  12.                         AnalyticalModel model = wall.GetAnalyticalModel();
  13.  
  14.                         if (model.IsSurface())
  15.                         {
  16.                             /*
  17.                             ну есть у меня аналитика стены или перекрытия... а дальше то что делать не могу сообразить.
  18.                             */
  19.                         }
  20.                     }
  21.                 }
  22.             }
  23.             return Result.Succeeded;
  24.         }
  25.  

в SDK написано о свойствах аналитической модели:
Цитировать
Geometry Retrieves the geometric representation of the element.
(Inherited from Element.)

Только нет у model свойства Geometry. У элемента wall есть, только мне нужна именно аналитика (ее геометрические характеристики).
Название: Re: Доступ к аналитической модели
Отправлено: Виктор Чекалин от 12-02-2015, 15:13:08
dp, с аналитикой никогда не работал, так что быстро не подскажу. Скорее всего придется вместе с Вами докапываться до истины в данном вопросе.
Название: Re: Доступ к аналитической модели
Отправлено: Виктор Чекалин от 14-02-2015, 09:17:03
в SDK написано о свойствах аналитической модели:
Цитировать (выделенное)
Geometry Retrieves the geometric representation of the element.
(Inherited from Element.)

Только нет у model свойства Geometry. У элемента wall есть, только мне нужна именно аналитика (ее геометрические характеристики).
Класс AnalyticalModel наследуется от класса Element, поэтому у него и есть свойство Geometry. При этом у конкретного экземпляра класса Element геометрии может и не быть.

Просмотреть свойста, специфичные для класса AnalyticalModel можно в файле справке. Но не на страничке Members of class AnalyticalModel, а в соедржании.

Обратите внимание, что класс AnalyticalModel содержит несколько потомков:
Каждый из этих класов также содержит методы, специфичные для конкретной аналитической модели.
Название: Re: Доступ к аналитической модели
Отправлено: Agens от 24-02-2020, 11:10:12
Цитировать
If the Element does not have an Analytical Model, the returned value will be NULL. This may occur even if the Element can have an Analytical Model, but does not for some reason.
для стены всегда null...