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

ADN Club => Revit API => Тема начата: enot от 13-05-2019, 10:37:48

Название: Экспорт параметра
Отправлено: enot от 13-05-2019, 10:37:48
Как осуществить экспорт параметра проекта в файл общих параметров ?

(https://i.postimg.cc/cKH4G9hz/2019-05-13-10-34-27.png) (https://postimg.cc/cKH4G9hz)
Название: Re: Экспорт параметра
Отправлено: Александр Игнатович от 13-05-2019, 11:20:06
1. получить DefinitionFile методом Application.OpenSharedParameterFile()
2. получить/создать группу общих параметров DefinitionGroup
3. создать общий параметр DefinitionGroup.Definitions.Create.

В последний метод передается ExternalDefinitionCreationOptions, там можете задать GUID, имя, тип
Название: Re: Экспорт параметра
Отправлено: enot от 13-05-2019, 11:28:08
если говорить об экспорте всех параметров проекта, то мне нужно все ParameterBindings загнать в SharedParameterFile ?
Название: Re: Экспорт параметра
Отправлено: Александр Игнатович от 13-05-2019, 11:36:41
Ну все или не все - Вам лучше знать  ;D

А вообще, не все параметры проекта - общие, т.е. GUID есть. Ну и ещё, в файл общих параметров нельзя добавлять 2 с одинаковыми GUID или именем
Название: Re: Экспорт параметра
Отправлено: enot от 13-05-2019, 11:44:31
А вообще, не все параметры проекта - общие, т.е. GUID есть.
если нет GUID (GUID=null), значит это параметр проекта?
Название: Re: Экспорт параметра
Отправлено: Александр Игнатович от 13-05-2019, 11:51:57
Ну, немножко не так:

Код - C# [Выбрать]
  1. var iterator = doc.ParameterBindings.ForwardIterator();
  2.             while (iterator.MoveNext())
  3.             {
  4.                 var definition = (InternalDefinition)iterator.Key;
  5.  
  6.                 var sharedParameterElement = revitDocument.GetElement(definition.Id) as SharedParameterElement;
  7.  
  8.                 if (sharedParameterElement != null)
  9.                
  10.                 ...
  11.                 ... можем использовать sharedParameterElement.GuidValue
  12.                 ...
  13.  
  14.  
Название: Re: Экспорт параметра
Отправлено: enot от 13-05-2019, 12:00:05
Спасибо, понял.
свойство GuidValue есть только у SharedParameterElement (в отличие от ParameterElement )