首页 > 解决方案 > 使用自定义非地理地图的传单

问题描述

我刚开始熟悉Leaflet库。我需要弄清楚如何将大量抽象数据加载到传单中。不是地图。

让它成为一个“地图”,以颜色显示一百万位 Pi。它显示什么并不重要。重要的是我有一个页面可以加载一些块中的字节数组并将其显示为彩色像素。理想情况下,您需要 10x10 块。用户转到带有地图的页面并看到例如100 个块,即10x10 像素的10x10 块,它们代表PI 编号。使用鼠标,用户左右移动,应用程序从后端请求尚未加载的像素。

Leaflet 的功能可以解决类似的问题吗?还是为 Leaflet 编写的插件?

从理论上讲,在我看来这是可能的。但在实践中,所有指南和文档都用于处理地理地图或光栅大图像。

标签: javascriptleaflet

解决方案


您的问题有点笼统,但我认为您在谈论的是制作自己的GridLayer。这是leaflet 的基础类,用于创建您能想到的任何HTML 元素的平铺网格。无论是<div>带有文本的 a ,还是 a <canvas>,或者任何你喜欢的。我不确定您所说的“以块的形式加载一些字节数组并将其显示为彩色像素的页面”到底是什么意思,但这听起来像是可以通过使用 写入画布putImageData然后应用到GridLayer.

我建议阅读关于扩展传单扩展层的教程。一旦你理解了这一点,你就会发现传单是用来渲染你想要的任何东西的可缩放、可平移的网格。Ivan Sanchez 留下的链接是您可以使用 GridLayers 做的疯狂事情的​​绝佳示例(L.TileLayer.Canvas在旧传单版本中通常称为)


推荐阅读