public SolutionDrawing(InstanceDrawing pinstanceDrawing, PMedian pPMedian)
        {
            instanceDrawing = pinstanceDrawing;
            pMedian         = pPMedian;

            pen           = new Pen(ColorProgression.getColor(OBJECT_COLOR.ARROW_LINK));
            this.graphics = new Graphics[this.pMedian.getInstanceGenerator().getInstanceConfig().time_periods];
            this.image    = new Image[this.pMedian.getInstanceGenerator().getInstanceConfig().time_periods];

            for (int t = 0; t < pMedian.getInstanceGenerator().getInstanceConfig().time_periods; t++)
            {
                //this.image[t] = new Bitmap((int)(pMedian.getInstanceGenerator().getInstanceConfig().x_dim * instanceDrawing.getDrawingSettings().board_radius_factor), (int)(pMedian.getInstanceGenerator().getInstanceConfig().y_dim * instanceDrawing.getDrawingSettings().board_radius_factor));
                this.image[t]    = (Image)this.instanceDrawing.getImage().Clone();
                this.graphics[t] = Graphics.FromImage(this.image[t]);
            }
        }
 private void draw_node_designations()
 {
     for (int t = 0; t < pMedian.getInstanceGenerator().getInstanceConfig().time_periods; t++)
     {
         for (int j = 0; j < pMedian.getInstanceGenerator().getInstanceConfig().n_depots; j++)
         {
             Point dnode_point = new Point(pMedian.getInstanceGenerator().depot_node[j].x, pMedian.getInstanceGenerator().depot_node[j].y);
             for (int i = 0; i < pMedian.getInstanceGenerator().getInstanceConfig().n_nodes; i++)
             {
                 if (pMedian.getVariableGenerator().customer_depot_designation[i, j, t].X > 0.5)
                 {
                     this.graphics[t].DrawLine(this.pen, new Point(pMedian.getInstanceGenerator().customer_node[i].x, pMedian.getInstanceGenerator().customer_node[i].y), dnode_point);
                     this.graphics[t].DrawString(pMedian.getInstanceGenerator().customer_node[i].group.ToString()[0].ToString(), new Font(FontFamily.GenericSansSerif, 10), new SolidBrush((Color)ColorProgression.getColor(pMedian.getInstanceGenerator().customer_node[i].group)), pMedian.getInstanceGenerator().customer_node[i].x, pMedian.getInstanceGenerator().customer_node[i].y);
                 }
             }
         }
     }
 }