- (defun c:twrm ( / ent len lst sel )
- (if (setq sel
- (ssget "_X"
- '(
- (008 . "TOWER")
- (410 . "Model")
- (-04 . "<OR")
- (000 . "CIRCLE")
- (-04 . "<AND")
- (000 . "LWPOLYLINE")
- (090 . 3)
- (-04 . "&=")
- (070 . 1)
- (-04 . "AND>")
- (-04 . "OR>")
- )
- )
- )
- (progn
- (setq ent (ssname sel 0)
- lst (mapcar 'cdr (vl-remove-if-not '(lambda ( x ) (= 10 (car x))) (entget ent)))
- len (length lst)
- )
- (command "_.move"
- (ssget "_X" '((410 . "Model"))) ""
- "_non" (trans (mapcar '/ (apply 'mapcar (cons '+ lst)) (list len len)) ent 1)
- "_non" '(0.0 0.0)
- )
- )
- (princ "\nTower object not found.")
- )
- (princ)
- )
添加罕见但偶尔出现的方形塔楼只是添加另一条线吗?我猜突出显示的线会寻找带有3个点的线?它会像重复这个并使其成为4一样简单吗? |