1ce94 发表于 2022-5-5 14:19:05

请问哪位大佬有AutoCAD的三维坐标标注插件?

如题,目前需要对三维线形标注(X Y Z )坐标,常用插件只能标注XY坐标,Z坐标无法标注,特来求助各位大佬(●'◡'●)

song宋_74729 发表于 2022-5-5 14:19:06

(defun c:NE ()
;;(setvar "dimasz" 1.5)                ;箭头
;;(setvar "dimtxt" 3)                        ;文字大小
(setq x_text "N=")
(setq y_text "E=")
(setq Z_text "Z=")
(setq pr 3)
(while (setq p_dim (getpoint "\n select dim point "))
    (setq p_leader (getpoint p_dim "\n select leader point "))
    (setq yy (strcat y_text (rtos (car p_dim) 2 pr)))
    (setq xx (strcat x_text (rtos (cadr p_dim) 2 pr)))
    (setq ZZ (strcat Z_text (rtos (caddr p_dim) 2 pr)))
    (command "leader" p_dim p_leader "" xx yy zz"")
)
)




试试这

song宋_74729 发表于 2022-5-6 20:47:59

(defun jj()
(setvar "OSMODE" 0)
(setvar "DIMZIN" 0)
(setq p2 (getpoint p1 "\n点选标注文字地点2:")
       a1 (car p1)
       b1 (cadr p1)
       c1 (car p2)
       d1 (cadr p2)
       a2 (rtos a1 2 3)
       b2 (rtos b1 2 3)
       xx (strcat "N=" b2)
       yy (strcat "E=" a2)
          
)
(setq xc (strlen b2))
(setq yc (strlen a2))
(if (> xc yc) (setq lc (+ xc 2)) (setq lc (+ yc 2)))
(setq le (* ht lc) ll (/ ht 3))
(if (< c1 a1)
    (setq pp (polar p2 pi le)
          p3 (polar pp (/ pi 2) ll)
          p4 (polar pp (/ pi -2) (+ ll ht))
   )
   (setq pp (polar p2 0 le)
         p3 (polar p2 (/ pi 2) ll)
         p4 (polar p2 (/ pi -2) (+ ll ht))
   )
)
(command "LINE" p1 p2 pp "")
(command "TEXT" p3 ht 0 xx)
(command "TEXT" p4 ht 0 yy)
)

(defun c:xy()
(setvar "TEXTEVAL" 1)
(setvar "CMDECHO" 0)
(setq v (getvar "DIMSCALE"))
(setq ht (getreal "\n标注字体大小(1m):"))
(if (= ht nil) (setq ht (* v 1)) (setq ht (* v ht)))
(setq ll (/ ht 3))
(setq n 0)
(while (= n 0)
(setvar "OSMODE" 167)
(setq p1 (getpoint "\n点选坐标点1:"))
(if (= nil p1) (setq n 1) (jj))
)
;************************************************
(setvar "OSMODE" 4263)
(prompt "\n**<用途:标注点的XY坐标且可连续标注 >**")
(prin1)
)



(defun jjj()
(command "text" "j" "mc"ptzbhzh0i)
      (vl-load-com)   
      (setq s (strcat (itoa i ) ":" (rtos (/ (nth 1 pt) 1) 2 4) "," (rtos (/ (nth 0 pt) 1) 2 4) "," (rtos (/ (nth 2 pt) 1) 2 4)))
      (setq x (strcat (rtos (nth 1 pt) 2 4))         
            y (strcat (rtos (nth 0 pt) 2 4))   
            z (strcat (rtos (nth 2 pt) 2 4))   )
      (princ (itoa i) ff) (princ "\t" ff)
      (princ x ff)(princ "\t" ff)
      (princ y ff)(princ "\t" ff)
      (princ z ff)(princ "\n" ff)
      (princ(strcat "\n已输出的坐标为" s))
      (setq i (+ 1 i))
)

(defun c:xc()
    (setq ff (open (getfiled "文件保存为" "D:/" "xls" 1) "w"))
    (princ "编号" ff)(princ "\t" ff)
    (princ "纵坐标(N)" ff)(princ "\t" ff)
    (princ "横坐标(E)" ff)(princ "\t" ff)
    (princ "高程(EL)" ff)(princ "\n" ff)
    (setq i 1)
    (if (not (setq zbhzh (getdist "\n请输入桩编号字高<2>:"))) (setq zbhzh 2))
    (setvar "osmode" 167)
    (setq n 0)
    (while (= n 0)
      (setq pt (getpoint "\n点选输出坐目标点:"))
       (if (= pt nil) (setq n 1) (jjj))
   )
    (close ff)
;************************************************
(prompt "\n 提醒:提取坐标到Excel程序已加载,键入命令【XYC】启动本程序")
(setvar "OSMODE" 4263)
(prompt "\n**<用途:连续点选点编号输出点坐标到Excel表格>**")
(prin1)
)

1ce94 发表于 2022-5-6 22:57:26

song宋_74729 发表于 2022-5-6 20:47
(defun jj()
(setvar "OSMODE" 0)
(setvar "DIMZIN" 0)


谢谢,试了下,xy命令只能标注平面坐标,xc可以获取三维坐标但是只能点选后输出到表格,但是不能像xy那样捕捉对象,然后标注到CAD,不太适用。

l982414603 发表于 2022-5-8 18:08:17

试试这个,很不错

1ce94 发表于 2022-5-11 21:56:31

l982414603 发表于 2022-5-8 18:08
试试这个,很不错

朋友,你这操作有点过于了吧?先不说这个插件好像是论坛里面有的,你卖一明经币,关键是完全不符合我的需求,我说的是标注三维坐标,你给挂个标注尺寸的?

1ce94 发表于 2022-5-17 14:58:45

song宋_74729 发表于 2022-5-7 00:30
(defun c:NE ()
;;(setvar "dimasz" 1.5)                ;箭头
;;(setvar "dimtxt" 3)                        ;文字大小


今天测试呢下,蛮好用的,谢谢

嘉伟钢结构 发表于 2022-5-17 15:14:12

这个怎么用啊?求指导

1ce94 发表于 2022-5-17 15:17:30

嘉伟钢结构 发表于 2022-5-17 15:14
这个怎么用啊?求指导

你在cad里输入vlisp,或者新建一个文本文档,将上面的代码复制进去另存为 xxx.lsp,然后将lsp文件拖入CAD里或者直接ap加入到自启动,输入他的命令名 NE 然后就可以开始标注了

嘉伟钢结构 发表于 2022-5-17 15:30:32

楼上的老师:能麻烦您帮我弄一下吗?我对这个不太精通,谢谢您了:handshake
页: [1] 2
查看完整版本: 请问哪位大佬有AutoCAD的三维坐标标注插件?