MapX中取得图元操作的速度测试

        最常见的操作,是取得图层中的某个图元。假如需要根据一个属性(无重复)来获得图元的话,发现速度相差极大。

  1. 遍历比较是最慢的。
  2. 用图层的search功能,很慢,即使加上dataset还是慢。
  3. 用Allfeatures的item,但是只支持数字,于是前面先遍历后把所有的图元的index都记住,用的时候直接用index去求图元,结果还是慢。
  4. 用FeatureKey,这是个数字,和FeatureID一样。同样的,先记录所有的key,再用GetFeaturebyKey,结果居然是0.几乎没有延迟。

        看来,Mapx中取图元的王道就是GetFeatureByKey。

Layer.search 20-30ms
加了数据集后,Layer.search 20-30ms
layer.AllFeatures.Item(idx) 20-30ms
mainlayer.GetFeatureByKey(ftrk) 0

你可能感兴趣的:(MapX中取得图元操作的速度测试)