面积统计调整小数点
如同上图,面积统计是10平方米,我在站内找到下面一段源码,但出现10000000.00的统计,如何调整好下面的源码,能正确显示面积?
(defun c:dmj()
(setvar "cmdecho" 0)
(setq cth (rtos (getvar "textsize")))
(setq TextHeight (getdist (strcat "\n输入标注文字高度 < " cth " > : ")))
(if (= TextHeight nil)(setq TextHeight cth))
(command "style" "tukou" "黑体" "0" "" "0" "" "")
(command "layer" "M" "面积标注" "C" "1" "" "LT" "CONTINUOUS" "" "");设置一个标注图层
(defun maketext (txt pt) ; 生成文字子函数
(entmake (list '(0 . "TEXT")
(cons 62 3)
(cons 10 pt)
(cons 40 TextHeight)
(cons 1 txt)
'(41 . 0.8)
)
)
)
(setq pt (getpoint "\n选取点:"))
(while pt
(setvar "cecolor" "1")
(command "bpoly" pt "")
(setq en (entlast))
(if (/= en nil)
(progn
(command "area" "o" en)
(setq aa (getvar "area"))
(redraw en 3)
(setq bb (strcat "面积=" (rtos aa 2 2 )"㎡"))
(setq pt1 (getpoint "请指定面积书写位置:"))
(command "_text" pt1 TextHeight "" bb 0)
)
)
(entdel en)
(setvar "cecolor" "bylayer")
(setq pt (getpoint "\n选取点:"))
)
(prin1)
)
(setq bb (strcat "面积=" (rtos aa 2 2 )"㎡"))
改为(setq bb (strcat "面积=" (rtos (/ aa 1000000) 2 2 )"㎡"))试试。 囗Peanut囗 发表于 2015-8-12 04:28 static/image/common/back.gif
(setq bb (strcat "面积=" (rtos aa 2 2 )"㎡"))
改为(setq bb (strcat "面积=" (rtos (/ aa 1000000) 2 2 ...
非常感谢,安照你的可以显示面积了。谢谢! 谢谢xyp1964 !解决了问题,达到目的有几种搞法,真是学海无涯啊! wngxb 发表于 2015-8-12 15:37 static/image/common/back.gif
谢谢xyp1964 !解决了问题,达到目的有几种搞法,真是学海无涯啊!
凭什么谢xyp1964?1964帮你解决什么问题? 香田里浪人 发表于 2015-8-12 21:55 static/image/common/back.gif
凭什么谢xyp1964?1964帮你解决什么问题?
他回复在我的问题下面,注意小字! 谢谢edata和院长~
setq bb (strcat "面积=" (rtos (* aa 1e-6) 2 2 )"㎡")),第一个2是数值类型,第二个2是精确小数点后几位,楼主看需求选择精确位数吧。
囗Peanut囗 发表于 2015-8-14 04:20 static/image/common/back.gif
谢谢edata和院长~
这个好用
页:
[1]