- (defun c:gkgdgfk()
- (setq osm (getvar "osmode"))
- (setvar "osmode" 0)
- (command "_undo" "be")
- (setq pdsjb (list (list "KG" "空管")
- (list "DG" "顶管")
- (list "FK" "非空管")
- )
- )
- (initget "KG DG FK") ;关键字
- (setq pdbz (getkword "\n请选取[空管K/顶管D/非空管F]<K>:"))
- (If (null pdbz) (setq pdbz "KG"))
- (setq sjb (assoc pdbz pdsjb))
-
- (if (setq ssa (ssget '((0 . "LINE") )))
- (progn
- (setq i 0)
- (repeat (sslength ssa)
- (setq dxf (entget (ssname ssa i) '("*")))
- (if (setq kzsj (cdr (assoc -3 dxf)))
- ;(if (= (cdadr (assoc "线型2" kzsj)) "空管")
- (if (= (cdadr (assoc "线型2" kzsj)) (cadr sjb))
- (progn
- (if (assoc 6 dxf)
- ;(setq newdxf (subst (cons 6 "KG") (assoc 6 dxf) dxf))
- ;(setq newdxf (append dxf (list (cons 6 "KG"))))
- (setq newdxf (subst (cons 6 (car sjb)) (assoc 6 dxf) dxf))
- (setq newdxf (append dxf (list (cons 6 (car sjb)))))
- )
- (entmod newdxf)
- )
- )
- )
- (setq i (1+ i))
- )
- )
- )
- (command "_undo" "e")
- (setvar "osmode" osm)
- (princ)
- )
|