Overview
TheWindowNode represents a configurable parametric window that can be placed on walls. It supports various window configurations including multi-pane divisions, frame customization, and optional sills.
Key features:
- Wall-mounted placement with configurable side
- Flexible pane division with column and row ratios
- Configurable frame and dividers
- Optional window sill
Type Signature
/home/daytona/workspace/source/packages/core/src/schema/nodes/window.ts
Fields
Inherited from BaseNode
Unique window identifier.Format:
window_{randomString}Example: "window_a1b2c3d4e5f6g7h8"Always set to
"window".Default: "window"Optional name for the window.Example:
"Living Room Window", "Bay Window"Reference to the parent level’s ID.Example:
"level_abc123"Default: nullControls window visibility.Default:
trueOptional camera viewpoint for the window.
Custom metadata for the window.Default:
{}Window-Specific Fields
Center position of the window in wall-local coordinate system.Format:
[x, y, z] in metersDefault: [0, 0, 0]Example: [2.5, 1.5, 0] (2.5m along wall, 1.5m high)Rotation of the window in radians.Format:
[rx, ry, rz] in radiansDefault: [0, 0, 0]Which side of the wall the window is placed on.Values:
"front"- Front side of the wall"back"- Back side of the wall
Reference to the wall node ID this window is attached to.Example:
"wall_abc123"Overall width of the window in meters.Default:
1.5Example: 1.5 (standard window), 2.0 (wide window)Overall height of the window in meters.Default:
1.5Example: 1.5 (standard window), 2.0 (tall window)Thickness of the window frame members in meters.Default:
0.05Example: 0.05 (5cm frame)Depth of the frame within the wall in meters.Default:
0.07Example: 0.07 (7cm deep frame)Horizontal pane division ratios.Default:
[1] (single pane)Examples:[1]- Single pane, no vertical division[0.5, 0.5]- Two equal panes[0.6, 0.4]- One larger pane (60%), one smaller (40%)
Vertical pane division ratios.Default:
[1] (single pane)Examples:[1]- Single pane, no horizontal division[0.5, 0.5]- Two equal panes (top and bottom)[0.3, 0.7]- Smaller top pane (30%), larger bottom pane (70%)
Thickness of vertical dividers between columns in meters.Default:
0.03Example: 0.03 (3cm divider)Thickness of horizontal dividers between rows in meters.Default:
0.03Example: 0.03 (3cm divider)Whether to show a window sill.Default:
trueDepth (projection) of the window sill in meters.Default:
0.08Example: 0.08 (8cm sill projection)Thickness (height) of the window sill in meters.Default:
0.03Example: 0.03 (3cm thick sill)Example
Usage
Creating a Simple Single-Pane Window
Creating a Double-Hung Window (Two Vertical Panes)
Creating a Multi-Pane Window (Grid Pattern)
Creating a Bay Window (Wide with Multiple Sections)
Creating a Picture Window (No Dividers)
Creating a Clerestory Window (High Window)
Creating a Window Without Sill
Window Configuration
Windows support flexible configuration:- Dimensions: Width and height
- Frame: Thickness and depth
- Panes: Column and row divisions with custom ratios
- Dividers: Configurable thickness for mullions
- Sill: Optional with depth and thickness control
Pane Division Examples
Coordinate System
Windows use wall-local coordinates:- Position is relative to the wall’s coordinate system
- Y coordinate represents vertical center of the window
- Side parameter determines which face of the wall