EaBIM一直以来积极响应国家“十二五”推进建筑业信息化的号召,对建筑领域的信息技术开展深入技术交流和探讨!致力于打造“BIM-建筑师-生态技术”三位一体综合资源交流共享平台,希望为BIM与可持续设计理念及技术的普及做出微小的贡献!!!

EaBIM

 找回密码
 注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

搜索
查看: 2551|回复: 22
打印 上一主题 下一主题

[团队作品] Revit中的公式和函数应用

[复制链接]

4

主题

6

帖子

83

积分

版主

Rank: 8Rank: 8Rank: 8Rank: 8Rank: 8Rank: 8Rank: 8Rank: 8

积分
83

社区QQ达人

跳转到指定楼层
楼主
发表于 2015-1-12 16:31:28 | 只看该作者 回帖奖励 |正序浏览 |阅读模式

随着接触越来越多的族,用到公式函数的情况越来越多,虽然应用起来不是很难,但有的时候去找函数确实费时间,刚巧在网上看到有人整理了常用的函数组合,转来给大家学习下,还可以节省我们写函数语句的复杂性。内容如下

1. 有效公式语法和缩写
公式支持以下运算操作:加、减、乘、除、指数、对数和平方根。公式还支持以下三角函数运算:正弦、余弦、正切、反正弦、反余弦和反正切。


算术运算和三角函数的有效公式缩写为:
■ 加 - +
■ 减 - -
■ 乘 - *
■ 除 - /
■ 指数 - ^:x^y,x 的 y 次方
■ 对数 - log
■ 平方根 - sqrt:sqrt(16)
■ 正弦 - sin
■ 余弦 - cos
■ 正切 - tan
■ 反正弦 - asin
■ 反余弦 - acos
■ 反正切 - atan
■ e 的 x 方 - exp
■ 绝对值 - abs
使用标准数学语法,可以在公式中输入整数值、小数值和分数值,如下例所示:
■ Length = Height + Width + sqrt(Height*Width)
■ Length = Wall 1 (11000mm)+ Wall 2 (15000mm)
■ Area = Length (500mm) * Width (300mm)
■ Volume = Length (500mm) * Width (300mm) * Height (800 mm)
■ Width = 100m * cos(angle)
■ x = 2*abs(a) + abs(b/2)
■ ArrayNum = Length/Spacing
公式中的参数名是区分大小写的。例如,如果某个参数名以大写字母开头,如 Width,则必须在公式中以大写首
字母输入该名称。如果在公式中使用小写字母输入该名称,如 width * 2,则软件无法识别该公式。




2.公式中的条件语句

可以在公式中使用条件语句,来定义族中取决于其他参数的状态的操作。使用条件语句,软件会根据是否满足指定
条件来输入参数值。在某些情况下,条件语句是很有用的;但是,它们会使族变得更复杂,应仅在必要时使用。
对于大多数类型参数,条件语句是不必要的, 因为类型参数本身就像一个条件语句:如果这是类型,则将该参数
设置为指定值。实例参数更适合用于条件语句,尤其是用于设置不连续变化的参数。


条件语句的语法
条件语句使用以下结构: IF (<条件>, <条件为真时的结果>, <条件为假时的结果>)


这表示输入的参数值取决于是满足条件(真)还是不满足条件(假)。如果条件为真,则软件会返回条件为真时的
值。如果条件为假,则软件会返回条件为假时的值。


条件语句可以包含数值、数字参数名和 Yes/No 参数。在条件中可使用下列比较符号:<、>、=。还可以在条件语
句中使用布尔运算符:AND、OR、NOT。当前不支持 <= 和 >=。要表达这种比较符号,可以使用逻辑值 NOT。
例如,a<=b 可输入为 NOT(a>b)。
下面是使用条件语句的公式示例。


简单的 IF 语句: =IF (Length < 3000mm, 200mm, 300mm)
带有文字参数的 IF 语句:=IF (Length > 35', “String1”, “String2”)
带有逻辑 AND 的 IF 语句:=IF ( AND (x = 1 , y = 2), 8 , 3 )
带有逻辑 OR 的 IF 语句: =IF ( OR ( A = 1 , B = 3 ) , 8 , 3 )
嵌套的 IF 语句:=IF ( Length < 35' , 2' 6" , IF ( Length < 45' , 3' , IF ( Length < 55' , 5' , 8' ) ) )
带有 Yes/No 条件的 IF 语句:=Length > 40(请注意,条件和结果都是隐含的。)


使用条件语句的示例
公式中条件语句的典型使用包括计算阵列值以及根据参数值控制图元的可见性。例如,可以将条件语句用于下列情况
■ 防止阵列参数使用小于 2 的值。
在 Revit Architecture 中,阵列的值必须是大于或等于 2 的整数。在一些情况下,这对于创建保持阵列参数为
2(即使计算值为 1 或 0) 的条件公式是很有用的。使用这样的公式,如果计算的阵列值等于或大于 2,则公
式将保留该值。但是,如果计算值为 1 或 0,则公式将把该值修改为 2。
公式: Array number = IF (Arrayparam < 2, 2, Arrayparam)


■ 仅当窗灯光的数目大于 1 时,窗格条才可见。
例如,如果有一个要用于控制窗格条几何图形的可见性的 Lights 参数,则可以创建类似于 MuntinVis 的 Yes/No
参数,并将其指定给窗格条几何图形的“实例属性”对话框中的“可见”参数。因为 MuntinVis 参数是 Yes/No
(或布尔)运算,条件 (IF) 和结果都是隐含的。在该实例中,当满足条件时(真),将选中 MuntinVis 参数
值,且窗格条几何图形是可见的。反之,当不满足条件时(假),将清除 MuntinVis 参数,且窗格条几何图
形是不可见的。
公式: MuntinVis = Lights > 1


本文转自http://xiaozu.renren.com/xiaozu/125818/332575533


分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友 微信微信
收藏收藏1 转播转播 分享分享 分享淘帖 支持支持1 反对反对

5

主题

50

帖子

951

积分

BIM项目负责人

Rank: 5Rank: 5Rank: 5Rank: 5Rank: 5

积分
951
推荐
发表于 2015-1-21 10:04:47 | 只看该作者
真好,我正需要这个,谢谢
推荐
发表于 2017-6-2 09:57:43 | 只看该作者
就是来点赞的哦

1514

主题

7465

帖子

1万

积分

admin

Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10

积分
12406

社区QQ达人

推荐
发表于 2017-1-4 00:33:48 | 只看该作者
值得推荐,谢谢
工作时间:工作日的9:00-12:00/13:30-18:00,节假日不在线,请勿留言

1514

主题

7465

帖子

1万

积分

admin

Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10Rank: 10

积分
12406

社区QQ达人

18F
发表于 2017-1-4 00:33:44 | 只看该作者
值得推荐,谢谢
工作时间:工作日的9:00-12:00/13:30-18:00,节假日不在线,请勿留言
*滑块验证:
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|EaBIM网 ( 苏ICP备2020058923号-1  苏公网安备32011502011255号

GMT+8, 2024-11-28 02:37

Powered by Discuz! X3.2 Licensed

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表