乐筑天下

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

[编程交流] 更改实体和块t

[复制链接]

38

主题

83

帖子

53

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
186
发表于 2022-7-5 21:25:02 | 显示全部楼层 |阅读模式
试图找到一个lisp例程,将现有设备更改为虚拟层和颜色,但希望保留线型。一些设备被堵塞,一些设备爆炸。
希望选项选择或窗口周围的区域,并将其更改为选定的图层和颜色,但保留线型。
有人能提出一种干净的方法来更改块和实体吗?
回复

使用道具 举报

7

主题

80

帖子

73

银币

初来乍到

Rank: 1

铜币
35
发表于 2022-7-5 22:02:07 | 显示全部楼层
对于非块,您可以使用下面的
  1. (defun C:chCL(/ whc sset ent sellist color layer)
  2. (defun FiltLayer(sset pst)
  3.    (setq whc 0 newSet(ssadd))
  4.    (while(< whc (sslength sset))
  5.      (setq ent(ssname sset whc))
  6.      (setq sellist(entget ent))
  7.      (if(= pst (cdr(assoc 8 sellist)))
  8.        (ssadd ent newSet)
  9.      )
  10.      (setq whc(+ whc 1))
  11.    )
  12.    newSet
  13. )
  14. (setvar "cmdecho" 0)
  15. (setq color(acad_colordlg 1 nil))
  16. (setq layer(getstring "\n Layer: "))
  17. (setq sset
  18.    (ssget[color=purple] [color=black]"X"[/color] [/color]
  19.      (list
  20.        (cons -4 "<OR")
  21.          (cons 0 "ARC")
  22.          (cons 0 "CIRCLE")
  23.          (cons 0 "ELLIPSE")
  24.          (cons 0 "LINE")
  25.          (cons 0 "LWPOLYLINE")
  26.          (cons 0 "POLYLINE")
  27.          (cons 0 "INSERT")
  28.        (cons -4 "OR>")
  29.      )
  30.    )
  31. )
  32. (if(and sset(> (sslength sset) 0))(setq sset(FiltLayer sset "[color=purple]LAYER NAME OF xploded BLOCKs[/color]")))
  33. (if (and sset (> (sslength sset) 0))
  34.    (progn
  35.      (command "change" sset "" "Properties" "Color" color "")
  36.      (command "change" sset "" "Properties" "LAyer" layer "")
  37.      (command "setbylayer" "P" "")
  38.    )
  39. )
  40. (setvar "cmdecho" 1)
  41. (princ)
  42. )

 
对于块,编辑每个块>保存它们>在工具选项板中拖动它们>并使用工具选项板中的重定义命令更新块。
 
也可以使用VVA lisp进行块。
在这里:http://www.cadtutor.net/forum/showthread.php?533-所有层和块的Lisp颜色变化/第2页
回复

使用道具 举报

38

主题

83

帖子

53

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
186
发表于 2022-7-5 22:18:49 | 显示全部楼层
我一直在用refedit命令编辑块,但当你有很多块,项目的35%是现有设备,我需要有灯光层,但在幻影层。将现有设备换成不同的层,并保持线路类型和LTscale不变,这很费时。
非常耗时。我以前从未创建过lisp例程,大部分是脚本,但我尝试编辑它以使其工作。
谢谢
回复

使用道具 举报

7

主题

80

帖子

73

银币

初来乍到

Rank: 1

铜币
35
发表于 2022-7-5 22:33:30 | 显示全部楼层
为您编辑了上述例程,请尝试一下。
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-11 09:21 , Processed in 0.627026 second(s), 60 queries .

© 2020-2025 乐筑天下

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