Используйте все расчеты на сетке с ячейкой одного размера - "пиксель".
При формировании случайных зарослей - используйте группу пикселей = размер "кисти".
Заполнение с помощью такой кисти прописывается заранее: проценты мелких тайлов.
При нанесении - кисть ЗАМЕНЯЕТ все, что попало в её поле.
Посмотртите редактор карт Age of Empires II для примера:
https://www.youtube.com/watch?v=TX4bg98uYZ8