Every panel updates live as you change parameters below. Click a section to expand it.
Location
Latitude (°N) — how far north (negative = south) you are. Higher latitudes get lower sun angles year-round, so a horizontal shade needs to be longer to block the same amount of sun.
Longitude (°E) — your east-west position. Combined with Timezone, shifts what clock time solar noon falls at; doesn't change the sun's physical path.
Timezone (UTC+) — hours your clock is offset from UTC. Affects the displayed clock times of sunrise/noon/sunset, not the underlying physics.
Room (m)
Length (E–W) / Width (S–N) / Height — the room's interior dimensions. Bigger rooms mean light travels further before hitting a wall, and each surface's area changes, which affects the area-weighted "Total Lit %".
Height above ground — recorded for reference only (e.g. which floor you're on). Doesn't affect any calculation, since the model has no concept of nearby buildings or terrain blocking the sun.
Window (m)
Width / Height — size of the opening on the south wall. A bigger window lets in more light and lights up more area, but doesn't change the sun's angle.
Dist. from right — gap between the window's right edge and the east wall. Shifts the window's east-west position, which shifts where the lit patch lands on the floor and side walls.
Dist. from floor — gap between the window's bottom edge and the floor. Shifts the window's height, which shifts how high or low the lit patch sits.
Shade gap above window — how far above the window's top frame the shade is mounted. A bigger gap means the shade has to "reach down" further before it starts covering the window, so it needs to be longer for the same shading effect.
Shade
Length — how far the shade extends outward from the wall. Longer means more shading, especially when the sun is high.
Width — how wide the shade is, centered on the window. Must be at least as wide as the window, or the window's edges can never be fully shaded no matter the length.
Angle — tilt of the shade (0° = hangs flush down the wall, 90° = horizontal, 180° = straight up). 90° is the classic design that blocks high summer sun while letting in low winter sun.
Find minimum length for this angle — computes the shortest shade that still fully blocks the window (including any mounting gap) at summer-solstice noon, the hottest day of the year, and writes the result into Length.
Date / Time
Date / Time — the simulated moment. Drives the sun's altitude/azimuth via the solar-position formulas.
Animate dates / Animate time — continuously sweeps the date or time in a loop, so you can watch the lighting change in real time.
Jump to... — one-click shortcuts to sunrise/solar noon/sunset (for the current date) and the four solar-calendar markers (equinoxes and solstices).
Animation
Speed — how many real seconds a full simulated cycle (24h for the time animation, or the full year for the date animation) takes when you click Animate.
Grid resolution
Wall & floor grid — how finely the floor/wall heatmaps are subdivided. Higher means smoother, more accurate edges, but slower to compute.
Window grid — the same idea, just for the window's own lit/shaded pattern.
Other tools
View room in 3D — an interactive 3D model of the room you can rotate, zoom, and pan, textured with the exact same lit/unlit data as the 2D panels (so it can't disagree with them). Updates live if you start an animation while it's open.
CSV report — sweeps a date/time range you choose and exports lit % per surface for every timestamp, with the full configuration recorded in the file's header.
Year overview — a 365-day calendar grid showing lit % for every day of the year, for whichever surface you pick. Defaults to each day's own solar noon, or uncheck the box inside to instead compare one fixed clock hour across the whole year. Complements the shade-length optimizer, which only checks the single worst-case day.
Save / share — copies a link that reproduces your exact current settings, or saves/loads named presets stored on this device.
Exposure heatmap — instead of one moment in time, samples many moments (evenly spaced between sunrise and sunset, for every day in a date range you choose) and shows, per cell on the floor and walls, what % of those sampled moments it was directly lit. A "Show exposure heatmap" checkbox above the panels swaps this in for the live view once computed; quick-range buttons cover a day, the current month, the current season, or the full year. Longer ranges take a few seconds (full grid resolution, every day) — a progress bar shows while it works. Each panel's colors are contrast-stretched to its own brightest/darkest cell for visibility, so brightness isn't directly comparable between surfaces — the numeric % label always shows the true average.