这就是你想要的吗?
- (defun c:DoDim (/ *error* c s ss)
- ;; Tharwat 17. Jan. 2014 ;;
- (defun *error* (u)
- (if c
- (setvar 'CMDECHO)
- )
- (princ "\n*Cancel*")
- )
- (if (and (progn
- (princ "\n Select a single LINE only ...")
- (setq c (getvar 'CMDECHO)
- s (ssget "_+.:S:E:L" '((0 . "LINE")))
- )
- )
- (progn
- (princ "\n Select a single LWPOLYLINE only ...")
- (setq ss (ssget "_+.:S:E:L" '((0 . "LWPOLYLINE"))))
- )
- )
- (progn
- (setvar 'CMDECHO 0)
- (foreach x (mapcar 'cdr
- (vl-remove-if-not
- (function (lambda (p) (eq (car p) 10)))
- (entget (ssname ss 0))
- )
- )
- (command "_._dimaligned"
- "_none"
- x
- "_none"
- (vlax-curve-getclosestpointto (ssname s 0) x)
- "_none"
- x
- )
- )
- (setvar 'CMDECHO c)
- )
- )
- (princ)
- )
- (vl-load-com)
|