Closed echo-bravo-yahoo closed 3 years ago
Hey @Trial-In-Error, Yeah it is supported in an indirect way, but I should probably document the intention better though.
polyRoundExtrude
supports negative fillets, you have to then put on your normal OpenSCAD thinking hat and use difference with another polyRound like so.
radiiPoints=[[10,0,10],[26,20,1.1],[8,20,10],[0,7,0.3],[5,3,0.1],[-4,0,1]];
radiiPointsNegative=[[11,10,0],[15,15,1.1],[11,15,1.1]];
negativeFilletsForHole=-1.5;
extrudeHeight=2;
difference(){
polyRoundExtrude(radiiPoints,extrudeHeight,0.5,0.5,fn=8);
translate([0,0,-0.005])polyRoundExtrude(radiiPointsNegative,extrudeHeight+0.01,negativeFilletsForHole,negativeFilletsForHole,fn=8);
}
A big assumption under the hood with polyround
is that you'll be making a ring/closed-loop. It might be possible to take that assumption out of the code, but it's pretty old code. if I were to do a re-write I would change a great many things
Does that help?
Is there a way to use polyRoundExtrude on a polygon set with internal holes (e.g., a doughnut)?
If not, is there a way to achieve a similar effect of top+bottom chamfers (rounding X/Y/Z) and rounded edges (X/Y)?
polyRound
smooths in (X/Y), but then extruding it doesn't have a convient way to chamfer, andpolyRoundExtrude
can't take in the output ofpolyRound
...I may source-dive and cobble something together later, if I have the time...