Difference between revisions of "Regard3D+Blender+FreeCAD workflow"

From Wiki.OSArch
 
(120 intermediate revisions by the same user not shown)
Line 1: Line 1:
Work in Progress...
+
{{Workflow Example}}
 +
[https://community.osarch.org/discussion/474/floss-workflow-with-regard3d-blender-freecad#latest Forum's discussion].
  
Wiki of FLOSS workflow for an architecture job (documentation and registration of an existing house renovation), that involve the use of Regard3D, Blender and FreeCAD for Geometry Scanning, BIM modeling and CAD documentation.
+
This wiki present a [[FLOSS]] workflow for an architecture job (documentation and registration of an existing house renovation), that involve the use of Regard3D, Blender and FreeCAD for Geometry Scanning, BIM modeling and CAD documentation.
 +
This workflow is fully multi-platform (the three programs run on Windows, Mac, Linux).
 +
 
 +
[[File:FLOSS SummaryWorkflow.png|700 px]]
  
 
== Tools ==
 
== Tools ==
 +
As a basic requirement for this tutorial, it is necessary to have a medium level of knowledge about the tools used in this workflow. This tutorial is about the workflow, not about each tool.
 +
  
 
[http://www.regard3d.org/ Regard3D]
 
[http://www.regard3d.org/ Regard3D]
  
[[Blender]]
+
[[Blender]] (v2.8)
  
 
[[Point_Cloud_Visualizer|Point Cloud Visualiser]]
 
[[Point_Cloud_Visualizer|Point Cloud Visualiser]]
  
[[FreeCAD|FreeCAD 0.19]]
+
[[FreeCAD|FreeCAD]] (v0.19)
  
 
== Geometry scanning ==
 
== Geometry scanning ==
 +
The idea is to gather geometry data of an existing building for further 3D modeling process. For this purpose, we will use open source photogrammetry software.
 +
 +
===== Creation of data set of photos=====
 +
# Recommendation: Camera's metadata must include focus lens (you can add that information manually later).
 +
# Shoot several photos of the building with a camera or smartphone. In general it is good to take more than 60-80 images from different angles. Look for info about photogrammetry good practices.
 +
 +
===== Point cloud generation with Regard3D. =====
 +
# For this step it is used Regard3D, but there are other photogrammetry programs that can be used. Refers to [[AEC_Free_Software_directory|Software Directory]] for more options.
 +
# Import image set.
 +
# Generate point clouds of the model (see [https://www.regard3d.org/index.php/documentation/tutorial tutorial] ).
 +
# Export point cloud file (*.ply). You can save several point clouds files to cover all facades of the building.
 +
# Mesh generation (Optional). Also, you can generate mesh surfaces with the point clouds. But, for this case I found efficient enough to work only with the point clouds.
 +
  
1) Point cloud with Regard3D
+
[[File:Regard3d.png|700px|none]]
I shoot several photos of the building with a smartphone and took measurements as reference. Then I process the images with Regard3D to get the point cloud. Very easy to use and tolerant with the poor quality of the photos. I tried to use meshroom, but it failed when it tried to recognize the graphic card's drivers (I have NVIDIA CUDA).
 
  
 
== 3D Mesh modeling ==
 
== 3D Mesh modeling ==
  
2) Volumetric mesh reconstruction with Blender + point cloud visualizer (0.9.3v).
+
Volumetric mesh reconstruction with Blender + point cloud visualizer (0.9.3v).
Using Blender I could visualise the point cloud and generate a volumetric mesh to get the general dimensions and shapes of the building.
+
Using Blender you can visualise the point cloud and generate a volumetric mesh to get the general dimensions and shapes of the building. However, this step is optional, because you can directly import the point clouds into FreeCAD. Anyway, the point cloud visualiser has more manipulation options than FreeCAD.
 +
 
 +
===== Importing the point clouds =====
 +
# Install [https://blendermarket.com/products/pcv Point Cloud Visualiser] add-on (0.9.3v is free). Here [https://jakubuhlik.com/docs/pcv/docs.html more documentation]. But these are basic steps to load and work in Blender:
 +
# In blender create a empty object.
 +
# Import a point cloud file in the empty object, using PCV.
 +
# Edit the point cloud position and scale it, if it is necessary (use Enable Edit Mode, in the PCV panel).
 +
# Export the edited point cloud in the empty object, to save the edition (use Export PLY in the PCV panel).
 +
# When you open the blender file, select the empty object and load the last exported PLY file, to display the edited point cloud, with the right position and scale..
 +
 
 +
 
 +
[[File:Blender PCV.png|500px|none]]
 +
 
 +
[[File:Blender pointcloud.png|700px|none]]
 +
 
 +
===== Geometry modeling =====
 +
# Model the main volumes with Blender, using the points as reference.
 +
# Option 1) Once you have the 3D model complete, you could convert the Blender meshes into BIM models using [https://blenderbim.org/ BlenderBIM] add-on.
 +
#* Install BlenderBIM Add-on
 +
#* Set the meshes as BIM objects
 +
#* Export the model as IFC file
 +
 
 +
# Option 2) Once you finish with the 3D modeling, export the model as a simple mesh file (OBJ, STL...).
 +
 
 +
 +
[[File:Blenderpointcloud.png|700px|none]]
  
 
== BIM modeling ==
 
== BIM modeling ==
  
3) BIM model with FreeCAD (using as reference the mesh from Blender).
+
Develop a BIM model with FreeCAD (using as reference the mesh or the IFC file from Blender).
Once I got a good mesh volume, I exported a stl file to FreeCAD to recreate the main walls and windows with the Arch Workbench.
+
Once you got a good mesh volume of the building geometry, export a stl file or IFC file to FreeCAD to recreate the main walls, windows, doors and aditional architecture details of the building with the [https://wiki.freecadweb.org/Arch_Module Arch Workbench]. at the end of this workflow the idea is to save a FreeCAD file with only 3D models. You can have a look to a FreeCAD file example [https://wiki.osarch.org/images/f/f2/Dormitorios01_02.FCStd here].
 +
 
 +
===== Importing the files to FreeCAD =====
 +
# Opt 1) Import a mesh file.
 +
#* If the result of the previous step was a simple mesh file, you can import with [https://wiki.freecadweb.org/Mesh_Workbench Mesh Design workbench].
 +
#* Fix position and scale of the mesh with [https://wiki.freecadweb.org/Mesh_Scale Mesh Scale] tool.
 +
# Opt 2) Import a IFC file.
 +
#* If the result of the previous step was a IFC file, FreeCAD can import IFC2x3 or IFC4 based files. See [https://wiki.freecadweb.org/Arch_IFC Arch IFC].
 +
#* Check the FreeCAD Preference for additional options of [https://wiki.freecadweb.org/Import_Export_Preferences IFC import/export] feature.
 +
 
 +
===== BIM modeling =====
 +
# Based on the mesh/IFC, generate or complete the BIM model using the [https://wiki.freecadweb.org/Arch_Module Arch Workbench] or eventually, [https://wiki.freecadweb.org/BIM_Workbench BIM Workbench].
 +
# For each building, place the 3D model components (walls, structures, and other arch elements) into an [https://wiki.freecadweb.org/Arch_BuildingPart Arch Building Part].
 +
# For each Arch Building Part, create [https://wiki.freecadweb.org/Arch_SectionPlane Arch Section Planes] (for elevations, plans, sections, etc).
 +
# For each Arch Section Planes, create [https://wiki.freecadweb.org/Draft_Shape2DView Draft Shape2DView] objects. You can edit the labels of these Shape2DView to refer view names.
 +
#* Open [https://wiki.freecadweb.org/Draft_Module Draft Workbench].
 +
#* Create all the Shape2DView projections, considering the necessary 2D views for the CAD documentation.
 +
#* Arrange the Shape2DView projections in the 3D scene. Once you are done, you should not move these projections anymore.
 +
# Save and close this file. This file will contain the 3D geometries and the plain Shape2DView projections for future references.
 +
 
 +
 
 +
[[File:Freecad mesh.png|700px|none]]
 +
[[File:FreeCAD BIM.png|700px|none]]
 +
[[File:Freecad 3G2B1kQvK2.png|700px|none]]
 +
[[File:Freecad BIM2.png|700px|none]]
  
 
== 2D CAD documentation ==
 
== 2D CAD documentation ==
  
4) 2D CAD documentation (sections, elevations, etc) with FreeCAD.
+
This step is for generating PDF files for printing, with 2D CAD documentation (sections, elevations, etc) with FreeCAD. The idea is to work with these 2D drawings in a new and independent FreeCAD file (independent from the 3D models file) that is very light and can be shared easily. The workflow involves the use of [https://wiki.freecadweb.org/Draft_Module Draft workbench] and [https://wiki.freecadweb.org/TechDraw_Module TechDraw workbench].
(Work in progress)...
+
 
With the 3D model finished, I started to extract 2D sections and views from the model to produce a basic 2D CAD documentation for the authority's office registration. I will finish with TechDraw workbench for final drawings.
+
I share the 2D Freecad file as example of CAD documentation made with FreeCAD. You need FreeCAD +0.19 to open the file. Also, there is a bug with the TechDraw pages when you open the file (the drawing layout is a mess). Don't worry. Just click on Turn View Frames On/Off command in TechDraw Workbench and it will fix it. [https://community.osarch.org/uploads/editor/9w/0qj3m2zvdwbx.zip Link to the 2D FreeCAD file.]
 +
 
 +
===== 2D drawing with Draft workbench =====
 +
# Create a new FC file.
 +
# Import the Shape2DView objects from the FreeCAD file with the 3D models, using [https://wiki.freecadweb.org/Arch_Reference Arch Reference].
 +
# As alternative, you can import the Shape2DView objects using [https://wiki.freecadweb.org/Std_LinkMake App:Link] option.
 +
# Open [https://wiki.freecadweb.org/Draft_Module Draft workbench].
 +
# Arrange the Shape2DView objects in the 3D space.
 +
# Draw annotations, dimensions, symbols, lines, etc. with Draft workbench tools.
 +
# Create a set of layers for Shape2DView objects, Dimensions, symbols, etc with [https://wiki.freecadweb.org/Draft_Layer Draft Layer].
 +
# Place each group of 2D elements into the respective layer.
 +
# Save the file.
 +
 
 +
[[File:Freecad JueqoDg3k8.png|700px|none]]
 +
 
 +
===== Page layout with TechDraw workbench =====
 +
This workflow is just a suggestion. You can develop one for your own. But the purpose is to generate drawings with different line widths and styles, to enrich the sheet presentation.
 +
 
 +
[https://wiki.freecadweb.org/TechDraw_Preferences TechDraw Preference] allows to setup many preferences and styles.
 +
 
 +
# Open [https://wiki.freecadweb.org/TechDraw_Module TechDraw workbench]
 +
# Create a [https://wiki.freecadweb.org/TechDraw_PageDefault new TD Page] (define format and scale).
 +
# Select a Shape2DView object or a group of them, from the Combo View panel.
 +
# Press [https://wiki.freecadweb.org/TechDraw_View TechDraw Insert View] (TDIV) command to insert them in the TD page.
 +
# Select Draft objects (lines, symbols), from the Combo View panel.
 +
# Press TDIV command to insert them in the TD Page.
 +
# On the TD page, place the TDIV of draft objects on top of the first TDIV. 
 +
# With several TDIV for each group of objects, you can assign different properties (line width).
 +
#* Also, you can select specific lines of these TDIV and change their appearance with [https://wiki.freecadweb.org/TechDraw_DecorateLine TechDraw DecorativeLine].
 +
# Select the Draft Layer of dimensions, in the Combo View panel.
 +
#* Press [https://wiki.freecadweb.org/TechDraw_DraftView TD Draft View] and setup its properties. 
 +
#* Place on top of the rest of TDIV.
 +
# For lines with style, select their Draft Layer. Press TD DraftView and setup the properties: 
 +
#* Data/ Line Style = 5,2,0,5,2 (or something similar, different numbers will produce different patterns).
 +
#* Data/ Override Style = true
 +
# Create a [https://wiki.freecadweb.org/TechDraw_ClipGroup TD ClipGroup] and place all the views inside.
 +
# You can create more TD pages if you want. If you need many pages, split the project in several FreeCAD files.
 +
 
 +
{| class="wikitable"
 +
|+ Recommended links between TechDraw Views and 2D objects
 +
|-
 +
| use TD InsertView||for Shape2DView ||Plans, Sections||Allow to apply hatches on plans and sections areas.
 +
|-
 +
| use TD InsertView||for Draft lines||simple lines and symbols||Allow to work with different line widths.
 +
|-
 +
| use TD DraftView||for Draft Layers||Dimensions, Texts, lines||Allow to apply line styles and other properties on group of draft objects
 +
|-
 +
| use TD DraftView||for Draft objects||simple lines and symbols|| Allow to apply line styles and other properties on individual objects
 +
|}
 +
 
 +
Here you can find more examples of [[Page layouts with TechDraw WB]].
 +
 
 +
===== Export PDF files =====
 +
# Once the TD page is ready, you can move or share this FC file, and export PDF files of the drawing sheets.
 +
#*Select the TD page to export.
 +
#*Press Menu File - Export PDF.
 +
 
 +
 
 +
[[File:2DDrawingFC01.png|700px|none]]
 +
 
 +
 
 +
[[File:2DDrawingFC02.png|700px|none]]
 +
 
  
[[File:FLOSS SummaryWorkflow.png|700 px]]
+
{{FreeCAD_Documentation}}
 +
[[Category:FreeCAD]]

Latest revision as of 12:25, 31 October 2021

This page describes an example workflow. See similar pages visit the example workflow category

Forum's discussion.

This wiki present a FLOSS workflow for an architecture job (documentation and registration of an existing house renovation), that involve the use of Regard3D, Blender and FreeCAD for Geometry Scanning, BIM modeling and CAD documentation. This workflow is fully multi-platform (the three programs run on Windows, Mac, Linux).

FLOSS SummaryWorkflow.png

Tools[edit]

As a basic requirement for this tutorial, it is necessary to have a medium level of knowledge about the tools used in this workflow. This tutorial is about the workflow, not about each tool.


Regard3D

Blender (v2.8)

Point Cloud Visualiser

FreeCAD (v0.19)

Geometry scanning[edit]

The idea is to gather geometry data of an existing building for further 3D modeling process. For this purpose, we will use open source photogrammetry software.

Creation of data set of photos[edit]
  1. Recommendation: Camera's metadata must include focus lens (you can add that information manually later).
  2. Shoot several photos of the building with a camera or smartphone. In general it is good to take more than 60-80 images from different angles. Look for info about photogrammetry good practices.
Point cloud generation with Regard3D.[edit]
  1. For this step it is used Regard3D, but there are other photogrammetry programs that can be used. Refers to Software Directory for more options.
  2. Import image set.
  3. Generate point clouds of the model (see tutorial ).
  4. Export point cloud file (*.ply). You can save several point clouds files to cover all facades of the building.
  5. Mesh generation (Optional). Also, you can generate mesh surfaces with the point clouds. But, for this case I found efficient enough to work only with the point clouds.


Regard3d.png

3D Mesh modeling[edit]

Volumetric mesh reconstruction with Blender + point cloud visualizer (0.9.3v). Using Blender you can visualise the point cloud and generate a volumetric mesh to get the general dimensions and shapes of the building. However, this step is optional, because you can directly import the point clouds into FreeCAD. Anyway, the point cloud visualiser has more manipulation options than FreeCAD.

Importing the point clouds[edit]
  1. Install Point Cloud Visualiser add-on (0.9.3v is free). Here more documentation. But these are basic steps to load and work in Blender:
  2. In blender create a empty object.
  3. Import a point cloud file in the empty object, using PCV.
  4. Edit the point cloud position and scale it, if it is necessary (use Enable Edit Mode, in the PCV panel).
  5. Export the edited point cloud in the empty object, to save the edition (use Export PLY in the PCV panel).
  6. When you open the blender file, select the empty object and load the last exported PLY file, to display the edited point cloud, with the right position and scale..


Blender PCV.png
Blender pointcloud.png
Geometry modeling[edit]
  1. Model the main volumes with Blender, using the points as reference.
  2. Option 1) Once you have the 3D model complete, you could convert the Blender meshes into BIM models using BlenderBIM add-on.
    • Install BlenderBIM Add-on
    • Set the meshes as BIM objects
    • Export the model as IFC file
  1. Option 2) Once you finish with the 3D modeling, export the model as a simple mesh file (OBJ, STL...).


Blenderpointcloud.png

BIM modeling[edit]

Develop a BIM model with FreeCAD (using as reference the mesh or the IFC file from Blender). Once you got a good mesh volume of the building geometry, export a stl file or IFC file to FreeCAD to recreate the main walls, windows, doors and aditional architecture details of the building with the Arch Workbench. at the end of this workflow the idea is to save a FreeCAD file with only 3D models. You can have a look to a FreeCAD file example here.

Importing the files to FreeCAD[edit]
  1. Opt 1) Import a mesh file.
    • If the result of the previous step was a simple mesh file, you can import with Mesh Design workbench.
    • Fix position and scale of the mesh with Mesh Scale tool.
  2. Opt 2) Import a IFC file.
    • If the result of the previous step was a IFC file, FreeCAD can import IFC2x3 or IFC4 based files. See Arch IFC.
    • Check the FreeCAD Preference for additional options of IFC import/export feature.
BIM modeling[edit]
  1. Based on the mesh/IFC, generate or complete the BIM model using the Arch Workbench or eventually, BIM Workbench.
  2. For each building, place the 3D model components (walls, structures, and other arch elements) into an Arch Building Part.
  3. For each Arch Building Part, create Arch Section Planes (for elevations, plans, sections, etc).
  4. For each Arch Section Planes, create Draft Shape2DView objects. You can edit the labels of these Shape2DView to refer view names.
    • Open Draft Workbench.
    • Create all the Shape2DView projections, considering the necessary 2D views for the CAD documentation.
    • Arrange the Shape2DView projections in the 3D scene. Once you are done, you should not move these projections anymore.
  5. Save and close this file. This file will contain the 3D geometries and the plain Shape2DView projections for future references.


Freecad mesh.png
FreeCAD BIM.png
Freecad 3G2B1kQvK2.png
Freecad BIM2.png

2D CAD documentation[edit]

This step is for generating PDF files for printing, with 2D CAD documentation (sections, elevations, etc) with FreeCAD. The idea is to work with these 2D drawings in a new and independent FreeCAD file (independent from the 3D models file) that is very light and can be shared easily. The workflow involves the use of Draft workbench and TechDraw workbench.

I share the 2D Freecad file as example of CAD documentation made with FreeCAD. You need FreeCAD +0.19 to open the file. Also, there is a bug with the TechDraw pages when you open the file (the drawing layout is a mess). Don't worry. Just click on Turn View Frames On/Off command in TechDraw Workbench and it will fix it. Link to the 2D FreeCAD file.

2D drawing with Draft workbench[edit]
  1. Create a new FC file.
  2. Import the Shape2DView objects from the FreeCAD file with the 3D models, using Arch Reference.
  3. As alternative, you can import the Shape2DView objects using App:Link option.
  4. Open Draft workbench.
  5. Arrange the Shape2DView objects in the 3D space.
  6. Draw annotations, dimensions, symbols, lines, etc. with Draft workbench tools.
  7. Create a set of layers for Shape2DView objects, Dimensions, symbols, etc with Draft Layer.
  8. Place each group of 2D elements into the respective layer.
  9. Save the file.
Freecad JueqoDg3k8.png
Page layout with TechDraw workbench[edit]

This workflow is just a suggestion. You can develop one for your own. But the purpose is to generate drawings with different line widths and styles, to enrich the sheet presentation.

TechDraw Preference allows to setup many preferences and styles.

  1. Open TechDraw workbench
  2. Create a new TD Page (define format and scale).
  3. Select a Shape2DView object or a group of them, from the Combo View panel.
  4. Press TechDraw Insert View (TDIV) command to insert them in the TD page.
  5. Select Draft objects (lines, symbols), from the Combo View panel.
  6. Press TDIV command to insert them in the TD Page.
  7. On the TD page, place the TDIV of draft objects on top of the first TDIV.
  8. With several TDIV for each group of objects, you can assign different properties (line width).
  9. Select the Draft Layer of dimensions, in the Combo View panel.
    • Press TD Draft View and setup its properties.
    • Place on top of the rest of TDIV.
  10. For lines with style, select their Draft Layer. Press TD DraftView and setup the properties:
    • Data/ Line Style = 5,2,0,5,2 (or something similar, different numbers will produce different patterns).
    • Data/ Override Style = true
  11. Create a TD ClipGroup and place all the views inside.
  12. You can create more TD pages if you want. If you need many pages, split the project in several FreeCAD files.
Recommended links between TechDraw Views and 2D objects
use TD InsertView for Shape2DView Plans, Sections Allow to apply hatches on plans and sections areas.
use TD InsertView for Draft lines simple lines and symbols Allow to work with different line widths.
use TD DraftView for Draft Layers Dimensions, Texts, lines Allow to apply line styles and other properties on group of draft objects
use TD DraftView for Draft objects simple lines and symbols Allow to apply line styles and other properties on individual objects

Here you can find more examples of Page layouts with TechDraw WB.

Export PDF files[edit]
  1. Once the TD page is ready, you can move or share this FC file, and export PDF files of the drawing sheets.
    • Select the TD page to export.
    • Press Menu File - Export PDF.


2DDrawingFC01.png


2DDrawingFC02.png


Icon FreeCAD.png This page is FreeCAD documentation. Full documentation is available at the FreeCAD documentation wiki. All articles in the OSArch wiki related to FreeCAD can be seen in the FreeCAD Category