Add Shrinkwrap To Rhino7?

Hi all
Watch from 4:50

have you tried quadremesh?

Yes, but Shrinkwrap works much better

Hi all

I’m making some progress on this.
I was just making some changes in Kangaroo’s Solid point collision in this thread, and after the changes I made for that, it seems to be working better for shrink wrapping.
Here’s a test -

from left to right -

input scanned mesh,
manually drawn skeleton,
fattened and subdivided,
shrink wrapped onto scan mesh to give a coarse quad layout (as described here)

This workflow still needs some improvement to be really reliable, but potentially could become a command.



Here’s a definition if you want to try (161.7 KB)


that could be amazing!! please keep working on this!!


Oh yes !! Please try to include it in v7 ! It would be tremendously useful as a quick way to get “dirty” geometry into meshers for CFD or FEA.

1 Like

Hi Daniel,
Thanks for the amazing work !.
The C# component of this gh file needs a namespace kPlankton which I could not find. Where can I find this please ?

Hi @a.mohsen
You need to set the assembly reference location of the script to your copy of the Kangaroo solver dll, making sure you select the same one being loaded by the Rhino WIP. Usually this is somewhere like:
C:\Program Files\Rhino WIP\Plug-ins\Grasshopper\Components\KangarooSolver.dll
This won’t work in Rhino 6.

Thanks @DanielPiker
I have done that already. It might be that the kangaroosolver.dll is different than the one I am using ?
I am using the latest one from Kangaroo2 which supposes to be fine or ?

The package is called Kangaroo242

Which version of Rhino are you using?

I am using Version 6 SR28

Ah, I think this should actually work without the KPlankton reference. Just delete line 27 in the script.

I have thought about it as well but as you see. I have got this error:

  1. Warning (CS1701): Es wird angenommen, dass der Assemblyverweis ‘RhinoCommon, Version=5.1.30000.13, Culture=neutral, PublicKeyToken=552281e97c755530’ mit ‘RhinoCommon, Version=6.28.20199.17141, Culture=neutral, PublicKeyToken=552281e97c755530’ übereinstimmt. Möglicherweise müssen Sie eine Laufzeitrichtlinie bereitstellen.

That’s just a warning. I think it should still run if you dismiss it?

Yes, but the problem is that its output is not a kangarrogoal object. It is SolidPtCollide_New and Kangaroo shows this error:

  1. Solution exception:Das Objekt des Typs “SolidPtCollide_New” kann nicht in Typ “KangarooSolver.IGoal” umgewandelt werden.

There has to be a line that converts this into a goal somehow