你是说这个?
- (defun c:offout ( / e s )
- (if (setq s (ssget "_+.:E:S" '((0 . "LWPOLYLINE") (90 . 4) (-4 . "&=") (70 . 1))))
- (vl-catch-all-apply 'vla-offset
- (list (vlax-ename->vla-object (setq e (ssname s 0)))
- (if
- (LM:listclockwise-p
- (mapcar 'cdr
- (vl-remove-if-not '(lambda ( x ) (= 10 (car x))) (entget e))
- )
- )
- -0.75
- 0.75
- )
- )
- )
- )
- (princ)
- )
- ;; List Clockwise-p - Lee Mac
- ;; Returns T if the point list is clockwise oriented
- (defun LM:ListClockwise-p ( lst )
- (minusp
- (apply '+
- (mapcar
- (function
- (lambda ( a b )
- (- (* (car b) (cadr a)) (* (car a) (cadr b)))
- )
- )
- lst (cons (last lst) lst)
- )
- )
- )
- )
- (vl-load-com) (princ)
它为我而跑。虽然,李的标准不是很有活力。 |