> For the complete documentation index, see [llms.txt](https://docs.kiloiot.io/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.kiloiot.io/dashboards/adding-widgets/digital-building-twin/drawing-your-building.md).

# How to Draw a Building in a Digital Building Twin

Draw walls, doors, windows, and fences for a Digital Building Twin — 2D plan and 3D views of the same scene.

The structure of a Digital Building Twin — its walls, doors, windows, and fences — is what makes the model recognizable as a specific facility. A few minutes of drawing turns a generic box into *your* warehouse, with the loading dock on the east side and the cold store in the corner where it really is. This page covers drawing that structure from scratch.

If you already have an architectural drawing or want to trace the building from a map, you can skip the manual drawing — see [Importing a DXF plan](/dashboards/adding-widgets/digital-building-twin/importing-a-dxf-plan.md) and [Tracing from the map](/dashboards/adding-widgets/digital-building-twin/tracing-from-the-map.md). The three approaches mix freely: import a shell, then draw an interior partition by hand.

## Should I draw in 2D or 3D?

The editor shows the same model two ways, and you can draw in either:

* **2D view** is a top-down plan. Rotation is locked, so it behaves like drawing on paper — the natural view for laying out a floor plate accurately.
* **3D view** shows the walls standing up at full height, so you can check the result at eye level.

Switch between them with the **3D / 2D** toggle on the floor selector. A common rhythm is to draw the plan in 2D, then flip to 3D to confirm it.

<figure><img src="https://2057878315-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtNQh1wBSHSaknslMdOXm%2Fuploads%2Fgit-blob-09e9cb1004c5c0986abedfe7ce2a6eb20892c1c9%2Fdbt-2d-plan-properties.jpg?alt=media" alt="A two-room floor plan in 2D view, with a window selected and its properties panel open on the right"><figcaption></figcaption></figure>

## How do I draw a wall?

1. On the bottom toolbar, click **Build**. A row of eight buttons appears: **Wall**, **Door**, **Window**, **Fence**, **Trace from map**, **Import from file**, **Flat roof** and **Pitched roof**.
2. Click **Wall**.
3. Click once in the scene to set the wall's **start point**.
4. Move the cursor — a preview of the wall follows, with a live length label in meters.
5. Click a second time to set the **end point**. The wall is created.
6. The tool stays active, so you can immediately draw the next wall. Each wall begins a fresh two-click sequence.

Wall endpoints snap to a grid, which makes it easy to keep corners square and walls aligned. When a new wall crosses an existing one, or ends on it close to its line, the existing wall is split at that point — so you can later select and color each segment independently.

<figure><img src="https://2057878315-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FtNQh1wBSHSaknslMdOXm%2Fuploads%2Fgit-blob-5df4c5491fa4d425e88957d2f8ba74acd21372eb%2Fdbt-build-tools.jpg?alt=media" alt="The Build row of eight buttons — Wall, Door, Window, Fence, Trace from map, Import from file, Flat roof, Pitched roof — above the mode toolbar"><figcaption></figcaption></figure>

To stop drawing, press **Escape** or right-click, or click **Build** again to leave the mode.

## How do I add doors and windows?

Doors and windows are placed **into** a wall, so draw the walls first.

1. Click **Build**, then click **Door** or **Window**.
2. Click on a wall where the opening should go.
3. The opening is cut into the wall.

Select a door or window with the **Select** tool to fine-tune it in the properties panel:

* **Doors** — Width, Height, position along the wall, **hinge side** (Left / Right), and **swing direction** (Inward / Outward).
* **Windows** — Width, Height, position along the wall, height off the floor, and sill depth.

## How do I draw a fence?

A fence is drawn exactly like a wall — click **Build**, click **Fence**, then click a start point and an end point. Fences are useful for the parts of a site that aren't enclosed building: a yard perimeter, a parking-lot boundary, a fenced compound.

## How do I add a roof?

**Flat roof** and **Pitched roof** are one-click buttons, not draw tools: click one and the roof is created at once from the walls on the active floor. Roofs sit on walls at the standard 3 m wall height.

* **Flat roof** adds a flat **Roof** over each closed wall outline on the floor. A floor with two separate buildings gets two roofs, named **Roof (1)** and **Roof (2)**.
* **Pitched roof** adds a single gable **Roof** with one **Roof segment**, sized to the bounding box of all walls on the floor.

Draw the walls first. With no walls on the active floor, the editor shows the warning **Draw walls before adding a roof** and creates nothing. To remove a roof, select it in the **Scene** panel and press **Delete**.

## How do I change a wall's height, thickness or material?

Switch to **Select** and click a wall to open its properties:

* **Length** — shown for reference.
* **Height** — how tall the wall stands.
* **Thickness** — how thick it is.
* **Material** — a grid of presets (white, brick, concrete, wood, glass, metal, plaster, tile, marble) plus a **custom** color swatch. Material is purely visual — it does not affect sensor binding — but a glass curtain wall or a concrete core makes the model read true to the real building.

To remove a wall, select it and press **Delete**, or use the Delete button in the properties panel.

## How should I name walls and zones?

As the model grows, open the **Scene** panel and give your walls and zones meaningful names — double-click an entry to rename it. "North Dock Wall" is far easier to find later than "Wall 14," and clear names make sensor binding much quicker when you reach that step.

## What are the best tips for drawing a building?

* Draw the outer shell first, then interior partitions. The grid snap keeps everything aligned.
* Work in 2D for accuracy, then switch to 3D to sanity-check heights and openings.
* Undo (Ctrl+Z) steps back through every drawing action, so experiment freely.
* You don't need a perfect model — you need a *recognizable* one. The goal is for an operator to instantly know which part of the building a colored object represents.

## See also

* [Importing a DXF plan](/dashboards/adding-widgets/digital-building-twin/importing-a-dxf-plan.md) — Start from an existing CAD drawing
* [Tracing from the map](/dashboards/adding-widgets/digital-building-twin/tracing-from-the-map.md) — Trace the outline from an aerial map
* [Floors and levels](/dashboards/adding-widgets/digital-building-twin/floors-and-levels.md) — Add and manage multiple floors
* [Placing objects](/dashboards/adding-widgets/digital-building-twin/placing-objects.md) — Furnish and equip the space


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

```
GET https://docs.kiloiot.io/dashboards/adding-widgets/digital-building-twin/drawing-your-building.md?ask=<question>&goal=<user_goal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
