啊业_48384 发表于 2014-10-24 17:22:19

llsheng_73 发表于 2014-10-23 22:00 static/image/common/back.gif
你是想要把这样的数据用来画圆还是要把圆按这种格式导出数据?

是要圆满孔的圆心座标导出数据

llsheng_73 发表于 2014-10-24 18:49:34

本帖最后由 llsheng_73 于 2014-10-24 19:14 编辑

(defun C:cirlebyD(/ ss i e enlst fp)
(setq fp(getfiled"选择输出文件""C:\\""txt"36)i -1)
(if(setq ss(ssget"X"'((0 . "circle"))));;可以加上图层等其它过滤或者去掉"X"改为手动选择
    (repeat(sslength ss)
      (setq i(1+ i)e(entget(ssname ss i))enlst(cons(list(cdr(assoc 40 e))(cdr(assoc 10 e)))enlst))))
(setq i"")
(foreach x(vl-sort(subtotals3 enlst 0 1)'(lambda(x y)(<(car x)(car y))))
    (setq i(strcat i"D"(RTOS(*(CAR X)2)2 2)"\n"))
    (foreach y(cdr x)
      (setq i(strcat i"X"(rtos(car y)2 4)" Y"(rtos(cadr y)2 4)"\n"))));;x y之间分隔符可根据需要自行修改
(if(> i "")(progn(setq fp(open fp"a"))(write-line i fp)(close fp)));;可根据需要修改文件直接覆盖还是进行追加
)

自定义通用分类函数subtotals3详见嵌套表分类统计http://bbs.mjtd.com/forum.php?mod=viewthread&tid=109843&fromuid=202795
其实用subtotals2也可以,不过subtotals3更灵活,习惯于使用它而已

如果有必要,可以先对分类的结果进行排序(即对直径排序)
(foreach x(vl-sort(subtotals3 enlst 0 1)'(lambda(x y)(<(car x)(car y))))

啊业_48384 发表于 2014-10-24 21:28:28

圆导出数据

啊业_48384 发表于 2014-10-30 22:00:37

孝不知你的是做什么有???
页: 1 [2]
查看完整版本: 圆孔X,Y坐标分大小孔