Cad2077 发表于 2023-12-28 14:08:42

坐标自动编号并写入表格




cjf160204 发表于 2025-2-26 18:59:52

******** c:zb ********
功能:逐点标注并汇总到表格。用户选择点并标注,程序生成表格汇总点的坐标信息。
(defun c:zb (/ pt tHt prefix pt_list i table_pt table_height table_width row_count vlaTab vlaTxt vlaCell)
(vl-load-com)
(setq pt_list '())
(setq i 0)
(setq pt (getpoint "\n选择第一个点:"))
(setq tHt (getreal "\n请输入文字高度 (默认值为2.5): "))
(if (not tHt) (setq tHt 2.5))
(setq prefix (getstring T "\n请输入点号前缀(可选): "))
(if (not prefix) (setq prefix ""))

(while pt
    (setq i (1+ i))
    (command "text" pt tHt 0 (strcat prefix (itoa i)))
    (setq pt_list (cons pt pt_list))
    (setq pt (getpoint "\n选择下一个点,或按回车结束:"))
)

(if (null pt_list)
    (progn
      (princ "\n未选择任何点,操作已取消。")
      (exit)
    )
)

(setq table_pt (getpoint "\n指定表格绘制位置:"))
(setq table_height (* tHt 1.5))
(setq table_width 36)
(setq row_count (length pt_list))

(setq actDoc (vla-get-ActiveDocument (vlax-get-acad-object)))
(setq mSp (vla-get-ModelSpace actDoc))
(setq vlaTab (vla-AddTable mSp (vlax-3D-point table_pt) (+ row_count 1) 3 table_height table_width))

(vla-SetText vlaTab 0 0 "点号")
(vla-SetText vlaTab 0 1 "X")
(vla-SetText vlaTab 0 2 "Y")

(setq i 0)
(foreach pt (reverse pt_list)
    (setq i (1+ i))
    (vla-SetText vlaTab i 0 (strcat prefix (itoa i)))
    (vla-SetText vlaTab i 1 (rtos (cadr pt) 2 3))
    (vla-SetText vlaTab i 2 (rtos (car pt) 2 3))
    (vla-SetCellTextHeight vlaTab i 0 tHt)
    (vla-SetCellTextHeight vlaTab i 1 tHt)
    (vla-SetCellTextHeight vlaTab i 2 tHt)
    (vla-SetCellAlignment vlaTab i 0 acMiddleCenter)
    (vla-SetCellAlignment vlaTab i 1 acMiddleCenter)
    (vla-SetCellAlignment vlaTab i 2 acMiddleCenter)
)

(vla-put-VertCellMargin vlaTab (* 0.35 tHt))
(vla-put-Height vlaTab (* 1.2 row_count))
(vla-SetColumnWidth vlaTab 0 (* 5 tHt))
(vla-SetColumnWidth vlaTab 1 (* 10 tHt))
(vla-SetColumnWidth vlaTab 2 (* 10 tHt))

(princ "\n标注完成。")
(princ)
)

(princ "\nzb命令已加载。输入 zb 开始逐点标注并汇总到表格。")
(princ)

Cad2077 发表于 2024-1-3 09:01:32

@azaz042
你好,我不是作者。你可以去微信公众号:测绘树,找到作者。作者非常活跃,几乎随时在线,你可以去微信上找他。

另外一款CAD的免费插件:源泉设计,也有类似的功能

我没有权限发站内信,所以通过这个方式给你回复

寒潮大冬瓜 发表于 2024-11-10 21:24:44

lqs383 发表于 2024-11-10 16:26
不能用

可以试试看这个网页的内容是否适合你!
求助,给多段线节点编号并输出对应的坐标表
http://bbs.mjtd.com/forum.php?mod=viewthread&tid=190572&fromuid=418631
(出处: 明经CAD社区)

dalong6371451 发表于 2023-12-28 14:52:38

感谢大神分享

lxl217114 发表于 2023-12-28 15:43:30

看起来有点厉害,可以直接选择一条线,让这条多段线的全部端点按时针顺序出来并反馈到表格上面么。

p-3-ianlcc 发表于 2023-12-28 17:43:56

感谢分享!
看动画很棒的工具
可以向您索取“繁体版本”的吗?
谢谢

zilong136 发表于 2023-12-29 03:28:20

人家免费给你提供的,你却拿来卖,哎!
测绘树好多都要注册,而且有的要去更新注册码,使用不方便,从不提供码源,但他从不收费。

lxl217114 发表于 2023-12-29 09:32:02

zilong136 发表于 2023-12-29 03:28
人家免费给你提供的,你却拿来卖,哎!
测绘树好多都要注册,而且有的要去更新注册码,使用不方便,从不提 ...

跟个帖,发出来咯,多大的事情

zilong136 发表于 2023-12-29 14:44:02

lxl217114 发表于 2023-12-29 09:32
跟个帖,发出来咯,多大的事情

老实说,测绘树这作者人还蛮好的,时不时给我们发些免费插件。

mistaked 发表于 2023-12-29 15:14:54

zilong136 发表于 2023-12-29 14:44
老实说,测绘树这作者人还蛮好的,时不时给我们发些免费插件。

测绘树插件在哪搜得到诶

zilong136 发表于 2023-12-29 15:28:28

mistaked 发表于 2023-12-29 15:14
测绘树插件在哪搜得到诶

微信公众号“测绘树”,也有微信群

p-3-ianlcc 发表于 2023-12-29 17:11:46

zilong136 发表于 2023-12-29 15:28
微信公众号“测绘树”,也有微信群

搜寻好象搜寻不到…
有吗?
页: [1] 2 3 4
查看完整版本: 坐标自动编号并写入表格