转载请复制以下信息:
原文链接: http://blog.csdn.net/joexiongjin/article/details/7793282
作者: 叶雄进 , Autodesk ADN
现在族管理器这个工具有不少的需求,看到不少的朋友在编写族管理器,管理族,修改族,加载族等。
那么如何修改一个存储在磁盘上的族文件(.rfa)其中的参数值呢?
可以写一个Revit命令实现对磁盘文件进行修改。
下面是实现的步骤。
1. 在命令中打开这个族文件,最好以后台的方式打开族文件,这样用户察觉不到,而且适合同时对多个族文件进行批量修改。
调用 Application.OpenDocumentFile 函数把磁盘文件打开。
Document docFamily = Application.OpenDocumentFile("c:\\test\\a.rfa");
2. 在打开的族文档上启动一个事务,预备对族进行修改。
Transaction trans = new Transaction(docFamily);
Trans.Start("edit family");
3. 执行族里面内容的编辑。比如这里说的修改族的参数值。
获得参数,修改参数值。这里主要关注流程,不详述如何获取参数,并修改参数值。
4. 提交事务。
trans.Commit();
5. 关闭族Document, 从内存中清除这个族占用的资源。
docFamily.Close();
命令结束。