帮忙修改成批量选择
(defun c:SDD (/ p sn p1 p2 p3 p4 l2 sn)(setq osm (getvar "osmode"))(setq tt (getenv "tt"))(if (= tt nil)(setenv "tt" "0.2"))(setq sel (entsel(strcat "\n 選擇要偏移的線,(偏移距离为:" (getenv "tt") "):")))(setq p (getpoint "\n 偏移至哪一側,點取一點:"))(command "offset" tt (car sel) p "")(setq l2 (ssget "l")) (command "_.change" l2 "" "_p" "_LT" "BYLAYER" "_C" "BYLAYER" "_la" "cut" "")(SETQ ent (ENTGET (car sel)))(if (= (cdr (assoc 0 ent)) "ARC") (progn (setq CEN (cdr (assoc 10 ent))) ;获取圆弧圆心 (setq RAD (cdr (assoc 40 ent))) ;获取圆弧半径 (setq JDQ (cdr (assoc 50 ent))) ;获取起始角度 (setq JDZ (cdr (assoc 51 ent))) ;获取终止角度 (setq p1 (polar CEN JDQ RAD) ;获取圆弧起始点 p2 (polar CEN JDZ RAD) ) ;获取圆弧终止点 (setq ent1 (entget (ssname l2 0))) (setq CEN1 (cdr (assoc 10 ent1))) ;获取圆弧圆心 (setq RAD1 (cdr (assoc 40 ent1))) ;获取圆弧半径 (setq JDQ1 (cdr (assoc 50 ent1))) ;获取起始角度 (setq JDZ1 (cdr (assoc 51 ent1))) ;获取终止角度 (setq p11 (polar CEN1 JDQ1 RAD1) ;获取圆弧起始点 p22 (polar CEN1 JDZ1 RAD1) ) ;获取圆弧终止点 (command "line" p1 p11 "") (command "line" p2 p22 "") )(princ) ) (progn (setq P1 (cdr (assoc 10 ent))) (setq P2 (cdr (assoc 11 ent))) (SETQ dxf1 (ENTGET (ssname l2 0))) (setq P3 (cdr (assoc 10 DXF1))) (setq P4 (cdr (assoc 11 DXF1))) (command "line" p1 p3 "") (command "line" p2 p4 "") )(setvar "osmode" osm)(princ))现在程序是单选,帮忙改成多选,谢谢各位
页:
[1]