Here’s a recent array question from the mailing list: How do you build an array that looks like this?
[0, 0, 1, 1, 0, 0, 1, 1, 0, 0, 1, 1, ...] ?
I didn’t check the other answers yet, because that would be cheating 😉
When I look at that array, I see a repeating sequence of four integers, so that naturally suggests doing something with the Modulo node.
Using the If node is nice for clarity, but I could simply take the Boolean output of the comparison node.
Here’s a simple parametric point cloud that shows the two techniques for using arrays instead of Repeats that I blogged about earlier:
Using arrays to avoid Repeat part I
Using arrays to avoid Repeat part II
I used this set of parametric equations to get a cylinder point cloud:
x = sin(u)
y = cos(u)
z = v
0 <= u <= 2*PI
-2 <= v <= 2
For this exercise, I simply used Build Interpolated Array to build arrays of U and V values, but I probably should use something like the XYZ_Grid_Generator technique described by Daniel Brassard on si-community.
Here’s a version of the ICE tree with some Show Values.
I use the Modulo technique to build an array of the XY values for all points in the cloud.
Then I use the Divide by Scalar technique (the integer result is truncated) to build an array of the Z values.
Finally, I add XY vectors to the Z vectors to get the final point positions.