- 积分
- 24405
- 明经币
- 个
- 注册时间
- 2011-7-5
- 在线时间
- 小时
- 威望
-
- 金钱
- 个
- 贡献
-
- 激情
-
|
发表于 2019-6-5 08:47:38
|
显示全部楼层
(defun c:kx (/ en enlst1 enlst2 po s1 ss)
(xx-princA "框选合并偏移")
(setq disst (getdist "\n请指定偏移距离:"))
(setq en (entlast))
(if (or
(setq ss (ssget '((0 . "line,lwpolyline,arc"))))
(setq ss (ssget "i" '((0 . "line,lwpolyline,arc"))))
)
(progn
(setq enlst2 (xx-ss-2-NameLst ss))
(pedit ss)
(setq enlst1 (xx-lst-EnLastLst en))
(setq s1 (xx-lst-JianJi enlst1 enlst2))
(setq po (getpoint "\n请指定偏移点:"))
(foreach x s1
(command "_.OFFSET" disst x po "")
(vla-put-color (vlax-ename->vla-object (entlast)) 1)
)
)
)
)
(defun xx-lst-JianJi (lst1 lst2 / lst)
(setq lst (append lst1 lst2))
(vl-remove-if '(lambda (x) (member x (cdr (member x lst)))) lst)
)
(defun xx-ss-2-NameLst (SS / xx-ename)
(defun xx-ename(X) (= (type X) 'ENAME))
(vl-remove-if-not 'xx-ename (mapcar 'cadr (ssnamex SS)))
)
(defun xx-lst-EnLastLst (s1 / lst)
(while (setq s1 (entnext s1))
(if (not (member (cdr(assoc 0 (entget s1))) '("attrib" "vertex" "seqend")))
(setq lst (cons s1 lst))
)
)
(reverse lst)
)
(defun pedit (ss / co pe)
(setq co (getvar 'cmdecho))
(setq pe (getvar 'peditaccept))
(setvar 'cmdecho 0)
(setvar 'peditaccept 1)
(command "_.Pedit" "_m" ss "" "_j" "" "")
(setvar 'peditaccept pe)
(setvar 'cmdecho co)
(princ)
)
(defun xx-princA (txt / txt1)
(if(= (type txt) 'str)
(progn
(setq txt1
(strcat
(vl-list->string '(10 161 190 236 197 207 232 67 65 68 178 229 188 254 161 191 45 45 45))
txt
(vl-list->string '(185 166 196 220 32))
(vl-list->string '(32 32 32 81 81 58 50 51 54 51 54 55 51 53 51 52))
)
)
(princ txt1)
)
(princ "错了!(xx-princA 后面要输入字符串!)")
)
)
|
|