- UID
- 783614
- 积分
- 1026
- 精华
- 贡献
-
- 威望
-
- 活跃度
-
- D豆
-
- 在线时间
- 小时
- 注册时间
- 2019-1-15
- 最后登录
- 1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
本帖最后由 王鹏_pBZlo 于 2019-3-22 15:14 编辑
在属性块内增加一些有特定名字的属性定义,给这些有特定名字的属性定义赋值(内容是一些计算表达式,当然表达式的格式是有讲究的,可以通过执行这个表达式达到获取已知属性值,计算,赋值给其他的属性,并规定计算精度) 这样,修改部分属性值后,就可以自动计算出其他属性的值了。
需首先依次添加属性定义"FORMULA","FORMULA1","FORMULA2",...,程序会依次计算
添加的各属性定义中赋值内容应包含多项,要求如下:
1. 各项以";"分割
2. 第1项为已知变量列表,各变量间以","分割,字母均取大写;
3. 第2项至倒数第2项为计算过程表达式,计算过程表达式中对应属性定义的变量必须大写,具体见第5条;
4. 最后1项为计算结果变量列表,各变量间以","分割,对应属性定义的变量必须大写;
4.1 各变量表达格式为"变量名+@+保留小数位数",如"A@2",也可仅仅写变量名,如"A".
4.2 分割变量名和保留小数位数的符号为"$"时,若变量值为"0",则"0"不显示.
5. 计算过程表达式均以"变量+等于号"开头(例如: "A="),等号后的表达式分下述2种:
5.1 仅一项,用"+,-,*,/"连接各变量或常数,计算顺序从左到右, 如"B+2*C*d-E/f"; 或者
5.2 含多项,用","分割,首项为计算函数名称,其余各项为变量(或常数,或如5.1所述的表达式),可用函数如下:
"min" - 求后续各项的最小值,如"min,A,2*B,c";
"max" - 求后续各项的最大值,如"max,A,2*B,c";
"sin" - 求第2项角度(以弧度表示)的正弦值,如"sin,2*A";
"cos" - 求第2项角度(以弧度表示)的余弦值,如"cos,2*A";
"tan" - 求第2项角度(以弧度表示)的正切值,如"tan,2*A";
"ctan" - 求第2项角度(以弧度表示)的余切值,如"ctan,2*A";
"atan" - 求第2项的反正切值(以弧度表示),如"atan,2*A";
"expt" - 求以第2项为底,第3项为指数的幂,如"expt,2*A,B+c";
"log" - 求第2项的自然对数值,如"log,A+2";
"abs" - 求第2项的绝对值,如"abs,A+2";
"fix" - 仅返回第2项的整数部分,如"fix,A+2";
"if>" - 当第2项的值大于第3项的值时,返回第4项的值,否则返回第5项的值;
"if<" - 当第2项的值小于第3项的值时,返回第4项的值,否则返回第5项的值;
"if~" - 当第2项的值等于第3项的值时,返回第4项的值,否则返回第5项的值;
"+" - 求后续各项连续相加值,如"+,A+d,B-3,c";
"-" - 求后续各项连续相减值,如"-,A+d,B-3,c";
"*" - 求后续各项连续相乘值,如"*,A+d,B-3,c";
"/" - 求后续各项连续相除值,如"/,A+d,B-3,c";
5.3 为方便计算,表达式中可添加一些临时变量,临时变量中的字母必须小写;
5.4 对于每个属性定义的名称,均可以代表一个变量,其值即输入的数值或计算出的数值;
5.5 所有变量及参与计算的属性定义名称均不能以数字开头.
6. 字符串的表达式形如: "A,B;C=str,A,+,B,is OK!;C",若A=1,B=2,则C为"1+2is OK!".
来自: 微社区 |
-
-
-
test.zip
21.5 KB, 下载次数: 65, 下载积分: D豆 -1 , 活跃度 1
|