将数字转换成字符串
(rtos number [mode [precision]])
根据 mode、precision 参数和系统变量 UNITMODE、DIMZIN、LUNITS 和 LUPREC 的设置,rtos 函数返回代表 number 的字符串。
参数
number
数值。
mode
整数,指定现行单位模式。mode 的取值对应于 AutoCAD 系统变量 lunits 的允许值,如下所示:
1 科学
2 小数
3 工程(英尺和十进制英寸)
4 建筑(英尺和分数英寸)
5 分数
precision
整数,指定精度。
mode 和 precision 参数对应于系统变量 LUNITS 和 LUPREC。如果省略这两个参数,rtos 函数使用 LUNITS 和 LUPREC 的当前值。
返回值
字符串。当选择了工程记数格式、建筑记数格式或分数单位格式时(即 mode 值为 3、4 或 5),UNITMODE 系统变量对返回的字符串有影响。
示例
设置变量 x:
命令: (setq x 17.5)
17.5
将 x 的值转换为科学记数格式的字符串,精度为 4:
命令: (setq fmtval (rtos x 1 4))
"1.7500E+01"
将 x 的值转换为小数格式的字符串,精度为 2:
命令: (setq fmtval (rtos x 2 2))
"17.50"
将 x 的值转换为工程记数格式的字符串,精度为 2:
命令: (setq fmtval (rtos x 3 2))
"1'-5.50\""
将 x 的值转换为建筑格式的字符:
命令: (setq fmtval (rtos x 4 2))
"1'-5 1/2\""
将 x 的值转换为分数格式的字符:
命令: (setq fmtval (rtos x 5 2))
"17 1/2"
当系统变量 UNITMODE 设为 1 时,则设定显示单位与输入单位相同,由 rtos 返回的字符串会因“工程”(mode = 3)、“建筑”(mode = 4) 和“分数”(mode = 5) 的单位不同而异。例如:
命令: (setvar "unitmode" 1)
1
命令: (setq fmtval (rtos x 3 2))
"1'5.50\""
命令: (setq fmtval (rtos x 4 2))
"1'5-1/2\""
命令: (setq fmtval (rtos x 5 2))
"17-1/2"
参阅
《Visual LISP 开发人员手册》中的 字符串转换 。
明经通道 版权所有 未经许可 不得传播 | 评论 |