shpark shared this post Ā· 1h ago
CNC Kitchen

My FREE Tool Turns 3D Scans into CAD feat. Elegoo M1 Ultra

Thanks to @ElegooOfficial for sponsoring this video. Check out the M1 Ultra https://geni.us/ElegooM1Ultra
ScanRuler is FREE and OPEN SOURCE: https://scanruler.com

I built ScanRuler, a completely free and open-source tool that turns 3D scans into something genuinely useful, from precise measurements and deviation analysis to wall-thickness inspection and reverse engineering. With the help of AI, it can even automatically turn a scanned part into a fully editable, parametric CAD model, repair broken features, or design entirely new parts! In this video, I put the new Elegoo M1 Ultra 3D scanner to the test and show how powerful 3D scanning has become when combined with the right software.

šŸ›’ Products from the video (affiliate):
Elegoo M1 Ultra 3D Scanner: https://geni.us/ElegooM1Ultra

Website Article: https://www.cnckitchen.com/blog/scanruler-free-3d-scan-reverse-engineering
ScanRuler - Free 3D Scan Evaluation: https://scanruler.com

šŸš€Sample Projects:
Ballbar: https://scanruler.com/s/SampleProjects/BallBar?workspace=measure
Wheel: https://scanruler.com/s/SampleProjects/Wheel?workspace=measure
Deviation Analysis: https://scanruler.com/s/SampleProjects/SurfaceDeviation?workspace=deviation
Wall Thickness Analysis: https://scanruler.com/s/SampleProjects/WallThickness?workspace=thickness
Engine Housing Repair: https://scanruler.com/s/SampleProjects/engineHousing?workspace=mesh
Fridge Bracket 1: https://scanruler.com/s/SampleProjects/fridgeBracket?workspace=reverse
Fridge Bracket 2: https://scanruler.com/s/SampleProjects/fridgePart?workspace=reverse
Egg Dispenser (Agentic CAD): https://scanruler.com/s/SampleProjects/EggDispenser?workspace=reverse

šŸ’š Support me šŸ™
Patreon: https://www.patreon.com/cnckitchen
Join as a YouTube member!
Buy a Bambu Lab printer 🐼: https://geni.us/BambuP1S
Buy a Prusa printer: https://geni.us/CNCKPrusa
Shop at Matterhackers: http://www.matterhackers.com/?aff=7479
PayPal: https://www.paypal.me/CNCKitchen

šŸŽ™Check out my Podcast with Thomas Sanladerer: https://www.youtube.com/channel/UCzUgJrG-w_KQexroYkJR9XQ

Follow me on Twitter: https://twitter.com/cnc_kitchen
Follow me on Instagram: https://www.instagram.com/cnckitchenyt

Chapters
00:00 Introduction
02:17 Elegoo M1 Ultra
03:02 Scanner Accuracy (3D Measure Workspace)
06:47 Example 2: Wheel (Markerless Cross Line Scanning)
08:38 Deviation Analysis on 3D Printed ABS
11:38 Wall Thickness Analysis on Vacuum Formed Part
13:40 CAD inside ScanRuler
14:18 Repair Engine Housing (Virtual Kintsugi)
16:24 Manual Reverse Engineering
18:00 ScanRuler MCP (AI Agent)
20:59 Automatic Part Repair
21:23 Automatic TPU Case Generation
21:53 Limitations
22:34 Automatic Scan Analysis
22:57 Agentic CAD Design
23:20 Verdict

#ELEGOO #ElegooM1Ultra #3DScanner
DISCLAIMER: Part of this video was sponsored by PCBWay.
FTC Disclaimer: A percentage of sales is made through Affiliate links


Transcript

0:00 I think my new free tool could change 3D scanning forever. You can give it the mesh from a 3D scan,

0:06 and it can recreate a high-quality, parametric CAD model. And if the original part is broken,

0:12 you can even ask it to fix it for you! But let’s start at the beginning.

0:16 Let's be real: for many people who bought a 3D scanner, that gadget eventually became an

0:22 expensive paperweight. And that wasn't necessarily the scanner's fault, but the software around it.

0:29 3D scanners have become really good and quite affordable compared to what they used to cost,

0:35 but the software they typically come with only lets you capture a part—and not much

0:40 more. You end up with a partially closed mesh of something you'd like to repair,

0:46 but you're missing the tools to do it effectively. Conventional CAD software can load these meshes,

0:52 and you can design around them like a blueprint, but that's tedious and often quite complex. There

0:58 is specialized software for analyzing 3D scans and even assisted reverse engineering. But one

1:04 tool is now behind a registration wall since Zeiss bought GOM, while the others are simply

1:10 really expensive. That’s why I built ScanRuler, a free and opensource tool. No installation,

1:16 no tracking, no cookie banners, and it runs locally on your machine! It's perfect for

1:21 taking measurements directly on your scans, comparing them with reference geometry,

1:26 and analyzing wall thickness. It even includes a full CAD suite designed specifically for reverse

1:33 engineering 3D scans. And the craziest part? If you connect an AI agent, it can handle the

1:38 entire reverse-engineering process for you and create a fully parametric CAD model! And did I

1:44 mention it's free? Let's find out more! Guten Tag everybody, I'm Stefan, and welcome to CNC Kitchen.

1:53 Even though this is a vibe-coded project, I know not everyone is stoked about it. It’s the

1:58 world we live in now, and for me it’s simply a tool to build the tools I’ve always wanted

2:03 and give them back to you completely free. I hope you can appreciate that. I've poured

2:09 weeks of work into this, and it's only possible thanks to all your support and tips, as well as

2:15 amazing sponsors like Elegoo. This is a perfect match, because Elegoo just launched the M1 Ultra,

2:22 an all-in-one 3D scanner with three blue-laser scanning modes, structured-light scanning,

2:27 and even wireless operation, starting at $1,599. I've used it extensively over the last few weeks

2:34 to capture a ton of objects. Those scans didn't just help me develop ScanRuler;

2:40 we'll also use them today to show how powerful the combination of the Elegoo M1 Ultra and ScanRuler

2:47 can be. You can access all the projects shown in this video through the links in the description,

2:52 so you can check out both the M1 Ultra's scan quality and how I processed the scans

2:57 in ScanRuler. Find out more about the Elegoo M1 Ultra using the link below!

3:02 So let’s go through everything that you can do with Scanruler and the right 3D scanner!

3:07 The most important thing if you want to use a 3D scanner as a real workshop tool is accuracy.

3:13 So before using the M1 Ultra for the first time, and at regular intervals afterward,

3:18 you need to calibrate it. Elegoo includes a precision glass calibration plate stored in

3:24 the scanner's beautiful, rugged case. You simply connect the scanner to your PC or

3:28 Mac and open Elegoo Scan. This software is actually really good and if you ever used

3:34 Creality Scan you might find a lot of similarities. It guides you through the

3:40 calibration process as you scan the plate from different angles and distances. Once

3:45 that's done, your scans should be accurate to within a few hundredths of a millimeter.

3:50 Let's test that with my ball bars: precision spheres connected by a carbon-fiber rod. By

3:56 knowing the diameter of the spheres and measuring the overall length, I can calculate the distance

4:02 between their centers. So I scanned the ball bar several times, from different angles, using both

4:08 cross-line and parallel-line laser modes. To find out how accurate and repeatable those scans are,

4:14 let's switch over to ScanRuler at ScanRuler.com. I initially built it as a replacement for GOM

4:20 Inspect, which hobbyists could use for free in the past. But for the past few years,

4:25 after Zeiss bought GOM, accessing it has required registration with a company email address.

4:31 ScanRuler has grown into much more than just a measuring tool, though, as you'll see in a bit!

4:36 After exporting the scan from Elegoo Scan, you simply load the STL into ScanRuler. The first

4:42 workspace is for 3D measurements. The idea is simple: fit geometric features to your scan,

4:48 then use those features to take measurements. For the ball bar, I fitted spheres to the precision

4:54 balls. You click on the surface, and the tool automatically finds and fits the sphere. Next,

5:00 go to Dimensions, where you can take a variety of measurements. Just click the two spheres,

5:05 and the tool gives you the center-to-center distance. I did this for all nine scans,

5:11 and every result was within the scanner's specified accuracy,

5:15 which at this size is 0.035 mm, or about 1.5 thou. My largest deviation was three hundredths of a

5:23 millimeter over a total distance of 257 mm, which is pretty good for most applications!

5:30 But you're not limited to measuring the distance between spheres.

5:33 The 3D measurement workspace is super useful for things that are difficult to measure by hand,

5:40 like draft angles or fillet radii. With a 3D scan,

5:44 those measurements only take a few clicks. You can also export all your fitted features

5:50 as STEP geometry with a single click, if you want to use them as references in CAD.

5:56 One reason semi-professional 3D scanners have become so good is the use of line lasers. These

6:03 thin projected lines allow very precise scanning, and because they're so bright, you can often scan

6:09 shiny metal or black parts without scanning spray. They even work in almost any lighting condition,

6:16 including outdoors! But the scanners I've used in the past had one inconvenience:

6:21 they always needed scanning markers. These are small reflective dots you stick onto the part

6:27 so the scanner can track its position in space. For smaller parts, that's not a huge problem,

6:33 because you can simply put the markers on the scanning table. For larger parts, though,

6:37 it means tediously sticking markers all over the object. So when I discovered that the M1

6:42 Ultra could also do markerless laser-line scanning, I had to try it right away!

6:47 My brother was just changing his tires, so I grabbed one and set everything up for scanning

6:52 in the garage. In the past, that could be pretty painful because these scanners often

6:57 draw more power than a USB port can supply. I'd always have to find a nearby power outlet. The

7:04 M1 Ultra is battery-powered and even comes with a spare battery, which makes it much

7:09 more convenient to use. For the wheel, I chose cross-line laser mode because it captures large

7:14 areas quickly and is great for bigger parts. To my surprise, tracking worked almost flawlessly,

7:21 even when I manually moved the wheel around to reach both sides. My goal was to capture the

7:27 wheel hub from both sides, and that worked great despite the different surface textures and colors.

7:32 Back in ScanRuler, I first aligned the part. I also noticed that my brother's car seems to

7:38 have a camber issue—and that these ten-year-old tires should probably be replaced next year. It's

7:43 crazy how much you can see in a 3D scan! I then created a section and noticed that Volkswagen

7:49 seems to use bolts with spherical seats rather than simple tapered ones. By fitting spheres here,

7:55 I could estimate that the spherical seat has a diameter of around 26 mm. The numbers vary

8:02 a little because this was a fairly rough scan focused on the hub, not on that specific detail.

8:08 By fitting planes to the wheel flange and the inner and outer faces of the rim,

8:12 we can measure the width and offset, or ET. To measure the pitch-circle diameter, I created a

8:18 section through the bolt holes and analyzed it in the 2D workspace. There, I could measure the hole

8:23 diameters, fit a circle through their centers, and determine the pitch-circle diameter. It was

8:29 basically spot-on compared to the specification! I love how easy this whole process has become.

8:35 When you manufacture a part, its dimensions will never match your CAD design perfectly. That's why

8:41 we have tolerances. For simple parts, conventional measurements are usually straightforward. But

8:47 especially with 3D prints that can warp, it's often hard to tell how far a part deviates

8:52 from its ideal shape. And that's exactly the kind of analysis a 3D scanner is great for.

8:59 Let's look at an example. Have you ever wondered whether printing ABS in a heated

9:03 chamber actually reduces warping compared to printing without one? I printed the

9:08 exact same rugged case twice: once with the printer door open and the heater off,

9:12 and once with the chamber heated to 65°C throughout the print. At first glance,

9:18 there wasn't a huge difference. So I scanned both parts with the M1 Ultra in cross-line laser mode,

9:24 which worked flawlessly without any surface preparation—even on the black, glossy plastic.

9:30 To capture the complete part, I took two scans: one from the top and one from the bottom. Both

9:35 scans only took a few minutes. Then I merged them in Elegoo Scan to create a complete model,

9:41 generated the final mesh, and exported it for deviation analysis in ScanRuler.

9:46 The deviation workspace needs two things: a 3D scan and reference geometry—in this case,

9:52 the model I used for printing. The scan doesn't have a defined orientation, so we first need to

9:58 align it with the reference. The auto-align feature handles that, much like the alignment

10:02 of two separate scans. Once the two models overlap, ScanRuler displays a deviation map.

10:09 Red means the scan lies outside the reference surface; blue means it's inside. At first,

10:15 both prints—the one made in the 65°C chamber and the one printed cold—look pretty similar,

10:21 with an average deviation of around 0.3 mm. But when I activate the animation feature,

10:27 one of my favorite parts of ScanRuler because it makes the differences so easy to understand, we

10:33 can clearly see what's going on. The part printed in the cold environment warps significantly,

10:39 especially in the large flat regions, which bow inward. The hot-printed part, on the other hand,

10:44 stays mostly flat but shrinks as a whole as it cools down. And that's something we can correct

10:52 by measuring one of the major dimensions and comparing it with the original STL. I adjusted

10:58 the scaling factor in the slicer, printed the part again, and rescanned it. Now it almost

11:03 perfectly matches the reference geometry! The main deviations left are the corners lifting,

11:08 which can be a problem when the plastic doesn't cool quickly enough. We could even go so far and

11:15 I might implement that soon, that we basically apply the inverse of the warped shape to teh

11:20 stl that we print, so when it warps during printing it warps to the perfect shape - a

11:26 method called pre-defomation. This is one reason I love having a 3D scanner in the workshop:

11:32 it helps me understand what's happening to my prints in a much more visual way!

11:37 Let's take a quick look at another handy workspace before we finally get to reverse engineering! The

11:43 third workspace is for wall-thickness analysis. On simple parts, you can obviously use calipers. But

11:49 on larger or more complex parts, you might not be able to reach every area, and the wall thickness

11:54 can vary significantly. Vacuum-formed parts are a great example: the more the material stretches in

12:01 certain areas, the thinner it gets. So I scanned the vacuum-formed hood of my INDX. This time,

12:08 I placed markers all over the part, because markerless tracking can be unreliable on flat,

12:13 featureless surfaces, and markers are still the most reliable option. I also placed some

12:18 3D-printed targets with markers around the hood on my desk. Then I scanned everything

12:23 in cross-line laser mode, making sure to capture both sides of the panels,

12:28 especially around the bends. Once the scan was processed and meshed, I went back into ScanRuler.

12:33 Here, I noticed that all the surface normals were somehow flipped. Luckily, that's easy to fix in

12:38 the mesh workspace, where you can also close holes and smooth the part. You can even edit your scan

12:43 and perform Boolean operations using features you fitted earlier—for example, to recreate holes that

12:49 weren't scanned to their full depth. But back to the hood. After correcting the surface normals,

12:54 I returned to the wall-thickness workspace. With one click, I got a beautiful color map showing how

12:59 the thickness varies across the entire part. It's thickest near the edges, where the sheet

13:05 was probably clamped, and I suspect the original stock was 3 mm thick. The top of the hood is

13:11 already more than a millimeter thinner because of the stretching, and it's not even uniform.

13:16 The thinnest areas are around the large lower bends, where the material is less than half its

13:21 original thickness. During manufacturing, these are probably the areas most likely to fail because

13:27 the material has been stretched so much. This information can be incredibly valuable for process

13:33 development or quality control, and you can get it with an affordable 3D scanner and a free tool!

13:40 Now let's get to the part you've probably all been waiting for: reverse engineering!

13:45 The reverse-engineering workspace is a complete CAD system. And if you just want to design

13:50 something from scratch, you can do that here too, without a 3D scan. The nice thing about

13:56 building this myself is that I could add features I've always wanted in conventional CAD software,

14:02 especially for 3D printing. One example is the thread tool. It includes a 45° thread

14:08 profile that's easier to 3D print, and with one click you can add chamfers to

14:12 both ends or give the thread a small offset so printed threads don't bind.

14:17 Reverse engineering is powerful, even for simple repairs like recreating

14:21 this piece that broke off my Vespa's engine housing. I don’t have teh original anymore,

14:27 so we have to design it ourselves. First, let's make a quick scan. Here I'm using the M1 Ultra's

14:33 wireless mode. You still need a PC or Mac, but you don't need a cable between it and the scanner.

14:39 Just switch the little knob on top to activate Wi-Fi mode and connect your computer directly to

14:45 the scanner. As long as you're within Wi-Fi range, you can scan wirelessly, which is especially

14:50 useful for larger components. The screen on the M1 Ultra mirrors your computer's display,

14:55 so you can always see what you're scanning and whether you're at the right distance.

15:00 The downside is that scanning is a little slower because of the reduced bandwidth, and markerless

15:06 laser-line scanning isn't available in this mode. That's why I put markers on the engine

15:10 housing. After only about a minute of scanning in parallel laser mode, I had a beautiful—or maybe

15:16 sad—3D model of my broken engine housing, including the fracture surface itself.

15:22 So let's repair it. First, I fitted a plane to the rim of the housing as a reference for a sketch.

15:27 Then I switched to the reverse-engineering workspace, created the sketch, and drew the

15:32 missing wall with a little overlap. Next, I exited sketch mode and extruded it into the housing. But

15:39 of course, that doesn't give me a perfectly fitting replacement piece yet. So I switched

15:44 to the mesh workspace, where there's a tool called Trim to Scan. I actually call this virtual

15:50 kintsugi! Kintsugi is the traditional Japanese art of repairing broken ceramics, but we're doing it

15:57 with a 3D scanner and ScanRuler! When I enter this mode and select the wall I just created,

16:02 the tool typically finds the fracture surface automatically. I can also choose whether to

16:06 leave a small gap for glue or extra tolerance. Then I select ā€œTrim to the Break,ā€ and the tool

16:11 extends the fracture surface and trims my overlapping wall to match it. The result is

16:16 a perfectly fitting part I can 3D print and glue straight into place! Pretty impressive, isn't it?

16:23 But let's return to the reverse-engineering workspace. What we just did was useful, but

16:28 it wasn't really reverse engineering. Normally, reverse engineering means taking a highly detailed

16:34 3D-scan mesh and recreating the CAD model that could have been used to manufacture the original

16:40 part. And that's exactly what I built this workspace for. Let's start with a part from our

16:45 fridge that recently broke. First, I scanned it with the M1 Ultra in parallel-line mode. Compared

16:52 to cross-line mode, you scan closer to the part, but you can capture finer details. Again,

16:58 I needed to scan from two directions to capture every surface, but that only took a few minutes

17:03 on the scanning table. After merging and exporting the scan, you can see just how much detail the

17:09 laser scanner captured. The first step in reverse engineering is to align the part, because it's

17:15 usually scanned in an arbitrary orientation. The easiest method is the auto-align tool, which

17:20 detects the major surfaces and, in my experience, gets the orientation right about 95% of the time.

17:27 Then I created a section to guide the design. From there, it's much like any other CAD tool. Here I

17:31 created a sketch on the section, drew two rectangles, extruded them to the part's

17:35 dimensions, added a few fillets, and hollowed it out. There are also handy tools that let

17:42 you snap surfaces to the scan or suggest fillet radii based on the mesh underneath.

17:48 You get a full feature timeline, parametric dimensions, and even calculations inside

17:53 dimension fields—everything you'd expect from CAD software, but optimized for reverse engineering.

18:00 That's all nice, but with more complex parts, this process can quickly become tedious.

18:05 So one day I asked myself: if Claude can help build ScanRuler, couldn't it also use the tools

18:12 inside ScanRuler to reverse engineer parts by itself? That's when I implemented an MCP server,

18:19 which acts as an interface between an AI agent and the software. It works

18:24 with a wide range of LLMs, including local ones. The setup is documented on GitHub,

18:29 but the easiest way is to activate the server in ScanRuler's settings and then ask Claude or Codex

18:34 to connect to it. And in no time, the agent can then operate ScanRuler's tools for you.

18:40 My approach is very different to most what has been on the market before. You

18:44 were always able to convert a mesh into a BREP in CAD but that meant often converting

18:50 every triangle to a brep element. That might give you an editable mesh but not something

18:56 to really work with. Using my approach your AI Agent will have the tools with ScanRUler

19:03 to understand the intend of a part trying to filter out the individual design elements of

19:08 a component from a noisy scan to give you clean CAD geometry which is honestly a game changer!

19:17 Here's how I typically use it. I create a folder on my PC and copy the 3D scan into it. Then I ask

19:24 my AI agent to reverse engineer the part. So far, I've had the best results with Opus 5.5. I also

19:31 include a short description of the part and what's important to me. Generally, the more context you

19:37 provide, the better the result. ScanRuler includes guides to help the agent reverse

19:42 engineer parts efficiently. It typically examines the scan, aligns it, fits geometric features,

19:48 and creates sections. From there, it develops a plan for building the model. For simpler designs,

19:54 a run can take anywhere from a few minutes to an hour, and you can follow the process

19:59 in the ScanRuler window. When it's finished, the agent runs a deviation analysis and may flag any

20:05 problems. But most importantly, you get a fully editable CAD model of your part. You can export

20:12 it as a STEP file to continue working in another CAD tool, or refine it directly in ScanRuler.

20:18 But one of the most powerful features might be something you don't notice right away:

20:23 the notes tool. It lets you attach notes directly to your part and communicate with the agent. So

20:29 if you don't like how it created a feature, just add a note and ask it to change it. You

20:34 can do this before, during, or after a run. For example, my fridge bracket has a broken

20:40 connection on the inside that I want the agent to repair. So I simply add a note asking it to

20:46 recreate that connecting bridge. About a minute later, I have not only a reverse-engineered CAD

20:51 model but one where Claude has also repaired the broken feature, ready for 3D printing!

20:56 And this doesn't just work with the simplest parts. I have another fridge holder that broke,

21:01 and I promised my aunt a year ago that I'd fix it. But I never got around to reverse engineering

21:07 it to make a replacement. Now I can simply ask Claude to reverse engineer the part and fix the

21:13 broken section at the top. The more information I give it, the better it performs. Pointing out

21:18 exactly where the fracture surfaces are helps it create a much better replacement part.

21:23 And the possibilities don't stop there! For example, I had ScanRuler and Claude reverse

21:28 engineer my bike computer. The agent struggled a little with the geometry along the way,

21:34 and it took some back-and-forth to get this result. But from there,

21:38 I simply asked it to design a 3D-printable protective sleeve that I could make from TPU,

21:44 including the necessary cutouts. And this is what I got! Somehow,

21:47 it figured out how to do it with the tools available, and the printed sleeve fits perfectly!

21:53 I also want to be completely open about the limitations: the tool isn't perfect. With

21:58 more complex parts, freeform surfaces, or very rough castings, the results often aren't great.

22:04 That's partly due to ScanRuler's limitations and partly due to the AI agent itself. I've

22:10 had the best results with Opus 5.5 so far. Less capable models sometimes do a terrible job. I also

22:17 tried a few local models, but with my limited hardware, the results were pretty poor. Still,

22:22 I expect things to improve—and hopefully get cheaper—over time. I'd also love to hear your

22:28 feedback. Since ScanRuler is open source, you're welcome to contribute to the project yourself!

22:34 Every ScanRuler workspace can be controlled by an agent. So AI isn't limited to reverse engineering;

22:40 you can also use it for a complete 3D-scan analysis. Remember the ball bars from the

22:45 beginning? I simply put all the scans into a folder and asked Claude to analyze them and create

22:50 a full report. That's pretty neat, and it saves me from having to do all that repetitive work myself.

22:57 There are so many more things you can do with this tool, and I'd love to see what you come

23:01 up with. Just to be clear, connecting an agent is completely optional and you can use the complete

23:07 tool obviously without it for every task as well. It's only a demonstration how this novel approach

23:13 could potentially automate many tasks that you previously didn’t have the time or the skill for.

23:20 I hope I've shown you how software like ScanRuler

23:23 is making 3D scanning more and more powerful. It's turning something that

23:27 used to be a nice tech demo—or required expensive professional software—into a

23:32 practical way to solve real problems in your workshop, hobby, or small business.

23:38 I've also had a really good time with the Elegoo M1 Ultra. Its three laser

23:42 modes make it versatile for a wide range of applications,

23:46 and it lets you scan parts that previously needed painstaking preparation with scanning spray. The

23:52 structured light mode is a great addition if you especially want to scan people or large

23:57 objects! The swappable batteries and wireless operation also make it really convenient,

24:03 especially away from your desk. At $1,599 during the early-bird sale, it's definitely not the

24:09 cheapest scanner on the market. But compared with alternatives from Creality, Revopoint, or Einstar,

24:15 I think the M1 Ultra offers a lot for the money. You'll find a link with more information and where

24:20 to get the M1 Ultra in the description. Thanks again to Elegoo for sponsoring this video!

889 290.2K
@tomulinek This is the BEST 3D free project for years. šŸ‘šŸ‘šŸ‘ Stephan killed it. 6 likes
@JeffBradway Really cool stuff. I bet you could have a AI agent reverse engineer using Scan Ruler then once youre happy with it, ask the agent to build the part natively in FreeCAD using the same feature structure. 2 likes