Сформулирую вопрос иначе:
Делаю игру-паззл, смысл которой заключается в заполнении фигруы объектами-элементами мозаики. Само поле (фигура которую нужно собрать) делится на примитивы, а элементы которыми оперирует игрок могут состоять из одного или нескольких таких примитивов (см. картинки). Задача в общем-то несложная, но в процессе ее решения столкнулся с проблемой - представлением уровней. Если вариант с треугольниками как на первой картинке лекго решается с помощью двумерного массива (в котором 0 означает пустоту, 1 - совбодлный треугольник, а 2 - занятый треугольник, и при размещении элемента мозаики просто проверяются на занятость соответствующие элементы массива, а при загрузке уровня этот массив считывается из файла), то как быть с мозайкой со второй картинки я никак не могу разобраться - вариант с хранением координат каждого примитива явно не является правильным решением. Поэтому прошу помощи - натолкните на мысль как это вообще можно реализовать в виде "нормальной" структуры данных?
Картинки (Фигуры - уровни для заполнения и примеры возможных элементов)