Using Squish with Minimal Deformation


I wanted to share a problem I am having similar to @PetcuDaniel and @davidsmavrov on getting a non-developable surface to squish with the least possible deformation.

Firstly, I’d like to explain my goal so that I can get more input on how to go about achieving what I am looking for. I need to locate dots on a surface and develop a vinyl stencil that I will be able to physically cut and overlay onto a CNC milled model similar to the surface I am working with.

I have tried two methods of trying to locate the dots on the surface. I start by locating the position and size of the dots on the surface by drawing out spheres on the surface then extrapolating a curve from the intersection of the surface and sphere. This first method seems to be more accurate when I use SquishBack as a test to see how those dots may appear once I apply the vinyl on my milled model. The second method was to take the radius of those spheres and project a circle using the respective radii onto the already squished surface.

I have tried using the Grasshopper script @corellaman has made for the shoe example, but when I try to run the command line the flattening process seems to get stuck and glitch out.

I am new to Grasshopper, so it could be a simple thing I am missing, but any help would be appreciated.

Here are the files I’m working with:

When I’m modifying the last heel height sometimes the flattened surface doesn’t look right till I’m not playing a little with ‘strength’. A simple increasing and decreasing of the value of the ‘strength’ parameter is solving the problem. I haven’t the time to understand the mechanism - what is important to me is the result. For sure it is not the smartest idea but this I would suggest to try. I believe @corellaman have more ideas!

Part of the problem is that the surface you’re using is a trimmed surface, which complicates the generation of a mesh to use.

In this (updated) example I include a couple of things to regenerate your shape as an untrimmed surface.

Also, if you want to investigate some remeshing options I’ve included an option to use a MeshMachine. The mesh behaves a bit odd so maybe don’t use it :sweat_smile:

Anyway, using the regular mesh through kangaroo gives you this:

As with @PetcuDaniel’s case, the end result would be a happy medium of playing with all the settings and whichever accuracy you’re searching for. (1.2 MB)