PointCloudExpressionEvaluator
输入端口
这种变压器只接受点云功能。
输出端口
评估表达式后的点云。
参数
指定要由相应的表达式来设置组件。
指定在输出点云的组件的类型。有效类型为Real64,Real32,UINT64,UInt32的,UINT16,UINT8,Int64的,的Int32,Int16类型,INT8,汽车和自然保护区。自动意味着输出类型应该基于用于执行计算的类型来自动确定。保持该组分应保持相同的类型在输入点云的装置。如果该组件没有输入点云的存在,保留相当于汽车。
描述如何计算用于对应的元件值的表达式。请参见下面的表达式语法部分的表达式的结构的描述。
表达式语法
表达式由操作数,运算符和括号的组合。例如,一个简单的表达式可能是:
(@Component(X)+ @Component(Y)+ @Component(Z))/ 3.0
该表达式计算的x,y和z分量的平均值。
白空间可以操作数,操作员,和括号之间的,因为它是由表达式处理器忽略使用。
操作数可以是任何如下:
- 例如,来自输入点云的组件@ component (z)。注意,如果一个组件有一个比例/偏移量,那么该组件的“applied”值将在表达式中使用。
- 一个数字常量,可以是整数,也可以是浮点数。在可能的情况下,数值常量被解释为整数值;否则,操作数将被视为浮点数。除了“f”、“f”、“l”和“l”后缀在大多数安装中不被允许外,浮点数可以用符合ansi的C编译器所接受的任何方式指定。例如,以下所有都是有效的浮点数:2.1,3。、6 e4 7.91 e + 16。
- 属性的值@ value ()符号。
- 一种函数,其参数具有上述操作数的任何形式,例如@sin (@ component (z))。有关已定义函数的列表,请参阅函数一节。
下面列出的有效运营商优先级递减的顺序进行分组:
函数 |
描述 |
---|---|
- + ~ ! |
一元减,一元加,按位不,逻辑不。 按位非仅对整数操作数有效。 |
* / % |
乘、除、余数。 余数仅对整数操作数有效。余数的符号与除数相同,绝对值小于除数。 |
+ - |
加和减。 |
<< >> |
左右移动。 仅对整数操作数有效。 |
< > <= >= |
布尔值小于、大于、小于或等于、大于或等于。 如果条件为真,每个操作符生成1,否则生成0。 |
= =。= |
布尔等于和不等于。 如果条件为真,每个操作符生成1,否则生成0。 |
& |
位操作。 仅对整数操作数有效。 |
^ |
位操作异或。 仅对整数操作数有效。 |
| |
位操作或。 仅对整数操作数有效。 |
& & |
逻辑。 如果两个操作数都非0,则生成1结果,否则为0。 |
|| |
逻辑或。 如果两个操作数都为0,则生成0结果,否则生成1。 |
以下功能可用于在表达式中使用。需要注意的是数学函数调用相同名称的C数学库函数。请参考库函数的更多详细信息,C使用手册项关于这些功能做,哪些参数是有效的。
函数 |
描述 |
---|---|
abs (arg) |
返回参数的绝对值。 |
这些“可信赖医疗组织”(arg) |
返回arccos (arg)在[0,pi]弧度范围内。arg应该在范围[-1,1]内。 |
阿信(Arg) |
返回arg的弧正弦,范围为[-pi/2,pi/2]弧度。arg应该在范围[-1,1]内。 |
阿坦(阿格) |
返回arg的反正切值,范围为[-pi/2,pi/2]弧度。 |
ATAN2(Y,X) |
返回y/x的反正切值,范围为[-pi,pi]弧度。x和y不能都是0。 |
天花板(arg) |
返回不小于arg的最小整数值。 |
COS(精氨酸) |
返回参数的余弦(以弧度为单位)。 |
舒适(arg) |
返回arg的双曲余弦。如果结果会导致溢出,则返回错误。 |
exp(参数) |
返回arg的指数,定义为e**arg。如果结果会导致溢出,则返回错误。 |
地板(arg) |
返回不大于arg的最大整数值。 |
fmod(x,y) |
返回x除以y的浮点余数。如果y为0,则返回错误。 |
如果(c,x,y) |
如果c为0,则返回x,否则返回y。 |
索引() |
返回点索引。点云中的第一个点是索引0,第二个点是索引1等。 |
日志(arg) |
返回arg的自然对数。arg必须为正值。 |
日志10(arg) |
返回arg的以10为底的对数。arg必须为正值。 |
功率(x,y) |
计算x的值提升为y的幂。如果x为负,y必须是整数值。 |
兰德() |
返回介于0和1之间的随机值。 |
sin(参数) |
返回arg的正弦值,以弧度为单位。 |
sinh(阿格) |
返回参数的双曲正弦值。如果结果会导致溢出,则返回错误。 |
sqrt(参数) |
返回arg的平方根。arg必须为非负。 |
棕褐色(Arg) |
返回arg的正切值(以弧度为单位)。 |
Tanh(阿格) |
返回arg的双曲正切。 |
类型和溢出
该变压器试图通过计算表达式的过程中变化的数据类型,以避免溢出。例如,如果两个UINT8值加在一起,内部计算将被用UINT16类型来执行;这保证了不会发生溢出。
一般而言,上整型执行算术运算会产生一个整数类型。唯一的例外,这是分裂的:它总是会产生一个浮点结果。上浮点类型执行算术运算将始终产生浮点型。
请注意,不同的数据类型之间进行转换时,有界角色被使用。其结果是,当计算的值不适合在目的地数据类型,相应的目标值要么被设定为最小或可能在目的地数据类型的最大值。
编辑变压器参数
使用一组菜单选项,变压器参数可以通过引用在工作区中的其它元件来分配。更先进的功能,如高级编辑,算术编辑,也是一些变压器可用。要进入这些选项的菜单上,单击适用的参数旁边。欲了解更多信息,请参阅变压器参数菜单选项。
变压器分类
FME许可级别
FME专业版及以上
搜索FME知识中心
搜索样品和有关该变压器上的信息FME知识中心。