在d之后连接线的两端
删除插入的块时,是否可以自动连接线的两端 插入一个覆盖多边形块,它不会打断线,但在视觉上“断开”当您移除块时,线路自动“连接”
0.02年款 谢谢
我是说在使用AutoBlockBreakV1-6之后。Lee Mac先生的lsp有时需要删除插入的块(例如管件),并且应自动连接折线的两端。
需要反应器和扩展数据的组合,以便将块引用与其所在的断开对象链接,并在删除块后触发要重建的对象。虽然这可能是可行的,但实施起来会非常困难,而且肯定不是我自愿时间可以做的事情。
我建议使用舱口或抹布。 这些过去很管用,但在2015年,comand-s的事情把它们搞砸了,我一直忙于修补它们。
(defun c:heal(/ block ll ur p1 p2)
(vl-load-com)
(setq block (car (entsel "\nSelect Block:")))
(vla-getboundingbox (vlax-ename->vla-object block) 'll 'ur)
(command "_.erase" block "")
(command
"_.pedit"
"_m"
(ssget "C"
(setq p1 (vlax-safearray->list ll))
(setq p2 (vlax-safearray->list ur)))
""
"_join" "_Joint" "_Both"
(distance p1 p2)
"")
(princ)
)
(defun c:HEAL2 (/ block ll ur objecttojoin)
(vl-load-com)
(setq block (car (entsel "\nSelect Block:")))
(vla-getboundingbox (vlax-ename->vla-object block) 'll 'ur)
(command "_.erase" block "")
(setq objecttojoin
(ssget "C"
(vlax-safearray->list ll)
(vlax-safearray->list ur)))
(command
"_.join"
(ssname objecttojoin 0)
(ssname objecttojoin 1)
"")
)
http://autocadtips.wordpress.com/?s=heal
http://autocadtips.wordpress.com/2012/06/29/autolisp-heal-erase-block-heal-line/
~格雷格 非常感谢你
troggarf它适用于直线,而不是多段线。我希望也有圆弧样条。
页:
[1]