Creating UV Grid with Irregular Surfaces

Hi everyone,

Using Grasshopper, I want to create a flexible UV grid that follows the form of an irregular surface. Then, either

  1. At the intersections of this new grid, I want to choose whether or not to place a shape onto the surface OR
  2. Inside the individual surfaces created by the new grid, I want to choose whether or not to offset the existing shape (created by the grid) as a curve onto the surface.

The goal is to create a new surface pattern and control its overall look, but also have the ability to randomly place the shapes, so that the pattern looks very natural. See the image below:

I have what you want (“almost”) but is carried over solely via code thus it could be useless to you. So let’s wait and If some good Samaritan can’t provide a solution with native components I’ll post here some stuff.

In the mean time (see the other thread of yours): What means “flexible” U/V grid??? A Surface (or the underlying Surface for a given BrepFace) has a rather fixed IsoCurves “layout” (but you can vary the density so to speak). So either mapping some planar collections or working directly … yields pretty much the same aesthetics.

PS: You can skip the mapping of course by working directly in DataTrees related with division points and then get trimmed pieces (or holes) according some sort of logic. The more the curvature is “extreme” (or not “smooth”) the more the pts grid deviates from an “even” distribution.

Or you mean that you want Iso collections (or points) that “look” evenly spaced regardless of the curvature???

Here’s a few steps to maybe help get you started.

flexibleuv.gh (13.8 KB)

Hi David,

I’m a beginner of gh and I’m trying to do something similar as well.

I downloaded your file and tested but when I load it in gh it prompts an image below:

image

I can’t use any of the calculations after the first step…

David uses only rhino 6 were there is grasshopper 1. You have rhino 5 gh 0.9. try to remake the definition from the image
Evaluate surface is a standard component.
Or upload rhino 6.

Hmm, I don’t remember that one being updated recently. I wonder what I did to it that warranted breaking file io…

Indeed opening your def with 076 yields an unrecognized … blah, blah message.