Variable spacing of copies along curve or surface

I would like to present a script here, but I am genuinely stumped on this one… Is there a way to have the spacing of copies placed along a surface or curve to predictably increase over the distance of the curve. I think I can get them space evenly, but the request is for a “pinky out” artsy fanning out of the copies…

Thanks in advance.

Gumby

Yes.

Why waste time with such a glib response?

He doesn’t want to recreate your script, seeing what you’ve done also allows us to get a better idea of the overall problem.

1 Like

You missed the part where I said I was stumped on how to approach this, and how I don’t know how to create this.

Gumby

We didn’t miss anything, you did. No code, no image, no geometry to work with, no evidence that you tried, though you said “I think I can get them space evenly”. Show us!

This forum is full of examples that do “variable spacing”, often using Graph Mapper to distribute points along a curve. Did you look?

Starting with a model you post is much more likely to get the answer you want the first time instead of engaging in a protracted exchange where we guess and you say “No, that’s not quite what I meant”. How a question is presented makes all the difference so please follow the guidelines.

2 Likes

Fair enough… what a helpful forum…

New users really get the help they need.

Gumby

It seems that you want the people to invest more time in understanding and help you than you are willing to formulate the question.

2 Likes

Okay, Here is my issue. I am afraid my dummy version of putting in a curve, and taking the divide node will be a blind path That is why I said I was stumped on the approach. I didn’t want to go down that path if it was a poor choice. I didn’t ask anyone to do the work for me.

It was stated that I could possibly use graph mapper. So I am going to try that. How hard was that? Wow… the aggro on this forum is palpable.

Gumby

There was a pop up bar at the top of my browser that was covering the search bar.

I will now know how to look more carefully. I didn’t know it was an option thanks to migrating to new windows and not being familiar.

Thanks,
Gumby

That’s very rude. I asked a clear question. I worded it carefully. You are just bitter.

Oh yes you did! And with the attitude you’re showing, you’re close to being ignored. Actually, I’ve heard enough from you, on ignore. Goodbye.

No worries, we all had to learn the etiquettes of this forum at some point. You will find it is a very useful and friendly forum as long as you follow the rules in that How to Help Us Help You post.

Your question is fairly straight forward but just giving people a curve to work with and some geometry that you want to copy along that curve gives people something to work with. Without that we could spend time showing you a solution and then realise it wasn’t quite what you wanted. We all initially think “What kind of curve? What geometry?” etc etc and less people are likely to help.

Anyway, you know for next time :slight_smile:

I guessed at what you wanted from what you had written…

VaryDivCurve.gh (11.7 KB)

3 Likes

Thank you, I look forward to paying it forward.

Gumby

Actually, I acknowledged that you pointed me in a good direction with the graph mapper, and now I had some confidence moving forward. That’s your choice to be so brittle.

Gumby

Martyn,

That was shockingly helpful and a big reveal of my ignorance. I have a question for you, since you seem very knowledgeable. Is there a good place to get training besides youtube that you would recommend? I find I have to concatenate 400 videos to get what I need, on what seem simple tasks. Or did you learn this as “Trial By Fire”?

Thank you again for that example. I would NOT have gotten there on my own. I will do my best to apply the knowledge and not just steal the solution you showed me. I am just overwhelmed with questions right now. Like your use of the expression and that you brought in the multiply node where you did. I am a modeler by trade, but not a coder, which seems a better skillset for some of this…

Okay, I’m off to break it a few dozen times, add some ideas, and see what makes that code tick.

Thank you, thank you, thank you…

Gumby

1 Like

Martyn,

If I could bother you one more time… You used a length node. I am used to that being a property of a curve by default. So I get confused. Does Grasshopper not know that parameter, or are you just calling that info to use it and it is already there?

This is what I am used to getting on the fly…

Curve_Info_01

So I am unsure, are you “calculating” that info, or just “calling” it? I hit the help on the curve node, but I was hoping to see what data was in that node by default. (Similar to my picture) It mentions “Uncastable” data, but is there a predictable way to know what is and isn’t “castable”?

Thanks,
Gumby

That curve was just one I created in Rhino on the fly by just drawing a spline freehand. I then referenced that curve in Grasshopper by right clicking on the Curve component and selecting “Set One Curve” and selecting the curve I drew by hand. Because I didn’t want to send you a Rhino file and a GH file, I just right clicked the Curve component again and selected “Internalise” so now that Curve component contains the curve instead of referencing one on the Rhino document.

You can reference any curve in your Rhino document the same way and that script will distribute those circles along your curve.

If you don’t want circles, right click the other Curve component and reference something else or create something in Grasshopper and plug that into the Curve component.

In terms of tutorials, I just muddled my way through it all over the years but I had some Visual Basic programming skills and some CAD skills and this forum has been amazing. There is a beginner tutorial somewhere… search Grasshopper Primer.

The hardest thing to get your head around will be the data structure. A good tip is to hover your mouse over the inputs and outputs to see the data within them. Also use the Data Viewer from the VIEW menu.

Thanks! I had been using the “Panel” to peer into nodes, but that looks more comprehensive.

I was also wondering why those extra curve nodes where in there. So that explains it well.

I think I get the multiply node now. It looks like everything was normalized to the 0 to 1 domain before that node, so by multiplying, it looks like you get all the values leading up to the actual length, versus relying on reparameterizing the other nodes. It’s a very elegant solution. My hats off to you.

I think this will be a long time to sherpa up the side of this mountain, but I am trying my best… I have had a couple successes already, using curve attractors, and the image sampler and it is interesting to see the differences in computing time given different answers to the same problem. In my mind, I pictured most of this to be real-time, but some of it it pretty intensive.

Okay, back at it… brain … hurty…

Gumby

1 Like