# OBNMap **Repository Path**: klsz_1/obnmap ## Basic Information - **Project Name**: OBNMap - **Description**: No description available - **Primary Language**: C++ - **License**: AGPL-3.0 - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-29 - **Last Updated**: 2026-05-07 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # OBNmap - 离线地图应用 基于Qt 5.15 Widgets开发的离线地图查看器。 ## 功能特性 - ✅ 离线瓦片地图显示(QGraphicsView架构) - ✅ 鼠标拖拽平移 + 滚轮缩放(0-18级) - ✅ 内存LRU缓存(200片)+ 磁盘持久化 - ✅ 标记点功能(可拖拽、自定义标签和颜色) - ✅ 路径绘制功能 - ✅ 比例尺显示 - ✅ 状态栏显示当前经纬度和缩放级别 ## 编译运行 ### 前提条件 - Qt 5.15.2 (MinGW 32-bit) - 编译环境:MinGW ### 编译步骤 1. 打开Qt Creator,加载`OBNmap.pro` 2. 构建并运行 或使用命令行: ```bash qmake OBNmap.pro mingw32-make ``` ## 瓦片准备 ### 目录结构 程序会从`可执行文件目录/tiles/`读取瓦片,格式为: ``` tiles/ ├── 0/ │ └── 0/ │ └── 0.png ├── 1/ │ ├── 0/ │ │ ├── 0.png │ │ └── 1.png │ └── 1/ │ ├── 0.png │ └── 1.png └── {z}/{x}/{y}.png ``` ### 使用下载工具 项目包含独立下载工具`tools/tiledownloader/`: 1. 编译下载工具: ```bash cd tools/tiledownloader qmake tiledownloader.pro mingw32-make ``` 2. 运行下载工具,设置: - 下载区域(经纬度范围) - 缩放级别范围 - 下载延迟(建议1000ms,遵守OSM使用政策) 3. 点击"开始下载",瓦片将保存到`tiles/`目录 ## 注意事项 - OpenStreetMap瓦片使用政策:建议下载延迟≥1秒 - 瓦片缩放级别说明: - 0级:整个世界(1个瓦片) - 10级:城市级别 - 15-18级:街道级别 - 下载大量瓦片可能需要较长时间 ## 依赖 - Qt 5.15.2 - Qt Widgets - Qt Network (下载工具) ## 许可证 本项目的瓦片数据为OpenStreetMap贡献者所有,遵循ODbL协议。