chiark / gitweb /
compiles and most output facets are right; needs debugging
[moebius2.git] / oldmoebius-converter
1 #!/usr/bin/perl
2 require 'library.pl';
3 die unless @ARGV==4;
4 ($prime,$instructions,$aout,$output) = @ARGV;
5 $output =~ s/^\-o// or die "$output ?";
6 die if $prime =~ m/^\-/;
7 die if $instructions =~ m/^\-/;
8
9 $aoutin= "$output.aoutin.tmp";
10 $initdata= "$output.initdata.tmp";
11
12 run("cat $instructions >$aoutin");
13
14 open A, ">>$aoutin" or die $!;
15
16 use Math::Trig;
17
18 sub initdata_prime_point_callback ($$$$) {
19     my ($u,$v,$comment,$floatformat) = @_; # SGT's coordinates
20     # v corresponds to the old program's t, roughly
21     printf(A "pointmap $floatformat $floatformat %s\n",
22            $v/(pi), $u, $comment)
23         or die $!;
24 }
25
26 sub initdata_return_vertex_transform () {
27     ($vertex[0],$vertex[2])= ($vertex[2],$vertex[0]);
28     map { $_ *= 0.7 } @vertex;
29     $vertex[1] *= -1;
30     $vertex[1] += 0.5;
31 }
32
33 initdata_process_prime();
34
35 print A "quit\n" or die $!;
36 close A or die $!;
37     
38 run("./$aout <$aoutin >$initdata");
39
40 make_initdata();