aqvaro 发表于 2022-7-5 20:26:22

有关缺少块的信息

你好
有人知道这方面的Lisp程序吗
 
在模型空间中存在许多块A和B。
第一个标签C=1-9999
标签C的颜色A=标签C的颜色B
 
例子:
如果:
存在标记C值为5的块A
标记C值为5的块B不存在
我需要一次点击=按摩:
“B缺失”
 
我不需要按摩任何其他情况=“命令:”
谢谢

hanhphuc 发表于 2022-7-5 20:31:31

 
欢迎来到CADtutor
 
由于混淆,没有回应。
请详细说明或张贴示例图纸。。
我的理解:
块A和块B都有标签C,不管什么颜色?
那么需要过滤标记C是否没有值?
如果标记C值=5,您的意思是不存在?还是不可见?

aqvaro 发表于 2022-7-5 20:36:26

不需要信息。图纸
 
1、是的,无论什么颜色,
2.如果没有值的标签C存在-不需要消息(任何过滤器)
3.not exists=具有给定值的块B不在dwg中(但具有相同值的块A在dwg中)
需要消息2。图纸
需要消息。图纸
不需要信息4。图纸
不需要信息3。图纸
不需要信息2。图纸

pBe 发表于 2022-7-5 20:42:28

当然,编写代码看起来很有趣,但我仍然不太明白,“不需要消息2”为什么在没有第3项和第4项统计的情况下不需要消息?
 
这是否意味着如果带有项目#3的块“VYS300D”不存在,则不将“POL300D”的值与“POL”标记值3相吻合?
 
但是,如果存在值为3的块“VYS300D”,并且不存在具有相同值的“POL300D”块,是否创建报告?
 
对于绘图样本“不需要消息3”,有一个“POL300D”块,没有POL值,但在一个块“VYS300D”上仍然计数为5+5?
 
只有TOL attdef为绿色的“POL300D”才会被处理?我以为是“不分颜色”?

hanhphuc 发表于 2022-7-5 20:46:39

 
欢迎回来。问候语
 
 
对不起,我还是拿不到
每个区块有5个标签:
波尔
文本
金融机构
库索夫
波兹纳姆卡
 
你是说标签C?
你如何手动操作?
它是机械的吗?

pBe 发表于 2022-7-5 20:48:01

 
谢谢你的邀请。很高兴被看到。

aqvaro 发表于 2022-7-5 20:52:46

区块全名:
1.A区-VYS300D,B区-POL300D,1。标签C-POL
2.dwg中150块A时,手动速度非常慢,且不是100%
3.我的加固程序将这些块A、B配对,C的颜色相同,
但没有控制缺失B。

aqvaro 发表于 2022-7-5 20:57:14

1.在没有任何块A(3,4)-我的程序停止steel report的情况下,没问题,我只有相反的问题
2.A=5+5是问题-当B和C缺失时=程序不完善
3.是的,只有A+B-C的绿色才会被加工(但颜色与A+B-C相同)

hanhphuc 发表于 2022-7-5 21:01:15

 
好吧,我的理解
-如果B终止
-如果标记为空,则退出
-如果出现以下情况,则报告
 
我们不知道你的程序是怎么运行的,
如何报告?如果缺少B和C,将终止谁的程序?
 
这段粗略的代码只是通过警报进行报告。。
(定义c:测试(/ss l le lst mx);;hanhphuc 26.12.14(if(setq ss(ssget):L“'((0。“INSERT”)(66.1))(foreach x(setq le(vl remove if‘listp(mapcar’cadr(ssnamex ss))))(setq lst(cons(mapcar’vla get textstring(vlax invoke(vlax ename->vla object x)’GetAttributes));_mapcar lst结束);_cons结束);_setq结束);_结束foreach);_if结束(if(或(成员“”(setq lst(mapcar‘car lst)))(

aqvaro 发表于 2022-7-5 21:07:06

盒子+方法警报很棒,
在“need message1+2.dwg”计划中,一切正常,
但当图形中的更多块A和B=示例2时:“needmess3.dwg”
needmess3.dwg
仅需要:
标签“15”缺失
标签“6”缺失
但是:
...
标签“15”缺少2个位置
标签“9”缺少1个位置
标签“8”缺少1个位置
...
标签“-4.530”缺少2个位置
(标签“998”不显示信息)
...
示例3:
图上显示了标记为C=1-999的块A,以及标记为C=1-999的块B
除了:6,15,55,88在图纸上需要提醒:
标签“6”缺失
标签“15”缺失
标签“55”缺失
标签“88”缺失
 
...这在程序之外(程序通过其他标记KUSOV将具有相同C和相同颜色的B的数量相加到A),我只需要检查“未配对块”的C
 
-如果B终止
-如果标记为空,则退出-不需要
-如果出现以下情况,则报告
页: [1] 2
查看完整版本: 有关缺少块的信息