function usa_centroid_display ( gen_lon, gen_lat, cen_lon, cen_lat, ...
  filename, plot_title )

%*****************************************************************************80
%
%% usa_centroid_display() displays generators and centroids in the USA.
%
%  Discussion:
%
%    The points are assumed to be given in terms of longitude and latitude.
%
%  Licensing:
%
%    This code is distributed under the MIT license.
%
%  Modified:
%
%    06 December 2016
%
%  Input:
%
%    real GEN_LON(*), GEN_LAT(*), coordinates of generators.
%
%    real CEN_LON(*), CEN_LAT(*), coordinates of centroids.
%
%    string FILENAME, a name for the graphics file.
%    If FILENAME is '', the plot is not saved.
%
%    string PLOT_TITLE, a title for the plot.
%

%
%  Retrieve USA polygon.
%
  lonlat = load ( 'usa_shape.txt' );

  usa_lon = lonlat (:,1);
  usa_lat = lonlat (:,2);

  usa_length = size ( usa_lat );
%
%  Open a new graphics figure.
%
  figure ( )

  hold ( 'on' );

  plot ( usa_lon, usa_lat, 'r-', 'Linewidth', 2 );
  plot ( gen_lon, gen_lat, 'bo', 'Markersize', 15 );
  plot ( cen_lon, cen_lat, 'r.', 'Markersize', 20 );
  axis ( 'equal' );
  grid ( 'on' );
  xlabel ( 'Longitude' );
  ylabel ( 'Latitude' );
  title ( plot_title );

  hold ( 'off' );
%
%  If FILENAME is not empty, save a copy of the plot.
%
  if ( ~ isempty ( filename ) )
    print ( '-dpng', filename )
    fprintf ( 1, '  Graphics saved as "%s"\n', filename );
  end

  return
end
