Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
38 changes: 19 additions & 19 deletions src/bonsai/docs/guides/authoring/basic_modeling/creating_walls.rst
Original file line number Diff line number Diff line change
Expand Up @@ -13,22 +13,22 @@ Creating a Standalone Wall

1. Open an empty model (without predefined types).
2. Click on the wall icon in the toolbar. The top bar will display "[No IfcWallType Found] | Name [TYPEX] | + Add IfcWallType".
3. Edit [TYPEX] to use a wall type name of your choice (e.g., WALL100).
3. Edit ``TYPEX`` to use a wall type name of your choice (e.g., ``WALL100``).
4. Click "+ Add IfcWallType". The top bar will change, providing you with additional options.
5. Click "Add" (or press SHIFT+A) to create a wall with its own type.
5. Click "Add" (or press :kbd:`SHIFT+A`) to create a wall with its own type.
6. You can adjust the wall's length and height using the parameters in the top bar.

Creating Multiple Connected Walls
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

1. Activate the wall tool from the toolbar or use the shortcut (SHIFT + SPACEBAR, 6).
1. Activate the wall tool from the toolbar or use the shortcut (:kbd:`Shift+Spacebar, 6`).
2. Select the wall type from the dropdown menu, or create a new wall type if needed.
3. Set the 3D cursor to the desired starting location for the wall by holding SHIFT and left-clicking in the 3D viewport.
4. Add the first wall segment by pressing SHIFT + A.
3. Set the 3D cursor to the desired starting location for the wall by holding :kbd:`Shift` and left-clicking in the 3D viewport.
4. Add the first wall segment by pressing :kbd:`Shift+A`.
5. Adjust the length of the wall segment by dragging the "Length" parameter or entering a numeric value.
6. Set the 3D cursor to the location for the next wall segment. Enable snapping to ensure precise connections between segments.
7. Add the next wall segment by pressing SHIFT + A again.
8. If needed, rotate the new wall segment by pressing SHIFT + R and adjusting the angle.
7. Add the next wall segment by pressing :kbd:`Shift+A` again.
8. If needed, rotate the new wall segment by pressing :kbd:`Shift+R` and adjusting the angle.
9. Adjust the length of the new segment as required.
10. Repeat steps 6-9 to create additional wall segments, setting the 3D cursor to the desired locations, until you've completed the wall layout.

Expand All @@ -37,13 +37,13 @@ Modifying and Joining Walls

Bonsai offers various tools for modifying and joining wall segments:

- **Extend (SHIFT + E)**: Extend an existing wall to intersect with another face.
- **Butt (SHIFT + T)**: Join wall segments end-to-end.
- **Mitre (SHIFT + Y)**: Create a mitre joint between two wall segments.
- **Merge (SHIFT + M)**: Combine two wall segments into a single wall.
- **Flip (SHIFT + F)**: Reverse the direction of a wall segment.
- **Split (SHIFT + K)**: Divide a wall segment into two parts.
- **Rotate 90° (SHIFT + R)**: Rotate the wall by 90 degrees.
- **Extend** (:kbd:`Shift+E`): Extend an existing wall to intersect with another face.
- **Butt** (:kbd:`Shift+T`): Join wall segments end-to-end.
- **Mitre** (:kbd:`Shift+Y`): Create a mitre joint between two wall segments.
- **Merge** (:kbd:`Shift+M`): Combine two wall segments into a single wall.
- **Flip** (:kbd:`Shift+F`): Reverse the direction of a wall segment.
- **Split** (:kbd:`Shift+K`): Divide a wall segment into two parts.
- **Rotate 90°** (:kbd:`Shift+R`): Rotate the wall by 90 degrees.

To use these tools:

Expand All @@ -56,17 +56,17 @@ Aligning Walls

You can align walls using the following options:

- **Align Exterior (SHIFT + X)**: Align the wall to its exterior face.
- **Align Centerline (SHIFT + C)**: Align the wall to its centerline.
- **Align Interior (SHIFT + V)**: Align the wall to its interior face.
- **Align Exterior** (:kbd:`Shift+X`): Align the wall to its exterior face.
- **Align Centerline** (:kbd:`Shift+C`): Align the wall to its centerline.
- **Align Interior** (:kbd:`Shift+V`): Align the wall to its interior face.

Adding Openings
^^^^^^^^^^^^^^^

To add openings (e.g., for doors or windows) to your walls:

1. Select the wall where you want to add an opening.
2. Click "Add Void" in the top bar or press SHIFT + O.
2. Click "Add Void" in the top bar or press :kbd:`Shift+O`.
3. Adjust the opening's size and position as needed.

Calculating Quantities
Expand All @@ -75,5 +75,5 @@ Calculating Quantities
After creating your walls, you can calculate quantities to ensure accurate measurements:

1. Select the wall(s) you want to measure.
2. Press Q or click "Calculate All Quantities" in the top bar.
2. Press :kbd:`Q` or click "Calculate All Quantities" in the top bar.

Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,54 @@ Defining Rooms and Spaces

.. include:: /_incomplete_message.rst

[Content about defining rooms and spaces]
Displaying Spaces
^^^^^^^^^^^^^^^^^
To display spaces, you need to make the Spatial Elements visible.
To do so, go to :menuselection:`Project Overview --> Spacial section --> Spatial decomposition` and activate the visibility:

.. figure:: images/spatial-decomposition-visible.png
:alt: Make the Spatial decomposition elements visible

Creating a Space from Walls
^^^^^^^^^^^^^^^^^^^^^^^^^^^
1. Select the Spatial Tool.
2. Select existing walls enclosing the space. (:kbd:`Shift` to select multiple objects).
3. Click "Generate Space From Walls" (:kbd:`Shift+A`) to create the space.

.. figure:: images/space-from-walls.png
:alt: Creating a space inside selected walls

Creating a Space from Cursor Position
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
1. Select the Spatial Tool.
2. Place the 3D cursor in the desired space. (:kbd:`Shift+Right_Click` to place the cursor)
3. Click "Generate Space from Cursor" (:kbd:`Shift+A`) to create the space.

.. figure:: images/space-from-cursor.png
:alt: Generating a space from the elements closest to the cursor

Renaming a Space
^^^^^^^^^^^^^^^^
To rename a space, simply go to the Spatial decomposition and double-click on the Space. Enter the new name.

Deleting a Space
^^^^^^^^^^^^^^^^
To delete a space select it in the Spatial decomposition, and click on the cross above.

.. figure:: images/delete-space.png
:alt: Deleting a space


Creating Space Boundaries
^^^^^^^^^^^^^^^^^^^^^^^^^
To create space boundaries, first select the boundary type in the tool’s options, and click on Add Boundary (:kbd:`Shift+B`).

.. tip::
For Energy modeling purposes, make sure you use ``IfcRelSpaceBoundary2ndLevel``.


Space Visibility Options
^^^^^^^^^^^^^^^^^^^^^^^^
- You can show or hide spaces using Toogle Hide Spaces (:kbd:`Shift+H`).
- You can switch between solid and wireframe representation using Toggle Space Visibility (:kbd:`Shift+T`).

34 changes: 17 additions & 17 deletions src/bonsai/docs/guides/authoring/basic_modeling/door.rst
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,10 @@ Adding a Door
1. Select the wall where you want to place the door.
2. Set the 3D cursor on the wall at the desired door location.
3. Click on the "Create Door" tool in the Bonsai toolbar.
4. In the top bar, you'll see "[No IfcDoorType Found] | Name [TYPEX] | + Add IfcDoorType".
5. Edit [TYPEX] to use a door type name of your choice (e.g., DOOR001).
4. In the top bar, you'll see "``No IfcDoorType Found`` | Name ``TYPEX`` | + Add IfcDoorType".
5. Edit ``TYPEX`` to use a door type name of your choice (e.g., DOOR001).
6. Click "+ Add IfcDoorType". The top bar will update with additional options.
7. Click "Add" (or press SHIFT+A) to create a door with its own type.
7. Click "Add" (or press :kbd:`Shift+A`) to create a door with its own type.
8. Adjust the door's width and height using the parameters in the top bar.

Placing a Door and Changing its Swing Direction
Expand All @@ -31,14 +31,14 @@ Placing a Door and Changing its Swing Direction

2. Add a Door:
- Use the "Create Door" tool from the toolbar.
- Press SHIFT+A or click "Add" to place the door on the selected wall.
- Press :kbd:`Shift+A` or click "Add" to place the door on the selected wall.

**Applying Void**

If you forgot to select the wall before placing the door, you'll need to manually create the void relation:

- Select both the wall and the door.
- Click "Apply Void" (Shift+O) button.
- Click "Apply Void" (:kbd:`Shift+O`) button.

.. important::
If you need to use "Apply Void", do this before making any modifications to the door,
Expand All @@ -51,7 +51,7 @@ If you forgot to select the wall before placing the door, you'll need to manuall

4. Regenerate the Wall Geometry:
- Select the wall.
- Press Shift+G to regenerate the wall geometry, incorporating the door opening.
- Press :kbd:`Shift+G` to regenerate the wall geometry, incorporating the door opening.

.. note::
This step ensures the wall geometry is updated to include the door opening.
Expand All @@ -62,28 +62,28 @@ If you forgot to select the wall before placing the door, you'll need to manuall

5. Change Door Swing Direction:
- Select only the door.
- Press Shift+F to flip the door. It rotates the door by 180 degrees and moves the pivot point.
- Press :kbd:`Shift+F` to flip the door. It rotates the door by 180 degrees and moves the pivot point.
- Locate the "Parametric Geometry" panel in the `Scene Properties > Geometry and Materials` subtab.
- Find the "Door" section within this panel.
- Change the "Operation Type" to "SINGLE_SWING_RIGHT".
- Change the "Operation Type" to ``SINGLE_SWING_RIGHT``.

.. note::
The Shift+F shortcut is currently a hidden feature and not available as a button in the Door tool interface.
The :kbd:`Shift+F` shortcut is currently a hidden feature and not available as a button in the Door tool interface.

You may need to experiment with the combination of changing the Operation Type and using Shift+F to achieve the desired orientation.

6. Final Wall Geometry Regeneration:
- Select the wall again.
- Press Shift+G one more time to ensure all changes are properly applied.
- Press :kbd:`Shift+G` one more time to ensure all changes are properly applied.

Additional Notes
----------------

- The Shift+F shortcut for flipping the door is not visible in the Door tool interface.
- The :kbd:`Shift+F` shortcut for flipping the door is not visible in the Door tool interface.
This functionality may be added as a visible button in future updates.
- Always use Shift+G (Regenerate) after making changes
- Always use :kbd:`Shift+G` (Regenerate) after making changes
to ensure the wall and door geometries are correctly updated.
- Avoid using Shift+O (Apply Void) as it may cause issues
- Avoid using :kbd:`Shift+O` (Apply Void) as it may cause issues
with the door's orientation.


Expand All @@ -97,18 +97,18 @@ You can modify doors using various tools:

- Resize: Adjust the width and height parameters in the top bar.
- Move: Use Blender's standard move tools to reposition the door.
- Flip: Change the opening direction using the flip tool (Shift+F).
- Flip: Change the opening direction using the flip tool (:kbd:`Shift+F`).

.. note::
After moving a door, you need to recalculate the void in the wall. To do this:

- Select the wall containing the moved door.
- Click on the "Regen" (:kbd:`Shift` + :kbd:`G`) button in the top bar or use the appropriate shortcut.
- Click on the "Regen" (:kbd:`Shift+G`) button in the top bar or use the appropriate shortcut.
- This ensures that the opening in the wall is correctly positioned after moving the door.

If Regen operation doesn't achive the required result, use Apply Void function:

- Click on the "Apply Void" (:kbd:`Shift` + :kbd:`O`) button in the top bar or use the appropriate shortcut.
- Click on the "Apply Void" (:kbd:`Shift+O`) button in the top bar or use the appropriate shortcut.
- This ensures that the opening is linked to the wall.


Expand Down Expand Up @@ -144,7 +144,7 @@ To create multiple doors of the same type:
1. Select the desired door type from the dropdown menu in the top bar.
2. Set the 3D cursor on a wall where you want to place a new door.
3. Select the wall
4. Click "Add" (or press SHIFT+A) for each new door you want to create.
4. Click "Add" (or press :kbd:`Shift+A`) for each new door you want to create.
5. Adjust the 3D cursor, position and parameters for each new door as needed.

See Also
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
Expand Up @@ -3,4 +3,80 @@ Modeling Slabs and Roofs

.. include:: /_incomplete_message.rst

[Content about modeling slabs and roofs]
Creating a Slab from Walls
^^^^^^^^^^^^^^^^^^^^^^^^^^
To create a slab delimited by walls:

- Select the Slab tool
- Select the walls
- Press :kbd:`Shift+A`.

.. figure:: images/slab-from-walls.png
:alt: Creating a slab from surrounding walls

Creating a Slab by Drawing
^^^^^^^^^^^^^^^^^^^^^^^^^^
To draw geometry for a slab:

- Select the Slab tool.
- Click on **Add** (:kbd:`Shift+A`).
- Draw the geometry.
- Press enter to finish editing.

.. figure:: images/drawing-slab.png
:alt: Drawing a slab geometry

Flat Roof
^^^^^^^^^
Create a new ``IfcRoofType``, of predefined type ``FLAT_ROOF``.
Either create it from existing walls or by drawing the geometry yourself. See the Create a Slab section above.

.. figure:: images/new-flat-roof-type.png
:alt: Creating a new Flat Roof type

Shed Roof
^^^^^^^^^
Create a new ``IfcRoofType``, of predefined type ``SHED_ROOF``.
Either create it from existing walls or by drawing the geometry yourself. See the Create a Slab section above.

To give it an angle, set the angle in the tool’s properties, and click the **Update** property symbol.
If you want to clamp walls to the roof’s geometry, select the wall, then the roof, and press :kbd:`Shift+E` (Extend)

Hip roof
^^^^^^^^
Create a new ``IfcRoofType``, of predefined type ``HIP_ROOF``. Set the representation to ``Roof``.

.. figure:: images/new-hip-roof-type.png
:alt: Creating new Hip Roof type with roof representation

Click **Add** (:kbd:`Shift+A`) to create the roof and place it approximatively on your model.
Press :kbd:`TAB` to go into Edit mode. You can now use Blender’s edit mode tools to set the baseline of the roof.
To change the slope of the roof, go to :menuselection:`Geometry and Materials --> Parametric Geometry --> Roof`, and change the parameters. Validate with **Finish Editing**.

.. figure:: images/roof-parameters.png
:alt: Changing roof representation parameters

Gable Roof
^^^^^^^^^^
Create a new ``IfcRoofType``, of predefined type ``GABLE_ROOF``. Set the representation to ``Roof``.
Click **Add** (:kbd:`Shift+A`) to create the roof and place it approximatively on your model.
The Gable roof is very similar to the Hip Roof, see above.
To set an edge to a Gable, go into Edit Mode (:kbd:`TAB`) select the desired edge, and click Set Gable Roof Angle in the tool’s properties.

.. figure:: images/set-gable-roof-angle.png
:alt: Set a roof edge to a Gable

.. tip::
A small Pop-Up appears in the bottom right side of the viewport where you can change the **Gable Roof Edge Angle**.

Gambrel Roof
^^^^^^^^^^^^

Mansard Roof
^^^^^^^^^^^^

Barrel Roof
^^^^^^^^^^^

.. seealso::
This list of roof types is not exhaustive, please see the `Reference <https://docs.bonsaibim.org/reference/toolbar/roof.html>`__ section for more informations.
Loading