#!octave -q

% GPS-Log Geschwindigkeitsprofil plotten
% Achtung, keine Leerzeichen im Dateinamen erlaubt (wg. Octave)

% frank, 3.1.2007

if (nargin != 1)
    usage("usage: nmea-speedplot nmea-log.txt");
endif

filename = nth(argv,1);

tempfile = "/tmp/nmea_speedplot_data.asc";

system(["nmea2matrix < " filename " | awk '{print $5 , $6}' > " tempfile]);

load(tempfile);
system(["rm " tempfile]);

data=nmea_speedplot_data;
sz=size(data); n=sz(1);

if (n == 0)
    usage ("no useful track points");
endif

t=data(:,1);		% Time (s) since Epoch  (spalte 5)
%altitude=data(:,3);	% Altitude
speed=data(:,2)*3.6;	% Speed m/s -> km/h   (spalte 6)

t0=t(1);	% Time_t normalization
t=t-t0;		% Zeitvektor
T=max(t);	% Gesamtzeit

% Skalieren

timeunit='Zeit (s)';
if (T>2*60)
  t=t/60; timeunit='Zeit (min)'; 
  if (T>2*60*60)
    t=t/60; timeunit='Zeit (h)'; 
    if (T>2*24*60*60)
      t=t/24; timeunit='Zeit (Tage)'; 
    endif
  endif
endif

T=max(t);

if ( isoctave && (versioncmp('3.0.0',version)>=0) )
  set (0, "defaulttextfontname", "*");
%  set (0, "defaulttextfontsize", "12");
endif;


f=figure; 
plot(t,speed); grid on; legend "off"; title('Trackauswertung Geschwindigkeit');
axis([0 T 0 max(speed)]); xlabel(timeunit); ylabel('Geschwindigkeit [km/h]');

% Ausgabe PDF

if isoctave

  if versioncmp('3.0.0',version)>=0

    print([filename '-speed.pdf'],'-dpdf','-mono');
    % print([filename '-speed.pdf'],'-dpdf','-FTimes-Roman:12');
    % print([filename '-speed.svg'],'-dsvg','-FTimes-Roman:12');
    close(f);

  else

    filename_pdf = [filename "-speed.pdf"];
    gset('terminal pdf;');
    gset(['output ' '"' filename_pdf '"']);
    replot;
    closeplot;

  endif;

endif;
