Revolved Trimming

How can I trim the plane to be the largest that it can be and rotate around the axis without contacting the cylinder?


test.3dm (173.0 KB)

1 Like

I have thought to revolve the edge of the cylinder around the axis and trim the plane with that however, this is a simplified scenario of a much more complicated 3D problem that I run into where that is not always possible. I.e. It is not always obvious where the plane will intersect the boundary.

run the intersect command then hide the cylinder and look at the resulting curves.

you may need to draw additional curves to complete the trim area as it has to be closed in order to actually make a trim.

see below

Yes but It can actually be larger than that straight line without hitting

I’m not sure I follow… what am I missing?

the blue line is the connection between the two red lines that were generated by the intersect command. that is the contact point if you were to revolve around your dashed vertical line.

Are you referring to like a spherical cut shape inside the cylinder?

in the case below, I used a between snap to determine the center point then snapped the diameter to the edge of the cylinder in front view.

By “largest that it can be” Does that mean you only want to trim the part of the plane in contact with the cylinder? How much clearance do you need to have it not “contacting the cylinder?”

Hi Jim, correct. Trim only the part of the plane that contacts the cylinder as it rotates about the axis. The clearance is not all that important as I can just offset the boundary surface to create a clearance.

heres a more complicated one that more accurately reflects what I need to do.
test.3dm (393.9 KB)

The plane needs to be trimmed such that as it rotates about the axis, it will not contact the boundary surface, but only trimmed where it would if that makes sense.

By that definition of the problem you already are there - you don’t need to trim anything. The plane fits in the cylinder. But in real life you would need to trim some material off the plane so that it can rotate without contact.

You aren’t allowed to trim away a region with no area. You would need to offset the intersection by at least your file tolerance to be able to trim away any of the plane.

To clarify, the plane is rotating about the red dotted axis. It intersects the boundary surface as it rotates.

In this example assuming that plane will rotate about the axis of the red object just trim the plane with the red object. Do that in wireframe so you can see the parts you want to remove. Again, if you need clearance you will need to offset the intersection curve and trim with that.

That looks far more complicated. I don’t think there is any way to do that automatically. You can start by intersecting the plane and the red object and revolving that curve about the red axis. You can see if that intersects the red object someplace else. Eventually you should be able to find where the revolved intersection only contacts in one position.

Yes however how would I find the angle that produces the largest trim needed

I suppose I can just do it iteratively however that wouldn’t product the exact answer I am looking for.

Unless somebody has made a script or something I think that is all you can do.

The problem is there is not a single rotation of the plane that produces an intersection curve that you need for trimming. The best you can do is rotate the plane a little and trim some off repetitively. If you rotation increments are small enough you will end up with a fairly smooth border for the plane that allows it rotate without extending into the red object

I missed the fact that this was not centered on the original object

try this-

I arrayed the surface 20 times, then intersected them, the revolved the surface and curves one by one back to 90degrees and then curvebooleaned the resulting intersect curves, then rebuil that curve with 20 control points. then extended it a bit, and trimmed one of the surfaces.

then revolved the edge of that surface to check clearances.

see attached file. does this do what you wanted?


revolve.3dm (525.8 KB)

Yes, thank you!