Surface morph mechanics (how it works)


I have lots lots of small objects I want to put onto big object (each unique). It takes an hour to morph all of them. If beforehand, I join them into one single object (everything else the same), would it make the morph faster?

Thanks a lot!

I doubt it. Morphing is a fairly slow operation. Which morph are you using?

Thanks for your reply! I am using the SurfaceMorph function

Yup, that one is particularly slow, as each individual point motion also requires surface closest point tests.

There’s four things I can think of that might make it faster:

  1. Deform meshes instead of surfaces. That tends to be much faster.
  2. Deform with Preserve Structure = True, that will also be much faster as it only applies to control-points, not the surfaces in between them.
  3. Lower the tolerance of the deformation.
  4. Multi-thread the computations.

For 2, 3 and 4 you’ll need GH2. Grasshopper 2 treats deformations as data types so you can use the Apply Deformation component to set either the tolerance or the PreserveStructure values.

Thanks a lot for your reply! I checked out your post on gh2 release and it looks like a game changer! Look forward to hearing more!