如何遍历BlockRef对象中的每一个对象,来修改各个对象的属性?
如何遍历BlockRef对象中的每一个对象,来修改各个对象的属性? <P>我是想改变一个已经插入到图形中的图块的颜色。但没有找到办法。如果能改变块中每一个对象的颜色,也可以实现这个功能。请高手指点。如果有更好的办法,请告之。</P> 改变块参照的颜色是很困难的。有一个办法可以变通一下,具体的描述可能有出入,给你参考一下:就是定义一个块的时候,不去定义它具体的颜色,其中的元素可以定义在一层上,且所有的元素的颜色都是byblock或者是bylayer的,这样当把块插入到一个具体的层中时,可以通过改变层的颜色属性来改变块的颜色。 这个我知道,我自己生成的块基本都是这么做的。但工作中经常要用到其他人或单位来的图,很多块并没有这样定义,所以才想办法统一修改。 如果块没有插入到图形中,就是说块不存在相应的参照,遍历块的每个对象就可以修改对象的属性了。但是,如果存在参照,这么改可能有问题。我以前遇到的情况就是存在参照,直接在块里添加了一些直线等对象,结果参照并没有改变。如果非要这么做,可能只能先把参照的插入点、比例等保存下来,再把参照删除,然后修改块,修改完成再按照保存的参数插入到图中。不知对否。 <P>能不能讲具体点。最好附程序</P>
页:
[1]