Map Creator 是一个面向历史/架空地图创作的网页制图工具。
它支持全球范围的政治填色、分区编辑、预设批量上色、参考图描图和快照导出,适合做世界观设定图、mod 地图草案和教学演示图。
-
🎨 交互式填色
Fill / Eraser / Eyedropper三种工具- 底部 dock 提供快速色板、最近颜色和当前选中色预览
- 左侧保留完整颜色库搜索和自定义颜色
- 支持按 Subdivision 或按 Country 上色
- 支持
Undo / Redo、缩放控件和常用快捷键
-
⚡ 快速上色
Auto-Fill Countries一键自动配色By Region/By Neighbor (Political)两种配色模式Clear Map快速清空当前着色Palette Source现在是唯一来源入口,同时驱动快速色板、自动填色和 mod 海洋填色
-
🌊 海洋样式
- 可直接选择海洋填充颜色(不再固定淡蓝)
- 海洋高级样式(Bathymetry / Hachure)目前保留 UI 但暂时禁用(性能稳定优先)
-
🧭 地图视觉控制
- 内部边界、国家边界、海岸线样式独立调节
- 纹理叠层(纸张 / 画布 / 网格)
- 图层开关(Urban / Physical / Rivers / Special Zones)
-
🖼️ 参考图描图
- 上传本地参考图
- 调整透明度、缩放、X/Y 偏移用于对齐描绘
-
🧩 预设与分组编辑
- 国家/地区预设一键应用
- 预设编辑模式可直接点选区域并复制 ID
- 右侧检查器支持搜索、预设树、单国调色、项目管理和图例编辑
-
🎛️ 国家色板资产
- 内置
HOI4 Vanilla国家色板,不依赖用户本地游戏目录 - 底部 dock 提供
快速色块 + 最近颜色 - 左侧提供
全量颜色库搜索 + 自定义颜色 - 后续可继续接入其他 mod 色板 pack
- 内置
-
💾 项目与导出
- 项目状态导出/导入(JSON)
- 地图快照导出(PNG / JPG)
Ctrl/Cmd+S可直接下载项目 JSON- 导入/导出与快照操作使用 toast 提示结果
-
🌐 双语界面
- 支持
EN / 中文一键切换
- 支持
- 进入页面后先在底部 dock 选择工具(默认
Fill)、快速颜色和Palette Source。 - 点击地图区域上色;滚轮缩放、拖拽平移。
- 需要快速出图时,在底部 dock 选择
By Region或By Neighbor (Political),再点击Auto-Fill Countries。 - 在左侧
Editing Rules/Appearance中调边界、海洋、纹理和图层可见性。 - 需要对照历史图时,上传
Reference Image进行描图。 - 完成后导出快照,或用
Ctrl/Cmd+S/ 项目导出保存 JSON 以便下次继续。
- 当前内置 4 套 palette source:
HOI4 VanillaKaiserreichThe New OrderRed Flood
Palette Source现在集中在底部 dock,作为唯一入口- 已能映射到项目 ISO-2 国家码的国家,会在
Auto-Fill Countries和Reset Country Colors中优先使用当前来源的地图色 - 未映射国家继续使用现有稳定避色逻辑,不会退化成每次真随机
- 左侧
Browse All Colors可按国家名、ISO-2 或来源 tag 搜索完整色库 - 底部 quick palette 会按当前来源切换,并与
Recent分层显示在 dock 托盘里 Auto-Fill Countries固定走政治填色;若来源为 mod,还会同步应用该 mod 的海洋填色
色板资产位于:
data/palettes/index.jsondata/palettes/hoi4_vanilla.palette.jsondata/palettes/kaiserreich.palette.jsondata/palettes/tno.palette.jsondata/palettes/red_flood.palette.jsondata/palette-maps/hoi4_vanilla.map.jsondata/palette-maps/hoi4_vanilla.audit.jsondata/palette-maps/kaiserreich.map.jsondata/palette-maps/tno.map.jsondata/palette-maps/red_flood.map.json
如需重建全部 palette 资产:
python3 init_map_data.py --mode palettes如需单独从本地 HOI4 / mod 文件重新导入:
python3 tools/import_country_palette.py当前运行时固定色优先读取:
colors.txt:colorcountry file colorcolor_ui仅作元数据和兜底
详细规则见 docs/COUNTRY_PALETTE_ASSETS.md。
本项目数据由公开地理数据源抓取、清洗并生成前端可用拓扑数据,主要包括:
- Natural Earth(国家边界、海洋、陆地、河流、城市区、物理区域、Admin-1)
- Eurostat / GISCO NUTS
- geoBoundaries(中国 / 俄罗斯 / 乌克兰 / 印度的 ADM2)
- France GeoJSON(arrondissements)
- PolandGeoJson(powiaty)
说明:不同数据源各自遵循其原始许可与使用条款。
- 项目当前按 MIT License 使用(以仓库声明为准)。
- 第三方地理数据不自动转为 MIT,请同时遵守对应数据源许可证。