随手编的,不用客气。
 - (defun c:refline(/ pt1 pt2 mpt ang v)
- (setq pt1 (getpoint "输入起点:"))
- (setq pt2 (getpoint pt1 "输入终点:"))
- (setq mpt (mapcar (function (lambda (x y) (/ (+ x y)2.0))) pt1 pt2))
- (setq ang (+ (angle pt1 pt2) (/ pi 2))
- v (polar '(0 0 0) ang 1))
- (entmake (list '(0 . "XLINE") '(100 . "AcDbEntity") '(62 . 1)'(100 . "AcDbXline") (cons 10 mpt) (cons 11 v)))
- (princ)
- )
|