#!/usr/bin/perl

$tmp1 = `createmp dr2dgnplot_tmp`;
$tmp2 = `createmp dr2dgnplot_tmp`;

sub catch { `rm -f $tmp1 $tmp2`; }
$SIG{INT} = 'catch';

open(DATAF, $ARGV[0]) or die "Open file impossible : $!\n";
open(TMPF, ">$tmp1") or die "Open file impossible : $!\n";

$li = <DATAF>;$li = <DATAF>;$li = <DATAF>;$li = <DATAF>;$li = <DATAF>;

while ($li = <DATAF>)
{
  chomp($li);
  $c = 0;
  while ($li)
  { $cov[$c++] = $li; $li = <DATAF>; chomp($li); }

  if ($c == 3)  # P1
  {
    print TMPF "$cov[0]\n$cov[1]\n$cov[2]\n$cov[0]\n\n\n";
  }
  elsif ($c == 6)  # P2
  {
    print TMPF "$cov[0]\n$cov[1]\n$cov[2]\n$cov[4]\n$cov[5]\n";
    print TMPF "$cov[3]\n$cov[0]\n\n\n";
  }
  elsif ($c == 10)  # P3
  {
    print TMPF "$cov[0]\n$cov[1]\n$cov[2]\n$cov[3]\n$cov[6]\n";
    print TMPF "$cov[8]\n$cov[9]\n$cov[7]\n$cov[4]\n$cov[0]\n\n\n";
  }
  elsif ($c == 15)  # P4
  {
    print TMPF "$cov[0]\n$cov[1]\n$cov[2]\n$cov[3]\n$cov[4]\n";
    print TMPF "$cov[8]\n$cov[11]\n$cov[13]\n$cov[14]\n$cov[12]\n";
    print TMPF "$cov[9]\n$cov[5]\n$cov[0]\n\n\n";
  }
  else { die "Unknown format with $c lines\n"; }



}

close(DATAF);
close(TMPF);

open(GNF, ">$tmp2") or die "Open file impossible : $!\n";
print GNF "set data style line \n";
print GNF "splot \'$tmp1\' title \'solution\'\n";
print GNF "pause -1\n";
print GNF "set term postscript\n";
print GNF "set output \'$ARGV[0].ps\'\n";
print GNF "replot\n";
close(GNF);
`gnuplot $tmp2`;
`rm -f $tmp1 $tmp2`;
