乐筑天下

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

[编程交流] 属性更改wro

[复制链接]

5

主题

34

帖子

29

银币

初来乍到

Rank: 1

铜币
25
发表于 2022-7-5 20:11:31 | 显示全部楼层 |阅读模式
大家好,所有LSP专家请帮助我
起初,这个LSP代码是有效的,我用了很长时间使用auto cad 2012。但现在LSP代码不起作用了
 
代码标签:
请参阅附件,
 
 
出了什么问题?
我用这个LSP做scr。对于多个图形,它非常有用。
查特里布。LSP
回复

使用道具 举报

pBe

32

主题

2722

帖子

2666

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
211
发表于 2022-7-5 20:16:43 | 显示全部楼层
奶酪是怎么错的?
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-5 20:18:19 | 显示全部楼层
该函数没有任何问题,但如果块名是动态块,则不会工作。
回复

使用道具 举报

5

主题

34

帖子

29

银币

初来乍到

Rank: 1

铜币
25
发表于 2022-7-5 20:23:21 | 显示全部楼层
@Tharwat如何知道块是否为动态块?
回复

使用道具 举报

5

主题

34

帖子

29

银币

初来乍到

Rank: 1

铜币
25
发表于 2022-7-5 20:24:50 | 显示全部楼层
这是我使用CHATTRIB LSP时得到的
211137bztnn7xx6mtuufen.jpg
回复

使用道具 举报

5

主题

34

帖子

29

银币

初来乍到

Rank: 1

铜币
25
发表于 2022-7-5 20:29:47 | 显示全部楼层
dwg和lsp见附件
查特里布。LSP
样品图纸
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-5 20:31:11 | 显示全部楼层
 
ENT获取块的实体名称,然后搜索DXF 2的cdr值,如果它以*U开头,则表示动态块,否则不是。
回复

使用道具 举报

5

主题

34

帖子

29

银币

初来乍到

Rank: 1

铜币
25
发表于 2022-7-5 20:35:07 | 显示全部楼层
对不起,我真的不知道如何知道我的区块是否是动态的
我试图输入Entget,但autocad说未知
 
 
我已附上我的。图纸和。我上一条消息中的lsp。
请介意上传,并提出一些建议,如何使我的LSP再次工作。
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-5 20:39:01 | 显示全部楼层
将以下代码行复制并粘贴到命令行中,然后按Enter键开始,因此选择一个块,如果它以*U开头,则它是动态的,否则它不是。
 
  1. (cdr (assoc 2 (entget (car (entsel "\n Select a Block :")))))
回复

使用道具 举报

63

主题

6297

帖子

6283

银币

后起之秀

Rank: 20Rank: 20Rank: 20Rank: 20

铜币
358
发表于 2022-7-5 20:40:37 | 显示全部楼层
无论如何,试试这个修改,让我知道。
 
注意:将函数changeAttribValue添加到以下例程中。
 
  1. (defun C:CHATTRIB  (/ ss sn a attag bname oldval newval)
  2. (and (/= "" (setq bname (getstring "\nBlock name: ")))
  3.       (/= "" (setq attag (getstring T "\nTag: ")))
  4.       (/= "" (setq oldval (getstring T "\nOld value: ")))
  5.       (/= "" (setq newval (getstring T "\nNew value: ")))
  6.       (setq ss (ssget "_X"
  7.                       (list '(0 . "INSERT")
  8.                             '(66 . 1)
  9.                             (cons 2 (strcat "`*U*," bname)))))
  10.       (repeat (setq a (sslength ss))
  11.         (if (eq (vla-get-effectivename
  12.                   (vlax-ename->vla-object
  13.                     (setq sn (ssname ss (setq a (1- a))))))
  14.                 bname)
  15.           (changeAttribValue
  16.             sn
  17.             attag
  18.             oldval
  19.             newval)
  20.           ))
  21.       )
  22. (princ)
  23. )(vl-load-com)
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-8-18 20:56 , Processed in 0.767351 second(s), 74 queries .

© 2020-2025 乐筑天下

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