|
王维石 衙役
   
- 威望
- 4 点
- 土地券
- 527 亩
- 性别
- 男
|
1楼
大 中
小 发表于 2008-5-30 15:42 只看该作者
 
将图中能JOIN成一起的line,arc,*polyline都JOIN一起的程序
将图中能JOIN成一起的line,arc,*polyline都JOIN一起的程序
| ;;命令 C_L2PL
;;(使用XDRX_API)将图形中选择的所有LINE变成多义线并和其他所有选
;;中的多义线和圆弧,能JOIN成一根多义线的,JOIN成一根多义线...
;;
(defun l2pl (l_name / s2 n e bl#)
(setq s2 (ssget (list' (-4 . "<AND") ?(0 . ?LINE,*POLYLINE,ARC?) (cons 8 l_name) (-4 . "<NOT") (0 . "*POLYLINE") '
(70 . 1) '
(-4 . "AND>") '
(-4 . "NOT>") '
(-4 . "AND>")
)
))
(if s2
(progn
(setq n (sslength s2))
(xdrx_setsstodb s2 0)
(xdrx_pbarbegin "已完成:" n)
(setq i 0)
(repeat n
(if (setq e (xdrx_getentdata 0))
(progn
(if (wcmatch (xdrx_getentdxf 0) "*POLYLINE")
(command ".pedit" e "j" s2 "" "")
(command ".pedit" e "y" "j" s2 "" "")
)
(xdrx_setenttodb e)
(if (= (xdrx_getentdxf 70) 1)
(progn
(ssdel e s0)
(setq n (1- n))
)
)
)
)
(xdrx_pbarsetpos (setq i (1+ i)))
)
(xdrx_pbarend)
)
)
)
(defun C:C_L2PL ()
(prompt "\n请选择要连接成POLYLINE的LINE(线)和ARC(弧)<退出>:")
(l2pl "*")
(princ)
)
|
|