定义

计算变量,是对一次变量进行数学或逻辑计算,计算的结果作为变量的值。

计算变量的值根据数据类型的不同,可以是小数/整数

计算变量表达式格式

支持的表达式操作符包括:

三角函数:sin,cos,tag,asin,acos,atan

指数函数:log,log10,exp

绝对值函数:abs

二元操作符:?,:

单目算数运算:^,!,&,|,~

位运算:>>,<<

逻辑运算:||,&&

逻辑运算:NOT,AND,OR,XOR

算术比较运算:>=,<=,>,<,!=,==

优先级运算:(,)

数值:1,2,3,4,5,6,7,8,9,0

四则运算:+,-,*,/

指数:pow

平方根:sqrt

取整数:int

取模:fmod

GETBOOL,GETINT,STRING


示例

  1. 红叉绿箭指示状态,其中红叉(停止)、直行(绿箭)是2个不同的点的地址。我们需要将这两个点配置为一个计算点,用1个值表示当前是红叉还是绿箭,而不是2个点
    1. 红叉绿箭类名:车道指示器
      1. 该类有1个属性:绿箭,BOOL类型, 值为1,0
      2. 该类有1个属性:红叉,BOOL类型, 值为1,0
      3. 需要单独配置一个属性,int8类型,表示红叉绿箭。
        1. 属性名:红叉绿箭
        2. 属性地址:SELF.绿箭*10+SELF.红叉*1
        3. 值含义:
          1. 0-→当前是黑屏
          2. 1--→当前是红叉
          3. 10-→当前是绿箭
          4. 11--->逻辑上不应该同时出现红叉和绿箭
    2. 如车道指示器车道指示器11N
      1. 绿箭地址:M150.0,eview实际对象属性:车道指示器11N.绿箭,值为:1,0
      2. 红叉地址:M150.1,eview实际对象属性:车道指示器11N.红叉,值为:1,0
      3. 红叉绿箭,不需要配置地址,eview实际对象属性:车道指示器11N.红叉绿箭,值为:0,1,10,11


  • 无标签