Basically what i’m trying to acheive is after getting each line in a branch is to randomly divide it so that i got some random interruptions. This is acheived by this module :
i’m trying to get more control over the dimension of the gap created. For the moment it’s one grid (the one wich goes in the image sampler) unit but i would like to get something more prone to corresponding real dimensions by allowing to pop n-first and n-last element in each branch segment.
Here is the end with a pannel looks:
Ok looks like problem came from original path structure wich is {A;B} with A being the row number, and B the block number. basically B variate from 1 to n.
When using the path mapper component like this :
When rotating the grid i then delete what’s not in frame so basically lines are starting to be different in length. You can see clearly this here in the corner:
Then i divide by an int domain between 5 and 20, so the first lines path are of the type {A:0} but when you get in longer lines it start dividing lines and path for each block are {L,0} {L,1}, {L,2}, …{L,n}.
One cool thing would be to get control on the gap just where a division occurs, but this solution is maybe just possible by scripting.
Was going to modify the position of the endpoints but decided to just create a bounding box, scale the bounding box by a ratio = distance required then splitting your surfaces with the scaled box.
Hi @ftzuk ,
thanks for the solution , it works well for the pattern i send to you. I’m working to be able to control this before in the grasshoper algorythm, because when using other loft shapes like circles wich gives nice rounded edges, this solution will create a straight cut.
Heard your option to move each start and end vector toward center and trying other options. Will post when i get something working.
as things are in your definition, each time you use a new image you have to readjust the image Domain to the grid
if you insert the above changes, the whole image will be reparametrized in the domain [0, 1] and the surface closest Point will generate UVs Points in the very same [0, 1] Domain, which guarantees the image to be always sampled in its full extension
this does not solve a different issue, which comes when using a grid size that does not respect the image proportion, like for instance:
I’m trying to retrieve list of points in each line (done)
Then select random points where intersection occurs while staying in the range of each line with maybe with a buffer at start and end. (done)
Create a size controlable rectangle wich will discard adjacent point (done)
Collect points sets and loft through it (done)
Add additional parameters to secure buildability (% of holes, min thickness, min gap, sterilization zones where connection needed, …) (done)
Will need a lot of tree and list working to come with cleanup solution (done)
I’ve pushed @inno solution to reparametrise further and that’s the last thing to finalize. Basically the objective is to be able to frame a portion of the source image. Script is now quite big but still quick to execute.
Will collect extra construction data and give an inside view on challenge encounterred in production and of course a polished version of the GH file for the community as soon as i get some extra time