明经CAD社区

 找回密码
 注册

QQ登录

只需一步,快速开始

搜索
查看: 1988|回复: 4

[讨论] [讨论]如何控制一个块内多个属性的操作???

[复制链接]
发表于 2010-9-5 17:34:00 | 显示全部楼层 |阅读模式

条件:一个图块,内有多个文字属性;

 

求解:对其中某个文字属性(鼠标点击选择处)的更改、显示打开、显示关闭等操作;

 

 

发表于 2010-9-5 18:47:00 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
 楼主| 发表于 2010-9-5 22:04:00 | 显示全部楼层

请教

能否不吝赐教
发表于 2010-9-6 21:43:00 | 显示全部楼层

简单提示

 

 

选择某个属性

两种情况

1.确知块名A和属性的标记B时

首先ssget查找块A获取A的集合

repeat顺序提取A的图元名

再使用entnext遍历块的属性直到定位B

2.块名标记名不确定需要手动选择时

参考函数(nentsel)

 

 

获取属性的图元名B-ENT以后

替换它的值

请参考entmod、entupd及subst函数用法

或者参考下面的第一句代码

将70改为1

 

 

显示打开或关闭

属性dxf组码70控制属性的显示与否

0为显示1为关闭

(entmod (subst (cons 70 0) (assoc 70 (entget B-ENT)) (entget B-ENT)))

(entupd A-ENT)

 

 

另外

如果你把第一句改为

(entmod (subst (cons 70 1) (assoc 70 (entget A-ENT)) (entget A-ENT)))

它的效果是关闭块的所有属性的显示并移除所有属性

相当于把有属性块改成一个无属性块

但再将70组码改为0是不能将属性“附加回”原块的

发表于 2010-9-16 23:14:00 | 显示全部楼层

做成属性块就可以啦

您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-10-2 10:28 , Processed in 0.179747 second(s), 25 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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