X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=reprap-play.git;a=blobdiff_plain;f=distort-stl;h=68290c410a6ae4738d680d6409abd8f3464c008e;hp=d893057b135fe601de0d09725dcf1a89d2c19b16;hb=77c39f4394b1ede3825b88234a0d9832cc6d3b78;hpb=2aac4e057110032839bf1245c88fec48c33094fc diff --git a/distort-stl b/distort-stl index d893057..68290c4 100755 --- a/distort-stl +++ b/distort-stl @@ -32,7 +32,7 @@ use Data::Dumper; sub TAU () { M_PI * 2; } -our $debug = $ENV{DISTORT_DEBUG}; +our $debug = $ENV{DISTORT_DEBUG} // 0 ; my $ps = $ENV{DISTORT_PS}; if ($ps) { @@ -180,7 +180,7 @@ sub project_cylinder_tri { my $radius = $project_cylinder_radius; my @ot; - foreach my $p (@$t) { + foreach my $p (@$t[0..2]) { my ($x,$y,$z) = @$p; my $r = $radius - $y; my $theta = $x / $radius; @@ -188,6 +188,7 @@ sub project_cylinder_tri { -$r * cos($theta), $z ]; } + push @ot, $t->[3].'P'; append_triangle \@ot; } @@ -275,8 +276,8 @@ print "solid distort-stl\n"; foreach my $t (@$triangles) { print " facet normal 0 0 0\n"; print " outer loop\n"; - die unless @$t==3; - foreach my $p (@$t) { + die unless @$t==4; + foreach my $p (@$t[0..2]) { die unless @$p==3; print " vertex"; printf " %.18g", $_ foreach @$p;