#!/usr/bin/perl

open (USGS,"usgsdem.tab")  ||  die "Could not open input file ($!)";

open (NX,">nx.tab")  ||  die "Could not open nx.tab file ($!)";
open (NY,">ny.tab")  ||  die "Could not open ny.tab file ($!)";
open (NZ,">nz.tab")  ||  die "Could not open nz.tab file ($!)";

while ($line=<USGS>)
  { $line =~ s/^\s+//;
    $line =~ s/\s+$//;

    ($x,$y,$z,$nx,$ny,$nz) = split(/\s+/,$line);

    $X = ($x + 3144)/16;
    $Y = 477- (($y + 4184)/16);

    $NX[$X][$Y] = $nx;
    $NY[$X][$Y] = $ny;
    $NZ[$X][$Y] = $nz;
  }

close (USGS);

for ($X=0; $X<356; $X++)
  { for ($Y=0; $Y<477; $Y++)
      { if (! $NX[$X][$Y])
          { printf NX "  9.999999";
            printf NY "  9.999999";
            printf NZ "  9.999999";
          }
        else
          { printf NX "%10.6f", $NX[$X][$Y];
            printf NY "%10.6f", $NY[$X][$Y];
            printf NZ "%10.6f", $NZ[$X][$Y];
          }
      }

    printf NX "\r\n";
    printf NY "\r\n";
    printf NZ "\r\n";
  }

close(NX);
close(NY);
close(NZ);
