那么,你想要卫星或街道地图吗?我想你想要街道地图,因为卫星地图非常明显(你需要卫星图像).
与您的问题有关的一个主要因素是,您是只想要显示地图,还是打算使用路线规划和某种地图报告.
无论你需要什么,开始都是一样的.你需要一个地图服务器.首先,我可以推荐使用Postgre + Postgis 的GeoServer.基本上,地图服务器的任务是创建地理空间数据的可视化表示.
让我澄清一下:在数据库(Postgre + Postgis)中存储地理数据,主要由行和多边形组成.如果你需要它们,这两种类型实际上都是点阵列以及其他一些属性(速度限制,单向街道的方向标记......).
地图服务器(最后选择哪个),获取该数据并将其转换为地图.要做到这一点,你还需要样式描述符,它基本上是地图的CSS.它解释了如何显示道路,铁路,森林,河流,......
设置好所有内容后,需要初始渲染.实际上没有必要,但是提供静态图像比每次从数据库渲染要快得多.并且渲染就是这样,为您的地图创建图像,为您需要的所有缩放级别.这可能是相当长的工作,你应该为此做好准备.
此时您决定,静态地图是否适合您,或者您是否希望将其用于更多内容(路线规划,交通报告......).
如果静态地图足够您,您可以将生成的图像上传到网络服务器,遵循Leaflet所需的文件夹结构或您在网页上显示地图数据所选择的任何内容(如果这是您需要的).
如果您需要的不仅仅是静态地图,那么您需要激活地图服务器,因为它负责路由和渲染叠加层(您想要在地图上叠加的数据).基本上,您可以创建另一个包含交通信息的数据库,并使用地图服务器和该数据库渲染透明图像,这样您就可以将它们覆盖在静态地图上并在地图上显示交通数据.
所有这些都是对映射如何工作的粗略和基本的解释.明显的第一个问题是从何处获取城市数据.然后它来过滤它,造型和创建地图.这是一项相当漫长而乏味的工作,我建议不要这样做,除非绝对必要(军事或类似的东西).特别是因为OpenStreetMap是免费提供的,并且至少可以为您的地图提供跳跃点.
我希望我已经设法解释了至少一些从这样的项目开始所需要的东西.
让我知道你的想法.