在你程序的基础上改了一下 (defun c:v( / pp1 pp2 a s ang b mpt) (setvar "osmode" 2) (command "layer" "s" "0" "") (setq pp1 (getpoint "\n point pt1")) (setq pp2 (getpoint "\n point pt2")) (while (and (/= pp1 nil)(/= pp2 nil) ) (command "pline" pp1 pp2 "") (setq s (distance pp1 pp2)) (setq a (rtos s 2 2 )) (setq ang (angle pp1 pp2)) (setq b (* (/ ang pi) 180)) (setq hs ( / s 2)) (setq hx (polar pp1 ang hs))
(if (> (* (/ ang pi) 180) 180) (setq ang (+ ang pi)) ) (command "text" "j" "c" hx "0.30" b a) (setq pp1 pp2 ) (command pp2) (setq pp1 (getpoint "point pt1")) (setq pp2 (getpoint "point pt2")) ) (prin1) )
(prompt "\n <<length>>在图中直接写出长度") (prin1) |