我正在使用 Google Maps JS API、Mapbox API,我很好奇,标记实际上是如何添加到地图中的?后端代码是否采用一组地图图块,将边缘转换为纬度/经度,然后简单地沿 X 和 Y 轴插入标记坐标的纬度/经度?
我问是因为我正在构建一个需要 1000-5000 个同时标记的应用程序,并且想要构建自己的后端系统,因为使用 Google Fusion Tables API 可能会变得昂贵。
我正在使用 Google Maps JS API、Mapbox API,我很好奇,标记实际上是如何添加到地图中的?后端代码是否采用一组地图图块,将边缘转换为纬度/经度,然后简单地沿 X 和 Y 轴插入标记坐标的纬度/经度?
我问是因为我正在构建一个需要 1000-5000 个同时标记的应用程序,并且想要构建自己的后端系统,因为使用 Google Fusion Tables API 可能会变得昂贵。
标记实际上是如何添加到地图中的
在最简单的实现中,标记表示为GeoJSON或类似的,并从服务器请求,然后从纬度/经度“投影”到屏幕坐标中;有关该逻辑的一个示例,请参见node-sphericalmercator。
对于“高性能”案例,例如TileMill或 Google 的预渲染模式,标记被烘焙到光栅图块、PNG 文件中,显示它们及其位置,并且您可以像UTFGrid一样使用魔法来进行交互。
请注意,这两者都是妥协:您可以获得速度、灵活性和简单性,但很难同时获得所有这些。