使用Revit Python Shell以某种方式从Revit文件中提取,导出或复制项目属性是否可行?如果是,那有多难?
答案 0 :(得分:1)
通过项目属性,您的意思是项目信息参数吗?这是在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
编辑:获取参数值
答案 1 :(得分:0)
我无法与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)的模型。那不好。我相信它可以通过对模型运行审计来修复 - 但从代码的角度来看,你应该为它做好准备(不像上面那样!:)。