(defun C:d (/ HOLDCMD HOLDZIN PNT LENT) (vl-load-com) (setq HOLDCMD (getvar "cmdecho")) (setq HOLDZIN (getvar "dimzin")) (setvar "cmdecho" 0) (setvar "dimzin" 0) (setq emj 0) (while (setq PNT (getpoint "\n点选内部点: ")) (setq LENT (entlast)) (command "_.boundary" "a" "i" "y" "" PNT "") (if (not (equal (entlast) LENT)) (progn (setq ENT (vla-get-area (vlax-ename->vla-object (entlast)))) (setq emj (+ emj ENT)) (if (setq PNT1 (getpoint "\n点选文字起点: ")) (command "_.text" PNT1 1 ;;这里的1改字高 "" (strcat "" (rtos ENT 2 3));;这里的3改小数位数 ) ) ) ) ) (setvar "dimzin" HOLDZIN) (setvar "cmdecho" HOLDCMD) (alert (strcat "\n总面积=" (rtos emj 2 3))) (princ) ) |