An algorithmic approach for simulating realistic irregular tilings