I’m trying to create this hexagonal pattern below, but with spacing for grout between each of the mosaic tiles. I’m currently struggling to split the offsetted curves and create a surface boundery for each ‘tile’
I had a attempt, but the resulting split is organising the crvs in a strange way as the selection of each indices within the list is random. I’ve provided one exmaple below with green being correct while magenta is wrong and this is coming from a single index from one data tree:
I’m reluctant to jump into MCX because it’s complicated and this looks simpler than that, if each hexagon in the original grid is considered alone.
Is that grout spacing not shown in your first image? Is it the spaces defined by the 0.018 offset? Which is twice that value between the large hexagons?
Does the center of really need to be split into triangles or could that be a small hexagon? I guess the attractor effect is to be added later?
Thanks you for taking the time to have a look, the result is impressive! is there a way to control the pattern through a attractor point at all? so you can, for example, control the graident patterns size and location from black to white?
Yes, the grout spacing size is defined by the 0.018 slider. I divided the dimension by two in the script to get achieve the correct width. The first image was an example not produced in grasshopper, merely a reference.
I’d prefer to keep the smaller triangles in the centre, as the final result would look odd without the cuts. Correct, that was my original thought process with the coloured attractor effect being applied over the geometry.
Hah! You really went for it, “attractor” effect and all. I studied your code (after I wrote mine) and see groups of groups, C#, bitmap patterns of 1s and 0s, some unnecessary bits. Impressive!
I should have waited for answers to my questions but plunged in anyway.
I was wondering if there is a way to reduce the radius size or ‘strength’ of the attractor point. At the moment there is a issue where as the grid size increases so does the pattern
My question is more about what effect the distance from attractor point has rather than its range? I see four different ring cull patterns in your reference image?
If I’m understanding your question correctly, the method Magic did with the pattern is correct. So, you have 16 different iterations/steps going from complete white to complete black. Then you can control the size of the attractor radius and everything outside of the defined radius would be complete white.
Thanks for the help it’s greatly appreciated! I did personally try the graph mapper with unsuccessful results, but after studying your script I see the error I made!
Yikes, I’m really slow today. Uses an MD Sider(white group) to choose the attractor point, a 'Range" slider (blue group) limits its effect. Wrote a Python bits thing to create the ring cull pattern. And just discovered a flaw when increasing the ring count slider!! Arrgh. I’m going blind!
Uses an MD Sider(white group) to choose the attractor point, a 'Range" slider (blue group) limits its effect. Wrote a Python bits thing to create the ring cull pattern.
The slowest part by far is SrfSplit. @magicteddy saved a lot of time by creating only one set of hexagonal rings and then replicating it.
This thread title needs to be changed, it has nothing to do with curve intersections.
With the clarity of hindsight, inspiration from @magicteddy and curiosity about the effect of sorting cull patterns by area, I refactored my code.
Yesterday’s version ‘21b’ was an advanced exercise in managing data trees. This effort has a lot of flattening because all the ungrouped components at the top construct just one tiled hexagon. The gray group copies that to all the points in the HexGrid and the purple group sorts the cull patterns (once!) by the sum of areas of the un-culled (white) tiles.
Finally, the white group implements the attractor point and remaps its distance from each HexGrid point, used as a lookup index to the sorted cull patterns.
Results? Easier to understand and modify, faster and perhaps better cull patterns. Peace of mind.
After studying yours and Magic’s scripts, I’ve realised the pattern is far more complex and can’t be achieved without custom code. Is there a way to have more control over the pattern colours? I’m trying to mimic a 3-dimensional effect of the 2D tiles. In the zoomed-in image, they’re three differentiating shades of black and white separated by red, blue and green. Can this be achieved?
Black Pattern Logic:
White Pattern Logic:
I’ve also notice your pattern is slightly different transition when going from black and white, is there a way to make it more like magic’s logic?