Getting Intermediate Trimmed Surfaces

Hi all,
In the below picture there are 3 surfaces. Surface B is derived after trimming surface A. Surface C is derived after further trimming surface B. Thus the Underlying surface for C would be surface A which can be accessed using BrepFace.UnderlyingSurface method. But is there any way to get the surfaces B from C by using any method in Rhinocommon?

HI Darryl,

Breps do not maintain a history of trimming operations. Thus, there is no way, using RhinoCommon. to get B from C.

– Dale

Well, there’s probably one way: Undo. :wink:

Yeah. Untrim removes both trims at once.

I was trying to find a way to reverse the surface fillet command. Because the surface fillet command trims the surfaces involved. When the fillet surface is added, it trims the existing surfaces. So in order to reverse the fillet, it is require to have information about the surface which existed before the fillet surface command was executed. But the question is, before the surface fillet command is executed, the surface involved might have been already trimmed. So in order to reverse the fillet, it is required to access the surface which existed before the fillet surface command was executed.

Since you are doing this in code, why not take the initiative yourself to copy the original before trimming or filleting. That’s pretty much what Rhino does for lots of commands. Then you’ll have what you need to revert back if necessary.

1 Like