Refit Mesh Object to new shape

this guy…

how did you create that cage ?

Thank you.
Ian :slight_smile:

Has he just split the original mesh with some cutting planes and then done a TriRemesh?

I started from a box, extruding and deleting faces, then quadremeshing and pulling onto the reference hand with a similar definition as the other part.

I like the way @martynjhogg describes though and it might actually be easier.

4 Likes

Indeed, using mesh split then remeshing that seems to work well

3 Likes

Wouldn’t it be an idea to add a boolean output to the Solver which triggers “True” on “Converged”? That way one could automate complex nested workflows in efficient ways.

// Rolf

1 Like

Evening Daniel.

I was trying out your code this evening.
One little thing I noticed… when you create the first cage… copy that and move it onto the new body… then change the cage a little to fit around the new body… well depending on what you do with the new cage… (changes) you get very off results… crushed up results or just simple weirdness… ( screen shot )

Just so I totally understand…
(1) Make a copy of your original object mesh-
(2) Split the new mesh so it covers where your object will be placed.
(3) Select your original object and also the new cut mesh ( cage ) into the top of the grasshopper system
(4) Copy that cage mesh and move it over the new body ( body 2 )
(5) Edit the new cage to best fit the new body ( body 2)
(6) Add the new cage and new body 2 into the grasshopper script.

Two questions. How best to edit the cage ? so I get a clean transfer ?
Second question. Should I re-quadremesh the original cage and also the second cage, so they both have the same quad count ?

Thank you. Ian :slight_smile:

I think you need to create the cage-mesh (and quad it) just one time

once you have a good cage-mesh, you will use it as:
→ cage n°1 as base-point for the transformation of the HQ mesh
→ a copy af the same cage-mesh (baked in Rhino → reoriented in space in such a way it kind-of covers the new hand → re-referenced back to GH) that goes through the Kangaroo definition and becomes the cage n°2 (final deformation)

so it’s the very same mesh with very same number of point, faces and adges, that gets just stretched around a new hand-model

I have also found useful to add a grab component in Kangaroo and play stretching a little bit the mesh here and there just to avoid those little waves that sometime happen
image

by the way, this discussion is just AWESOME <3

4 Likes

Tomorrow im back on the trains for another 6 hour stint… so im going to try Daniels script again. This time paying more attention to how we build the cages and also edit the cages…
Ill love to get enough feeling for this, that I could give it a real go next week and use to rescue some of my old work…

Thanks Daniel and… everyone for putting this together.
Ian :slight_smile:

I did something similar three years ago before we had quick and easy remeshing.

I believe still today you have to create your reference mesh manually so you get perfect topology. Quad Remesh does not create good topology all the time…

In my example I’m first using the OnCurve goal to pull the vertices of the coarse mesh to the curves and then OnMesh to pull the coarse mesh to the scanned geometry.

All that is needed for the mesh morphing recipe above to work is that the reference and target meshes have the same topology. It doesn’t need to be all quads, or even a particularly nice isotropic mesh.
The process of pulling onto the target shape is made a bit easier if the mesh is decent though.

Indeed, this is a good idea (and others have asked for something similar). The Zombie solver is one way of preventing downstream execution until after convergence, but that doesn’t show any updates at all during solving, and doesn’t allow the use of Grab.
I think for a boolean ‘converged’ output to be really useful there would also need to be a version of the Data Dam taking a boolean input.

2 Likes
+ 

// Rolf

Hi Daniel, would it be possible to see the first stepa like how you create the cage in you file? Quite intressting for me to see how you build it up from a white paper…

Thank you a lot Daniel :slight_smile:

I have not been able to get the Mesh Cage Morph to work. Any ideas? This is directly downloaded from your script: