77077 发表于 2014-8-10 10:43:16

准备写个xdata编辑工具,欢迎大家一起来意淫~~~

本帖最后由 77077 于 2014-8-10 10:57 编辑

还没好的思路,自己虽然实验成功,不过偶尔还是会出错,希望大家一起来研究研究~~~


(if (setq l (cdr(assoc '-3 (entget (car (entsel "/n请选择图元:" )) '("*")))));获取图元XDATA
    (setql1 (mapcar '(lambda(x) (cons (car x) (cdr(cadr x)))) l)) ;组成新表
    (alert "\n所选图元无拓展数据XDATA")
   )
(MAKE-EditDCL l1);对表写成临时DCL编辑框,并加载
;按下OK,读取新数据l2
;写入新数据到图元

(defun MAKE-EditDCL (lst / file F1 I)
(setq file (vl-filename-mktemp "DclTemp.dcl"))
(setq F1 (open file "w"))
(progn
(write-line "EditDCL:dialog{label=\"拓展数据XDATA编辑器\";" F1)
(write-line ":boxed_column{label=\"XDATA列表\";" F1)
(write-line ":row{\n:column{" F1)
(setq I 1)
(foreach n lst
   (write-line
    (strcat ":edit_box{label=\"" (vl-princ-to-string (car n))
            "\";value=\"" (vl-princ-to-string (cdr n))
            "\";key=\"KEY" (itoa I) "\";}" ) F1)
   (if (= (rem i 10) 0) (write-line "}\n:column{" F1))
   (setq I (1+ I))
)
(if (/= (rem (1- i) 10) 0) (write-line "}" F1))
(write-line "}\n}" F1)
(write-line "ok_only;" F1)
(write-line "}" F1)
(close F1)
file
)
)

77077 发表于 2014-8-10 10:43:47

占楼,等最后发出完整源码~~~

77077 发表于 2014-8-10 10:48:21

本帖最后由 77077 于 2014-8-10 10:50 编辑

目前比较难解决的是,增加xdata对话框
打算按照波斯猫的想法去做
http://bbs.mjtd.com/forum.php?mo ... D110%26typeid%3D110
可惜重载DCL时,难保存已填写的DCL数据

77077 发表于 2014-8-10 14:00:18

本帖最后由 77077 于 2014-8-10 14:12 编辑

;添加xdata到图元
;测试:
(PutXData (car(entsel)) '(("south" (1000 . "204201") (1040 . 1.0)) ("AAAA" (1041 . 562.307)(1000 . "aaaaa"))))

(defun PutXData (Obj Data / dxf)
   (setq dxf(entget obj))
   (foreach x Data
      (regapp (car x))
      (entmod (append dxf (list( cons -3 (list x)))))
       )
)

命令: (cdr(assoc '-3 (entget (car (entsel "/n请选择图元:" )) '("*"))))
/n请选择图元:(("south" (1000 . "204201") (1040 . 1.0)) ("AAAA" (1041 . 562.307)
(1000 . "aaaaa")))

SunSpring 发表于 2014-8-10 15:01:19

本帖最后由 SunSpring 于 2014-8-10 15:08 编辑

http://bbs.mjtd.com/thread-65914-1-1.html
很早之前写的,可以参考,可能有问题.

spp_wall 发表于 2014-8-10 15:32:39

支持一下!!!!!!!!!!!!

bzhjl 发表于 2014-8-10 15:35:22

非常期待楼主作品!

77077 发表于 2014-8-10 16:11:07

SunSpring 发表于 2014-8-10 15:01 static/image/common/back.gif
http://bbs.mjtd.com/thread-65914-1-1.html
很早之前写的,可以参考,可能有问题.

打不开链接

xyp1964 发表于 2014-8-10 17:21:32

山寨版“建筑统计”——扩展数据的应用

77077 发表于 2014-8-11 00:29:13

xyp1964 发表于 2014-8-10 17:21 static/image/common/back.gif
山寨版“建筑统计”——扩展数据的应用

院长,先给个XDATA编辑的思路啊,最好能像波斯猫那种,可以动态增加textbox~
页: [1] 2
查看完整版本: 准备写个xdata编辑工具,欢迎大家一起来意淫~~~