function tsp_display_test ( )

%*****************************************************************************80
%
%% tsp_display_test() tests tsp_display().
%
%  Licensing:
%
%    This code is distributed under the MIT license.
%
%  Modified:
%
%    12 June 2026
%
%  Author:
%
%    John Burkardt
%
  addpath ( '../tsp_display' );

  n = 42 ;

  order = [ ...
    42, 41, 40, 39, 38, 37, 36, 35, 34, 33, ...
    32, 31, 30, 29, 28, 27, 26, 25, 24, 23, ...
    22, 21, 20, 19, 18, 17, 16, 15, 14, 13, ...
    12, 11, 10,  9,  8,  7,  6,  5,  4,  3, ...
     2,  1 ];

  prefix = 'dantzig42';

  x = [ ...
      170.0,  85.0; ...
      166.0,  88.0; ...
      133.0,  73.0; ...
      140.0,  70.0; ...
      142.0,  55.0; ...
      126.0,  53.0; ...
      125.0,  60.0; ...
      119.0,  68.0; ...
      117.0,  74.0; ...
       99.0,  83.0; ...
       73.0,  79.0; ...
       72.0,  91.0; ...
       37.0,  94.0; ...
        6.0, 106.0; ...
        3.0,  97.0; ...
       21.0,  82.0; ...
       33.0,  67.0; ...
        4.0,  66.0; ...
        3.0,  42.0; ...
       27.0,  33.0; ...
       52.0,  41.0; ...
       57.0,  59.0; ...
       58.0,  66.0; ...
       88.0,  65.0; ...
       99.0,  67.0; ...
       95.0,  55.0; ...
       89.0,  55.0; ...
       83.0,  38.0; ...
       85.0,  25.0; ...
      104.0,  35.0; ...
      112.0,  37.0; ...
      112.0,  24.0; ...
      113.0,  13.0; ...
      125.0,  30.0; ...
      135.0,  32.0; ...
      147.0,  18.0; ...
      147.5,  36.0; ...
      154.5,  45.0; ...
      157.0,  54.0; ...
      158.0,  61.0; ...
      172.0,  82.0; ...
      174.0,  87.0 ];

  timestamp ( );

  fprintf ( 1, '\n' );
  fprintf ( 1, 'tsp_display_test():\n' );
  fprintf ( 1, '  MATLAB/Octave version %s.\n', version ( ) );
  fprintf ( 1, '  Display the cities and route solving a traveling\n' );
  fprintf ( 1, '  salesman problem (TSP).\n' );
  fprintf ( 1, '  Dataset is "%s"\n', prefix );
%
%  Create the circuit data with transposition, reordering and wrap-around.
%
  x2 = zeros ( n + 1, 2 );

  for i2 = 1 : n + 1
    if ( i2 <= n )
      i = order(i2);
     else
      i = order(1);
    end
    x2(i2,1:2) = x(i,1:2);
  end
%
%  Send the data to the plotter.
%
  tsp_display ( prefix, n + 1, x2 );
%
%  Terminate.
%
  fprintf ( 1, '\n' );
  fprintf ( 1, 'tsp_display_test():\n' );
  fprintf ( 1, '  Normal end of execution.\n' );

  timestamp ( );
 
  rmpath ( '../tsp_display' );

  return
end
function timestamp ( )

%*****************************************************************************80
%
%% timestamp() prints the YMDHMS date as a timestamp.
%
%  Licensing:
%
%    This code is distributed under the MIT license.
%
%  Modified:
%
%    14 November 2022
%
%  Author:
%
%    John Burkardt
%
  t = now ( );
  c = datevec ( t );
  s = datestr ( c, 0 );
  fprintf ( 1, '%s\n', s );

  return
end
