Revit 构件参数体系说明
1、Revit 构件分类说明
从不同的维度 Revit 构件(图元)有不同的分类;
对用用户来说:最为熟悉的就是“项目浏览器”中“族”节点的三级分类:
这里主要介绍以下几种分类维度;
1.1 常见的三级分类
三级分类,一般用于用户分类管理各种构件,方便用户快速检索使用;
每一级分类都有自己的参数,只不过用户经常关注的时:类型参数、实例参数而已
1.1.1 一级分类 - 类别
英文名字也是 API 的名字:Category
Category 是 Revit 软件内置的基础数据,不能被用户和开发者“增删改”,用户只有使用权限;
对于某个确定的 Revit 版本 Category 数量是固定的,只有在 Revit 版本的变化的时候 Category 才可能变化(一般是新增)
Category 内部也是有联系的,具体变现为子类别 SubCategory,这一点一般用户是看不到的;
下面是 Revit API 暴露出来的所有的 Category,可以通过切花版本查看;
Revit API BuiltInCategory Enumeration (revitapidocs.com)
经过个人统计 Category 发现:
总数:2000+
一般项目中用到的:900左右
实际建模常用的:不超过100
1.1.2 二级分类 - 族
Family
在类别之下的二级分类;
所有添加到 Revit 项目中的图元都是使用族创建的。
族 在 Revit 中也分为多种类型,具有一定的可扩展性,但并不是所有的族都能扩展,后面 1.2 章节会说明
这里需要特殊说明的是:族并不是单一的构件,它是可以嵌套,复合的,从而生成更加复杂高级的族;
更多详细说明参见 Autodesk Revit 官方文档:帮助: Revit 族 (autodesk.com)
1.1.3 三级分类 - 类型
xxx_Type,FamilySymbol
一个族,可以有多个类型;一般叫:族类型;
类型是用户建模的时候必须指定的信息,
指定了类型,就只定了族和类别;
类型下面就是“图元”了,也可以叫构件;所谓图元,就是在模型视图中实实在在看到的对象,但被选中时,会高亮显示,并且会在“属性”窗口中显示图元的参数信息;
“属性”窗口中显示的并不是图元所有的属性信息
1.2 按族类型分类
1.2.1 系统族
特点:
- Revit 软件内置的,所有的 rvt 文件都是一样的;
- 有限的;
- 用户不能自己添加 / 删除(Revit 升级的时候或许会新增);
常见的系统族:墙,楼板、各种管线、屋顶、……
1.2.2 载入族
特点:
- 以 rfa 文件的形式存在;
- 可以载入不同的 rvt 文件中复用;
- 用户可以自己新增或者删除;
常见的系统族:梁、柱、管件、管道附件、末端、家具、设备……
1.2.3 内建族
特点:
- 只存在于某一个 rvt 文件内,不能被复用;
- 只包含一个类型且类型名称和族名称一样
- 用户可以自己新增或者删除;
可以随意指定,创建的时候只需要指定 类别,输入一个族名称,Revit 就会自动创建一个内建族
1.3 按 Category 类型分类
这种分类是按照 Category 的属性信息 Category Type 进行划分的
一般较少关注
1.3.1 模型类构件(模型族)
可以在三维视图中进行查看的;
例如:墙、梁、板、柱、……
1.3.2 详图类构件(注释族)
在平面视图中进行辅助查看,不能在三维视图中看到;
例如:标记、尺寸标注、……
1.3.3 分析类构件(分析族)
Revit 中有一个单独的分析模块,分析族用来展示分析结果的
例如:分析墙、分析柱、……
1.3.4 内部类构件(内部族)
Revit 内部使用的;
用户一般不直接使用,通常起到辅助类的构件;
例如:结构连接处理程序、部件、……
2、Revit 参数分类说明
Revit 参数也有多个分类的维度,
这里主要介绍以下几种分类维度
2.1 按作用的层级
作用层级包含了三级分类,在 1.1 中说明过,每一级都有自己的描述参数;
除了三级分类,这里补充说明了“项目参数”和“实例参数”
2.1.1 项目级参数
这里项目有别于建筑设计的项目,意思是 rvt 文件,Revit 默认一个 rvt 文件就是一个项目文件,rvt 文件级别的参数就是项目参数,不同的 rvt 文件可以定义不同数量的参数;
所有的项目参数集合在一起,叫做“项目信息”,也是一个 Category 类别
符合 Revit 添加参数的统一流程
除此之外还有一种特殊的项目参数叫“全局参数”,是 2016 R2 以后新增的,具体参见 2.2
2.1.2 族级参数
被用来描述族 Family 的相关信息;
一边较少使用,且不能增删改
2.1.3 类型级参数
一个族一般有多个类型,一个类型之所以区别于另一个类型,就是因为类型参数的参数值不一样(如果一样,那么就可以认为是相同的类型,就没必要新建这个类型了)
为了描述族下面的多个类型,因此产生了类型参数;
2.1.4 实例级参数
视图中看到的每一个图元,都有自己的属性信息,这些属性信息都是通过实例参数描述的;
具体变现为:Revit “属性”窗口中看到的参数(上面截图,左侧部分)
2.2 按参数的定义
这种分类方式,只关心参数是如何定义的,不关心这个参数将会被用于描述哪个对象;
通过不同不同的定义方式,可以将参数分为以下几类;
2.2.1 内置参数
BuiltinParameter
在 Revit 中通过枚举的方式暴露出来,用户不能做任何修改;
BuiltInParameter Enumeration (revitapidocs.com)
2.2.2 共享参数
用户通过共享参数文件定义;
一般情况下一个用户定义并使用一个共享参数文件,也可以做到多个用户使用同一个共享参数文件;
2.2.3 族参数
在编辑 rfa 文件过程中定义的参数;
根据创建方式的不同,还可以划分为:
- 共享参数
- 一般族参数
- 这类参数比较特殊,该类型的参数只能在族文件范围内定义,
- 简单来说就是,只能在编辑 rfa 文件的时候进行定义;且有效的使用范围只能在 rfa 文件内部;
- 这中参数是造成 revit 参数被滥用的一个原因
族参数,在族内部作用的层级,还可以划分为:
- 类型参数
- 实例参数;
参考:2.1 中的类型参数和实例参数;
2.2.4 全局参数
全局参数是 Autodesk 在 Revit 2016 R2 版本(17 及其以后的版本都有)增加的内容,是继共享参数与项目参数之后新增加的一种参数。
全局参数特定于单个项目文件,但未像项目参数那样指定给类别。全局参数可以是简单值、来自表达式的值或使用其他全局参数从模型获取的值。
有点类似于族文件里的“一般族参数”
详细的使用方式和案例,参见官方文档:帮助: 全局参数 (autodesk.com)
3、Revit 参数管理体系
Revit 中的参数主要有两类:
常规参数
材质类参数
3.1 常规参数的定义管理体系
在 Revit 中所有的参数都必须先定义,然后才能被使用;
关于参数定义,Revit 有自己的一套管理体系;
下面截图是各种参数的定义截图
从上面的截图可以看出来,用于参数管理的主要有以下几个信息:
- 规程
- 参数类型
- 参数分组
- 参数分组方式
- 类型 or 实例
- 是否报告参数
这些信息,主要用于描述一个参数,方便 Revit 对参数进行管理;
“参数定义”并不关注这个参数将会被用于描述什么对象,或者单位是什么;参数的 描述对象,单位信息,则是通过一种关联关系进行使用
因为:
- 一个参数的定义可以被用于描述一个或者多个对象,在给对象添加参数的时候,去选择已经定义好的参数就行了;【添加项目参数的后最右侧会有关联对象的选择】
- 一个参数可能没有单位或者有多个单位;具体选择哪个单位,在显示或者使用的时候确定就可以了,如下图所示;
3.2 材质类参数管理体系
材质类参数,因为涉及到渲染、显示,因此十分复杂;Autodesk 的很多建模软件使用的材质库都是独立的,并不共享;
因为材质相关的参数体系太过复杂,API暴露有是有限的,所以下面主要以介绍为主;
功能入口:管理 -> 设置 -> 材质
在这里用户可以自己创建、定义、编辑、修改与材质相关的各种信息;
从上面的截图看,材质信息主要包含以下几类信息:
- 标识
- 图形
- 外观
- 物理(可选)
- 热度(可选)
每一类,都包含若干参数,并且通过分组进行管理
3.3 通用参数值的管理
上面说完了参数定义,另外一个话题就是参数值;
3.3.1 通用参数(值)特点
因为存在这样一部分参数,他们对于参数值的填写是有一些基本要求的;
比如说:颜色,只能在 0 ~ 255 之间;
还有一类:提供一些基本的参数值,让用户进行选择;同时可以暴露一些参数值定义的接口,让用户可以先定义参数值,然后再选择参数值进行使用。
这类参数值都有一些特点:
- 有限
- 可枚举
- 比较常见、通用
- 跟其他参数或者对象有关联关系
这类参数,主要集中在 管理 -> 设置 面板中
3.3.2 例子
(1)规程类参数:
规程参数各处都有用,参数值是 Revit 规定的有限的几个,与其他参数有关联,比如说:参数分组,子规程等
(2)建筑/空间 类型参数
(3)机电 - 系统类型 参数
(4)显示类参数(值)
- 填充样式
- 线样式
- 线宽
- 线型图案
- 材质资源
这些跟材质或者显示类的参数都有关系,主要影响的就是渲染显示。