基础 > 关系和参数 > 关系 > 关系中使用的运算符和函数 > 关于关系中使用的函数
  
关于关系中使用的函数
可在关系中使用数学、曲线表和曲线计算函数。
数学函数
可在关系 (包括方程和条件语句) 中使用下列运算符。
关系中也可以包括下列数学函数:
sin(x),cos(x),tan(x)
标准三角函数,其中 x 是以度为单位的角度值
asin(x)
反正弦函数,其中 x 是介于 -1.0 和 1.0 间的值。结果是以度为单位的角度值。
acos(x)
反余弦函数,其中 x 是介于 -1.0 和 1.0 间的值。结果是以度为单位的角度值。
atan(x)
反正切函数,其中 x 是数值。结果是以度为单位的角度值。
atan2(y,x)
y/x 的反正切函数,其中 x 和 y 是任意数值。结果是以度为单位的角度值。
sinh(x)
双曲线正弦函数,其中 x 是 -85.0 和 85.0 间的值
cosh(x)
双曲线余弦函数,其中 x 是 -85.0 和 85.0 间的值
tanh(x)
双曲线正切函数,其中 x 是 -85.0 和 85.0 间的值
sign(x,y)
将 y 的符号传递给 x。如果 y<0,结果是 –abs(x);如果 y>=0,结果是 abs(x)。
mod(x,y)
余项函数,即 x–int(x/y)*y,其中 int() 表示“整数部分”。结果的符号始终与 x 的符号相同。
if(c,x,y)
“if”测试或切换功能,其中 c 是条件,x 和 y 是返回值。如果条件结果是非零值,则函数的结果是 x;如果条件结果不是非零值,函数的结果是 y。
bound(x,lo,hi)
将 x 限制为“lo”和“hi”间的值。如果 x < lo;函数的结果是 lo;如果 x > hi,结果是 hi;对于 x 的全部其他值,函数的结果是 x。“lo”值必须小于“hi”值。
dead(x,lo,hi)
定义 x 的值范围,其中此函数结果是 0。使用“lo”和“hi”定义值范围。如果 x < lo,函数的结果是 x–lo;如果 x > hi,函数的结果是 x–hi,如果 x 介于“lo”和“hi”之间,函数的结果是 0。
near(x,y,delta)
测试 x 和 y 两个值是否接近,而增量将定义 x 和 y 的允许差异。如果 x 在 y 的增量范围内,函数的结果是 1.0 (true)。如果 abs(x–y) <= 增量,函数的结果是 1.0;如果 abs(x-y) > 增量,函数的结果是 0.0。
min(x,y)
无论最小值是几,都将返回 x 或 y。如果 x < y,函数的结果是 x;如果 x >=y,函数的结果是 y。
max(x,y)
无论最大值是几,都将返回 x 或 y。如果 x > y,函数的结果是 x;如果 x<=y,函数的结果是 y。
log(x)
常用对数 (以 10 为底的对数)
ln(x)
自然对数 (以 e 为底的对数)
exp(x)
e 的幂
pow(num1, num2)
获得 num1 到 num2 幂次方的值。
sqrt(x)
x 的平方根
abs(x)
返回 x 的绝对值。如果 x≥0,函数的结果是 x;如果 x<0,函数的结果是 –x。
ceil(x)
向正无穷大方向舍入 (x – 0.000 000 001)
floor(x)
向负无穷大方向舍入 (x + 0.000 000 001)
dbl_in_tol (arg1, arg2, arg3)
检查实数 arg 1 与另一个实数 arg 2 在指定公差 arg 3 范围内是否相符。如果 arg 1 的值介于 (arg 2 - arg 3) 与 (arg 2 + arg 3) 之间,则该函数会返回 TRUE。
如果满足以下条件,则该函数会返回 TRUE:arg1 <= arg2+arg3 && arg1 >= arg2-arg3
例如,要检查给定角度是否在 45 度的 3 度公差范围内。如果给定角度 (arg 1) 为 47,则其在 arg 2 - arg 3 (45 - 3) 与 arg 2 + arg 3 (45 + 3) 范围内。
 
* 所有三角函数都使用度作单位。
 
缆模式函数
可以使用缆模式函数确定缆、线或束的长度与最大直径。
计算缆长度
使用以下语法计算缆或束的当前长度:
cable_len ("cable_name",location_id1,location_id2)
cable_name 是当前线束中您要测量的缆或束的名称。
location_idcable_name 布线所经过位置的内部特征 ID,其中 location_id1location_id2 表示要计算其间长度的两个位置。
使用以下语法计算整个缆的长度:
cable_len ("cable_name",-1,-1)
计算缆、线或束的最大直径
使用以下语法计算特定位置处缆、线或束的最大直径:
cable_thick ("cable_name",location_id)
cable_name 是当前线束中您要测量的缆、线或束的名称。
location_idcable_name 布线所经过位置的内部特征 ID。
使用以下语法计算缆、线或束的最大直径:
cable_thick ("cable_name",-1)
Cabling Logical Data File Name Function
使用 cbl_logical_file 函数可创建与在装配中导入的逻辑数据文件名之间的关系。请注意,只有在具有逻辑数据的装配级上定义时,此关系才会返回值。关系会将文件的名称作为值返回。可将此关系分配至参数。指定后,此参数可以在 Windchill 中使用,以标识缆装配中使用的逻辑文件名,而无需检索该装配。此参数可帮助您在更新参考的逻辑数据文件时对其进行查找。
实例研究功能
eang(e_ID1, e_ID2)
实例研究中两个图元 e_ID1e_ID2 间弧度的角度
elen(e_ID1)
实例研究中 e_ID1 图元的长度
edistk(e_ID1, e_ID2)
e_ID1e_ID2 两个图元间的距离
ecoordx(e_ID1)
实例研究中 e_ID1 图元的 x 坐标
ecoordy(e_ID1)
实例研究中 e_ID1 图元的 y 坐标
 
* e_ID1e_ID2 是标识“实例研究”图元的整数。
 
曲线表计算函数
利用曲线表计算函数,可使用曲线表特征通过关系驱动尺寸。这些尺寸可为截面、零件或装配尺寸。格式如下:
evalgraph("graph_name", x)
其中:
graph_name - 曲线表的名称。
x - 是沿曲线表 x 轴的值,为其返回 y 值。
对于扫描特征,可指定轨迹参数 trajpar 作为该函数的第二个自变量。
 
* 曲线图特征通常是用于计算 x 轴上所定义范围内 x 值对应的 y 值。当超出范围时,y 值是通过外推的方法来计算的。对于小于初始值的 x 值,系统通过将切线从起始点往回延伸计算外推值。同样,对于大于终值的 x 值,系统通过将切线从终点往外延伸计算外推值。
复合曲线轨道函数
可在关系中使用复合曲线的轨迹参数 trajpar_of_pnt
下列函数返回一个 0.0 和 1.0 之间的值:
trajpar_of_pnt("trajname", "pointname")
其中:
trajname - 复合曲线的名称。
pointname - 基准点的名称。
轨线是一个沿复合曲线的参数,在它上面垂直于曲线切线的平面通过基准点。基准点不必位于曲线上 - 在曲线上离基准点最近的点计算参数。
如果复合曲线被用作多轨迹扫描的骨架,则 trajpar_of_pnt 要么与该平面上的参数 trajpar 一致,要么与 1.0 – trajpar 一致 (取决于为扫描特征选择的起点)。