iamhuangjinming 发表于 2016-10-13 20:23:30

转ucs并进行线性标注

想要达到的效果:点取2个点,然后把ucs转成这两个点形成的角度,然后进行线性标注。(转ucs后坐标怎么变换呢~~~求大神帮忙)
(defun C:dxw ()

(setvar "CMDECHO" 0)

(command"'osmode""16383")

(setq pt1 (getpoint "\n指定起点->"))

(setq pt2 (getpoint pt1 "\n指定终点->"))

(setq p1(list 1 1 ))

(command"ucs" pt1 pt2 p1 )

(command"dimlinear" pt1 pt2)

(setvar "CMDECHO" 1)

)


437271963 发表于 2016-10-13 22:04:17

本帖最后由 437271963 于 2016-10-14 13:00 编辑

trans函数转换坐标.(defun C:dxw ( / ang p1 p2 p3 pt1 pt2)
(setvar "CMDECHO" 0)
(setq #os1 (getvar "osmode"));提取捕捉
(if (and (setq pt1 (getpoint "\n指定起点->"))
          (setq pt2 (getpoint pt1 "\n指定终点->"))
   )
(progn
   (setq p1 (trans pt1 1 0) p2 (trans pt2 1 0))
   (setq pt2 (mapcar '- pt2 pt1) p3 '(0 1))
   (setvar "osmode" 0);捕捉0
   (command"ucs" pt1 pt2 p3)
   (setq p1 (trans p1 0 1) p2 (trans p2 0 1))
   (setvar "osmode" 16383);设置捕捉
   (command"dimlinear" p1 p2)
   (setvar "osmode" #os1);捕捉还原
)
)
(setvar "CMDECHO" 1)
(princ)
)

iamhuangjinming 发表于 2016-10-14 11:24:11

437271963 发表于 2016-10-13 22:04
trans函数转换坐标。

谢谢!这个转换不能带捕捉吗?

437271963 发表于 2016-10-14 13:01:22

iamhuangjinming 发表于 2016-10-14 11:24
谢谢!这个转换不能带捕捉吗?

转换坐标系的时候,关闭捕捉,已经修改。

iamhuangjinming 发表于 2016-10-14 13:26:46

437271963 发表于 2016-10-14 13:01
转换坐标系的时候,关闭捕捉,已经修改。

太好了,谢谢咯。
页: [1]
查看完整版本: 转ucs并进行线性标注