я как-то делал такую задачу. К примеру есть квадрат, в него можно добавить дочерних квадратов. Но квадраты не должны выходить за приделы родителя и должны полностью его заполнить. Так же дочерние квадраты меняют размер. К примеру один увеличился, другие уменьшились.