Свойства проекта добычи из Revit
Можно ли каким-то образом извлечь, экспортировать или скопировать свойства проекта из файла Revit с помощью Revit Python Shell? И если да, то насколько это сложно?
2 ответа
Под свойствами проекта вы подразумеваете параметры информации о проекте? Это быстрый способ получить параметр Информация о проекте в RPS:
parameterName = 'Project Name'
value = '- parameter not found -' # default setting
for parameter in document.ProjectInformation.Parameters:
if parameter.Definition.Name == parameterName:
if parameter.AsString():
value = parameter.AsString()
elif parameter.AsDouble():
value = parameter.AsDouble()
elif parameter.AsInteger():
value = parameter.AsInteger()
else:
value = '- invalid value -'
print value
Редактировать: чтобы получить значения параметров
Я не могу говорить с Revit Python Shell, но с точки зрения Revit API это довольно просто.
Из вашего объекта Document есть свойство "ProjectInformation".
Так в C# это выглядит так:
Parameter p =
myDoc.ProjectInformation.get_Parameter(BuiltInParameter.PROJECT_NUMBER);
Parameter o =
myDoc.ProjectInformation.GetParameters("MyCustomParameter").FirstOrDefault();
Примечание: я недавно столкнулся с потоком моделей, у которых не было свойства ProjectInformation (null) в их Document. Это не хорошо. Я считаю, что это можно исправить, запустив Audit для модели, но с точки зрения кода вы должны быть готовы к этому (не так, как описано выше!:)).