公式及函数
在龙宫STC中,您可在公式字段中中可直接进行输入函数,使用函数计算公式的值。本章节提供目前支持的函数说明。
算术运算符
执行两个变量或值的运算。
运算符 | 描述 | 备注 |
---|---|---|
+ | 加 | 可用于函数之间的运算和字符串之间的运算 |
- | 减 | |
* | 乘 | |
/ | 除 | |
% | 余 | 3%2余1,值就=1 |
比较运算符
用于逻辑语句的判断,从而确定给定的两个值或变量是否相等。 给定A=2。
运算符 | 描述 | 比较 | 结果 | 备注 |
---|---|---|---|---|
== | 等于 | A==1 A==2 |
false ture |
|
=== | 恒等于(值和类型均相等) | A==='2' A===2 |
false ture |
|
!= | 不等于 | A!=2 A!=4 |
false ture |
|
!== | 不恒等于(值和类型均不等) | A!==2 A!=='2' |
false ture |
|
> | 大于 | A>3 A>1 |
false ture |
|
< | 小于 | A<1 A<3 |
false ture |
|
>= | 大于等于 | A>=3 A>=2 |
false ture |
|
<= | 小于等于 | A<=1 A<=2 |
false ture |
逻辑运算符
用来确定变量或值之间的逻辑关系。给定A=2,B=3。
运算符 | 描述 | 示例 | 结果 | 备注 |
---|---|---|---|---|
&& | 和(两个条件均为真) | (A==2&&B==2) (A==2&&B==3) |
false true |
|
|| | 或(前后两个条件其一为真即可) | (A==1||B==2) (A==2||B==2) |
false true |
|
! | 非(两个条件均为假) | !(A!=B) !(A==B) |
false true |
数学函数
用于执行数学任务的函数。
函数 | 描述 | 输入参数 | 公式 | 结果 | 示例 |
---|---|---|---|---|---|
random | 生成随机数 | 无 | random() | 生成[0,1)之间的随机数 | 公式:random() 值:0.873 |
round | 对参数小数位 进行四舍五后取整 |
C1=8.37 | round(C1) | 8 | C1=12.56 公式:round(C1) 值:13 |
ceil | 对参数的小数位 进行上舍入后取整 |
C1=8.37 | ceil(C1) | 9 | C1=9.1 公式:ceil(C1) 值:10 |
floor | 对参数的小数位 进行下舍入后取整 |
C1=8.37 | floor(C1) | 8 | C1=9.1 公式:ceil(C1) 值:9 |
trunc | 截取参数的 整数部分 |
C1=3.141... | trunc(C1) | 3 | C1=12.56... 公式:trunc(C1) 值:12 |
pow | 对浮点数求幂 | C1=2 C2=3 |
pow(C1,C2) | 8 | C1=2;C2=3 公式:pow(C1,C2) 值:8 |
log | 生成参数的 自然对数 (底数为e) |
C1=1 | log(C1) | 0 | C1=1 公式:log(C1) 值:0 |
sqrt | 取参数的平方根 | C1=4 | sqrt(C1) | 2 | C1=16 公式:sqrt(C1) 值:4 |
exp | 生成以自然数e 为底数的指数 |
C1= log(2) |
exp(C1) | 2 | C1=2 公式:exp(C1) 值:7.389 |
abs | 取参数的绝对值 | C1=-8 | abs(C1) | 8 | C1=-7 公式:abs(C1) 值:7 |
min | 在参数组中取最小值 | C1=1 C2=2 C3=3 ... |
min(C1,C2,C3,...) | 1 | C1=1;C2=2;C3=3; 公式:min(C1,C2,C3,) 值:1 |
max | 在参数组中取最大值 | C1=99 C2=98 C3=97 ... |
max(C1,C2,C3,...) | 99 | C1=99;C2=98;C3=97; 公式:min(C1,C2,C3,) 值:99 |
sum | 对参数求和 | C1=2 C2=3 |
sum(C1,C2) | 5 | C1=3;C2=4 公式:sum(C1,C2) 值:7 |
sqsum | 对参数的平方求和 | C1=2 C2=3 |
sqsum(C1,C2) | 13 | C1=3;C2=4 公式:sqsum(C1,C2) 值:25 |
ave | 对参数求平均值 | C1=2 C2=3 |
ave(C1,C2) | 2.5 | C1=3;C2=4 公式:ave(C1,C2) 值:3.5 |
sqave | 对参数的平方求平均值 | C1=2 C2=3 |
sqave(C1,C2) | 6.5 | C1=3;C2=4 公式:sqave(C1,C2) 值:12.5 |
hypot | 返回斜边的值 | C1=3 C2=4 |
hypot(C1,C2) | 5 | C1=5;C2=12 公式:hypot(C1,C2) 值:13 |
三角函数
用于执行三角函数计算的函数。
函数 | 描述 | 输入参数 | 公式 | 结果 | 示例 |
---|---|---|---|---|---|
sin | 取参数的正弦值 | C1=90 | sin(C1) | 1 | C1=30 公式:sin(C1) 值:0.5 |
cos | 取参数的余弦值 | C1=90 | cos(C1) | 0 | C1=60 公式:cos(C1) 值:0.5 |
tan | 取参数的正切值 | C1=45 | tan(C1) | 1 | C1=30 公式:tan(C1) 值:0.577 |
sinh | 取参数的双曲正弦值 | C1=1 | sinh(C1) | 1.175 | C1=2 公式:sinh(C1) 值:3.627 |
cosh | 取参数的双曲余弦值 | C1=1 | cosh(C1) | 1.543 | C1=2 公式:cosh(C1) 值:3.762 |
tanh | 取参数的双曲正切值 | C1=0.5 | tanh(C1) | 0.462 | C1=1 公式:tanh(C1) 值:0.762 |
asin | 取参数的反正弦值 | C1=0.5 | asin(C1) | 0.524 | C1=0.8 公式:asin(C1) 值:0.927 |
asinh | 取参数的双曲反正弦值 | C1=0.5 | asinh(C1) | 0.481 | C1=0.4 公式:asinh(C1) 值:0.39 |
acos | 取参数的反余弦值 | C1=0.5 | acos(C1) | 1.047 | C1=0.99 公式:sin(C1) 值:0.142 |
acosh | 取参数的双曲反余弦值 | C1=1 | acosh(C1) | 0 | C1=2 公式:acosh(C1) 值:1.317 |
atan | 取参数的反正切值 | C1=30 | atan(C1) | 1.537 | C1=60 公式:stan(C1) 值:1.554 |
atan2 | 取参数比值的反正切值 | C1=30 C2=1 |
atan2(C1,C2) | 1.537 | C1=30;C2=0.5 公式:atan2(C1,C2) 值:1.554 |
请注意
系统会自动帮您区分弧度制和角度值,您可以直接在函数的括号内输入角度或数值。
参考函数
用于引用参考对象的值。
提示
- 在引用属性值时您可以通过两种不同输入方式来引用需要的值。
简易输入方式: - prf(rid,"h")-->获取对应rid零件的高度。
- prf(rid,"b")-->获取对应rid零件的宽度。
- prf(rid,"b1")-->获取对应rid零件的宽度1。
- prf(rid,"b2")-->获取对应rid零件的宽度2。
- prf(rid,"t1")-->获取对应rid零件的翼缘(板)厚度1。
- prf(rid,"t2")-->获取对应rid零件的翼缘(板)厚度2。
- prf(rid,"s")-->获取对应rid零件的腹板厚度。
- prf(rid,"wh1")-->获取对应rid零件的腹板宽度1。
- prf(rid,"wh2")-->获取对应rid零件的腹板宽度2。
- prf(rid,"r1")-->获取对应rid零件的圆半径1。
- prf(rid,"r2")-->获取对应rid零件的圆半径2。
- prf(rid,"fs1")-->获取对应rid零件的斜率1。
- prf(rid,"fs2")-->获取对应rid零件的斜率2。
标准输入方式: - prf(rid,"shapeHeight")-->获取对应rid零件的高度。
- prf(rid,"shapeWidth")-->获取对应rid零件的宽度。
- prf(rid,"shapeFlangeWidth1")-->获取对应rid零件的宽度1。
- prf(rid,"shapeFlangeWidth2")-->获取对应rid零件的宽度2。
- prf(rid,"shapeFlangeThickness1")-->获取对应rid零件的翼缘(板)厚度1。
- prf(rid,"shapeFlangeThickness2")-->获取对应rid零件的翼缘(板)厚度2。
- prf(rid,"shapeWebThickness")-->获取对应rid零件的腹板厚度。
- prf(rid,"shapeWebHeight1")-->获取对应rid零件的腹板宽度1。
- prf(rid,"shapeWebHeight2")-->获取对应rid零件的腹板宽度2。
- prf(rid,"shapeRoundingRadius1")-->获取对应rid零件的半径1。
- prf(rid,"shapeRoundingRadius2")-->获取对应rid零件的半径2。
- prf(rid,"shapeFlangeSlopeRatio1")-->获取对应rid零件的斜率1。
- prf(rid,"shapeFlangeSlopeRatio2")-->获取对应rid零件的斜率2。
调试函数
函数 | 描述 | 输入参数 | 公式 | 结果 |
---|---|---|---|---|
将输入参数对象的值打印到组件运行结果界面 | rid | print(rid) | 在组件运行结果界面可看到打印的rid值 | |
dump | 将输入参数对象的详细信息打印到组件运行结果界面 | rid | print(rid) | 在组件运行结果界面可看到打印的rid的详细信息 |
数据类型转换函数
可以转换数据显示和类型的函数,给定C1=100.12345
函数 | 描述 | 示例 | 结果 |
---|---|---|---|
toFixed | 把数字转换为结果的小数点后有指定位数的数字 | C1.toFixed(2) | 100.12 |
toPrecision | 把数字的值转换为指数计数法,结果的小数点后有指定位数 | C1.toPrecision(3) | 1.00e+2 |
倾斜角度函数
用于求零件间的倾斜角度。
函数 | 描述 | 输入参数 | 公式 | 结果 | 示例 |
---|---|---|---|---|---|
skew | 生成水平倾斜角度 | rid0;rid1 | skew(rid0,rid1) | rid0和rid1之间的水平倾斜角度 | 柱:rid100 梁:rid200 倾斜45° skew(100,200) 值=45 |
slope | 生成竖直倾斜角度 | rid0;rid1 | slope(rid0,rid1) | rid0和rid1之间的竖直倾斜角度 | 柱:rid100 梁:rid200 倾斜45° slope(100,200) 值=45 |
cant | 生成旋转角度 | rid0;rid1 | cant(rid0,rid1) | rid0和rid1之间的旋转角度 | 柱:rid100 梁:rid200 旋转45° cant(100,200) 值=45 |
字符串运算
用于处理文本(字符串)的运算方法。
运算 | 描述 | 输入参数 | 公式 | 结果 |
---|---|---|---|---|
length | 返回字符串的个数 | C1=PL10*30 | C1.length | 7 |
indexOf | 返回某个指定的字符串值在字符串中首次出现的位置 (从0开始) |
C1=PL10*30 | C1.indexOf('L') | 1 |
charAt | 返回在指定位置的字符 (从0开始) |
C1=PL10*30 | C1.charAt(1) | L |
提示
- 双引号“”和单引号‘’代表空字符串。
- 在进行字符串与字符串拼接、数值与数值拼接、字符串与数值拼接等操作时,在最前方添加空字符串可得到正确拼接结果。例如,当C1=10;C2=20;C3=30时,在公式中输入:'' + C1 + C2 + C3,可得到值为102030。
控制结构语句
用于计算后输出最后的值。
语句 | 描述 | 参数 | 公式 | 结果 | 示例 |
---|---|---|---|---|---|
if | 判断输出 | A,B,C,D | if(A==B) C;else D; | C或D | A=1 if(A==1) 0; else 1; 值=0 |
for | 循环输出 | i | for(i=A;i<B;i++) i; | B-1 | for(i=1;i<10;i++) i; 值=9 |
值的类型
用于区分不同类型的值。值和类型不符会导致值显示错误。
类型 | 描述 | 备注 |
---|---|---|
文本 | 该变量的公式结果是文本类型 | 可以调用字符串运算中的函数 值要用双引号"value"或单引号'value'括起来 |
数值 | 该变量的公式结果是数值类型 | 可以使用算术运算符进行计算 |
整数 | 以整数格式显示公式的内容 | 可对公式进行运算,在值内显示结果,只取整数部分 |
数值队列 | 以数字队列格式显示公式内容 | 可显示数列 公式:10 20 30 值:10 20 30 |
整数队列 | 以整数队列格式显示公式内容 | 可显示数列,只取整数部分 |