2

是否可以使用 Revit Python Shell 从 Revit 文件中提取、导出或复制项目属性?如果是,它有多难?

4

2 回答 2

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

编辑:获取参数值

于 2016-11-30T22:32:48.473 回答
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();

旁注:我最近遇到了一系列在其 Document 上没有 ProjectInformation 属性(null)的模型。这不好。我相信可以通过对模型运行审计来修复它 - 但从代码的角度来看,你应该为此做好准备(不像上面那样!:))。

于 2016-11-30T15:00:29.463 回答