Revit 二次开发 - 多文档处理

Revit 二次开发论坛链接:多文档处理


一个实用性很强的问题,和大家分享一下我的实现方式。

首先声明实现基于Revit 2011。程序需要在一个打开的项目文档中再打开另外一个族文档,并且将对族进行读写操作。在两篇Jeremy的博客里分别找到了部分答案,组合之后最终解决了问题。

1. 在文档中打开另一个文档
需要注意的是 Autodesk.Revit.ApplicationServices.Application.OpenDocumentFile(filePath) 无法满足要求。该方法只是在内存中打开文档,并不会创建新文档对应的视图,当然就更谈不上切换到新文档视图了。可行的方法是纯C#桌面编程:System.Diagnostics.Process.Start(filePath)。该方法无论在Add-In之内还是之外都有效。

2. 在文档中创建新文档,并将用户界面切换到新文档
有些小复杂,但是思路依然可以在Jeremy博客中找到,核心操作有四步:
1) 创建新文档对象(在内存中)
Autodesk.Revit.DB.Document dbDoc = Autodesk.Revit.ApplicationServices.Application.NewFamilyDocument(templateFilePath)
2) 创建新文档的专属文档视图 UIDocument
Autodesk.Revit.UI.UIDocument uiDoc =

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 13
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 13
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值