sunnylhj 发表于 2014-12-8 16:12:39

谁来帮我完成这个双线偏移的代码!

这个单线变双线的代码是 “无痕” 写的,我想改成像系统自的“offset”命令的"Through" 一样,代码只完成了一半就不会!请前辈们指教。
(defun c:x2 (/ ss vss)   
   (princ "\nSingle line to Double line -------Program by 无痕Program revised by ShingYatChun")
   (initget 128 "Through")
   (if (or (= dist nil) (= dist 0))
    (setq s "Through")
    (setq s (rtos dist))
    )
   (setq s (cond (s:s) (s))
   TmpStr (strcat "\nSpecify offset distance or <" s ">: ")
   s (cond ((getkword TmpStr))(s:s ))
   )
(if (= s nil)
    (setq s "Through")
    (setq dist (atof s))
)
   (setq ss (ssget   '((0 . "*line,arc,ellipse,circle")) )
       vss (vla-get-activeselectionset (vla-get-activedocument (vlax-get-acad-object)))
         ;dist (getdist "\nSpecify offset distance or Through:")
   )
   (vlax-for obj vss (vla-offset obj dist)(vla-offset obj (- 0 dist)))
   (princ (strcat "\nProgram processing is complete"))
   (prin1)
)
页: [1]
查看完整版本: 谁来帮我完成这个双线偏移的代码!