# BMW I4 and linear dynamic Truchet tilings

Isn’t this BMW I4 a beauty? The perfect motivation to start a journey into a little optimization problem:

How to manipulate traditional Truchet tiles so that the resulting tiling resembles the Ultimate Driving Machine?

Truchet tiles are a well known niche in math because they form a foundation for a lot of interesting questions. The basic theory: You have four simple tiles:

Since every tile is 50% black and 50% white a resulting tiling can only resemble a grey area if viewed from afar. In order to depict images it is necessary to manipulate the proportion of black vs. white.

Just envision one Truchet tile as a dot in a black-and-white rater image:

The trick is now to manipulate the tiles so that they can approximate the grey shade of a raster point.

Source: Bosch, Robert. Opt Art: From Mathematical Optimization to Visual Design (p. 6). Princeton University Press.

The black half is intersected by a diagonal: $$(0,1)$$. Along this line the threshold for black can be moved up and down.

$$t = 0 \Leftrightarrow P(0.25, 0.25)$$: maximal brightness.
$$t = 1 \Leftrightarrow P(0.75, 0.75)$$: maximal darkness.

The brightness of a tile is only depending on the parameter $$t \in (0, 1)$$.

As a result the polygon ABPC encloses an area which is proportional to the darkness of the tile. This is a very simple linear dependency and can be easily modelled.

If a is the length of the tile and t is our ‘black’ parameter, then the math is: $$t’ = \sqrt{2} \\ y_1 = - \frac{a-t’}{t’}x + a \\ y_2 = - \frac{t’}{a-t’}x + \frac{at’}{a-t’} \\$$

Enough theory, let’s see what can be done with this simple model.

## Application of model

Isn’t this a beautiful combination of math, programming and design?

If you are interested in the Python code contact me via mail.