乐筑天下

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

[编程交流] 将图形另存为属性值

[复制链接]

11

主题

48

帖子

40

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
54
发表于 2022-7-6 12:15:30 | 显示全部楼层 |阅读模式
大家好,
 
我正在寻找一个Lisp例程,它将用属性值中的名称保存图形。
块名为“MAP_NUM”。
标签名为“MAP”。
例子:
图纸名称为25-25。标签值为“500-500”。
将图纸25-25另存为500-500。
 
任何帮助都将不胜感激。
回复

使用道具 举报

14

主题

271

帖子

257

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
70
发表于 2022-7-6 12:38:46 | 显示全部楼层
看看这是怎么回事。将文件保存到当前文件夹(因为未指定),如果有多个块,则只查找找到的第一个块:
 
  1. (defun c:savePerAtt (/ blkname attTag ss txtStr subEn)
  2. (vl-load-com)
  3. ; Get Text String
  4. (setq blkname "PLD Border 07");"MAP_NUM")
  5. (setq attTag "TITLE1");"MAP")
  6. (if (setq ss (ssget "_X" (list '(0 . "INSERT") (cons 2 blkname))))
  7.    (progn
  8.      (setq subEn (ssname ss 0))
  9.      (while (AND (not txtStr)
  10.          (setq subEn (entnext subEn))
  11.          (eq (cdr (assoc 0 (entget subEn))) "ATTRIB"))
  12.    (If (eq (cdr (assoc 2 (entget subEn))) attTag)
  13.      (setq txtStr (cdr (assoc 1 (entget subEn))))
  14.      )
  15.    )
  16.      )
  17.    )
  18. ; Save Drawing
  19. (If txtStr
  20.    (vla-saveas
  21.      (vla-get-activedocument
  22.    (vlax-get-acad-object))
  23.      txtStr)
  24.    (princ "\nAttribute Not Found.")
  25.    )
  26. (princ)
  27. )
回复

使用道具 举报

11

主题

48

帖子

40

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
54
发表于 2022-7-6 13:08:35 | 显示全部楼层
完美的
非常感谢你。这个例行公事会节省我很多时间。
回复

使用道具 举报

14

主题

271

帖子

257

银币

初露锋芒

Rank: 3Rank: 3Rank: 3

铜币
70
发表于 2022-7-6 13:22:59 | 显示全部楼层
别担心
回复

使用道具 举报

发表回复

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

本版积分规则

  • 微信公众平台

  • 扫描访问手机版

  • 点击图片下载手机App

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

GMT+8, 2025-3-5 06:10 , Processed in 0.348870 second(s), 60 queries .

© 2020-2025 乐筑天下

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