Thanks for replying Rokas!
I'd already started a scene file so I'll post it anyway but Rokas' technique works well.
I did it slightly differently, and a little bit more complicated, but with similar results. I tried to avoid the segments moving endlessly to the left as the rows progressed by cycling the offset from 0 (no offset) to 1, (full tile offset) using the modulo function. There's also no need to expand the bounds with this technique.
- Create a new Rectangle, this should be sized in multiples of your individual tile height and width to ensure tiling works correctly
- Wire this to Clipping area input and turn on Extend to area
- Wire a Transform operator between the segment and the default input and export the Left Padding/
- Only the first tile should be affected, to do this I used a Conditional statement that return the transformed segment when true. This should be set to Segment > X Counter = 1
- Attach an Arithmetic operator to the exported left padding and wire a Constant to Input 1 with the value set to the Tiles width. Wire a Numeric node to Input 2, set this to Float and name in "Offset " (0 no offset, 1 full offset).
- In the Arithmetic operator, enter the following expression:
The offset value is multiplied by the row number. The modulo command keeps the offset between 0 and 1 (by returning the remainder of division by 1) and this is multiplied by the tile width to return the offset in scene units.
The nice thing about this is that if you're using the new Beta you can use the Exported width attribute of the tile segment in place of a hard coded value, making it easy to swap in different sized tiles.
I've attached the scene file for you to take a look at.
I hope that helps.