Diamond Facet Surfaces

Thanks, that helped me understand the direction of things.

However, instead of the irregular polygonal faces in the current result, I want the pattern to form clear, regular diamond shapes.

I am looking for a repeating diamond grid on a cylindrical surface. Each diamond shape should be symmetrical, identical in size, and have straight diagonal edges. If necessary, each diamond can subsequently be subdivided into triangular faces.

The key requirements are:

  • a regular and repeating diamond pattern
  • symmetrical diamond shapes
  • rows aligned around the circumference of the pipe
  • no random polygonal shapes
  • the cylindrical form remaining generally round
  • the surfaces following the cylindrical form
    In short, instead of irregular Voronoi-style surfaces, I want something closer to a “diamond panel” or “diamond lattice” pattern wrapped around the pipe.

Would it be possible to first create a diamond grid on a flattened rectangle and then wrap or map it onto the cylinder so that the seam matches up perfectly?

Something like a regular Yoshimura crease pattern?:

I want this type of subtle curved faceting, but with repeated diamond-shaped cells on a round tube instead of hexagonal cells on an ellipsoid.

Yes, like this triangular pattern, but I do not want the triangles to have depth inward. I want the surface to stay more uniform, without inward folds or recessed triangular areas.

It’s either this:

or this:

:person_shrugging:

I do not know what else to tell you.

I think you mean the diamonds. The triangles themselves are planar… flat. They have no depth. But this is the result of subdividing the diamonds, which are otherwise curved surfaces, into planar triangles. The effect of the scooping becomes less apparent the higher the grid count becomes.

I am creating this diamond pattern on a flat surface, but the upper boundary of the pattern is curved/wavy, as marked in red.

I do not want that curved profile. I want the top and bottom edges of the patterned strip to stay perfectly straight and parallel.

The diamond cells should be regular and repeated evenly, but the overall strip must remain rectangular before mapping it onto the cylindrical tube.

How can I remove this wave/curve from the boundary and keep a straight edge?

I do not want there to be a curve at the point marked with the red line.

@user3086,

You’ve been told a few times your goal isn’t possible with a diamond pattern.

If you must have planar facets based on this type of pattern then you need to triangulate the diamonds:

That is, go from:

to:

then you can pull the {triangulated} mesh points to the original surface:

Basic example:
Diamond-to-tris_example.gh (9.8 KB)

It is possible to do flat diamonds on a torus-like shape, but not on a straight cylinder.

Is it really? Why is that? (I don’t doubt it, seems legit. But any torus?)

Walk the talk? :slight_smile:

same question - tried it on a halved torus and it didn’t work. Maybe it has to be torus-like, not torus lol

It is perhaps worth noting that you can triangulate the other direction as well. Just mentioning this because of the OP’s desire to have a “straight” profile seem from the side.

Probably. Like I don’t doubt it is possible, because I imagine defining the equator belt of diamonds first – the edges would then determine the plane of the next longitude latitude of diamonds, and so on. So I could build it progressively from the equator to the edges, but not to match a predetermined form…

This is exactly what I wanted, thank you very much. I will try the file you sent; here are the measurements of the triangles. This is exactly what I wanted, thank you very much. I will try the file you sent. Can I change the dimensions of the triangles here? I don’t know much about Grashopper. Thank you everyone.

What you can change is the division of your surfaces. That is, the quantity of quad mesh faces in U and V directions—prior to diagonalizing (making diamonds) and prior to triangulating. This influences the overall sizing of the resulting facets. To divide your surface into diamonds/triangles of specific measurements you’d need something else.

SurfacePlus has a Diamond Triangle Surfaces component:

Diamond Facet Surfaces VR1.gh (20.5 KB)
Diamond Facet Surfaces VR2.gh (19.6 KB)

I don’t have the Surface Plus plugin; I’ll give it a try once I download it. Thanks a lot.

Yes, this is how I did it. The actual shape created this way turns out to be a sort of pointed sphere (The side profile is a cosine curve).

Here is the program I used to generate these:

Diamonds.gh (12.5 KB)

@Measure

Nice work, but you did it with Python.

Could you apply this to the file I sent you?

diamond.3dm (38.7 KB)

The method I used only works for this specific shape (revolved cosine). You can trim and stretch it to get a ring-like shape, but it won’t work for a straight cylinder like your file has.