chiark / gitweb /
Merge branch 'master' of ../ypp-sc-tools
[ypp-sc-tools.db-test.git] / yarrg / ocean-topology-graph
1 #!/usr/bin/perl -w
2
3 use strict (qw(vars));
4
5 use CommodsDatabase;
6
7 my $ocean= shift @ARGV;
8
9 db_setocean($ocean);
10 db_connect();
11 my $islands= $dbh->selectall_arrayref('
12         SELECT islandid,islandname FROM islands;
13 ');
14 my $routes= $dbh->selectall_arrayref('
15         SELECT aiid, biid, dist FROM routes;
16 ');
17 $dbh->disconnect();
18
19 #use Data::Dumper;
20 #print Dumper($results);
21
22 print "strict graph $ocean {\n";
23 print "    splines=true;\n";
24 print "    nslimit=10;\n";
25 print "    mclimit=10;\n";
26
27 foreach my $row (@$islands) {
28     my ($id,$str) = @$row;
29     $str =~ s/[\"\\]/\\$&/g;
30     print "    n$id [ label=\"$str\" ];\n";
31 }
32 foreach my $row (@$routes) {
33     my ($ia,$ib,$dist) = @$row;
34     print "    n$ia -- n$ib [ w=".(1.0/($dist*$dist)).", len=".(0.5*$dist+1).", label=$dist ];\n";
35     #len=$dist, minlen=$dist, , ,
36     #w=".(1.0/$dist).", 
37 }
38
39 print "}\n";