void displayRooms(RoomPartitioning partitioning)
    {
        // Debug.Log("room points:");
        // for(int i =0;i<partitioning.genes.Count;i++){
        //     Debug.Log(partitioning.genes[i]);
        // }
        GameObject partitionsContainer = new GameObject();

        partitionsContainer.name               = "Rooms";
        partitionsContainer.transform.parent   = gameObject.transform;
        partitionsContainer.transform.position = new Vector3(0, 2, 0);
        List <List <Vector3> > rooms         = partitioning.getPartitions().OrderBy(x => - 1f * Helpers.getArea(x)).ToList();
        List <GameObject>      roomObjects   = new List <GameObject>();
        List <Color>           roomSemantics = getColor(rooms.Count);

        for (int i = 0; i < rooms.Count; i++)
        {
            displayWalls(Helpers.reorder(rooms[i]));
            GameObject room = new GameObject();
            room.name               = string.Format("Room {0}", i + 1);
            room.transform.parent   = partitionsContainer.transform;
            room.transform.position = new Vector3(0, 2, 0);
            MeshRenderer meshr = room.AddComponent <MeshRenderer>();
            MeshFilter   meshf = room.AddComponent <MeshFilter>();
            meshf.mesh = Helpers.triangulate(Helpers.reorder(rooms[i]));
            meshr.material.SetColor("_Color", roomSemantics[i]);
        }
    }