![原创]利用词典中的非图形对象数据共享方法
谢谢各位大侠.本人已成功完成这项功能!可以将数据保存在非图形对象中,随DWG文件一起保存,需要时可以随时提取.
我相信这是程序中公用数据共享的最有效方法,
不敢独享,贴上来与大家分享.其中Q1,Q2,Q3是你自己的数据,可以再定义!
(defun c:xrec ( / xname xrec aa )<BR> (setq q1 1<BR> q2 1000<BR> q3 0.001)<BR> <BR> (if (setq aa (dictsearch (namedobjdict) "BZD"))<BR> (progn (princ aa)(princ))<BR> (progn <BR> (setq xrec '((0 . "XRECORD")<BR> (100 . "AcDbXrecord")<BR> (1 . "程序开发 yxp")<BR> (10 1 1.0 2.0)<BR> ))<BR> (setq xname (entmakex xrec))<BR> (dictadd (namedobjdict) "BZD" xname)<BR> )<BR> )<BR> (cxrecord "BZD" 10 (list 10 q1 q2 q3))<BR> <BR> (dictsearch (namedobjdict) "BZD")
(princ)
)
;更新数据<BR>(defun cxrecord (cx_name cx_code cx_newl / cxlist cxename)<BR> (setq cxlist (dictsearch (namedobjdict) cx_name))<BR> (dictremove (namedobjdict) cx_name)<BR> (setq cxlist (subst cx_newl (assoc cx_code cxlist ) cxlist)<BR> cxename (entmakex cxlist)<BR> )<BR> (dictadd (namedobjdict) cx_name cxename)<BR>) 感谢龙哥和<A name=7201><FONT color=#000066><B>meflying</B></FONT></A>兄的支持,
这下我的很多lisp程序中的参数就可以随DWG文件一起保存了.
不用打开每个DWG图形时都要重新进行这些参数的设置,(因为这些的图形的参数都不相同.)
哈哈,太好了. 再笑一声,哈. 很好 呵呵,知识无穷尽!!! 另存一个版本后还有数据吗? 找了好久,谢谢楼主。 用ldata数据岂不更简单 不会这种功能啊,希望我也能做到就好了,楼主的程序我试了,好像不行啊
关闭就失效了
页:
[1]