Read the home
homeQuery floor plan data by ids, room, rectangle, kind, or field to return only needed walls, rooms, dimensions, labels, furniture, or polylines.
Instructions
Home state. detail=summary is cheapest. Ask for less instead of reading everything: ids=[…] resolves ids (group parts included), room=<id|name> and rect=[[x0,y0],[x1,y1]] read one place, kinds=[walls|rooms|dims|labels|furniture|polylines] and fields=[…] trim each row, parts=true opens groups, ndjson=true prints one element per line so a long answer can be read a slice at a time. Every piece carries bounds (plan box with angle applied) and faces (the side it opens toward). Ids share one counter per version (w1, r2, f3…) and are never reused, so a new version may start at any number.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| ids | No | Only these ids, group parts included, e.g. `["f833","w24"]` | |
| rect | No | Only what meets this rectangle, `[[x0,y0],[x1,y1]]` cm | |
| room | No | Only what stands inside this room, by id or name | |
| kinds | No | Only these kinds: `walls`, `rooms`, `dims`, `labels`, `furniture`, `polylines` | |
| level | No | Storey to read: an id like `lv3`, or `all`. Default: the one shown | |
| parts | No | List what is inside groups instead of only counting the parts | |
| detail | No | `summary` (counts, bounds, room areas) or `full` (default) | |
| fields | No | Keep only these fields of each element; `id` is always kept | |
| ndjson | No | One element per line (NDJSON) instead of one JSON object, each line tagged with its kind. Long answers stay readable a slice at a time |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| rev | No | ||
| dims | No | ||
| name | No | ||
| lines | No | ||
| north | No | ||
| parts | No | ||
| rooms | No | ||
| walls | No | ||
| bounds | No | ||
| counts | No | ||
| labels | No | ||
| levels | No | ||
| warnings | No | ||
| furniture | No | ||
| polylines | No | ||
| background | No |