| Orient. | Real (m²) | Solar (m²) |
|---|---|---|
| TOTAL | 0.00 |
| Component | Gross Area | Net Area |
|---|
Load a building to see envelope areas.
Floors and roofs (including windows inside them) are not computed yet.
Controls: Left click to rotate, Right click to pan, Scroll to zoom.
Sun Position: Use the sliders to change Date and Time. The sun position is calculated accurately based on Latitude/Longitude.
Import epw: Load an .epw weather file to see climate data mapped on the solar path.
Import json: Load a .json file from another user in this app to see his construction.
Shadows: Enable "Daily Shadow Heatmap" to see cumulative shadow hours on the ground plane.
Exports: Use the Export button to download a PDF/Word/JSON/dxf files (reports and data).
Accurancy: This app uses UTC times to calculate the 3d solar path so analemma and sun position is in a continius format during the day. In sun times it uses timezones and offsets for time so azimuth and altitude are computed correctly. This is not the best practice to solve the issue but data output is always accurate based on time and 3d scene shows a pretty good presentation of the solar path.
This application uses the following open-source libraries:
This application unique code will be released in github under the MIT license.
Yield = Active Area × Irradiance × Efficiency × PR.
Assumes optimal tilt. Shading losses are bundled into PR.
Version 3.8.0
Year: 2026
A comprehensive web-based tool for solar geometry and climate analysis
based on the EN52016 standar from @chemlabros.
Use this structure to import your own building. The engine builds upwards from z and draws left-to-right using dx.
{
"location": { "x": "37.43931", "y": "22.40853" },
"zones": [{ "id": 479, "name": "Μονοκατοικία" }],
"unheated": [{ "id": 87, "name": "Υπόγειο" }],
"floors": [
{
"name": "Ισόγειο", "x": 0, "y": 0, "z": 0.55,
"walls": [
{
"name": "ΙΣ-Β1",
"zone_id": 479, "zone_name": "Μονοκατοικία",
"unheated_id": 0, "unheated_name": "",
"floor_name": "Ισόγειο",
"length": 4.66, "height": 3.25, "thickness": 0.25,
"orientation": 338, "inclination": 90,
"ap": 0.4, "ek": 0.8, "u": 0.46, "ua": 4.62,
"windows": [
{ "name": "Win1", "width": 0.7, "height": 1.2, "z": 0.9, "dx": 2.98, "gw": 0.48, "u": 3.1, "ua": 2.6 },
{ "name": "Win2", "width": 1.1, "height": 2.15, "z": 0.0, "dx": 0.98, "gw": 0.48, "u": 3.1, "ua": 7.2 }
],
"columns": [ { "width": 0.4, "dx": 0.0, "u": 3.4, "ua": 1.6 } ],
"beams": [ { "height": 0.4, "dy": 0.0, "u": 3.4, "ua": 0 } ],
"obstacles": [ { "type": "horizon", "distance": 16.6, "height": 3.5 } ]
},
{
"name": "ΙΣ-Α1",
"zone_id": 479, "zone_name": "Μονοκατοικία",
"unheated_id": 0, "unheated_name": "",
"floor_name": "Ισόγειο",
"length": 1.65, "height": 3.25, "thickness": 0.25,
"orientation": 68, "inclination": 90,
"ap": 0.4, "ek": 0.8, "u": 0.46, "ua": 1.91,
"windows": [],
"columns": [],
"beams": [],
"obstacles": [ { "type": "projection", "length": 4.25 } ]
}
]
}
]
} dx: Horizontal distance from the wall's left edge.z: Vertical distance from the floor sill."horizon" requires distance & height."projection" requires length (overhang depth).