Files
Novel-Map/README.md
2026-03-30 19:15:41 +08:00

75 lines
2.2 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# Novel-Map
小说地图制作。
## 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卷