Force symmetry for hexagon pattern

hi everyone!
i have a symmetrical shape (bunch of curves, shaping hexagons) and i managed to make them planar hexagons with the coplanar tool, but in the process it loses symmetry
see difference between red (original) and blue (mirrored) line on the first picture, green is the difference.
just a tiny bit, 4-6 mm, but in terms of manufacturing its a huge difference and problem.
any idea how to force these points into pairs, and forcing the symmetrical shape?
i can not get my head around this for days now, hopefully somebody can come up with some smart idea :slight_smile:

Hi @banati.bodo
The key here is to find which points are on the symmetry plane and keep them there with an OnPlane goal, then for the points ‘above’ the symmetry plane, use a Transform Goal to lock them to their mirror image below the symmetry plane.
symmetry_planarhex.gh (17.3 KB)
symmetry

1 Like

holy moly i love you so much! how can you reply so fast?
the funny thing is, i tried to solve this with the transform goal, but somehow it always dropped an index error… i will try to implement this to my code, see how it turns out, but really glad to hear that this indeed is the correct way.
thank you very much!!

1 Like

One thing I got caught out by when I first tried this is that it’s easy to miss that the Plane Closest Point component returns a signed distance.
I was trying to find points on the plane by seeing if their distance was below some tolerance, but if you skip the abs component you also get all the points below the plane that have a negative distance.

1 Like

IT WORKS!!
and now i see why my version failed: i did not remove duplicate points, and flattened the point list, which caused the index error i suppose.
thank you very very much! i should post here more often with my problems, i suffered with this for way longer then i should have : )

1 Like