大家好,
我有Ranjit的代码:
- (defun c:edb () (c:ebd))
- (defun c:ebd ( / *error* of undo doc ss ) ;Ekv Both
- (defun *error* ( msg )
- (and undo (vla-EndUndomark doc))
- (or (wcmatch (strcase msg) "*BREAK,*CANCEL*,*EXIT*")
- (princ (strcat "\n** Error: " msg " **")))
- (princ))
- (if (and (ssget '((0 . "ARC,CIRCLE,ELLIPSE,*LINE")))
- (setq of (getdist "\nSpecify Offset Distance: ")))
- (progn
- (setq undo (not (vla-StartUndomark (setq doc (vla-get-ActiveDocument (vlax-get-acad-object))))))
- (vlax-for obj (setq ss (vla-get-ActiveSelectionSet doc))
- (mapcar (function (lambda (o) (vl-catch-all-apply (function vla-offset) (list obj o))))
- (list of (- of)))(vla-delete obj))
- (setq undo (vla-EndUndoMark doc))))
- (princ)
- )
如果单击一条线并指定一个距离,它会在两侧绘制具有指定距离的偏移线,并删除原始线。
我想更改代码,使其保留直线,但将其更改为中心线,另一层称为红色中心线。
它将绘制构造线,而不是绘制线条。
http://imgur.com/a/J1q0p |