PartDesign: operations on sketch with spline external intersection are catastrophically slow
- Dominant language
- C++
- Stars
- 33.6k
- Forks
- 6k
- Avg merge
- 3d 15h
- Merged PRs (30d)
- 196
Description
### Problem description
Trying to perform solid operations (Pad/Pocket, Loft, Pipe, ...) using a sketch that contains an External Intersection of a spline surface (in the example below, Loft between 2 b-splines) takes a very, *very*, **very** long time especially as they compound.
Does not happen when the same operations are done with External Intersections of simpler geometry like segments off a plane/ruled surface.
Caused by OCCT. @pieterhijma
### Workbench affected?
Part Design
### Steps to reproduce
1. Open [loft_intersect.FCStd](https://github.com/user-attachments/files/30989128/loft_intersect.FCStd.zip)
2. Trigger a recompute of the body
3. Go take a coffee
### Expected behavior
OCCT performance to be as bad as usual.
### Actual behavior
Unusably bad performance. The B loft takes upwards of a minute, and the C pipe takes upwards of 5.
Trying to pocket the B1 profile from the solid took upwards of 30 minutes to reach the *preview*, and FreeCAD never responded after confirming the operation, being stuck in `libTKMath.so` and friends.
### Development version About Info (in Safe Mode)
```shell
OS: Void Linux (KDE/wayland)
Architecture: x86_64
Version: 26.3.0dev.20260804 (Git shallow) AppImage
Build date: 2026/08/04 21:26:11
Build type: Release
Branch: (HEAD detached at 80923ab1b)
Hash: 80923ab1be1f31fff0a54db956177d582a658bab
Python 3.11.14, Qt 6.8.3, Coin 4.0.10 (bundled), Pivy 0.6.11 (bundled), Vtk 9.3.1, boost 1_86, Eigen3 3.4.0, PySide 6.8.3
shiboken 6.8.3, xerces-c 3.3.0, Clipper2 , IfcOpenShell 0.8.0, OCC 7.8.1
Locale: English/United Kingdom (en_GB)
Stylesheet/Theme/QtStyle: FreeCAD.qss/FreeCAD Dark/
QPA/File dialog/Color dialog: xcb/via Qt/via Qt
Navigation Style/Orbit Style/Rotation Mode: CAD/Free Turntable/Drag at cursor
Logical DPI/Physical DPI/Pixel Ratio: 96/92.6073/1
OpenGL version/vendor/renderer: 4.6 (Compatibility Profile) Mesa 26.1.5/Intel/Mesa Intel(R) Arc(tm) B580 Graphics (BMG G21)
```
### Last known good version (optional)
```shell
```
Contributor guide
Assessment
This issue has not been assessed yet.