明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 3922|回复: 16

怎样把TEXT文字转换成ATTDEF定义的属性

[复制链接]
发表于 2012-6-2 16:33 | 显示全部楼层 |阅读模式
怎样把TEXT文字转换成ATTDEF定义的属性.明经上有把那属性转换成单字,这就是那相反的功能。最好是集合那功能。互相转换
发表于 2012-6-4 09:28 | 显示全部楼层
本帖最后由 psdcdr 于 2012-6-4 09:36 编辑

忘记在哪里找到的,一起分享下,

祝愿所有找LSP的朋友,都能得到答案!







本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
回复 支持 1 反对 1

使用道具 举报

发表于 2022-12-8 11:24 | 显示全部楼层
试试这个
  1. (DEFUN C:TXT2ATT (/ SS1 N TXTENT AA A1 A73 LST_210 LST_10)
  2.   (VL-CMDF "_.undo" "_group")
  3.   (SETVAR "blipmode" 0)
  4.   (PRINC "\n选择TEXT文本对象: ")
  5.   (setq SS1 (SSGET '((0 . "TEXT"))))
  6.   (VL-CMDF "_.UCS" "W")
  7.   (setq N 0)
  8.   (REPEAT (SSLENGTH SS1)
  9.     (setq TXTENT (SSNAME SS1 N))
  10.     (setq LST_210 (APPEND LST_210 (LIST (ASSOC 210 (ENTGET TXTENT)))))
  11.     (setq LST_10 (APPEND LST_10 (LIST (ASSOC 10 (ENTGET TXTENT)))))
  12.     (setq AA (MEMBER '(100 . "AcDbEntity") (ENTGET TXTENT)))
  13.     (setq A73 (CDR (ASSOC 73 AA)))
  14.     (setq A1 (CDR (ASSOC 1 AA)))
  15.     (ENTMAKE
  16.       (APPEND '((0 . "ATTDEF"))
  17.               (REVERSE (CDDR (REVERSE AA)))
  18.               '((100 . "AcDbAttributeDefinition") (70 . 8))
  19.               (LIST (CONS 74 A73) (CONS 3 A1) (CONS 2 A1))
  20.       )
  21.     )
  22.     (setq N (1+ N))
  23.   )
  24.   (VL-CMDF "_.erase" SS1 "")
  25.   (VL-CMDF "_.UCS" "P")
  26. )
回复 支持 1 反对 0

使用道具 举报

发表于 2012-6-4 15:24 | 显示全部楼层
  1. (defun ATTDEFtoTEXT(elist / ename fawn);;属性转文本
  2. ;; (ai_undo_push)
  3.   (setq ename(cdr(assoc -1 elist)))
  4.   (entdel ename)
  5.   (setq fawn(assoc 74 elist))
  6.   (setq elist(subst '(0 . "TEXT") '(0 . "ATTDEF")elist))
  7.   (setq elist(subst (cons 73 (cdr fawn)) fawn elist))
  8.   (mapcar '(lambda(x)  ;;匿名函数
  9.        (setq elist(vl-remove(assoc x elist)elist))
  10.        )
  11.     '(-1 330 5 100 100 100 3 2 70)
  12.     )
  13.   (entmake elist)
  14.   ;;(ai_undo_pop)
  15.   )
  16. (defun TEXTtoATTDEF(elist / ename fawn);;文本转属性
  17.   ;;(ai_undo_push)
  18.   (setq ename(cdr(assoc -1 elist)))
  19.   (entdel ename)
  20.   (setq fawn(assoc 73 elist))
  21.   (setq elist(subst '(0 . "ATTDEF") '(0 . "TEXT")elist))
  22.   (setq elist(subst (cons 74 (cdr fawn)) fawn elist))
  23.   (mapcar '(lambda(x)  ;;匿名函数
  24.        (setq elist(vl-remove(assoc x elist)elist))
  25.        )
  26.     '(-1 330 5 100 100 100)
  27.     )
  28.   (setq elist(append elist '((2 . "未命名属性")(3 . "请输入 未命名属性")(70 . 0))))
  29.   (entmake elist)
  30.   ;;(ai_undo_pop)
  31.   )

发表于 2012-11-11 12:11 | 显示全部楼层
fawn_lgc 发表于 2012-6-4 15:24

这个程序实用。
发表于 2012-11-11 13:38 | 显示全部楼层
刚刚需要这个程序就看到帖子
发表于 2013-2-2 10:48 | 显示全部楼层
本帖最后由 云牧帆 于 2013-2-2 18:43 编辑

fawn_lgc 老师的程序加载后,TEXTtoATTDEF作为命令,命令行显示【未知命令“TEXTTOATTDEF”。按 F1 查看帮助。】请问应该怎么用?谢谢
发表于 2013-2-8 21:57 | 显示全部楼层
psdcdr 发表于 2012-6-4 09:28
忘记在哪里找到的,一起分享下,

祝愿所有找LSP的朋友,都能得到答案!

非常感谢!!
发表于 2013-9-14 12:43 | 显示全部楼层
正在找这方面的资料,多谢大家分享。
发表于 2016-7-4 22:46 | 显示全部楼层
不能运行的。怎么办
发表于 2018-6-10 02:44 | 显示全部楼层
psdcdr 发表于 2012-6-4 09:28
忘记在哪里找到的,一起分享下,

祝愿所有找LSP的朋友,都能得到答案!

谢谢,非常实用
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-25 18:32 , Processed in 0.370031 second(s), 28 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表