." | ".$pr->(@found)." | ?"
unless @found==1;
my $r = $found[0][0];
- print "resolve $ra -> $adja->{Pattern} = $r\n";
+ print STDERR "resolve $ra -> $adja->{Pattern} = $r\n";
return $r;
}
foreach my $ra (sort keys %region) {
foreach my $adja (@{ $region{$ra}{Adj} }) {
my $rb = $adja->{Name};
- my ($r0,$r1) =
- $ra lt $rb ? ($ra,$rb) :
- $rb lt $ra ? ($rb,$ra) : confess "$ra $rb ?";
+ my ($r0,$r1) = sort {
+ ($a eq 'NZ') <=> ($b eq 'NZ') or
+ $a cmp $b
+ } ($ra,$rb);
push @{ $edges{$r0}{$r1}{L} }, $adja->{L};
my $e = $edges{$r0}{$r1};
$e->{Dikes} //= $adja->{Dikes};
$ndikes += $e->{Dikes};
}
}
- print "total $ndikes dikes\n";
+ print STDERR "total $ndikes dikes\n";
+}
+
+sub o { print @_ or die $!; }
+
+sub output_dot () {
+ o "strict graph \"map\" {\n";
+ foreach my $r0 (sort keys %edges) {
+ foreach my $r1 (sort keys %{ $edges{$r0} }) {
+ my $e = $edges{$r0}{$r1};
+ my $r1n = $r1 eq 'NZ' ? "_NZ $r0" : $r1;
+ o "\"$r0\" -- \"$r1n\";\n";
+ }
+ }
+ o "}\n";
}
read_in();
resolve_arefs();
edges();
+output_dot();
# Local variables:
# cperl-indent-level: 2