batsharp
路人甲
路人甲
  • 注册日期2019-04-18
  • 发帖数3
  • QQ
  • 铜币3枚
  • 威望2点
  • 贡献值0点
  • 银元0个
阅读:1263回复:3

C# AE开发,刷新地图中心点内存溢出

楼主#
更多 发布于:2019-04-18 11:39
咨询各位一个问题:隔一段时间调用一次this.axMapControl1.CenterAt(pp);方法,内存会一直涨,请问是什么原因?
类似车载导航,比如隔0.5秒,把地图中心点刷新到车辆所在的位置。


感觉是arcgis底层把图层缓存起来了,请各位大神帮帮忙,谢谢!


ae的版本是10.1  开发工具是vs2010
喜欢0 评分0
gis
gis
管理员
管理员
  • 注册日期2003-07-16
  • 发帖数15945
  • QQ554730525
  • 铜币25337枚
  • 威望15352点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • 帝国沙发管家
  • GIS帝国明星
  • GIS帝国铁杆
1楼#
发布于:2019-04-18 20:10
在地图刷新时,我们应当尽量根据自己所需去刷新视图,而尽量避免贪图简便不顾效率地刷新。还应当分清IMapControl、IMap、IActiveView的各个Extent的区别,这样才能保证我们的刷新能够更趋近于性能方面的要求。
举报 回复(0) 喜欢(0)     评分
gis
gis
管理员
管理员
  • 注册日期2003-07-16
  • 发帖数15945
  • QQ554730525
  • 铜币25337枚
  • 威望15352点
  • 贡献值0点
  • 银元0个
  • GIS帝国居民
  • 帝国沙发管家
  • GIS帝国明星
  • GIS帝国铁杆
2楼#
发布于:2019-04-18 20:15
PartialRefresh方法可以让视图对象使用不同的方式来局部刷新以重绘地图
举报 回复(0) 喜欢(0)     评分
batsharp
路人甲
路人甲
  • 注册日期2019-04-18
  • 发帖数3
  • QQ
  • 铜币3枚
  • 威望2点
  • 贡献值0点
  • 银元0个
3楼#
发布于:2019-04-21 20:36
谢谢管理员的详细回复!
原因已找到:之前有几个图层采用了3D basic样式(比如:柏油路、草地等),把这些图层样式换成普通纯色样式,内存就稳定不再增长了。
举报 回复(0) 喜欢(0)     评分
游客

返回顶部