美文网首页
动态大数据场景下图标及中文标注显示问题

动态大数据场景下图标及中文标注显示问题

作者: 钱江无潮 | 来源:发表于2020-08-14 16:04 被阅读0次

这个问题困扰我许久了,今日终于解决了,记录一下。

先描述一下业务场景:

数据量:百万级、千万级

场景范围和每个对象的坐标都不固定,会随时修改

包含中文,图标

数据无法按缩放层级分层

所以,很多方案都用不了

被排除的方案:

因为标注包含中文,所以,使用提前准备的文本材质webGL渲染的方案基本上是不可行的

因为数据不稳定的,随时会变的,所以像地图的切片做法加位置查询也不可行

因为数据量巨大,所以直接用HTML DOM来渲染也不可行

解决办法:

1. 使用canvas2d绘制

2. 解决UI卡顿的问题

标注渲染不能导致UI操作卡顿。所以在缩放和平移需要重新渲染的情况下,将同步事件变成异步的,甚至可以加节流阀(效果并不理想)

其次,设置绘制标志,在每次重新绘制前检查,避免多次执行

3. 过滤掉不需要绘制的数据

通过范围检查,筛选掉不在可视区域范围内的数据,这样在放大的时候,可以大大减少需要绘制的数量

但是如果场景缩放所有数据都在可视区域内,范围检查不仅没有加速,反而增加了计算量

这个时候就还需要加上最大数量限制,在过滤之后的数据里按照计算出的步长获取最终需要绘制的数据

相关文章

网友评论

      本文标题:动态大数据场景下图标及中文标注显示问题

      本文链接:https://www.haomeiwen.com/subject/dsvtwctx.html