start4444
发表于 2019-12-10 18:58:33
xj6019 发表于 2019-12-10 18:32
方便的话这这个基础上,给我弄个标注斜边的行吗,不行就用两个命令吧,我自己试着改了一下,水平不行啊, ...
上一版的就是斜标的,你自己研究吧,斜标不能随便移动标注点的
xj6019
发表于 2019-12-10 19:56:55
嗯 好的我自己研究研究学习一下吧 谢谢了!!
xj6019
发表于 2019-12-14 12:56:57
start4444 发表于 2019-12-10 18:58
上一版的就是斜标的,你自己研究吧,斜标不能随便移动标注点的
你好,再麻烦一下,这几天用下来,每次尺寸线之间的距离每次都脑子算一遍有点不方便,我说个思路您看看好改吗,输入距离的时候可不可以把代码换成一个计算公式,都乘以6,运行代码的时候直接输入倍数,比方说用30倍的标注样式的时候,直接输入30,代码自动乘以6,以180的标注间距来分层。
可以的话,把斜线标注的也改一下,斜线标注那个,也改成自动记忆上次输入的数值,加上这次的倍数计算。
这样两个命令就可以满足我大部分情况下的使用了,变动有点复杂我自己研究肯定是白费的,只能再次麻烦您了。您加我一下wx吧 xx6019ll 老是麻烦您也不好意思,给您转个红包,谢谢了!
start4444
发表于 2019-12-14 15:06:06
xj6019 发表于 2019-12-14 12:56
你好,再麻烦一下,这几天用下来,每次尺寸线之间的距离每次都脑子算一遍有点不方便,我说个思路您看看好 ...
tt5正标、tt6斜标
start4444
发表于 2019-12-14 18:30:14
xj6019 发表于 2019-12-14 12:56
你好,再麻烦一下,这几天用下来,每次尺寸线之间的距离每次都脑子算一遍有点不方便,我说个思路您看看好 ...
以后不要乱发微信号,没必要,小心有人冒充的,我没加你
xj6019
发表于 2019-12-14 20:56:58
谢谢,又麻烦你了,再次表示衷心感谢!
e2002
发表于 2019-12-15 22:15:17
这种不是直接用 dimbase 来解决吗? 注意先在 dimstyle中 设置好 间距 数值。
比例的问题,直接使用 Annotative 特性就好。
xj6019
发表于 2019-12-15 22:20:11
e2002 发表于 2019-12-15 22:15
这种不是直接用 dimbase 来解决吗? 注意先在 dimstyle中 设置好 间距 数值。
比例的问题,直接使用 Annot ...
不好意思 我水平有点菜 不太懂哦,只能让懂的给点现成的才会用 ,谢谢您的指导,我也正在努力学习当中,希望水平天天日上吧
xj6019
发表于 2020-9-3 13:13:54
本帖最后由 xj6019 于 2020-9-3 13:15 编辑
start4444 发表于 2019-12-14 15:06
tt5正标、tt6斜标
老师,不好意思,一个老帖子翻出来,想再改进一下,我想把第一排的尺寸线间距也固定一下,自己尝试过很多次了,每次都想改改,但是搞不定呀。麻烦你再劳驾一下看看怎么弄好吗,拜托了!
想法是:以第一个点为定义,第一排的间距固定成 (* 8 Dbiaozhu) 的间距,麻烦用红色字体标记一下怎么改的好吗,我参照你改的,把那个斜标的,也一起改一下,改斜标是不是也一个改法呀。
一直在用的代码在14楼,忘了的话你下载了再看看。
(defun c: DV (/ dim n d i lastdimp1 p11 p2 p22 p3 p33 p4 plst px);正標
(command "Selectioncycling" "0");ctrl/w關閉
(if (not nbiaozhu) (setq nbiaozhu 2)) (if (not Dbiaozhu) (setq Dbiaozhu 20))
(setqnbiaozhu (if (setq n (getint (strcat "\n>>>標注排數<" (itoa nbiaozhu) ">:"))) n nbiaozhu) Dbiaozhu (if (setq d(getreal (strcat "\n>>>標註比例<" (rtos Dbiaozhu 2 2) ">:"))) d Dbiaozhu) i 0 plst '())
(command "DIMLINEAR" pause pause pause )(setq dim (entlast) p1 (cdr (assoc 13 (entget dim))) p2 (cdr (assoc 14 (entget dim))) p3 (cdr (assoc 10 (entget dim))) px (getpoint))
(command"DIMCONTINUE" dim)
(while px
(command px)
(setq px (getpoint"\n>>>選取下一点:") plst (cons px plst))
)
(command)
(setq lastdim (entlast) p11 (cdr (assoc 13 (entget lastdim))) p22 (cdr (assoc 14 (entget lastdim))) p33 (cdr (assoc 10 (entget lastdim)))p4 (inters p3 p33 p1 (polar p1 (angle p2 p3) 5) nil))
(repeat (1- nbiaozhu)
(command "DIMLINEAR" "non" (polar p4 (angle p2 p3) (* i (* 6 Dbiaozhu))) "non" (polar p33 (angle p2 p3) (* i (* 6 Dbiaozhu)))"non" (polar p3 (angle p2 p3) (* (* 6 Dbiaozhu) (setq i (1+ i)))))
)
(c:ddr)
(command "Selectioncycling" "2");ctrl/w打開
)
start4444
发表于 2020-9-4 18:08:23
本帖最后由 start4444 于 2020-9-4 18:09 编辑
xj6019 发表于 2020-9-3 13:13
老师,不好意思,一个老帖子翻出来,想再改进一下,我想把第一排的尺寸线间距也固定一下,自己尝试过很多 ...
一样的,斜的自己搞过去就行
(defun c:tt5 (/ dim n d i lastdimp1 p11 p2 p22 p3 p33 p4 plst px);正标
(if (not nbiaozhu) (setq nbiaozhu 3)) (if (not Dbiaozhu) (setq Dbiaozhu 1))
(setqnbiaozhu (if (setq n (getint (strcat "\n>>>标注排数<" (itoa nbiaozhu) ">:"))) n nbiaozhu) Dbiaozhu (if (setq d(getreal (strcat "\n>>>标注比例<" (rtos Dbiaozhu 2 2) ">:"))) d Dbiaozhu) i 0 plst '())
(command "DIMLINEAR" pause pause pause )
;-------------------------------------------------------------------------------- 改
(setq dim (entlast) p1 (cdr (assoc 13 (entget dim))) p2 (cdr (assoc 14 (entget dim))) p3 (cdr (assoc 10 (entget dim))) p4 (polar (ptper p1 p2 p3) (angle p2 p3)(* 8 Dbiaozhu)))
(entmod (setq ent (entget dim) ent (subst (cons 10 p4) (assoc 10 ent) ent )))
(setq dim (entlast) p1 (cdr (assoc 13 (entget dim))) p2 (cdr (assoc 14 (entget dim))) p3 (cdr (assoc 10 (entget dim))) px (getpoint))
;-------------------------------------------------------------------------------- 改
(command"DIMCONTINUE" dim)
(while px
(command px)
(setq px (getpoint"\n>>>选取下一点:") plst (cons px plst))
)
(command)
(setq lastdim (entlast) p11 (cdr (assoc 13 (entget lastdim))) p22 (cdr (assoc 14 (entget lastdim))) p33 (cdr (assoc 10 (entget lastdim)))p4 (inters p3 p33 p1 (polar p1 (angle p2 p3) 5) nil))
(repeat (1- nbiaozhu)
(command "DIMLINEAR" "non" (polar p4 (angle p2 p3) (* i (* 6 Dbiaozhu))) "non" (polar p33 (angle p2 p3) (* i (* 6 Dbiaozhu)))"non" (polar p3 (angle p2 p3) (* (* 6 Dbiaozhu) (setq i (1+ i)))))
)
(c:ddr)
)