CadQuery / CadQuery/cadquery

Using fillet() and cutThruAll() interact poorly

Open
#716 5 comments 0 reactions 0 assignees View on GitHub
OCC kernel issue
Dominant language
Python
Stars
5.8k
Forks
541
Avg merge
3d 2h
Merged PRs (30d)
5

Description

If I build a part using a `fillet()` on the bottom-inside edges of a section removed from a larger part, and then try to use `cutThruAll()` to cut some vertical through holes, the holes turn into columns, or holes, or disappear entirely.

Code that fails:
```
part = (cq.Workplane().rect(142.875,213.360)
.workplane(offset=-30.1625).rect(142.875,213.260)
.loft()
.cut(cq.Workplane().rect(128.99127,195.66627)
.workplane(offset=-9.535).rect(127.0,193.675)
.loft()
.edges('Z')
.moveTo(-62.8625,-96.2).circle(0.875).cutThruAll()
.moveTo(-62.8625, 96.2).circle(0.875).cutThruAll()
.moveTo( 62.8625,-96.2).circle(0.875).cutThruAll()
.moveTo( 62.8625, 96.2).circle(0.875).cutThruAll()
)
```

Code that succeeds:
```
part = (cq.Workplane().rect(142.875,213.360)
.workplane(offset=-30.1625).rect(142.875,213.260)
.loft()
.cut(cq.Workplane().rect(128.99127,195.66627)
.workplane(offset=-9.535).rect(127.0,193.675)
.loft()
.translate((0,0,0.01)).translate((0,0,0))
)
.faces('>Z')
.moveTo(-62.8625,-96.2).circle(0.875).cutThruAll()
.moveTo(-62.8625, 96.2).circle(0.875).cutThruAll()
.moveTo( 62.8625,-96.2).circle(0.875).cutThruAll()
.moveTo( 62.8625, 96.2).circle(0.875).cutThruAll()
)
```
Other ways of cutting the holes also fail if `fillet()` is called, though they fail in different fashions.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.