Ignore:
Timestamp:
05/21/12 15:28:50 (8 years ago)
Author:
svonolfe
Message:

Added color palette (#1177)

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/VRP/HeuristicLab.Problems.VehicleRouting.Views/3.4/SingleDepotVRPView.cs

    r4374 r7858  
    2828      BoolValue useDistanceMatrix = Content.UseDistanceMatrix;
    2929
    30       Pen[] pens = {new Pen(Color.FromArgb(92,20,237)), new Pen(Color.FromArgb(237,183,20)), new Pen(Color.FromArgb(237,20,219)), new Pen(Color.FromArgb(20,237,76)),
    31                     new Pen(Color.FromArgb(237,61,20)), new Pen(Color.FromArgb(115,78,26)), new Pen(Color.FromArgb(20,237,229)), new Pen(Color.FromArgb(39,101,19)),
    32                     new Pen(Color.FromArgb(230,170,229)), new Pen(Color.FromArgb(142,136,89)), new Pen(Color.FromArgb(157,217,166)), new Pen(Color.FromArgb(31,19,101)),
    33                     new Pen(Color.FromArgb(173,237,20)), new Pen(Color.FromArgb(230,231,161)), new Pen(Color.FromArgb(142,89,89)), new Pen(Color.FromArgb(93,89,142)),
    34                     new Pen(Color.FromArgb(146,203,217)), new Pen(Color.FromArgb(101,19,75)), new Pen(Color.FromArgb(198,20,237)), new Pen(Color.FromArgb(185,185,185)),
    35                     new Pen(Color.FromArgb(179,32,32)), new Pen(Color.FromArgb(18,119,115)), new Pen(Color.FromArgb(104,158,239)), new Pen(Color.Black)};
    36 
    37 
    3830      if ((coordinates != null) && (coordinates.Rows > 0) && (coordinates.Columns == 2)) {
    3931        double xMin = double.MaxValue, yMin = double.MaxValue, xMax = double.MinValue, yMax = double.MinValue;
     
    5143        using (Graphics graphics = Graphics.FromImage(bitmap)) {
    5244          if (Solution != null) {
     45             List<Tour> tours = Solution.GetTours();
     46             List<Pen> pens = GetColors(tours.Count);
     47
    5348            int currentTour = 0;
    54             foreach (Tour tour in Solution.GetTours()) {
     49            foreach (Tour tour in tours) {
    5550              Point[] tourPoints = new Point[tour.Stops.Count + 2];
    5651              Brush[] customerBrushes = new Brush[tour.Stops.Count];
     
    7671              }
    7772
    78               graphics.DrawPolygon(pens[((currentTour >= pens.Length) ? (pens.Length - 1) : (currentTour))], tourPoints);
     73              graphics.DrawPolygon(pens[currentTour], tourPoints);
    7974
    8075              for (int i = 0; i < tour.Stops.Count; i++) {
     
    8681              currentTour++;
    8782            }
     83
     84            for (int i = 0; i < pens.Count; i++)
     85               pens[i].Dispose();
    8886          } else {
    8987            Point locationPoint;
     
    102100        }
    103101      }
    104 
    105       for (int i = 0; i < pens.Length; i++)
    106         pens[i].Dispose();
    107102    }
    108103  }
Note: See TracChangeset for help on using the changeset viewer.