几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量

几何尺寸与公差论坛------致力于产品几何量公差标准GD&T (GDT:ASME)|New GPS(ISO)研究/CAD设计/CAM加工/CMM测量 (http://www.dimcax.com/hust/index.php)
-   ObjectARX(AutoLISP) (http://www.dimcax.com/hust/forumdisplay.php?f=178)
-   -   [求助]关于添加数据至图元的问题 (http://www.dimcax.com/hust/showthread.php?t=11015)

yang686526 2009-04-26 12:13 PM

[求助]关于添加数据至图元的问题
 
[求助]关于添加数据至图元的问题
www.dimcax.com
[求助]关于添加数据至图元的问题
大家好! 这几天想写一个关于添加dxf数据组到cad对象中去的小程式,可一开始就遇到麻烦了.以下是我写的两个小程式,第一个写入数组的程式本身就有问题,第二个自然就无法检查了,现在第一个的问题是运行到(entmod ent)时,就显示添加的dxf数据数不正确,我始终不能解决这个问题,请高手帮个忙,并看一下第二个有没有什么问题.多谢!
;;;;;;;;;;;
(defun c:wdata (/ cmd data dm1 ent s1 zjxx)
(setq cmd (getvar "cmdecho"))
(setvar "cmdecho" 0)
(regapp "dataforydp")
(setq s1 nil)
(while (= s1 nil)
(setq s1 (entsel "\n请选择需写入注解信息的图元:"))
)
(setq dm1 "")
(while (= dm1 "")
(setq dm1 (getstring "\n请指定注解代码:"))
)
(setq zjxx "")
(while (= zjxx "")
(setq zjxx (getstring "\n请输入注解文字:"))
)
(setq ent (entget (car s1)))
(setq data nil)
(setq data (cons (cons 1000 dm1) data))
(setq data (cons (cons 1015 zjxx) data))
(setq data (cons "dataforydp" data))
(setq data (list -3 data))
(setq ent (cons data ent))
(entmod ent)
(setvar "cmdecho" cmd)
(princ)
)
;;;;;;;;;
(defun c:rdata (/ cmd da data dm1 ent s1 zjxx)
(setq cmd (getvar "cmdecho"))
(setvar "cmdecho" 0)
(setq s1 (entsel "\n请选择需读出信息的图元:"))
(setq ent (car s1))
(setq data (cdr (cadadr (assoc -3 (entget ent (list "dataforydp"))))))
(setq dm1 (cadr da)
zjxx (caddr da)
)
(princ "\n注解代码为:")
(princ dm1)
(princ "\n注解文字为:")
(princ zjxx)
(princ)
)
d
哇,过了这么久都没人回应一下哦,还好,我自己解决了,没有1015这个数据组.不过还是感谢,是它让我对lisp产生了兴趣.
d


所有的时间均为北京时间。 现在的时间是 01:46 PM.