ArchiMap 是一个专注于建筑文化遗产展示的交互式地图应用,旨在通过数字化手段呈现全球建筑地标,促进建筑文化的传播与交流。
项目名称: Archimap 建筑地图
项目网址: https://archmap.cn 或 https://archimap.cc
项目类型: 交互式建筑地图应用
技术栈: Mapbox GL JS + PHP + MySQL + jQuery
ArchiMap 致力于打造一个集建筑数据展示、交互体验、数据管理于一体的数字化平台,核心目标包括:
系统化呈现全球不同类型的建筑文化遗产,覆盖古代与现代建筑地标
提供直观、流畅的交互式地图体验,支持点位可视化与详情展示
实现建筑数据的便捷管理,支持 GeoJSON 批量导入、数据验证与统计
降低建筑文化遗产的传播门槛,为用户提供轻量化、易访问的数字化展示渠道
数据来源: modern_points 数据库表
功能特点:
从数据库动态加载现代建筑点位
自定义标记样式(蓝色背景 + 建筑图标)
详细的弹窗信息展示
侧边菜单加载不同类型建筑数据
右下角数据统计功能
搜索功能(开发中)
数据来源: ancient_points 数据库表
功能特点:
从数据库动态加载古代建筑点位
自定义标记样式(红色背景 + 地标图标)
详细的弹窗信息展示
侧边菜单加载不同类型建筑数据
右下角数据统计功能
搜索功能(开发中)
功能特点:
支持上传 GeoJSON 文件
实时预览导入的点位
选择保存到现代建筑或古代建筑地图
详细的导入结果反馈
错误处理和调试信息
菜单项:
古建 · 遗迹 - 加载历史建筑数据
现代建筑 - 加载现代建筑数据
Artdeco Shanghai - 加载老建筑数据
条状 - 链接到 cityline.html 页面
Mapbox GL JS: 用于交互式地图渲染和点位展示
jQuery: 用于 DOM 操作和异步请求
Font Awesome: 提供图标支持
响应式设计: 适配不同屏幕尺寸
PHP PDO: 用于数据库连接和操作
MySQL: 存储建筑数据
API 设计: RESTful 风格的 API 接口
错误处理: 完善的错误捕获和提示机制
自动表创建: 如果数据库表不存在,API 会自动创建并插入示例数据
数据验证: 确保必填字段存在,提供默认值
批量导入: 支持通过 GeoJSON 文件批量导入数据
数据统计: 实时显示加载的建筑点位数量
流畅的地图交互: 支持缩放、平移等操作
直观的弹窗信息: 展示建筑详细信息,包括图片、地址、建筑师等
响应式布局: 适配不同设备屏幕
加载状态提示: 显示数据加载进度和结果
错误提示: 友好的错误信息展示
输入验证: 防止恶意输入
错误处理: 完善的异常捕获机制
数据缓存: 优化数据加载性能
API 限流: 防止过度请求
打开 contribute.html 贡献页面(志愿者权限)
在内嵌地图上拾取建筑坐标
选择归属数据表(现代建筑 / 古代建筑 / 老房子)
填写建筑信息,可上传多张图片(第一张为封面)
点击提交按钮完成新增(Ctrl+Enter 快捷提交)
打开对应的地图页面
使用侧边菜单加载不同类型的建筑数据
点击地图上的标记,查看建筑详细信息
使用搜索框(开发中)查找特定建筑
系统内置了以下示例数据:
北京国家体育场(鸟巢)
北京国家电视广播中心(CCTV 大楼)
广州塔(小蛮腰)
深圳平安金融中心
北京大兴国际机场
佛光寺东大殿
南禅寺大殿
佛宫寺释迦塔
辽宁义县奉国寺大殿
华严寺薄伽殿
搜索功能完善: 实现基于建筑名称、地址、建筑师的搜索
用户系统: 添加用户注册、登录和个人收藏功能
评论系统: 允许用户对建筑进行评论和评分
多语言支持: 添加英文等其他语言版本
移动应用: 开发配套的移动应用
数据可视化: 添加建筑分布统计和可视化图表
AR 功能: 实现基于位置的增强现实展示
Mapbox 文档: https://docs.mapbox.com/
PHP PDO 文档: https://www.php.net/manual/en/book.pdo.php
GeoJSON 规范: https://geojson.org/
ArchiMap 项目通过数字化手段,为用户提供了一个直观、互动的建筑文化遗产展示平台。系统采用现代化的技术栈,实现了建筑数据的高效管理和展示,为建筑文化的传播与交流做出了贡献。
未来,项目将继续完善功能,拓展数据覆盖范围,为用户提供更加丰富、全面的建筑文化体验。