明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1407|回复: 8

[讨论] 用SSGET筛选尺寸时,如何区分Dimension中的线性尺寸和角度尺寸?

[复制链接]
发表于 2023-12-16 12:47:38 | 显示全部楼层 |阅读模式
用SSGET筛选尺寸时,如何区分Dimension中的线性尺寸和角度尺寸?
发表于 2023-12-16 13:36:09 | 显示全部楼层
用 vla-get-ObjectName 更精确
发表于 2023-12-16 14:27:20 | 显示全部楼层
组码100的子类标记应该可以区分吧
发表于 2023-12-16 14:28:21 | 显示全部楼层
本帖最后由 wzg356 于 2023-12-16 15:14 编辑
xiaocainiao 发表于 2023-12-16 14:27
组码100的子类标记应该可以区分吧

组码100不参与ssget

7楼或

(Vlax-Get(Vlax-Ename->Vla-Object(Car(Entsel))) 'ObjectName)
("AcDbRotatedDimension" "转角标注")
                ("AcDbAlignedDimension" "对齐标注")
                ("AcDb2LineAngularDimension" "角度标注")
                ("AcDbDiametricDimension" "直径标注")
                ("AcDbRadialDimension" "半径标注")
                ("AcDb3PointAngularDimension" "三点角度标注")
                ("AcDbOrdinateDimension" "坐标标注")

发表于 2023-12-16 14:55:36 | 显示全部楼层
组码70为34或37是角度标注,组码70为32是线性标注。
发表于 2023-12-16 15:10:52 | 显示全部楼层
本帖最后由 wzg356 于 2023-12-16 15:17 编辑
ssyfeng 发表于 2023-12-16 14:55
组码70为34或37是角度标注,组码70为32是线性标注。

实在要ssget

(setq v(assoc 70 (entget e))
(apply 'max(mapcar (function(lambda(i)(logand i v)))(list 0 1 2 3 4 5 6)))== 返回值确定种类
要连续写一大串or
n= 0 1 2 3 4 5 6 对应5楼种类
(list '(-4 . "<or")
        (cons 70 (+ 32 n))
        (cons 70 (+ 64 n))
        (cons 70 (+ 96 n))
        (cons 70 (+ 128 n))
        (cons 70 (+ 160 n))
        '(-4 . "or>")
)

 楼主| 发表于 2023-12-16 21:40:30 | 显示全部楼层
多谢各位,搞定了。。
       (setq Z70 (cdr(assoc 70 (entget (ssname ss i)))));;角度尺寸组码70是34,线性尺寸是32,直径163,半径164
       (if (/= Z70 34)
         (progn
发表于 2024-4-30 09:02:09 | 显示全部楼层
wzg356 发表于 2023-12-16 14:28
组码100不参与ssget

7楼或

弧长标注的子类标记是什么?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-25 17:18 , Processed in 0.186066 second(s), 24 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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