BimRv SDK:管理附加文件

链接管理器是 OdaBimApp 工具,允许您管理附加到建筑模型的文件。管理器显示已添加的 CAD 文件、DWF 标记和点云文件。您还可以创建指向 RVT 文件的新链接,并在现有链接无效时对其进行编辑。

要在 OdaBimApp 中打开链接管理器:

  1. 打开任何 RVT 文件。
  2. 选择“格式”>“管理链接”。
manage link

每个选项卡对应不同的文件格式:Revit (RVT)、IFC、CAD 格式、DWF 标记、点云、地形、PDF 和图像。

对于除 DWF 标记和地形之外的所有文件类型,您都可以看到文件名、保存文件的路径以及路径类型(相对或绝对)。

可以通过选择所需文件并单击“编辑文件路径”来编辑指向 Revit (RVT) 文件的链接。

edit file path

在新窗口中,您可以更改保存路径和路径类型。

save

此外,您可以添加指向 RVT 文件的新链接或删除现有链接。这些功能仅适用于 RVT 文件。

扩展功能

RVT 和 IFC 文件格式

支持的文件类型扩展名为 .rvt、.ifc、.ifcXML 和 .ifcZIP。

要获取所有可用链接,请使用带有特定参数的 getAppInfo() 方法:


pRvtLinkTracking = database()->getAppInfo(OdBm::ManagerType::RvtLinkTracking);

要处理指向 RVT 和 IFC 文件的链接,请在数据库中使用 OdBmRvtLinkSymbol 类。要获取有关引用文件的基本信息,请使用以下方法:

  • getFullDisplayPath() — 根据路径类型获取显示的 文件路径。
  • getOtherDocModelLocation()、getLastKnownModelPath()、getPath() — 获取完整文件路径。
  • getSymbolInfo()、getName() — 获取带扩展名的文件名。
  • getRelative() — 获取路径类型。如果方法返回 true,则为相对路径;否则为绝对路径。
  • getShouldLoadSource() — 获取链接文件的状态。如果方法返回 true(已加载),则链接文件的模型已矢量化;如果方法返回 false(未加载),则链接文件的模型未矢量化。
  • getLinkOriginFileType() — 获取文件格式。返回 OdBm::LinkOriginFileType::Enum 枚举中的值。

要复制链接管理器(Link Manager)的用户界面元素行为,请使用以下代码:

  • 加载/卸载按钮 — 更改加载状态。要控制状态,请使用 setShouldLoadSource() 方法。
  • 添加按钮 — 为 RVT 文件添加新链接。
ODBM_TRANSACTION_BEGIN(tr, m_pDb);
tr.start();

// Create RvtLinkSymbol
OdBmRvtLinkSymbolPtr pNewRvtLinkSymbol = OdBmRvtLinkSymbol::createObject();
m_pDb->addElement(pNewRvtLinkSymbol);
pNewRvtLinkSymbol->addNewLinkFile(sPath, 0);

//  Create RvtLinkInstance
OdBmRvtLinkInstancePtr pNewRvtLinkInst = OdBmRvtLinkInstance::createObject();
pNewRvtLinkInst->addNewLinkInstance(pNewRvtLinkSymbol->id());
m_pDb->addElement(pNewRvtLinkInst);

// Add new RvtLinkSymbol to Manager
OdBmRvtLinkTrackingPtr pRvtLinkTracking = m_pDb->getAppInfo(OdBm::ManagerType::RvtLinkTracking);
OdBmSet aRvtLink;
pRvtLinkTracking->getElemIdSet(aRvtLink);
aRvtLink.insert(pNewRvtLinkSymbol->id());
pRvtLinkTracking->setElemIdSet(aRvtLink);

// Add new RvtLinkInstance to Manager
OdBmRvtLinkInstTrackingPtr pRvtLinkInstTracking = m_pDb->getAppInfo(OdBm::ManagerType::RvtLinkInstTracking);
OdBmSet aRvtLinkInst;
pRvtLinkInstTracking->getElemIdSet(aRvtLinkInst);
aRvtLinkInst.insert(pNewRvtLinkInst->id());
pRvtLinkInstTracking->setElemIdSet(aRvtLinkInst);

tr.extend(pNewRvtLinkSymbol->id(), true);
tr.extend(pNewRvtLinkInst->id(), true);
tr.commit();
ODBM_TRANSACTION_END();

编辑路径按钮 — 允许您编辑现有文件的无效路径。相应的方法是 setNewFilePath()。

CAD 文件格式

ODA Bim App 支持的 CAD 文件格式包括 .dwg、DXF、DGN、SAT、SKP 和 3DM。

要获取所有可用链接,请使用带特定参数的 getAppInfo() 方法:


pRvtLinkTracking = database()->getAppInfo(OdBm::ManagerType::LinkedFileInfo);

要使用 CAD 文件格式,请在数据库中使用 OdBmMasterImportSymbol 类。要获取有关引用文件的基本信息,请使用以下方法:

  • getImportFileData(), getFullName() — 获取带文件扩展名的文件名。
  • getFullDisplayPath() — 根据路径类型获取显示的文件路径。
  • getImportFileData(), getIsRelative() — 获取路径类型。如果方法返回 true,则为相对路径;否则为绝对路径。
  • getSize() / 1024 — 获取文件大小(以千字节为单位)。
  • getImportFileData(), getLoadedStatus() — 获取链接文件的状态。如果方法返回 true(已加载),则链接文件的模型已矢量化;如果方法返回 false(未加载),则链接文件的模型未矢量化。
点云文件格式

ODA Bim App 支持的点云文件格式包括 RCP 和 RCS。

要获取所有可用链接,请使用带特定参数的 getAppInfo() 方法:


pRvtLinkTracking = database()->getAppInfo(OdBm::ManagerType::PointCloudTypeTracking);

要使用点云格式,请在数据库中使用 OdBmPointCloudType 类。要获取有关引用文件的基本信息,请使用以下方法:

  • getSymbolInfo(), getName() — 获取带文件扩展名的文件名。
  • getFullDisplayPath() — 根据路径类型获取显示的文件路径。
  • getIsLoaded() — 获取链接文件的状态。如果方法返回 true(已加载),则链接文件的模型已矢量化;如果方法返回 false(未加载),则链接文件的模型未矢量化。
PDF 和图像文件格式

支持的 PDF 和图像文件格式包括 PDF 以及 BMP、JPG、JPEG、PNG 和 TIF。

要获取所有可用链接,请使用带特定参数的 getAppInfo() 方法:

pRvtLinkTracking = database()->getAppInfo(OdBm::ManagerType::ElementTracking);

要使用 PDF 和图像文件格式,请在数据库中使用 OdBmImageSymbol 类。要获取有关引用文件的基本信息,请使用以下方法:

  • getSymbolInfo(), getName() — 获取带文件扩展名的文件名。
  • getFullDisplayPath() — 根据路径类型获取显示的文件路径。
  • getPathType() — 获取文件类型。

今天就开始行动

免费试用 ODA 软件 60 天。
无风险,无需信用卡。

免费试用