老师,之前做了一个在绘图模型上自动标注的功能,用到了IElementGraphicsProcessor去获取轮廓,发现如果我的绘图模型有很多塑料纱窗时,执行的时间特别久,原因是每一个塑料纱窗会变成很多线,导致一个纱窗需要走多次_ProcessCurveVector,有没有办法优化?
这个接口应该是只处理视图上显示的元素,在执行之前将不想处理的元素隐藏掉应该就可以。
隐藏显示是用这个mdlElmdscr_setVisible吗
这个隐藏的话会永久保存的,可以通过选择集的方式去隐藏。
Answer Verified By: chenxuan chen
mdlDisplaySet_addSelectionSet和mdlElmdscr_setVisible这两种方式好像只能在设计模型中起作用,在用立面工具生成的的绘图模型中好像无法隐藏;郭老师,我在绘图模型选中元素右键有一个隐藏缓冲元素!请问这个隐藏缓冲元素的代码主要是哪些,与之对应的显示缓冲元素的代码主要是那些
出图时Visible Edges有两种选项,一种是Cached,一种是Dynamic,您是用了Cached,如果是Dynamic的话可以用我说的通过选择集的方式临时隐藏某些元素(具体代码参考这个帖子:https://communities.bentley.com/communities/other_communities/chinafirst/f/microstation-projectwise/176219/displayset/509917#509917)。但是Cached就没有太好的方法,您上边说的这个菜单项并不是临时隐藏了,而且这部分代码主要用到的都是一些未公开的接口。