Untrim patch hole?

I’m curious if this exists, so I’m asking first. It would be useful if it doesn’t.

You’ve got a surface with a hole of some sort cut out. It’s not a perfectly round hole and it’s on an A-side surface.
Well, now a coworker tells you that’s not a hole, it’s just a clear part. Shoot.

Patch quick and dirty. It’s not usually the best solution.
What I’m looking for is a tool to do exactly what I’m about to explain, but all in one step.

So I would clone that neighboring surface using the Extract Surface command. Untrim all and keep the curves. Now trim everything except the hole.

But that could be done all in one command right? Does that exist?
Select surface, select hole…yay, now I have a perfectly formed surface because it actually uses the exact surface that was there before.

If you have a better way of doing that, please let me know. If not, that would be a great tool to add.

Hello -please post an example, but UntrimHole might be the thing.


Ok, here’s an example. I want to keep everything here. Someone made this nice little window. It’s clear, it’s not supposed to be Empty.

Untrim hole does get rid of the whole. Then I can split the surface with the kept objects.

I was just looking for a way to do that in fewer steps. Basically I want to patch that hole with the original surface. But I still want them as two surfaces. Even better if it could do that with solids, on something like this:

So I want to keep that solid alone. This is probably the most difficult example I could think of. I intentionally made sure to cross over surfaces. Because that’s the most annoying thing to try and untrim and retrim to get what I would want. I want the funnel on the inside of that, but the surfaces should match the untrimmed holes.

Hopefully that’s clear enough. Sorry, it’s still somewhat difficult to explain. I’ll give it another go if that’s not clear.

Hello - I’m afraid I don’t see any one-step way to get at this - it will take surgery. A crude macro will maybe get you some of the way there -

! ExtractSrf Pause SelLast DupBorder SelPrev UntrimAll Split

More than that will take some scripting I’d guess.