Files
Novel-Map/README.md

75 lines
2.2 KiB
Markdown
Raw Permalink Normal View History

2026-03-30 16:44:54 +08:00
# Novel-Map
2026-03-30 19:15:41 +08:00
小说地图制作。
## Content
存放大唐双龙传小说内容。
## data
存放小说地理信息数据。
## frontend
存放前端代码。
## 技术路线设计
1. 数据提取层(最关键的一步)
问题500万字远超上下文需要分批处理。
方案:用 AI 逐卷/逐章提取结构化数据,输出 JSON
// 每章输出一个这样的结构
{
"chapter": "卷01-第01章",
"locations": [
{ "name": "扬州", "aliases": ["江都"], "type": "city", "lat": 32.39, "lng": 119.43 }
],
"factions": [
{ "name": "宇文阀", "type": "门阀", "territory": ["长安"], "key_figures": ["宇文化及","宇文伤"] }
],
"events": [
{ "description": "宇文化及率五牙大舰沿运河南下扬州夺《长生诀》",
"from": "运河", "to": "扬州", "characters": ["宇文化及","张士和"] }
],
"character_movements": [
{ "character": "寇仲", "location": "扬州城东废园" },
{ "character": "焦邪", "location": "扬州城外北郊" }
]
}
2. 地理编码层
建一个 地名→坐标 的映射表(隋唐古地名 → 现代经纬度)
仅第一章就涉及:扬州、长江、运河、丹阳、长安等
古今地名有差异(如"江都"="扬州"),需要一个 alias 映射
3. 可视化层(前端渲染)
推荐技术栈:
组件 技术 理由
底图 Leaflet + 古风地图瓦片 轻量、开源、可自定义底图样式
势力范围 GeoJSON 多边形 + 颜色编码 每个势力一种颜色
人物轨迹 Polyline + 动画标记 可做成带方向箭头的路线
时间轴 自定义 slider 或 noUiSlider 拖动时间轴看势力演变
数据格式 JSON 文件按章节组织 前端直接 fetch
4. 分步实施计划
Phase 1 (静态地图 - 前5卷)
├── Step 1: 逐章提取地名/势力/事件 → JSON
├── Step 2: 建立古地名坐标库
├── Step 3: Leaflet 静态地图 + 势力标注 + 人物位置
└── Step 4: HTML 单文件,可直接浏览器打开
Phase 2 (动态演化)
├── 时间轴控件,按章节/卷切换
├── 势力范围随时间变化(多边形动画)
└── 人物移动路线动画
Phase 3 (全书覆盖)
└── 批量处理剩余58卷