FME 四则运算中数学函数Math Functions
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
FME中四则运算中的Math Functions(数学函数)
原文:
file:///C:/Program%20Files/FME2015.0/help/fme_desktop/FME_Desktop_Help.htm#.. /Subsystems/FME_Transformers/Content/transformer_parameters/math_functions.ht m
四则编辑器支持下列数学函数表达式。下列所有函数的参数为双精度,并返回双精度值,除非它们是值类型转换函数,例如@int(), @double(), 和@real32()。
对于所有参数数量不定的函数,参数中包含null,missing或空字符串的值都会被过滤掉。然而,如果变量参数列表只包含null,missing和空字符串,函数返回null。
函数接收到非数字型、null、missing或空字符串参数时会返回null,并附加到
fme_expression_warnings列表属性中。对于所有参数固定的函数,返回双精度值,如果参数为NaN,则预计结果为NaN。所以下列提供的描述的前提是函数参数是数值型、non-null,non-infinity 和non-NaN。
函数描述
abs(arg) 返回arg 的绝对值
acos(arg) 返回arg 的反余弦值,值的范围[0,pi]。Arg 的值在[-1,1]范围。
add(arg1,[arg2]...) 返回参数的和。
asin(arg) 返回arg的反正弦值,值的范围[-pi/2,pi/2]。Arg 的值在
[-1,1]范围。
atan(arg) 返回arg的反正切值,值的范围在[-pi/2,pi/2]。
atan2(y,x) 返回y/x的反正切值,值的范围在[-pi,pi]。x和y不能同时为
0.
average(arg1,[arg2]... ) 输入数字列表并求出平均值。忽略空、missing和null输入,若输入为非数值型数据会导致失败。如果没有输入,返回空字符串。
ceil(arg) 以双精度的方式返回不小于arg的最小整数部分。
cos(arg) 返回arg的余弦值,以弧度为单位。
cosh(arg) 返回arg的双曲余弦。如果发生溢出,返回无穷大。degToRad(arg) 将度转换为弧度。
div(x,y) 计算x/y。如果除数为0,返回无穷大。
double(arg) 以双精度形式返回arg。
exp(arg) 返回arg的指数,以e为底,e的arg次幂,如果发生溢出,返
回无穷大。
floor(arg) 以双精度形式返回不大于arg的最大整数部分。
fmod(x,y) 返回x/y的浮点型余数。余数的符号与x的符号保持一致,如果y
为0,则返回NaN。
hypot(x,y) 计算直角三角形斜边长度,sqrt(x*x+y*y)
int(arg) 如果arg在64位整型的范围内,将被截断。如果arg超出范围,
返回null。
int8(arg) 如果arg在8位整型范围内,将被四舍五入。如果arg超出范围,
返回null。
int16(arg) 如果arg在16为整型范围内,将被四舍五入。如果arg超出范围,
返回null。
int32(arg) 如果arg在32位整型范围内,将被四舍五入。如果arg超出范围,
返回null。
int64(arg) 如果arg在64位整型范围内,将被四舍五入。如果arg超出范围,
返回null。
log(arg) 返回arg的自然对数。如果arg是0或是负数,返回NaN。
log10(arg) 返回以10为底arg的对数。如果arg是0或是负数,返回NaN。max(arg1,[arg2]...) 返回最大值。
min(arg1,[arg2]...) 返回最小值。
mult(arg1,[arg2]...) 返回所有数相乘的结果。
pi() 返回pi的值。
pow(x,y) 计算x的y次方的值。如果x是负数,y需要是整数值。如果x
是负数而y是浮点型的值,那么返回NaN。
radToDeg(arg) 转换弧度为度。
rand() 返回0到1之间的随机数。
real32(arg) 如果arg在单精度浮点型的范围内,则作为单精度浮点型返回。
如果arg是NaN或无穷大,或为逻辑非,强制转换为单精度NaN
或无穷大。如果arg超出单精度浮点型范围,则返回正无穷或负
无穷
real64(arg) 如果arg在双精度浮点型的范围内,则作为双精度浮点型返回。
如果arg是NaN或无穷大,或为逻辑非,则强者转换为双精度
NaN或者无穷。如果arg超出双精度浮点型范围,则返回正无穷
或负无穷。
round(arg) 以双精度的形式返回与arg最相近的整数。
sin(arg) 返回arg的正弦值,以弧度为单位。
sinh(arg) 返回arg的双曲正弦。如果发生溢出,返回无穷。
sqrt(arg) 返回arg的平方根。如果arg是负数则返回NaN。
sub(x,y) 计算x-y。
sum(arg1,[arg2]...) 返回变量的和。
tan(arg) 返回arg的正切值,以弧度为单位。
tanh(arg) 返回arg的双曲正切。
uint8(arg) 如果arg在8位无符号整型范围内,将被四舍五入。如果arg超
出范围,返回null。
uint16(arg) 如果arg在16位无符号整型范围内,将被四舍五入。如果arg
超出范围,返回null。
uint32(arg) 如果arg在32位无符号整型范围内,将被四舍五入。如果arg
超出范围,返回null。
uint64(arg) 如果arg在64位无符号整型范围内,将被四舍五入。如果arg
超出范围,返回null。