# 地点

> 地点是资料、地图是图层：父子层级、3D 地形与森林、平面底图与笔迹、未放置与剧本引用保护。

Source: https://loomworld.cn/docs/module-locations

## 地点管什么，地图管什么

这是两件事，织境刻意把它们分开。「地点」是资料：魏国、蜀国、成都、许昌都可以是一张地点卡，管名称、环境描述、别称、逐章变化、AI 读到的档案，以及剧本里谁引用了它。「地图」是一个可交互图层，管这张地点在哪张图上占了哪块范围、长什么地形。

所以地点完全可以不出现在任何地图上，它照样是有效的资料；反过来，删掉地图上的范围也不会删掉地点档案。写剧本只需要资料那一层，地图是给作者看空间关系的。

## 在哪进入：左边画布，右边两块

左侧导航「地点」进入地点页，它是地图工作台：

- 画布（右侧内框）：打开第一眼就是完整地图，不套额外边框、整页不纵向滚动。拖动和缩放只移动地图内容，顶部工具不会被推出视野。
- 右下角浮岛：当前地图名与映射数量、3D / 平面切换，以及项目级撤销、重做、适屏、设置。
- 画布顶部工具：3D 放浏览、雕刻、地形、森林与裁剪；平面放浏览、画笔、橡皮、三档粗细、颜色、绘制区域与区域显隐，始终是一条单行胶囊。
- 右侧边栏上半「地图」：世界地图和各张详图，可新建子地图、改名、删除。下半「地点库」：管地点资料，可用「全部地点 / 未放置」筛选。

双击地图行进入该图，双击地点行编辑资料；建详图、进入地图这类动作只从右键菜单明确发起。列表行默认不是整行可拖，用行尾的拖动手柄，避免拖完点不动右键。

## 层级只有一个真源

地点的父子关系只保存在「上级地点」这一个字段上，子地点列表是现场算出来的，不存第二份镜像。因此不存在"改了这边那边没同步"：检视器、智能体、图谱、地图都读同一层关系。

- 地点行右键：「编辑资料」「建详图」「移到顶层」「安放到当前地图」——文案是完整的，不用猜缩写。
- 把二级地点拖到列表顶部落到「放到顶层」，或右键「移到顶层」，即升为一级地点；拖到另一个地点上则是设为它的子地点。
- 双击地点行打开「编辑地点」面板：地点名称、环境描述、别称/旧称（回车添加）、地点颜色、子地点预览、当前位置表现、剧本场次。
- 删除走「确认删除」。地点或其子树还被剧本引用时删不掉，也会拦住你调整它的上级——需要先在剧本里解除或改绑，面板里的「剧本场次」会逐条列出引用（场 N · 场次标题，时空引用带「· 时空切换」标记），点一下就跳到剧本对应位置。

## 3D 地图：刷范围、画地形、铺森林

3D 用方格定位，但界面不给你看表格：不显示 A/B/C 与 1/2/3 表头，每格渲染成山地、水域、平原等地貌瓦片，先像地图再像网格。

- **浏览**默认模式。拖动画布、滚轮缩放、空格按住可平移；双击一块范围——有关联详图就进详图，没有就打开那个地点的资料。

- **画范围**切到范围模式，按住拖拽刷选若干方格，松手后弹出命名框（它只跟着范围中心浮出，不挤动画布和工具栏），确认即创建或更新这块映射；按住 ⌥ 反向剔除已选的格子。

- **地形与森林**地形画笔改地表，森林画笔只增删森林范围——树木、岩石、草丛是随范围和脚下地形自动长出来的，不用摆。画笔有 1×1 / 3×3 / 5×5 三档，鼠标吸附中心格，预览覆盖格和实际修改格永远一致。

森林只允许落在草地、山地、沼泽和雪地上：草地多树少岩，山地多岩少草，雪地只有雪树。跨过不支持的地表时那几格被跳过，不会整笔作废；把地表改成支持的地表，森林也不会自动回来，需要重画一笔。

隐藏画笔把方格从当前地图抹掉（连带切掉该格森林）；如果这格本来有映射，只清掉这张图上的表现，地点档案仍然保留。

## 平面视图：底图、笔迹、区域分三层

每张地图的平面视图只有一张底图。可以上传本地 PNG / JPEG（原文件上限 30 MB，超大图自动缩到最长边 8192 像素并给你提示），也可以在还没有底图时打开空白绘图板手绘一张再导出。底图就绪后，画笔与橡皮都在同一张图上继续画：笔迹按相对坐标存在独立的一层里，原始图片始终不被改动，橡皮也只擦笔迹。

- 一次按下到抬起算一笔，抬笔即自动保存，并且只记一步项目撤销；Cmd / Ctrl + Z 退整笔。
- 区域沿底图逐点点击描绘，点回起点或双击闭合，然后必须绑定一个地点——已有地点或当场新建；取消绑定就不保存。多边形不能自相交，不提供挖洞。
- 绘制过程中滚轮缩放、空格平移；按 Esc 直接取消。已有顶点时切换视图、地图或模式，会先问你是否放弃。
- 选中区域后，编辑边界、打开地点、更换地点、删除会追加在同一条工具胶囊右侧；拖顶点校正、点边线加点、删顶点（至少留 3 点）、拖内部整体移动。
- 区域与笔迹都按图片宽高相对坐标保存，所以换底图时它们会跟着留下。更换或删除底图时，确认框统一以「平面标注」问你保留还是一起清空。

同一个地点可以有多个彼此分离的区域，不同地点的区域可以重叠或嵌套；较小的区域自然显示在较大区域之上，标签自动落在区域内部。这里没有手动图层和手动标签位置，也不需要。3D 的方格与平面的多边形互不转换：切视图时两边各自保留自己那套几何。

## 未放置的地点怎么上图

剧本里提交的地点名会立刻成为正式地点卡，但它不一定在地图上。右侧「地点库」把全部已建档地点聚合起来，用「未放置」筛出当前视图没上图的那些。

- **3D：安放**把地点行拖到画布某格，或右键地点选「安放到当前地图」，然后刷出范围。

- **平面：先画后绑**平面必须先在底图上画出多边形，闭合后从绑定面板选择已有地点或新建地点。

- **删除映射不影响资料**删掉映射只让它回到「未放置」，不删地点档案、不删另一视图的几何，也不动子地图。

## 和剧本的连接

场次的地点、时空的地点引用的都是正式地点身份，不是字符串。当场次主地点是「蜀国」时，在时空里输入「府衙后堂」：子树里有唯一同名地点就复用；没有就在「蜀国」下面新建一张直接子地点。只填时间不填地点也是合法的，时空的空白含义是继承场次，但不会被回填进字段。

子地点会投影回父级范围（成都在天下层的蜀国范围内可见），投影位置之后可手动校正。任何地点都能钻进下一层地图，规则不区分"范围型"和"落点型"。

## 限制与排错

- 区域显隐只影响当前画布：关掉后已保存区域的填充、边界、名称和点击热区一起隐藏；开始绘制区域或从侧栏定位时自动恢复，这个开关不写入项目数据。
- 画布推不出视野：分屏会按当前窗口宽度自适应，右屏必须留出按钮与菜单的空间；拖动边界以最外层可见方格为准，不会留着大片空白让你觉得地图「跑丢了」。
- 旧数据自动升级：早期把地图表现存在地点字段上的项目，读取时会生成默认「世界地图」与相应映射，尽量保留你已画出的结构；没有平面字段的地图默认打开 3D。

这一版不做的事也说清楚：不做 AI 生成底图，不做多底图图层、底图裁剪 / 旋转 / 拉伸与透明度，不做点位与路径连线，不做跨会话笔迹历史或单笔选中改色，也不用六边形网格。详见 [跨模块联动](https://loomworld.cn/docs/cross-sync) 与 [实体引用与 @](https://loomworld.cn/docs/references)。
