Lispboy 发表于 2016-10-8 09:10:37

批量多段线灵活倒角(倒内角、倒外角)

本帖最后由 Lispboy 于 2016-10-8 09:10 编辑

需要去通用LISP函数库下载函数:
http://bbs.xdcad.net/thread-671362-1-1.html
http://bbs.xdcad.net/thread-705702-1-1.html

(defun c:XDTB_PLineFillet (/ #dis #div _isclose bound dis div e gap ge
      ge1 i intv keyword len pts sec sec1 sec2 ss
      x
         )
(defun _setdis (keyword)
    (cond
      ((= keyword "SE")
(if (setq r (getreal (xdrx_prompt "\n请输入倒角半径<" #radius ">:" t)))
    (setq #radius r)
)
      )
      ((= keyword "BE")
(if (setq mode (getint (xdrx_prompt "\n请输入倒角方式[所有角(0)/只倒内角(1)/只倒外角(2)]<"
            #mode ">:" t
             )
         )
      )
    (setq #mode mode)
)
      )
    )
    (xdrx_prompt "\n当前设置:倒角方式(*" (cond
            ((= #mode 0)
                "所有角"
            )
            ((= #mode 1)
                "只倒内角"
            )
            (t
                "只倒外角"
            )
            ) "*)/半径(" #radius ")"
    )
)
(defun _fillet (e mode radius)
    (cond
      ((= mode 0)
      (setq gr (apply 'append gr))
      (setq gr (vl-sort gr '(lambda(x y)(< x y))))
      )
      ((= mode 1)
      (setq gr (car gr))
      )
      ((= mode 2)
      (setq gr (last gr))
      )
    )
    (setq i 0)
    (mapcar
      '(lambda (index)
   (XD::Polyline:AddFillet e (+ i index) "F" radius 1.0)
   (setq i (1+ i))
       )
      gr
    )
)
(xdrx_begin)
(if (not #mode)
    (setq #mode 0)
)
(if (not #radius)
    (setq #radius 10.0)
)
(xdrx_prompt "\n当前设置:倒角方式(*" (cond
            ((= #mode 0)
            "所有角"
            )
            ((= #mode 1)
            "只倒内角"
            )
            (t
            "只倒外角"
            )
          ) "*)/半径(" #radius ")"
)
(xdrx_initssget "\n选取要倒角的多段线[倒角方式(BE)/半径(SE)]<退出>:"
      "BE SE" "移除不倒角的多段线[添加(A)]<退出>:" "_setdis" ""
)
(if (setq ss (xdrx_ssget '((0 . "*POLYLINE"))))
    (progn
      (mapcar
'(lambda (x)
   (setq gr (xd::polyline:anglegroup x))
   (_fillet x #mode #radius)
   )
(xdrx_pickset->ents ss)
      )
    )
)
(xdrx_end)
(princ)
)

longer1000 发表于 2016-10-8 11:11:56

啥也不说了,感谢楼主分享哇!

liuyj 发表于 2016-10-8 11:28:50

看上去很智能啊

yanchao316 发表于 2016-10-9 10:46:16

啥也不说了,感谢楼主分享哇!

yanchao316 发表于 2016-10-12 12:23:28

我只是路过打酱油的

zxwzbw 发表于 2016-10-13 09:19:12

感谢楼主分享哇!

yanchao316 发表于 2016-11-1 09:33:54

啥也不说了,感谢楼主分享哇!

ysq101 发表于 2016-12-5 20:01:24

很强大呢。。。 一定要安装XD工具箱才能运行吗?

newer 发表于 2016-12-5 20:11:25

ysq101 发表于 2016-12-5 20:01


装 XDRX API 就行

sicky111 发表于 2016-12-5 23:31:57

支持晓东工具箱。

ysq101 发表于 2017-3-15 11:58:11

newer 发表于 2016-12-5 20:11


是否支持这类图形

1028882406@qq.c 发表于 2017-5-12 23:26:24

谢谢楼主,支持下

变幻之枫 发表于 2017-6-23 12:48:45


啥也不说了,就是感谢!

jxwfz19740724 发表于 2017-6-27 08:33:11

看看再说吧。

pezyl 发表于 2017-6-27 10:57:49

实用的好插件
页: [1] 2
查看完整版本: 批量多段线灵活倒角(倒内角、倒外角)