乐筑天下

搜索
欢迎各位开发者和用户入驻本平台 尊重版权,从我做起,拒绝盗版,拒绝倒卖 签到、发布资源、邀请好友注册,可以获得银币 请注意保管好自己的密码,避免账户资金被盗
查看: 117|回复: 7

[编程交流] 在边界内删除

[复制链接]

3

主题

7

帖子

4

银币

初来乍到

Rank: 1

铜币
15
发表于 2022-7-6 15:08:39 | 显示全部楼层 |阅读模式
对不起,如果这一切都已经准备好处理,但我找不到任何具体的时候,我做了搜索。
使用AC2008
希望能够在由直线、多段线等组成的图形上绘制方框(边界),并能够删除方框外的所有内容。这意味着多段线和直线等将在边界处断开并删除
 
这些图纸是城镇的,显示了所有的房屋边界、道路和主要服务基础设施(水、下水道等),但我只需要在1或2条街道上工作,而不是整个城镇。
 
我知道我可以修剪、延伸和打断线条,但能在一个comand中完成这件事太酷了
 
 
 
提前感谢
亨利·约翰
回复

使用道具 举报

0

主题

269

帖子

279

银币

限制会员

铜币
-4
发表于 2022-7-6 15:20:45 | 显示全部楼层
试试Express Tools命令“extrim”,应该可以处理这个问题。
回复

使用道具 举报

114

主题

1万

帖子

1万

银币

中流砥柱

Rank: 25

铜币
543
发表于 2022-7-6 15:27:01 | 显示全部楼层
天哪。。。以前从未使用过extrim-绝对神奇的命令
回复

使用道具 举报

4

主题

940

帖子

961

银币

初来乍到

Rank: 1

铜币
12
发表于 2022-7-6 15:40:05 | 显示全部楼层
你可能会喜欢这个。。。
http://www.theswamp.org/index.php?topic=24646.0
回复

使用道具 举报

3

主题

7

帖子

4

银币

初来乍到

Rank: 1

铜币
15
发表于 2022-7-6 15:46:05 | 显示全部楼层
不错,但是当我运行extrim时,并不是所有的行都被删除,只有其中的一些行。
我做错什么了吗???
回复

使用道具 举报

4

主题

940

帖子

961

银币

初来乍到

Rank: 1

铜币
12
发表于 2022-7-6 15:56:30 | 显示全部楼层
如果要修剪的对象不是连续线型,并且“空间”恰好落在修剪边界上,则不会修剪。此外,我发现extrim命令的结果不确定。
回复

使用道具 举报

0

主题

269

帖子

279

银币

限制会员

铜币
-4
发表于 2022-7-6 16:00:56 | 显示全部楼层
您可以在运行它之前将ltscale设置为真正的小,以避免大多数“断线”问题。一个不便,但不经常使用的BTN。
回复

使用道具 举报

4

主题

327

帖子

324

银币

初来乍到

Rank: 1

铜币
19
发表于 2022-7-6 16:10:22 | 显示全部楼层
试试这个。它需要一些错误捕捉,使其坚实,但你可以得到的想法。我使用express tools extended trim程序的前端,使其接受2个参数1-矩形的实体名称和矩形的角点。然后,它将使用express tool extend trim程序的其余部分,因此,只有在安装了expresstools的情况下,这才有效。
在命令行上加载并进行类型测试
 
(定义c:测试(/rect llc urc)
(setq rect(car(entsel“\n选择矩形或闭合多段线”))_获取矩形
(vla GetBoundingBox(vlax ename->vla object rect)“minpt”maxpt)_检查高度/宽度
(setq)
llc(vlax safearray->list minpt)
urc(vlax safearray->list maxpt)
);_setq公司
(extrim2 rect llc)_调用扩展修剪过程ent名称和点
(命令“erase”“all”“r”“w”urc llc“”)_删除矩形外的所有内容
(普林斯)
);_德芬
;;; 借用expresstools扩展修剪代码,并使其适用于此
(defun extrim2(ag1 ag2/na e1 p1 redraw\u it lst n)
(acet error init(列表
(列出“cmdecho”0)
“突出显示”0
“regenmode”1
“osmode”0
“ucsicon”0
“offsetdist”0
“attreq”0
“plinewid”0
“plinetype”1
“gridmode”0
“celtype”“连续”
“ucsfollow”0
“limcheck”0
)
T旗帜True表示使用undo清除错误。
'(如果重新绘制(重新绘制na 4))
);列表
);acet错误初始化
(setq na ag1)
(如果不适用
(程序
(setq e1(entget na));;setq公司
(如果(或(等于“文本”(cdr(assoc 0 e1)))
(等于“多行文字”(cdr(assoc 0 e1)))
(等于“ATTDEF”(cdr(assoc 0 e1)))
(相等的“图像”(cdr(assoc 0 e1)))
(等于“插入”(cdr(assoc 0 e1)))
(等于“固体”(cdr(assoc 0 e1)))
(等于“3DFACE”(cdr(assoc 0 e1)))
(相等的“跟踪”(cdr(assoc 0 e1)))
);或
(程序
(setq lst(acet geom对象点列表na nil))
(setq n 0)
(命令“_.pline”)
(重复(长度lst)
(命令(第n个lst))
(setq n(+n 1));setq公司
);重复
(如果(不(等于(car lst)(last lst)0.0000001))
(命令“_cl”)
(命令“”)
);如果
(setq na(entlast)
e1不适用
);setq公司
);然后绘制一条温度曲线作为切割边缘。
(setq e1 nil)
);如果
(重新绘制na 3)
(setq redraw\u it T)
(setq p1 ag2)
(重新绘制na 4)
(setq redraw_it nil)
(如果p1(etrim na p1));如果
(如果e1
(程序
(如果(setq p1(acet层锁定(getvar“clayer”))
(命令“.layer”“\u un”(getvar“clayer”)“”)
);如果
(entdel e1)
(如果p1
(命令“.layer”“\u lock”(getvar“clayer”)“”)
);如果
);然后编程
);如果
);程序
);如果
(acet错误恢复)
(普林斯)
);defun c:extrim
回复

使用道具 举报

发表回复

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

QQ|关于我们|小黑屋|乐筑天下 繁体中文

GMT+8, 2025-3-4 19:36 , Processed in 0.473291 second(s), 68 queries .

© 2020-2025 乐筑天下

联系客服 关注微信 帮助中心 下载APP 返回顶部 返回列表