明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 441|回复: 4

[讨论] 你有遇到特殊的标注吗

[复制链接]
发表于 2024-1-23 09:38 | 显示全部楼层 |阅读模式
本帖最后由 邹锋 于 2024-1-24 12:37 编辑

有什么代码可以直接把里面的标注转成正常的标注吗,

现在拖动标注点,尺寸不变,
还有是一些组来的,能遍历组里面的,获取直接2点,文字靠近直线另一点,然后就知道哪里是标注点,哪里是文字放置点
不知道有没有人做过类似的代码了,

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
"觉得好,就打赏"
还没有人打赏,支持一下
发表于 2024-1-23 10:52 | 显示全部楼层
您好,我是半桶水,代码不会
只知道其中一个问题出在哪,怎么改
标注的文字信息是手写的,将文字内容整体改成
<>
就能实现,拖动标注点,尺寸跟着变

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

x
 楼主| 发表于 2024-1-23 11:12 | 显示全部楼层
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)
  )

感谢,我以为要从新生成标注,几行代码搞定这个小的,还有一个麻烦的,没解决
发表于 2024-1-23 20:31 | 显示全部楼层
  1. (defun c:tt ()
  2.   (defun SubUpd(e c v)
  3.     (entmod (subst (cons c v) (assoc c (entget e)) (entget e)))
  4.     (entupd e)
  5.   )
  6.   (if (setq ss (ssget '((0 . "dim*"))))(SubUpd ss 1 ""))
  7.   (princ)
  8. )
 楼主| 发表于 2024-1-24 09:15 | 显示全部楼层

有公差
命令: (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"))
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|CAD论坛|CAD教程|CAD下载|联系我们|关于明经|明经通道 ( 粤ICP备05003914号 )  
©2000-2023 明经通道 版权所有 本站代码,在未取得本站及作者授权的情况下,不得用于商业用途

GMT+8, 2024-4-28 16:54 , Processed in 0.761523 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表