get_state
Full scene state: walls, furniture, rooms, camera, labels, levels
clear_scene
Remove all objects from the scene
create_wall
Single wall between two points
create_walls
Rectangular room (4 connected walls)
modify_wall
Change height, thickness, color, arc, coordinates
delete_wall
Delete wall by ID
connect_walls
Connect two walls for correct corner rendering
create_room_polygon
Room from an array of polygon points
modify_room
Change name, floor/ceiling color, visibility
delete_room
Delete room by ID
list_categories
All furniture catalog categories with item counts
list_furniture_catalog
Browse catalog; filter by name, category, or type
place_furniture
Place a catalog item in the scene
modify_furniture
Move, rotate, resize, recolor furniture by ID
delete_furniture
Delete furniture by ID
duplicate_objects
Duplicate one or more objects by ID
group_furniture
Group multiple pieces into one object
ungroup_furniture
Split a group back into individual pieces
place_door_or_window
Place from catalog into a wall (auto-computes position and angle)
list_textures_catalog
Browse texture catalog; filter by name or category
apply_texture
Apply catalog texture to wall side or room surface
set_environment
Ground/sky colors, lighting, wall transparency, drawing mode
generate_shape
Create custom 3D geometry: primitives, extrude, mesh, and CSG boolean operations
add_label
Text annotation on the 2D floor plan
add_dimension_line
Measurement line with auto-offset
set_camera
Switch to top/observer mode; set position, lookAt point, or target object
store_camera
Save the current viewpoint as a named bookmark
get_cameras
List all saved camera viewpoints
add_level
Add a new level (floor/storey)
list_levels
List all levels; shows which is currently selected
set_selected_level
Switch the active level
delete_level
Delete a level and all its objects
render_photo
Ray-traced 3D render (Sunflow); standard or overhead bird's-eye view; inline JPEG or saved PNG
export_plan_image
2D floor plan as PNG
export_svg
2D floor plan as SVG
export_to_obj
3D scene as Wavefront OBJ (ZIP: OBJ + MTL + textures)
save_home
Save the scene to a .sh3d file
load_home
Load a scene from a .sh3d file