# 认图：从场景图里认出能站能坐的东西

每个地点（美术场景）认一次，同一个地点的每一场都使用这一份。认出来的清单就是排站位时能使用的全部东西：每个人落在其中一件东西的哪一侧。所以清单要跟图一致，**图里有的才写**。

为什么看图、不看提示词：图只照提示词画了一部分，提示词里写了、图上没画出来的东西很常见（实测：提示词里有北端主位高台，图上没有，站位就让人坐在一个不存在的高台上，出来的视频每一段都不一样）。视频和分镜图都是照着这张图出的，站位就得落在这张图上。

## 看哪一块

novel-art 的场景设定图是一张 16:9 的版面：**左上约 72% 宽 × 70% 高是主视角**，右列和底行是细节特写。只看主视角那一块认东西；`box` 仍然按**整张图**的宽高量（左上角 0,0，右下角 1,1），报告会把框画在整张图上。

主视角的机位在南侧向北看：图的左边是西、右边是东，越往上（越远）越靠北，越往下（越近）越靠南。

## 写什么

1. **只写人会站在旁边、坐在上面、走过去的东西**：桌、椅、长凳、沙发、床、柜台、台子、台阶、门、窗、屏风、楼梯、栏杆、柱子、船板、大件摆设。墙上的画、桌上的茶杯、灯这类小东西不写，除非它是这个空间里唯一能当参照的东西。
2. **图里看不到的不写。** art.json 的场景提示词和锚点只用来帮你认图里那件东西叫什么——提示词里写了、图上没有的，一律不写；图上有、提示词没写的，照写。
3. **一件东西一条。** 围着桌子摆的一圈椅子不单独写——坐在桌边的人就写在桌子的哪一侧，桌子替它们说了；只有主位那一把、离开桌子单独摆着的椅子、沙发、凳子单独一条（主位决定谁坐主位）。
4. **名字写成走位里说得出口的叫法**，十个字以内，同类的东西用方位或特征分开（「北端主位太师椅」「东侧落地窗」「西墙边的沙发」）。不写人名。另一种语言写进 `alt`。
5. 房间中间一大片空地、门口一块地方，如果没有家具可以当参照，可以写成一条（「大厅中央空地」），框住那块地面。
6. **`box`** 框住这件东西在图上占的地方；被前面的东西挡住一部分的，框看得见的那部分加上被挡住的大致范围。
7. **`plan`** 是把整个房间摆平以后从正上方看：北在上、南在下（机位那一侧）、西在左、东在右。按透视推算真实位置和大小——图上越小、越靠上的东西在平面上越靠北；一张从近处一直伸到远处的长桌，图上是个梯形，平面上是一条南北走向的长条；贴着左墙的东西在平面上靠西。**同一个地点里的东西之间别重叠**，桌子和围着它的椅子之间留出人坐的地方。
8. **`on`**：人能坐在、站在它上面写 true（椅子、长凳、床、台子、台阶、甲板），其余写 false。
9. **`round`**：从正上方往下看是圆的或椭圆的写 true（圆桌、圆地毯、圆形花坛）。人会围着圆的东西一圈站或坐。

数量：4 到 20 件，按从北（图的上方、远处）到南（下方、近处）排。少了排不开人，多了多半是把杯子碗碟也写进来了。

## 写完

`readFrom` 写 `picture`。

```json
{"sceneId":"S01","name":"渡船船舱","readFrom":"picture","items":[
  {"name":"船头撑篙台","alt":"bow poling deck","box":[0.30,0.10,0.55,0.22],"plan":[0.30,0.02,0.70,0.10],"on":true}
]}
```

## 还没有图

novel-art 只交提示词，不出图。图还没出时可以先**按 art.json 推算**：主视角提示词里写了的、锚点里有的大件东西，按提示词里的方位摆到平面上。这样排出来的站位只是草稿——图出来以后，场景里的东西不一定跟提示词一样，要重新认一遍、核对站位。

推算的写法：`readFrom` 写 `prompt`，不写 `box`（没有图可框），其余规则照旧。报告会在这个地点上标「没有图，按设定提示词推算」。
