Detessellate
Detessellate is a collection of FreeCAD macros that introduce an algorithm-assisted workflow for reverse engineering imported geometry including mesh models (STL, OBJ, 3MF), point cloud data, and non-parametric STEP solids.
📺 Click the image below to watch the demo video on YouTube

FreeCAD Forum: https://forum.freecad.org/viewtopic.php?t=101467
🎯 Use Cases
- Mesh Reverse Engineering: Convert STL/OBJ/3MF meshes to parametric CAD models
- Point Cloud Processing: Generate sketches from scanned point cloud data
- STEP Reparametrization: Rebuild imported STEP files with sketch-based features
- Sketch Optimization: Clean up and constrain sketch geometry
See individual macro documentation for detailed workflows.
📦 Included Macros
Some of these macros are included for convenience and are not strictly part of the Detessellate workflow.
🚀 Getting Started
Install via FreeCAD Addon Manager by adding the Detessellate Repository to the custom repositories list.
- Open the Preferences via Edit > Preferences.
- Go to Addon Manager Options.
- Click the green Plus button under the Custom Repository list window to add to the list.
- Paste the Repository URL into the Custom Repository dialog box: https://github.com/DesignWeaver3D/Detessellate
- Type in the Branch name: main
- Click OK
- Open Addon Manager and find Detessellate in the list.
- Click Install
- Restart FreeCAD.
- Access tools from the Detessellate workbench and/or the custom toolbars that the workbench creates.
🛣️ Roadmap
- 📚 Expanded documentation and tutorials
- 🛠️ Additional utilities for Detessellate workflows
- 🎯 Integration with FreeCAD Addon Manager
📜 Changelog
- v1.2.0 (2026-07-12) - Added MeshCSToSplines macro for building loft-ready aligned splines from Mesh Workbench Cross Sections.
- v1.1.0 (2026-05-09) - PointPlaneSketch greatly improved with faster performance and a voxel filter for reducing points prior to creating a sketch.
- v1.0.0 (2026-05-07) - Restructured as a proper FreeCAD workbench for Addon Manager indexing.
- v0.4.2 (2026-04-01) - SketcherWireDoctor updated to v1.0.0, adding support for normal external geometry.
- v0.4.1 (2026-01-31) - Fixed ConstrainAllPointOnPoint default tolerance to 50 microns
- v0.4.0 (2026-01-31) - Added ConstrainAllPointOnPoint macro
- v0.3.3 (2026-01-24) - Edited commands so that macro buttons are grayed out if no active document.
- v0.3.2 (2026-01-23) - EdgeLoopToSketch refactored to support additional edge geometry types by utilizing DraftGeomUtils.orientEdge.
- v0.3.1 (2026-01-04) - Bug fix in commands for SketchReProfile.
- v0.3.0 (2026-01-04) - Massive optimizations of of CoplanarSketch & SketchReProfile macros for better handling of larger edge counts!
- v0.2.2 (2026-01-04) - Massive optimization of EdgeLoopSelector by @tarman3 , Thank You!
- v0.2.1 (2025‑12-23) - Fix the PointPlaneSketchCommand
- v0.2.0 (2025‑12-23) - Added ReconstructSolid and PointPlaneSketch macros. Patched Varset-Update to improve data type handling & conversion.
- v0.1.8 (2025‑12-08) - VarSetUpdate patched by @VeryOldBeard to fix the problem of replace being applied on partial matches and to add some more property tyepes.
- v0.1.7 (2025‑12-08) - EdgeLoopToSketch macro updated to v2.0 which fixes bugs and creates additional constraints in the sketch.
- v0.1.6 (2025‑12-07) - Added EdgeLoopToSketch macro for creating sketches from EdgeLoopSelector. Added face selection method to EdgeLoopSelector.
- v0.1.5 (2025‑12-07) - Added multiple loop selection to EdgeLoopSelector
- v0.1.4 (2025‑12‑02) – Fixed regression in CoplanarSketch Macro
- v0.1.3 (2025‑12‑02) – Optimized CoplanarSketch Macro for better handling of larger edge counts
- v0.1.2 (2025‑11‑30) – Improved tooltips for all toolbars
- v0.1.1 (2025‑11‑30) – Bug fix for
package.xml for Addon Manager
- v0.1.0 (2025‑11‑26) – Initial release