+
Room
+
+
+
+
+
+
+ {state.entrance && (
+
+
+
+
+ )}
+
Objects
+
+ {state.furniture.map((f) => (
+
onSelect(f.id)}
+ style={{
+ padding: 4,
+ background: selectedId === f.id ? '#eee' : 'transparent',
+ cursor: 'pointer',
+ }}
+ >
+ {f.name} {f.lockedForOptimization ? '(locked)' : ''}
+
+ ))}
+
+ {selected && (
+
+
+
+
+
+
+
+
+
Conditions:
+ {(['walk_to_and_sit', 'around_open_area', 'near_entrance', 'accessible', 'not_blocking_path', 'open_circulation'] as ConditionKind[]).map(
+ (k) => (
+
+ ),
+ )}
+
+
+ )}
+
+
Optimize
+
Runs random search (15s) then NN-informed placement heuristic.
+
+ {optimizing &&
Randomizing layouts, keeping best...
}
+
Connect with us
-Join the Vite community
---
-
-
- GitHub
-
-
- -
-
-
- Discord
-
-
- -
-
-
- X.com
-
-
- -
-
-
- Bluesky
-
-
-
-