arcgis 与 pixi.js 实现大数据量渲染 ( 三 )

对于移动卡顿问题,我这边分为两个步骤 首先放大缩小监听zoom 事件 并且使用 debounce 操作,降低操作操作
针对放大缩小增加debounce 减少运算, fun 里面Function 就是 篇幅二的方法

  • view.watch('zoom', debounce(fun, 150, false));
  •  
  •  
  • function debounce(func, wait, immediate) {
  • var timeout;
  • return function () {
  • var context = this, args = arguments;
  • var later = function () {
  • timeout = null;
  • if (!immediate) func.apply(context, args);
  • };
  • var callNow = immediate && !timeout;
  • clearTimeout(timeout);
  • timeout = setTimeout(later, wait);
  • if (callNow) func.apply(context, args);
  • };
  • }

平移地图使用extent 但是不针对所有点 针对ParticleContainer 来做地图平移操作 降低计算
首先有一个公式很重要 ,如果你要算地图偏移的距离等于多少像素呢?因为我们知道pixi 肯定是以像素来平移的
首先有个这样的公式 Scale = 1: (resolution * PPI / 0.0254)

  • scale : 地图比例尺
  • resolution: 地图分辨率
  • ppi :每英寸的像素点
posted @ 2022-01-20 16:44  haibalai  阅读(90)  评论(0编辑  收藏  举报