Grasshopper

generative modeling for Rhino

Triangular morphing/mapping

Hi all,

I've been playing around with something - trying to map an object from one triangular "space" to another - that is to do a sort of triangular cage edit...

Pretty much all of the morphing methods are based on rectangular structures (NURBS/UV), so it's somewhat difficult to find ways this can be done (without using mathematics that are above my grade-school level...  :)  )

I did mock up a way with a planar curve object and the MapToSurface module using base and target triangular surfaces made with either Edge Surface or 4Point Surface, but it doesn't seem to be extremely accurate - the more points the original has, the better it gets, but it's never really good.

The idea is the base triangle just touches the object at 3 points (a "bounding triangle", for which I made my own quickie definition) and I want it to map to the target triangle(s) in the same way.  A sort of triangular box morph.  You can see where I'm going with this, the target triangles will later be mesh faces...

I've got some interesting side effects happening in the mockup where the mapped object meets the edge of the triangle it's supposed to lie on - in some cases it overlaps the edge (due to inaccurate mapping), and there it jumps into the air.

So, my problem is to get it more accurate and of course, to get beyond a planar curve and be able to do volume objects...

I'm sure someone has gone down this road before...  Any interesting path that I missed?  I can post my mock-up definition here if someone wants to see it...

TIA,  --Mitch

Views: 676

Attachments:

Replies to This Discussion

Try to think about your mapping application as less of a box morph with triangles but a dynamic geometry...meaning building up the original form from points to lines to surfaces to volume then apply that logic to the grouping of triangles for the surface you wish to map to. As long as you use geometry that is created from the original triangle i.e. extrusions happen using the normal from surface vs. world vectors this methodology should work a lot better then what you have currently. Follow this tutorial first http://designreform.net/2011/03/rhino-grasshopper-parametric-truss-... then watch this one http://www.tedngai.net/experiments/gh-powercopy.html ... you will be tempted to just use Ted Nagi's definition but I don't think it will work in .8, but you should be able to follow the logic of david fano's video to make your definition work.

Here is a remapping using triangle axis-system. Not fully tested, tell me how it works for you.

Attachments:

by Alex

by Alex

by Alex

• View All