1 Commits
Author SHA1 Message Date
西风逍遥游andCursor Agent c61bf92246 feat(archspace): interactive tools, catalog furniture, parametric openings (#395)
* feat(archspace): add Pascal-like architectural space editor domain

Introduce archspace as a document model separate from RTS building and
housegen, with editing DomainOperations, automation commands, mesh bake,
tests, and a thin example host.

Co-authored-by: 西风逍遥游 <sunxfancy@gmail.com>

* feat(archspace): make document editing and viewport bake path usable

Complete wall/opening/item helpers, opening cutout mesh bake, property undo
inverses, automation commands, and an example that uploads the baked mesh and
captures a screenshot as evidence the domain is more than a shell.

Co-authored-by: 西风逍遥游 <sunxfancy@gmail.com>

* docs(archspace): document ArchSpaceDocument script bindings

Source quality CI failed because newly bound ArchSpaceDocument methods were
missing from docs/usr/modules/archspace.md. Add an API quick reference that
covers every addFunc name.

Co-authored-by: 西风逍遥游 <sunxfancy@gmail.com>

* feat(archspace): bake catalog furniture and parametric opening reveals

Replace item marker boxes with multi-part catalog meshes, and carve wall
openings with merged cavities plus explicit reveal liners (not CSG/IFC).

Co-authored-by: 西风逍遥游 <sunxfancy@gmail.com>

* feat(archspace): add wall, opening, and item placement editor tools

Interactive tools preview on move and commit DomainOperations through
IEditAuthority on pointer up, matching the building editor tool pattern.

Co-authored-by: 西风逍遥游 <sunxfancy@gmail.com>

* test(archspace): cover interactive tools, catalog bake, and reveals

Add authority-routed tool tests, assert reveal/catalog primitives, and
document the honest parametric opening + furniture catalog limits.

Co-authored-by: 西风逍遥游 <sunxfancy@gmail.com>

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
2026-09-15 07:25:24 +08:00