chiark / gitweb /
fancier hole reports
authorian <ian>
Sat, 4 Sep 2004 00:22:46 +0000 (00:22 +0000)
committerian <ian>
Sat, 4 Sep 2004 00:22:46 +0000 (00:22 +0000)
pcb/hole-report.pl

index 5cee6d664c8d4f4f8267aef328f1cfad34ce8cc3..6ec50598f0abbc99294e21ac66afc56485e8c5b8 100755 (executable)
@@ -1,8 +1,8 @@
 #!/usr/bin/perl
 while (<>) {
     if (m/^\s*(Pin|Via)\[\-?\d+ \-?\d+ (\d+) (\d+) (\d+) (\d+) .*\]$/) {
-       $have{ sprintf "%05d %05d %05d %05d %s",
-             $5,$2,$4,$3,$1 }++;
+       $have{ sprintf "%s %05d %05d %05d %05d",
+             $1,$5,$2,$4,$3 }++;
     } elsif (m/^ \s* (?:
                      PCB | Grid | Cursor | Thermal | DRC |
                      Flags | Groups | Styles |
@@ -18,12 +18,17 @@ while (<>) {
     }
 }
 
-printf "%5s %5s %5s %5s %-3s  %5s\n",
-    qw(drill pad rsist poclr pv count)
+@i= qw(Pv Drill Pad Rsist Poclr PaRs DrPa Count);
+$ix=0; map { $i{$_}= $ix++; } @i;
+
+printf "%-3s %5s %5s %5s %5s  %6s %6s  %5s\n", @i
     or die $!;
 
 foreach $k (sort keys %have) {
-    printf("%5d %5d %5d %5d %-3s  %5d\n",
-          split(/ /, $k), $have{$k})
+    @v= split / /, $k;
+    $v[$i{Count}]= $have{$k};
+    $v[$i{PaRs}]= 0.005 * ($v[$i{Rsist}]-$v[$i{Pad}]);
+    $v[$i{DrPa}]= 0.005 * ($v[$i{Pad}]-$v[$i{Drill}]);
+    printf "%-3s %5d %5d %5d %5d  %6.2f %6.2f  %5d\n", @v
        or die $!;
 }