欢迎来到CADTutor!
**编辑-按照惯例,李打败了我!哈哈,无论如何,至少这表明了一种选择。
尝试一下:
- (vl-load-com)
- (defun c:OFAM () (c:OffsetArcMultiple))
- (defun c:OffsetArcMultiple (/ *error* eName acDoc oArc)
- (princ "\rOFFSETARCMULTIPLE ")
- (defun *error* (msg)
- (if acDoc
- (vla-endundomark acDoc)
- )
- (cond ((not msg)) ; Normal exit
- ((member msg '("Function cancelled" "quit / exit abort"))) ; <esc> or (quit)
- ((princ (strcat "\n** Error: " msg " ** "))) ; Fatal error, display it
- )
- (princ)
- )
- (while (and (/= nil (setq eName (car (entsel "\nSelect arc to offset: "))))
- (= "ARC" (cdr (assoc 0 (entget eName))))
- )
- (progn
- (or
- acDoc
- (not
- (vla-startundomark
- (setq acDoc (vla-get-activedocument (vlax-get-acad-object)))
- )
- )
- )
- (vla-offset
- (setq oArc (vlax-ename->vla-object eName))
- (vla-get-arclength oArc)
- )
- (*error* nil)
- )
- )
- )
|