你有遇到特殊的标注吗
本帖最后由 邹锋 于 2024-1-24 12:37 编辑有什么代码可以直接把里面的标注转成正常的标注吗,
现在拖动标注点,尺寸不变,
还有是一些组来的,能遍历组里面的,获取直接2点,文字靠近直线另一点,然后就知道哪里是标注点,哪里是文字放置点
不知道有没有人做过类似的代码了,
您好,我是半桶水,代码不会
只知道其中一个问题出在哪,怎么改
标注的文字信息是手写的,将文字内容整体改成
<>
就能实现,拖动标注点,尺寸跟着变
cds15980954301 发表于 2024-1-23 10:52
您好,我是半桶水,代码不会
只知道其中一个问题出在哪,怎么改
标注的文字信息是手写的,将文字内容整体 ...
(defun c:GBZ(/ otext ntext ss i ename endata old_list new_list)
(setvar "cmdecho" 0)
(setq ss (ssget "X" '((0 . "DIMENSION"))))
(setq i 0)
(if ss
(repeat (sslength ss)
(setq ename (ssname ss i))
(setq endata (entget ename))
(setq old_list (assoc 1 endata))
(setq ntext "")
(setq new_list (cons 1 ntext))
(setq endata (subst new_list old_list endata))
(entmod endata)
(setq i (1+ i))
)
)
(princ)
)
感谢,我以为要从新生成标注,几行代码搞定这个小的,还有一个麻烦的,没解决
(defun c:tt ()
(defun SubUpd(e c v)
(entmod (subst (cons c v) (assoc c (entget e)) (entget e)))
(entupd e)
)
(if (setq ss (ssget '((0 . "dim*"))))(SubUpd ss 1 ""))
(princ)
)
有公差
命令: (entget(car(entsel)))
选择对象: ((-1 . <ENTITY NAME: df2fcd8>) (0 . "DIMENSION") (5 . "46F6") (330 . <ENTITY NAME: deb5d80>) (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "1") (6 . "Continuous") (62 . 5) (370 . -3) (100 . "AcDbDimension") (280 . 0) (2 . "DimnDraft3D1") (10 1484.21 585.987 0.0) (11 1155.5 585.987 0.0) (12 0.0 0.0 0.0) (70 . 160) (1 . "\\A1;\\C3;657.42 \\A1;\\S-0.05^-0.08;") (71 . 5) (72 . 1) (41 . 1.0) (42 . -1.0) (73 . 0) (74 . 0) (75 . 0) (52 . 0.0) (53 . 0.0) (43 . 1.0) (54 . 0.0) (51 . 0.0) (210 0.0 0.0 1.0) (3 . "Standard") (100 . "AcDbAlignedDimension") (13 826.788 783.204 0.0) (14 1484.21 793.204 0.0) (15 0.0 0.0 0.0) (16 0.0 0.0 0.0) (40 . 0.0) (50 . 0.0) (100 . "AcDbRotatedDimension"))
删除了公差
命令: (entget(car(entsel)))
选择对象: ((-1 . <ENTITY NAME: df2fcd8>) (0 . "DIMENSION") (5 . "46F6") (330 . <ENTITY NAME: deb5d80>) (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "1") (6 . "Continuous") (62 . 5) (370 . -3) (100 . "AcDbDimension") (280 . 0) (2 . "DimnDraft3D1") (10 1484.21 585.987 0.0) (11 1155.5 585.987 0.0) (12 0.0 0.0 0.0) (70 . 160) (1 . "") (71 . 5) (72 . 1) (41 . 1.0) (42 . 657.424) (73 . 0) (74 . 0) (75 . 0) (52 . 0.0) (53 . 0.0) (43 . 1.0) (54 . 0.0) (51 . 0.0) (210 0.0 0.0 1.0) (3 . "Standard") (100 . "AcDbAlignedDimension") (13 826.788 783.204 0.0) (14 1484.21 793.204 0.0) (15 0.0 0.0 0.0) (16 0.0 0.0 0.0) (40 . 0.0) (50 . 0.0) (100 . "AcDbRotatedDimension"))
添加CAD公差
命令: (entget(car(entsel)))
选择对象: ((-1 . <ENTITY NAME: df2fcd8>) (0 . "DIMENSION") (5 . "46F6") (330 . <ENTITY NAME: deb5d80>) (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "1") (6 . "Continuous") (62 . 5) (370 . -3) (100 . "AcDbDimension") (280 . 0) (2 . "DimnDraft3D1") (10 1484.21 585.987 0.0) (11 1155.5 585.987 0.0) (12 0.0 0.0 0.0) (70 . 160) (1 . "") (71 . 5) (72 . 1) (41 . 1.0) (42 . 657.424) (73 . 0) (74 . 0) (75 . 0) (52 . 0.0) (53 . 0.0) (43 . 1.0) (54 . 0.0) (51 . 0.0) (210 0.0 0.0 1.0) (3 . "Standard") (100 . "AcDbAlignedDimension") (13 826.788 783.204 0.0) (14 1484.21 793.204 0.0) (15 0.0 0.0 0.0) (16 0.0 0.0 0.0) (40 . 0.0) (50 . 0.0) (100 . "AcDbRotatedDimension"))
页:
[1]