Dynamo For Revit: FamilyDocument Nodes

前言

本文介绍 Revit 2021.1 新加的 FamilyDocument 节点以及相关概念。

内容

增加了 10 个节点,这些节点都需要在族文档里面才有意义:

  • FamilyDocument.ByDocument 通过现有的 Document 创建出一个 FamilyDocument
  • FamilyDocument.AddParameter 增加一个族参数。
  • FamilyDocument.DeleteParameter 删除一个族参数。
  • FamilyDocument.Category 得到族文档所属的类型。
  • FamilyDocument.GetFormula 得到族参数的公式。
  • FamilyDocument.Parameters 得到族的所有参数。
  • FamilyDocument.GetParameterValueByName 得到当前族的某个族类型上某个参数的值(实例或者类型参数)。
  • FamilyDocument.SetCategory 设置族文档所属的类型。
  • FamilyDocument.SetFormula 设置族参数的公式。
  • FamilyDocument.SetParameterValueByName 设置当前族的某个族类型上某个参数的值(实例或者类型参数)。

FamilyDocument 这个概念在 Revit API 中是没有的,在 API 中对应的也是 Document,不过有属性来判断一个文档是否为族文档:

// 只有那些 IsFamilyDocument 为 true 的,OwnerFamily 才有意义。
// Autodesk.Revit.DB.Document 的属性
public bool IsFamilyDocument {
    
     get; }
public Family OwnerFamily {
    
     get; }

目前看来,只有 Document.Current 这个节点可以返回文档,因此 FamilyDocument.ByDocument 是对当前文档的二次包装。
具体使用可以参考官方测试样例:https://github.com/DynamoDS/DynamoRevit/tree/master/test/System/FamilyDocument

FamilyDocument.Category 得到族文档所属的类型,实际上是通过 OwnerFamily.InternalFamily.FamilyCategory
在这里插入图片描述
FamilyDocument.AddParameter 增加一个族参数。

在这里插入图片描述
FamilyDocument.DeleteParameter 删除一个族参数。
在这里插入图片描述
FamilyDocument.GetFormula 得到族参数的公式。

在这里插入图片描述
FamilyDocument.GetParameterValueByName 得到当前族的某个族类型上某个参数的值(实例或者类型参数)。

在这里插入图片描述
FamilyDocument.Parameters 得到族的所有参数。可以通过 FamilyParameter 下面的节点做后续的操作。
在这里插入图片描述
FamilyDocument.SetCategory 设置族文档所属的类型。

在这里插入图片描述

FamilyDocument.SetFormula 设置族参数的公式。

在这里插入图片描述

FamilyDocument.SetParameterValueByName 设置当前族的某个族类型上某个参数的值(实例或者类型参数)。

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/weixin_44153630/article/details/108028251