When using the graph mapper to control an array of item, sometimes I have issues with the sine wave. For example, sometimes it will just double up items instead of creating a sine pattern. I don’t have the same problem with, for instance the bezier curve.
In this instance, I have an array of lines and would like to adjust their distribution so that they are spaced in a sine pattern. The distance of the array is fixed, but the spacing between items and the number of items are something that I’m trying to play with.
I’m sure this is a very basic question, embarrassed to ask since despite looking around I can’t get a handle on this. What am I misunderstanding about this tool?
There is no reason to remap numbers before they are passed into the graph mapper. Just use the range component and determine the amount of numbers in between 0 and 1.
Yes this makes sense. You pass in x values and you get y values in return.
0.0 0.3 0.5 0.8 0.5 0.3 0.0 0.3 0.5 … so you get 5,10, 15, 20, 15, 10 … offsets for your base point.
The move component does not add offsets to the previous point, but always to the reference
OK, I’m kinda understanding. Is there a way for me to intuitively get a pattern that resembles the sine wave in the graph mapper? I was hoping to use it to convert that list of 128 values from 0 to 1, into a series of waves based on the graph mapper.
The idea is that I have a series of fins along a wall and want to adjust their spacing parametrically, a sine wave was one of the ideas I’m toying with.
OK @TomTom so your saying I have it kinda backwards. I can’t divide up a set of distances with the sine wave of the graph mapper, I’ll have to build a fraction of the array into a wave and then multiply it. Kinda like this I suppose:
Is there a better way of intuitively dividing up an array into a harmonic pattern that you’d recommend? The sequences aren’t very smooth so I’d like tweak and adjust them, but maybe I’m doing this the wrong/hard way.
Because Mass Additions does not necessarily have to return the partial results. A mass addition adds all values together in first place. The most intuitive way is a simple for-loop inside a script component. Because its something iterative, and GH sucks in this regard. I’m just saying you shouldn’t be facepalmed
Thanks for that. Every time I feel like I’m getting the hang of GH something basic like the graph mapper throws me for a loop. The community is incredible.
Just start scripting as soon as possible. This way you can bypass all these workarounds… Especially data management becomes much easier with that. You could have simply wrote something like: Copy the previous point , move in x direction, add to a list and repeat until no offset value is left…
Both in parallel, probally in the beginning Python is more accessable, but in general talking to a C# library with the same language is better for the overall understanding. So even if you stick to Python, knowing a bit C# helps in the Rhino environment. I personally work with C#.