Mesh triangulation - recreating Zach Lieberman example

Hi there! I came across this image in a post written by artist Zach Lieberman, and I’m trying to create a definition that would be able to generate similar types of triangulated 2d meshes.

In the post he explains that he uses this technique to shade 2d shapes to give them the appearance of being 3d. The focus of my query pertains to the triangulation.

You can see that the triangular mesh gets more dense the closer you are to the edge. I thought about how one would go about populating a given geometry with points following this distribution, and all I can think of is to subdivide the surface into three zones (or bands), populate each zone with a different number of points, and then to triangulate the whole lot. I’m wondering if there is another way to go about this as the resulting triangulation doesn’t look as… clean? The triangles in his example look more equilateral. I dunno, maybe it looks okay once I add colour.

Bonus question: I want to shade the triangles based on a colour gradient, from blue to white: the smallest triangles being blue, and largest being white. I presume that I can base this on the area of each triangle, and setting up the range based on that. I tried something (which is included in the definition), but I always struggle to figure out how gradients work… Any help would be appreciated!

blob mesh triangulation 2023-06-17gh.gh (17.6 KB)

2 Likes


gradient_points_2023Jun17a.gh (21.6 KB)

Derived from this:

P.S. More points, changes to Graph Mapper, visible mesh edges, hide base curve.:


gradient_points_2023Jun17aa.gh (21.6 KB)

2 Likes

Will need to dissect this to understand the logic behind it, but the result is quite elegant. Thank you very much!

Hello
you can also remesh by color



gradient_points_triangulate_LD.gh (14.1 KB)

1 Like

It is a peculiar algorithm indeed… The “magic” happens before the green group. Surely there are other ways.