zhubohobby 发表于 2007-1-3 13:48:00

关于Jig插入块,求高手指点

<p>我创建了一个AcDbDatabase对象,并通过readDwgFile()读入一个dwg文件,该dwg文件中定义了一个块(块中包含实体的color属性是<font color="#f70909">bylayer</font>)。现在我希望将该块以动态的方式插入到我的当前文档对应数据库中,所以采用了Jig,并定义了一个块引用对象(指向那个读入的块定义)作为Jig实体,但是发现在Jig过程中显示出来的块引用没有颜色。Jig过程结束后,将该块通过insert的方式插入到当前数据库,并加入块引用对象(append),块引用能正确显示颜色了,接下来再重复这样的插入过程,Jig过程中的块引用都能正确显示。</p><p>我怀疑Jig实体的显示是依赖于当前数据库的,因为没有插入块前,相应的层(layer)也没有,所以无法显示颜色。而插入一次后,相关的层被拷入到当前数据库中,所以再做Jig,就能显示颜色了。</p><p>不知道我的理解是否正确,恳请各位大师指点,要怎样才能让第一次JIg插入也能正确显示。(另外,我不希望在Jig正常结束前将任何东西带入到当前数据库)</p>

老牛 发表于 2007-1-4 11:26:00

<p>分析基本正确,很难有别的好的解释了。</p><p>变通方法暂时想不出来,你可以将可以运行的代码发到我的邮箱:<a href="mailto:norman.hu@gmail.com">norman.hu@gmail.com</a>,我想两天试试看。</p>

arxnew 发表于 2010-12-31 11:31:02

是否可以这样理解,在块做为参照插入到当前模型空间之前,块已经在数据库中了,Jig是将其显示为拖拽效果,是否要加入到当前空间由append控制。
页: [1]
查看完整版本: 关于Jig插入块,求高手指点