本资源提供在MATLAB图形用户界面(GUI)中使用OpenStreetMap (OSM)数据进行地图绘制的代码示例,帮助用户在MATLAB轴上展示详细的地图信息。
在MATLAB GUI环境中绘制地图涉及使用特定的代码来展示纬度/经度坐标系中的地理信息。这里介绍一个名为Mapper的地图工具箱,它提供了一个简易图形用户界面(GUI),允许用户选择所需位置及样式进行地图显示。
通过Google地理编码API,指定地点可以转换为对应的经纬度数值。例如:`map = Mapper(Oldenburg);` 这行代码将创建并初始化一个以奥尔登堡为中心的地图对象。所有图块数据均从OpenStreetMap下载获取,并在本地缓存中存储,确保不再重复加载已有的地图片段。
每当用户调整视窗的缩放级别或移动视角时,Mapper会自动更新显示区域内的地图信息。此外,它还保证了底层基础地图始终位于绘制堆栈底部的位置,使开发者可以在其上层叠加自定义图形元素而不被遮挡。
对于外观样式的选择,提供了多种选项供用户挑选:
- `osm`:OpenStreetMap的基本视觉风格;
- `hot`:面向人道主义工作者的OSM主题图层;
- `ocm`、`opm` 和 `landscape`: OpenCycleMap的不同版本以及专为户外活动设计的地图样式。
所有地图数据加载过程均采用异步模式执行,确保即使在下载大量图块期间也不会影响到应用程序界面的操作流畅性。该工具箱的版权归属Bastian Bechtold, 2017年发布。