Bending an extruded surface
If I have a sketch and extrude a solid from the sketch, is it possible to bend the extruded solid as if it was fed to a rolling machine?
I don't have a code example because without this bending operation I don't know how to model this effect.
e.g. https://blenderartists.org/t/bendind-in-a-plane-into-a-cilinder/1476118
@phkahler great to see you attempting this. Over the years I've been considering this - most recently at the time Dune3D started.
In my head it works similarly to what you started outlining with one more level of abstraction:
A chamfer/fillet is:
- An edge modifier class/module/cpp_file goes over the selected edges and duplicates them (in reality each visible edge is already two coincident edges so the code could "just" move them) - this is specific to the fillet/chamfer tool.
- A general purpose patch tool (with conditions as parameters - e.g. G1 continuity), which is a separate class, generates NURBS patches to close the holes between the edges created in the previous step.
In the future the patch class can be used to implement generic patch functionality - e.g. close a "random" hole outlined by a contour of any edges (not necessarily straight) in 3d.
A general purpose patch tool may/will have to generate new edges on it's own (imagine a corner where a few edges meet and they are all filleted) and I am not sure how this will be handled by this approach. Intersections of the newly created NURBS surfaces will be these new edges.
- in reality each visible edge is already two coincident edges so the code could "just" move them
Woops you're right. Curves are not duplicated, but there are two TrimBy, one for each surface that meets along a curve. These reference the same underlying curve but one is "backward". So I'll still need to generate 2 new curves, and move both Trims rather than creating a new one. Good news - the PWL points are not in the trims!
Assuming all fillets meeting at a point are the same radius, the surface we want there is spherical. It's really hard to find anything (with google) on spherical NURBS patches, never mind triangular ones. But that's for later. Chamfers first and Fillets with 1 or 2 per vertex. I'm both excited and dreading this...
I'm both excited and dreading this...
Indeed :-)
I very welcome the attempt to add this. :)
Getting back to this soon. Here is a sketch to visualize how fillets meet at a corner. Drag the green lines around. corner_arcs.zip
For equal radius fillets it forms a spherical triangle. Edit: This is not the new feature demo, it's a line sketch to aid understanding the geometry of corner fillets.