图中有很多个 闭合的多段线 我给定了16个填充图案 我想到0~15个填充完成后又从0~15填充 用 rem 求余在循环 但是不会用 我写了一个 又臭有长的代码 新手 只能想到一些简单的东西去一个个的判断 求高手指点迷津
 - (defun c:ttx()
- (vl-load-com)
- (setvar "cmdecho" 0)
- (setvar "osmode" 0)
- (setq b (getreal "\n输入线性比例<0.05>"))
- (if (or (= b nil)(= b 0))
- (setq b 0.05)
- )
- (setq s 0)
- (if (setq ss (ssget '((0 . "*POLYLINE"))))
- (progn
- (setq i -1)
- (command "layer" "n" "填充" "c" 4 "填充" "s" "填充" "" )
- (repeat (sslength ss)
- (setq en (ssname ss (setq i (1+ i)))) ;_图元名
- (setq ent (entget en))
- (if (= i 0)
- (command "_bhatch" "p" "TRIANG" b "0" "s" en "" "")
- )
- (if (= i 1)
- (command "_bhatch" "p" "GRAVEL" b "0" "s" en "" "")
- )
- (if (= i 2)
- (command "_bhatch" "p" "HEX" b "0" "s" en "" "")
- )
- (if (= i 3)
- (command "_bhatch" "p" "HONEY" b "0" "s" en "" "")
- )
- (if (= i 4)
- (command "_bhatch" "p" "MUDST" b "0" "s" en "" "")
- )
- (if (= i 5)
- (command "_bhatch" "p" "PLAST" b "0" "s" en "" "")
- )
- (if (= i 6)
- (command "_bhatch" "p" "SQUARE" b "0" "s" en "" "")
- )
- (if (= i 7)
- (command "_bhatch" "p" "TRANS" b "0" "s" en "" "")
- )
- (if (= i 8)
- (command "_bhatch" "p" "PLASTI" b "0" "s" en "" "")
- )
- (if (= i 9)
- (command "_bhatch" "p" "NET" b "0" "s" en "" "")
- )
- (if (= i 10)
- (command "_bhatch" "p" "ZIGZAG" b "0" "s" en "" "")
- )
- (if (= i 11)
- (command "_bhatch" "p" "STEEL" b "0" "s" en "" "")
- )
- (if (= i 12)
- (command "_bhatch" "p" "NET3" b "0" "s" en "" "")
- )
- (if (= i 13)
- (command "_bhatch" "p" "BRICK" b "0" "s" en "" "")
- )
- (if (= i 14)
- (command "_bhatch" "p" "BOX" b "0" "s" en "" "")
- )
- (if (= i 15)
- (command "_bhatch" "p" "HOUND" b "0" "s" en "" "")
- )
- )
- )
- )
- )
|