Hi,
I am trying to divide a surface with rounded corners into a number of panels, using domain^2 and isotrim. I’m not understanding why the isotrim results in geometry larger than the original curve.

If it helps - I’m building a set of drawer faces in a dresser: the original curve is entire front opening, and I will divide it into 2-4 rows and 2-4 columns of drawers depending on the size. I want to take each resulting drawer face and be able to offset it slightly smaller.

@HS_Kim, you have inconsistent widths in the panels, because the untrimmed surface is larger than the actual filletted rectangle.
Same with @anon39580149’s solution if D is larger than 2…

Thanks all. It seems like maybe isotrim isn’t the correct approach?
How would I divide the surface into equal sized panels (while keeping the corner curves)? Is there a cleaner way to do this other than drawing the various geometry options for the gaps between the drawers and doing a regional difference?
Is there a way to use Divide Surface and create the panel rectangles from the points?

Helen, after further investigating, your start curve is not really planar (many small differences in Y coordinates) and out of the 4 corners, 2 are arcs, 2 are ellipses portions.
That is half of the “problem”, making the surface un-shrinkable from the c#script.

The other half is using the Boundary component, if you use it, that too makes the surface un-shrinkable.
Converting it directly to a surface, not.

If you use/create a clean filleted rectangle, skip Boundary, both solution, @HS_Kim’s and @anon39580149’s, works fine (by adding the c# shrink step).

Here a stupidly complex solution to prioritize speed…