三维视图RefreshViewers方法去刷新(Scene下面是ISceneGraph,Globe下是IGlobeDisplay),但实际上控件里的图层不会发生变化,这里就是刷新的问题,需要对图层进行刷新。
axSceneControl1.SceneGraph.Invalidate(pLayer, true, false);
axSceneControl1.SceneViewer.Redraw(true);
上述方法还勉强凑用,只是不怎么稳定,有时还把图层给刷没了,会出现需要刷2次的情况。
一种稳定的方法就是:把axSceneControl1.Scene转换成IActiveView接口后用PatialRefresh(...)
网友评论