adc 发表于 2012-8-2 18:04:35

继承填充

本帖最后由 adc 于 2012-8-2 19:14 编辑



贱人工具箱5.7里有个继承填充的功能,可以选择指定的填充样式进行填充,不过这个有些不足,一是只能点选填充,不能选择对象填充,二是不能按照选择的填充的图层进行填充,只能在当前图层下填充,想增加这两个功能,自己水平有限,希望哪位大侠出手,谢谢

yoyrtweq 发表于 2018-9-2 21:16:25

依然小小鸟 发表于 2018-9-2 15:28
贱人工具箱里面的继承填充是点选

对 就是要点选的。但贱人工具箱功能太多。有好多不用所以想要个单独的源码 单独加载就行了

yoyrtweq 发表于 2018-9-7 09:36:14

xsso 发表于 2012-8-2 23:49
弱弱的发一个,点选暂时只能单选

哥   能否改为只要点选,不要框选,

依然小小鸟 发表于 2018-9-2 15:28:59

yoyrtweq 发表于 2018-9-2 14:34
想要个点选继承填充 没找到

贱人工具箱里面的继承填充是点选

【KAIXIN】 发表于 2012-8-2 18:23:32

本帖最后由 【KAIXIN】 于 2012-8-2 18:28 编辑


【KAIXIN】 发表于 2012-8-2 18:25:08

Andyhon 发表于 2012-8-2 19:09:53

以您提供的样图作验证
程序执行前 +程序执行后 各一 (dwg)

Andyhon 发表于 2012-8-2 19:22:20

程序执行前 的图形文件 (原Dwg)

程序执行后 想得到的成果图形文件 (Dwg)

【KAIXIN】 发表于 2012-8-2 19:38:14




yjr111 发表于 2012-8-2 20:10:25

本帖最后由 yjr111 于 2012-8-2 21:19 编辑

;;;;;;;;简单代码,仅供参考(defun c:jctc(/ tc_e tc_vlae tc_name tc_scle tc_ang tc_la tc_col key e p)
(while
    (setq tc_e(car(entsel"\n选择填充源图案:")))
    (setq tc_vlae   (vlax-ename->vla-objecttc_e)
          tc_name   (vla-get-patternnametc_vlae)
          tc_scle   (vla-get-patternscale tc_vlae)
          tc_ang    (vla-get-patternangle tc_vlae)
          tc_la   (vla-get-layer      tc_vlae)
          tc_col    (vla-get-color      tc_vlae)
          )
    (if (= tc_col 256)(setq tc_col (cdr(assoc 62(entget(tblobjname "layer" tc_la))))))
    (initget 128 "K D")
    (SETQ KEY (GETKWORD"\n选择模式:[框选(K)/点选(D)]"))
    (if (not key)(setq key "D"))
    (cond((= KEY "K")
          (prompt"\n选择填充对象:")
          (setq ss(ssget))
          (command "hatch" "p" tc_name tc_scle (* 180(/ tc_ang pi)) ss "" )
          (vla-put-color (vlax-ename->vla-object (entlast)) tc_col)
       )
       ((= KEY "D")
          (setq p(getpoint"\n指定内部点"))
          (command "boundary" "A" "o" "R" "" p "")          
          (IF (=(vla-get-objectname
                  (setq vlae(vlax-ename->vla-object(setq e(entlast)))))"AcDbRegion"
                )
          (progn
             (command "hatch" "p" tc_name tc_scle (* 180(/ tc_ang pi)) e "")
             (vla-put-color (vlax-ename->vla-object (entlast)) tc_col)
             (vla-delete vlae)
          )
          (princ"\n无法点选填充,请选择填充...")
           )
       )
       )
    )
(princ)
)

xyp1964 发表于 2012-8-2 21:03:46

匹配填充



xyp1964 发表于 2012-8-2 21:13:30

xyp1964 发表于 2012-8-2 21:03 static/image/common/back.gif
匹配填充

(defun xyp-R2D (rad) (* (/ rad pi) 180.0))

yjr111 发表于 2012-8-2 21:20:19

7楼已经更新
页: [1] 2 3 4 5 6
查看完整版本: 继承填充