Fix these before generating the plan
How to fill this in
- Add a room and give it a name. The first room starts at ORIGIN.
- Give its size. For a plain rectangular room, type its Length and Width and the four walls are made for you. For any other shape, open the Walls tab and enter its walls: start at P1 and walk anticlockwise, one row per wall.
- Add the next room and say which corner of an earlier room it starts at (Starts from room and Corner).
- Add doors and windows (optional) in the Doors & windows tab: add one, then pick its room and wall, how far its near edge is from that wall's start corner, and its width. Choose a single, double or sliding door, the swing side, and the glazing.
- Click Generate floor plan. Every room must close, meaning its walls return to P1.
Click the ? beside a column heading for a picture and an example. Try the sample survey on Project settings fills in a complete example.
Rooms
| # | Name | Starts from room | Corner | Length | Width |
|---|
| Move | Room | Seq | Length | Direction | Angle ° |
|---|
| Room | Wall | Type | Thickness | Shape | Radius | Rise | Bulges |
|---|
One row per wall, in the same order as Wall dimensions. External is an outside wall, Internal a wall between rooms or inside a room. Leave Thickness blank to use the standard thickness from Project settings. Set Shape to Arc for a curved wall, then give a Radius or a Rise (fill in one, the other is worked out) and which way it Bulges.
| Room | Corner | Style | Size |
|---|
| Mark | Type | Room | Wall | Start (m) | Width (m) |
|---|
Click a row (or a door or window on the plan) to edit it in a pop-up. Start is the distance from the wall's start corner (the room's inside corner) to the near edge of the opening.
Door & window schedule
| Mark | Type | Style | Location | Glazing | Width | Thickness | Swing |
|---|
| Layer | Colour | Linetype | Contents | Entities |
|---|
| Wall | Type | Thickness | Start point | End point | Length | Angle (°) | Shape | Radius | Arc length | ||
|---|---|---|---|---|---|---|---|---|---|---|---|
| X | Y | X | Y | ||||||||
| ID | Room | Point | Centreline | Internal face | Clear area | ||
|---|---|---|---|---|---|---|---|
| X | Y | X | Y | ||||
| Mark | Type | Style | Room | Wall | Host wall | Glazing | Hinge | Opens | Start | Width | Thickness | Centre X | Centre Y | Angle (°) |
|---|
Settings
Rooms
Segments (walls)
Corners (chamfer and curve)
Openings (doors and windows)
Download
- Floor plan PNGImage for sharing, email and print (3000 × 2000 px, with title block and room schedule)
- Floor plan (CAD) DXFOpens in AutoCAD and other CAD apps
- Wall centrelines CSVStart and end coordinates of every wall
- Room corners CSVP1, P2… corner points for each room
- Doors & windows CSVEvery opening with position and size
- Survey data ExcelRe-import later to keep editing
Room schedule
| ID | Room | Clear area | Centreline area |
|---|
Survey check
Project summary
Floor plan
Where does a room start?
P1 to P4 follow the order you walk a room's walls, anticlockwise. The same tags are drawn on the floor plan.
Starts from room and Corner say where a room's own P1 goes: on that corner of a room you have already entered. For Room 2 above:
The first room starts at ORIGIN. Use Offset X / Y to shift a room away from its start corner.
Room dimensions
For a plain rectangular room, type its Length (along X) and Width (along Y). Its four walls are created for you, starting at P1 and going anticlockwise.
For any other shape, such as an L-shaped room or one with more than four walls, leave these blank and enter the walls one by one in the Walls tab.
The new walls are Internal; set the outside ones to External in Walls › Wall properties. Changing Length or Width later updates the walls and keeps their types and thicknesses. The size uses the unit chosen in Project settings.
Filling in a room's walls
Start at P1 and walk the room anticlockwise. Add one row per wall: Seq is the order, Length is how long the wall is, and Direction is where you are heading.
X = right, Y = up, −X = left, −Y = down. The end of wall 1 is P2, the end of wall 2 is P3, and so on. For the room above:
Lengths use the unit chosen in Project settings. A room is complete when its last wall returns to P1.
Arc walls
Set Shape to Arc for a curved wall. Length, Direction and Angle stay the same: they describe the straight line from the wall's start to its end (the chord), so the room still closes and P1, P2… do not move.
Then say how far it bulges with either of these: Radius (the radius of the circle the wall is part of) or Rise (the height of the bulge at the middle of the chord). Fill in one and the other is worked out for you.
Bulges says which way it curves: Outward (away from the room, so the room gets bigger) or Inward (into the room). An arc can be at most a semicircle, so the radius is at least half the length and the rise is at most half the length.
For an arc wall shared by two rooms, give both rooms the same Radius (or Rise) and set Bulges to Outward in one and Inward in the other: it is the same curve seen from each side. Doors and windows can't go on arc walls yet.
Flat, chamfered and curved corners
Flat is the normal sharp corner, so you do not need to list it. To change a corner, add a row, pick the Room and the Corner (P1, P2… as in the preview), and choose a Style.
Chamfer: Size is the distance cut back along each of the two walls. The cut ends are joined by a straight wall.
Curve: Size is the radius of the rounding. The walls are cut back where the curve touches them, and the curve is a smooth arc between them. A radius must be more than half the wall thickness.
Keep entering each wall from corner to corner as if the corner were sharp: P1, P2… and the room closing do not change. Size uses the unit chosen in Project settings. For now a corner can only be cut between two straight walls, and the cut must be shorter than the walls on either side.
Survey lengths are in…
Pick metres, millimetres, feet or inches. Whatever you pick is used for every length in the project: room offsets, wall lengths, radii and rises, thicknesses, closure tolerance, base point, doors and windows, the dimensions on the plan, the CSV files and the DXF drawing. The headers never repeat the unit.
Feet and inches are decimal: 5 ft 6 in is typed as 5.5 in feet or 66 in inches.
If you change the unit later, the numbers already entered are converted, so the drawing stays the same size. Areas are always shown in square metres (metres or millimetres) or square feet (feet or inches).
Lengths measured to…
Wall centreline: each length is taken from the middle of one wall to the middle of the next. This is the usual way a drawing is dimensioned.
Internal wall faces: each length is the clear space between the inside faces, as you read it with a tape measure inside the room.
Pick the one that matches how the room was measured on site. The plan, areas and DXF come out right either way; wall thickness is added or taken off for you.
External and internal wall thickness
External is the thickness of the outside walls of the building, Internal the thickness of the walls between rooms or inside a room.
These are the standard values: every wall of that type uses them unless the wall has its own thickness (set in Walls › Wall properties, for example a wall measured thicker at one place).
Enter them in the unit you picked above.
Closure tolerance
A room is closed when its last wall ends back on P1. Real measurements rarely close exactly, so a small leftover gap is allowed.
Closure tolerance is the largest gap you accept. A room that closes within it is fine; a bigger gap is flagged as open, which usually means a length or direction was mistyped. The gap is closed up on the plan.
Enter it in the unit you picked above.
Angle: slanted walls
Leave Angle at 0 for ordinary walls that run straight along X, Y, −X or −Y.
For a slanted wall, give the extra turn in degrees, anticlockwise. A negative angle turns clockwise. For the wall above:
Wall type and thickness
Type: EXT is an outside wall of the building. INT is a wall between two rooms, or inside a room.
Thickness is optional. Leave it blank to use the standard EXT or INT thickness from Project settings. Fill it only when this wall is different, for example measured at a door opening.
A wall shared by two rooms should have the same thickness in both.
Offset X and Offset Y
Offset shifts a room's start corner (P1) away from the corner it connects to: +X moves right, −X moves left, and +Y moves up, −Y moves down.
Leave both at 0 when the room connects directly to that corner.
Placing a door or window
Room, then Wall: pick the room, then the wall of that room the opening sits on. Walls are numbered in the order you walk the room (the Seq column in the Walls tab), and each wall runs from its start corner to its end.
Start is measured along that wall's inside face, from the room's inside corner at the wall's start to the near edge of the opening. Width is the opening itself. Doors and windows are measured the same way.
A wall shared by two rooms needs the opening entered only once, from the room you measured from. "Into the room" and the start corner then follow that room's walking direction.
Door and window thickness
Thickness is the depth of a window frame or a door leaf. It is placed exactly in the middle of the wall: in a wall 400 thick, a window 200 thick leaves 100 on the inside and 100 on the outside of the centreline. The wall itself is cut through for the whole opening.
Leave it blank for the default: 100 for windows and 50 for doors. It can't be thicker than the wall.
Door types, hinge and swing
Door type: single leaf (one leaf), double leaf (two leaves that meet in the middle) or sliding (two panels on separate tracks).
Opens: into the room or out of the room you picked, so the swing follows that room. Hinge (single leaf only) is at the start or the end of the opening, as you walk the wall.
Double doors are hinged at both ends and sliding doors don't swing, so Hinge and Opens are greyed out when they don't apply.
Glazing symbols
Single, double and triple glazing are drawn as 1, 2 or 3 glass lines across the frame. A door can be solid (no glazing) or glazed; a window is always glazed.
How to Use Floor Plan Tool
The Floor Plan Tool transforms raw site survey measurements and surveyor Excel spreadsheets into double-line dimensioned floor plans, AutoCAD DXF files, and coordinate schedules — entirely inside your browser.
Survey Settings
Configure units (metres, millimetres, feet or inches), measurement mode (Wall centreline vs Internal faces), default wall thicknesses, and closure tolerance.
Rooms & Walls Entry
Use Quick Rectangular mode (Length x Width) for 4-wall rooms, Wall-by-Wall segment rows for custom polygons, or import directly from Excel.
Live 2D Preview
Open the real-time sketch beside the table. Unfinished rooms show a dashed red line back to P1 so errors are detected directly on-site.
CAD & PNG Exports
Generate high-resolution PNG floor plans with title blocks, AutoCAD DXF files (R12), and total station CSV coordinates.
Video Tutorial & Walkthrough
Paste your YouTube link below and click Update Video to add a tutorial walkthrough for the Floor Plan Tool.
Surveyor Direction & Orientation Reference
The Floor Plan Tool uses standard Cartesian vectors with anticlockwise wall progression:
Sriram Rajagopal
Computational Designer and BIM Developer with 11+ years of experience delivering BIM automation, parametric design, and AI-integrated workflow solutions across high-rise, commercial and residential projects in the UAE, Middle East, Singapore and India. Expert in Revit Addin/API (C# / WPF / MVVM), Python, Dynamo, Grasshopper, Rhino.Inside.Revit, APS and LLM integration. Consistently reduces manual effort by 40–80%, accelerates model delivery, and ensures compliance with Dubai Municipality, ISO 19650, NFPA, and ASHRAE standards.
Developed 150+ Dynamo/Grasshopper scripts for Modelling, Documentation, Coordination, Model Review/Update, Schedule and Data Integration/Extraction.
Why I Built Floor Plan Tool
In traditional architectural surveying, field teams record room dimensions by hand or in spreadsheets and wait days for office draftsmen to digitize the plan into CAD. When a room doesn't close or a measurement was recorded backwards, it requires an expensive revisit to the site.
I built the Floor Plan Tool to bridge that gap entirely. By solving 2D vector geometry directly inside the browser, surveyors can verify closures while standing in the room, download full publication-ready PNG drawings, and export DXF CAD files in seconds — with zero external dependencies.
"Computational designer / BIM Developer focused on blending code and creativity. Let's collaborate digitally — no matter where you are in the world."