Autodesk.Revit.DB.ExternalFileUtils
是 Revit API 中的一个类,用于处理外部文件的操作。外部文件包括文本文件,图片文件,PDF 等其他文件格式,可以通过该类实现 Revit 与其他软件之间的数据交互。
IsValidExternalReference(Documen document, ElementId idExternalReference)
检查指定的 Revit 文档中是否包含有效的外部引用元素。
Document document
:指定的 Revit 文档。ElementId idExternalReference
:外部引用元素的 ID。return
: 若存在有效的外部引用,则返回 true
;否则返回 false
。GetExternalFileReference(Document document, ElementId idExternalReference)
获取指定 Revit 文档中的外部文件引用元素的文件路径。
Document document
:指定的 Revit 文档。ElementId idExternalReference
:外部引用元素的 ID。return
: 返回指定外部引用元素的文件路径。SetExternalFileReference(Document document, ElementId idExternalReference, string filePath)
设置指定的 Revit 文档中的外部文件引用元素的文件路径。
Document document
:指定的 Revit 文档。ElementId idExternalReference
:外部引用元素的 ID。string filePath
:指定的文件路径。return
: 若设置成功,则返回 true
;否则返回 false
。// 获取当前工作文档
Document doc = uidoc.Document;
// 获取文档中所有的外部引用元素
FilteredElementCollector collector = new FilteredElementCollector(doc);
ICollection<Element> elements = collector.OfClass(typeof(ImportInstance)).ToElements();
foreach (Element elem in elements)
{
if (ExternalFileUtils.IsValidExternalReference(doc, elem.Id))
{
// 获取外部文件引用元素的文件路径
string filePath = ExternalFileUtils.GetExternalFileReference(doc, elem.Id);
// 处理文件路径
// 设置外部文件引用元素的文件路径
ExternalFileUtils.SetExternalFileReference(doc, elem.Id, newFilePath);
}
}
Autodesk.Revit.Exceptions.ArgumentNullException
:
当指定的参数为 null 时抛出该异常。