3 files | 1.5 MB | 110 views

This interesting outcome was possible using a combination of two simple rules.

#pick a unique 4 from the list
for comb in combinations_with_replacement([1,2,3.2,3.4,3.6,3.8,4.2,4.4,4.6,4.8],width_x*width_y):
frame.flat[:] = comb
# for the 4 work out all the ways they could be arranged (1, 4, 8 or 16 possibilities)
for i in set(permutations(chain.from_iterable(frame))):
new_pattern = np.array([i[:2], i[2:]])

Convert the resulting array into an LDraw file.

30556 All 2x2 Combos Highlights.png
30556 All 2x2 Patterns.io
30556 All 2x2 Patterns.png