View Issue Details

IDProjectCategoryView StatusLast Update
0001250FreeCADBugpublic2014-01-18 11:35
Reporterpkoning Assigned To 
PrioritynormalSeveritymajorReproducibilityalways
Status closedResolutionwon't fix 
Product Version0.13 
Summary0001250: Boolean operations seem surprisingly slow
DescriptionI'm doing a bunch of CSG using the Python API. A lot of that involves extruding components, then using "fuse" to combine them, and "common" to trim them to the right shape.

Some of these operations take a very long time. For example, the final step is a common of a shell made up of 18 parts, which has a total of 552 faces, with a solid to trim it; that solid has 18 faces.

The operation works fine, but it takes about 55 seconds. The resulting trimmed shape has 466 faces.

I could understand this taking a fair fraction of a second, but nearly a minute seems very strange.
TagsNo tags attached.
FreeCAD Information

Activities

wmayer

2013-09-25 09:32

administrator   ~0003659

Well, this is something we have not under control. However, with a newer version of OpenCascade a few people reported that boolean operations are much faster now.

See also: http://opencascade.blogspot.de/2008/12/why-boolean-operations-are-so-sloooooow.html

Nevertheless, I fear to close this "bug" as not fixable because this is not in our hand.

pkoning

2013-09-25 22:45

reporter   ~0003671

Very strange. It's not as if boolean operations are NP-complete! I suppose it involves operations on all the pairs of faces of the two objects, but that's only 10,000 or so total. How does one use up 10 ms per face pair on a modern processor that executes several million instructions in that time?

wmayer

2014-01-18 11:33

administrator   ~0004094

Since you are doing CSG modelling you can also have a look at OpenSCAD. In FreeCAD this is already integrated and you can use the GUI therefore.

wmayer

2014-01-18 11:35

administrator   ~0004095

As said earlier it's not in our hands to optimize the boolean operations. So I'll close it as unfixable.

Issue History

Date Modified Username Field Change
2013-09-24 14:51 pkoning New Issue
2013-09-25 09:32 wmayer Note Added: 0003659
2013-09-25 22:45 pkoning Note Added: 0003671
2014-01-18 11:33 wmayer Note Added: 0004094
2014-01-18 11:35 wmayer Note Added: 0004095
2014-01-18 11:35 wmayer Status new => closed
2014-01-18 11:35 wmayer Resolution open => won't fix