Site Tools

Tangent cylinders

Summary: FilletEdge cannot resolve the intersection of the fillets at the point where the two cylinders meet at a tangent, it leaves a gap. A clean way out of this situation, with a solution that uses all rolling-ball filleting is to back up and use FilletSrf rather than FilletEdge, and do all the trimming “by hand” once the fillet surfaces are created

Original tangent cylinders.

First, build all the fillet surfaces.

FilletSrf - fillet between the cylinder and the top plane of the lower cylinder. Set Extend=Yes and Trim=No.

Notice the fillets leave a gap.

UntrimBorder the fillets.

Now, ExtendSrf the upper edge of the lower cylinder a bit as in the image. Create a fillet surface between the upper fillet and the lower cylinder - (this is the transition surface that is not made by FilletEdge) UntrimBorder this surface as well.
If you look closely at the ends if the fillet created in the previous step, you'll see that it peters out just barely short of the actual tangent point - this needs to be fixed or there will likely be a naked edge at this location when it's all done and joined up. To fix this, since it is so close to the correct point, turn on control points for the fillet surface and window select just the points at the very tip. Use SetPt to snap these to the seam point on the upper fillet.

Snap to the top of the upper fillet.

Now it is a matter of trimming all of these surfaces to one another.

Split the tapered fillet surface using Split > Isocurve and snapping to the Int of the fillet edges where they come together on the top plane. Delete the end that does not taper.

Mirror this surface to the other side (Center osnap on the lower cylinder edge works well to set up a mirror axis in this case, then use Ortho (Shift key) to force the axis as needed to get the surface mirrored to the other side) Using Sub-object selection (Ctrl-Shift click) to select the edges of the tapered fillet, Trim the lower of the first two fillets

Use sub-object selection to select the upper edges of the tapered fillet and use these to trim away the upper fillet where it sticks out into the air.

The result should look like this.

use the other surface edges to trim all the surfaces to each other, inluding that top plane on the lower cylinder.

Join all the surfaces and Cap if needed - it should close up.

rhino/tancylinders.txt · Last modified: 2020/08/14 (external edit)