明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 927|回复: 5

[提问] 新手,想问提取DXf码为100的内容

[复制链接]
发表于 2018-7-14 10:51:04 | 显示全部楼层 |阅读模式
本帖最后由 diadblo 于 2018-7-14 11:04 编辑

((-1 . <图元名: 7e4c8190>) (0 . "DIMENSION") (330 . <图元名: 7e4f4cf8>) (5 .
"18ED2") (100 . "AcDbEntity") (67 . 0) (410 . "Model") (8 . "标注线") (100 .
"AcDbDimension") (2 . "*D221") (10 -386.547 -1719.79 0.0) (11 -388.507 -1692.79
0.0) (12 0.0 0.0 0.0) (70 . 32) (1 . "") (71 . 5) (72 . 1) (41 . 1.0) (42 .
54.0) (73 . 0) (74 . 0) (75 . 0) (52 . 0.0) (53 . 0.0) (54 . 0.0) (51 . 0.0)
(210 0.0 0.0 1.0) (3 . "标注ISO_1.25") (100 . "AcDbAlignedDimension") (13
-414.105 -1665.79 0.0) (14 -414.105 -1719.79 0.0) (15 0.0 0.0 0.0) (16 0.0 0.0
0.0) (40 . 0.0) (50 . 1.5708) (100 . "AcDbRotatedDimension"))
我想通过提取上面DXF码100的内容用判断选择的对象是否是对齐标注
我 用(assoc 100 list) 结果是 (100 .  "AcDbEntity")
但是我想提取的是内容是(100 . "AcDbAlignedDimension") 或者(100 . "AcDbDimension") 又如何提取.
  
或者有函数可以检查 (100 . "AcDbAlignedDimension") 是否在List 里面
发表于 2018-7-14 10:56:05 | 显示全部楼层
(vl-remove-if-not '(lambda(x) (= (car x) 100)) (entget ent))
 楼主| 发表于 2018-7-14 11:21:19 | 显示全部楼层
masterlong 发表于 2018-7-14 10:56
(vl-remove-if-not '(lambda(x) (= (car x) 100)) (entget ent))

你的应该是读出所有DXF码为100的内容

点评

如果你想直接判断,用member好了  发表于 2018-7-14 14:36
读出以后再判断撒  发表于 2018-7-14 14:35
发表于 2018-7-14 13:37:44 | 显示全部楼层
(setq ent (entget(car(entsel))))
(mapcar'(lambda(x)(if (= (car x) 100) (setq 100lst(cons x 100lst))))ent)
(vl-remove '(100 . "AcDbEntity")  100lst)
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-5-19 13:43 , Processed in 0.179630 second(s), 26 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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