chiark
/
gitweb
/
~ianmdlvl
/
reprap-play.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
commitid.scad.pl: make * glyph be a *
[reprap-play.git]
/
commitid.scad.pl
diff --git
a/commitid.scad.pl
b/commitid.scad.pl
index c03b044133d763a3111083cdd1d0cbc653d0f326..ae1ebb42b531626ba76a8930dd0272312ac05f1e 100755
(executable)
--- a/
commitid.scad.pl
+++ b/
commitid.scad.pl
@@
-25,7
+25,7
@@
$SIG{__WARN__} = sub { die @_; };
# generate a form FORM containing TEXT
# TEXT can contain newlines (final newline usually undesirable)
# if FORM not specified, generates Arg0 Arg1 Arg2 in sequence
# generate a form FORM containing TEXT
# TEXT can contain newlines (final newline usually undesirable)
# if FORM not specified, generates Arg0 Arg1 Arg2 in sequence
-# character set is SPC 0-9 a-f + *
(`*' glyph is `=/=').
+# character set is SPC 0-9 a-f + *
#
# We generate a physical indication of which commit was used.
#
#
# We generate a physical indication of which commit was used.
#
@@
-68,18
+68,18
@@
$SIG{__WARN__} = sub { die @_; };
# If tree is dirty, + or * is suffixed, reducing number of
# digits by 1.
#
# If tree is dirty, + or * is suffixed, reducing number of
# digits by 1.
#
-# Small4
Q
:
-# Small6
Q
:
-# Small8
Q
:
-# Small10
Q
:
-# same but
in
two lines eg
-# Small4
Q
10
+# Small4
S
:
+# Small6
S
:
+# Small8
S
:
+# Small10
S
:
+# same but
split into
two lines eg
+# Small4
S
10
# 70
#
# 70
#
-# Git4 Git4
Q
-# Git6 Git6
Q
-# Git8 Git8
Q
-# Git10 Git10
Q
+# Git4 Git4
S
+# Git6 Git6
S
+# Git8 Git8
S
+# Git10 Git10
S
# git-rev-parse HEAD (prefix of requested length)
# eg
# Git6 82f2a2
# git-rev-parse HEAD (prefix of requested length)
# eg
# Git6 82f2a2
@@
-127,6
+127,15
@@
sub chrmodname ($) {
return "Commitid__chr_$chrx";
}
return "Commitid__chr_$chrx";
}
+our $gtm_demo_i = -1;
+our $gtm_demo_j;
+our @gtm_demo_o;
+
+sub gentextmodule_demo_start_batch ($;$) {
+ ($gtm_demo_i, $gtm_demo_j) = @_;
+ $gtm_demo_j //= 0;
+}
+
sub gentextmodule ($@) {
my ($form, @lines) = @_;
my $modb = "Commitid_$form";
sub gentextmodule ($@) {
my ($form, @lines) = @_;
my $modb = "Commitid_$form";
@@
-139,9
+148,9
@@
sub gentextmodule ($@) {
$y--;
my $x = 0;
foreach my $chr (split //, $line) {
$y--;
my $x = 0;
foreach my $chr (split //, $line) {
- next if $chr !~ m/\S/;
p sprintf " translate([%d * 0.8, %d * 1.2]) %s();\n",
p sprintf " translate([%d * 0.8, %d * 1.2]) %s();\n",
- $x, $y, chrmodname $chr;
+ $x, $y, chrmodname $chr
+ if $chr =~ m/\S/;
$x++;
}
$cols = $x if $x > $cols;
$x++;
}
$cols = $x if $x > $cols;
@@
-152,8
+161,20
@@
sub gentextmodule ($@) {
p " d=Commitid_depth();\n";
p " translate([0,0,-d]) linear_extrude(height=d*2) ${modb}_2D();\n";
p "}\n";
p " d=Commitid_depth();\n";
p " translate([0,0,-d]) linear_extrude(height=d*2) ${modb}_2D();\n";
p "}\n";
+
p sprintf "function %s_sz() = Commitid__scale() * 0.1 * [ %d, %d ];\n",
$modb, 2 * ($cols * 4 - 1), 2 * (@lines * 6 - 1);
p sprintf "function %s_sz() = Commitid__scale() * 0.1 * [ %d, %d ];\n",
$modb, 2 * ($cols * 4 - 1), 2 * (@lines * 6 - 1);
+
+ push @gtm_demo_o, <<END;
+ translate([$gtm_demo_i * st[0], $gtm_demo_j * st[1]]) {
+ difference(){
+ color("blue") translate([-e,-e]) square(${modb}_sz() + 2*[e,e]);
+ square(${modb}_sz());
+ }
+ ${modb}_2D();
+}
+END
+ $gtm_demo_j++;
}
our @demo;
}
our @demo;
@@
-253,7
+274,7
@@
sub gentextmodule_plusq ($$) {
my $l = length $s;
gentextmodule($form, $s);
if (!($l & 1) && $l>=4) {
my $l = length $s;
gentextmodule($form, $s);
if (!($l & 1) && $l>=4) {
- gentextmodule("${form}
Q
", substr($s,0,$l/2), substr($s,$l/2));
+ gentextmodule("${form}
S
", substr($s,0,$l/2), substr($s,$l/2));
}
}
}
}
@@
-311,12
+332,18
@@
sub do_git () {
}
foreach my $sz (3..10) {
}
foreach my $sz (3..10) {
+ gentextmodule_demo_start_batch($sz-3, 0);
+
gentextmodule_plusq("Small$sz", rjustt($sz, $git_count.$git_dirty))
if defined $git_count;
gentextmodule_plusq("Small$sz", rjustt($sz, $git_count.$git_dirty))
if defined $git_count;
+ gentextmodule_demo_start_batch($sz-3, 2);
+
gentextmodule_plusq("Git$sz", ljustt($sz, $git_object, $git_dirty))
if defined $git_object;
gentextmodule_plusq("Git$sz", ljustt($sz, $git_object, $git_dirty))
if defined $git_object;
+ gentextmodule_demo_start_batch($sz-3, 4);
+
gentextmodule("Full$sz",
rjustt($sz, $git_count.$git_dirty),
ljustt($sz, $git_object, ''))
gentextmodule("Full$sz",
rjustt($sz, $git_count.$git_dirty),
ljustt($sz, $git_object, ''))
@@
-348,10
+375,17
@@
while (@ARGV) {
$do_git //= defined($argcounter) ? '' : 'co';
$do_git //= defined($argcounter) ? '' : 'co';
+gentextmodule_demo_start_batch(-1);
gentextmodule('FontDemo', @demo);
do_git();
gentextmodule('FontDemo', @demo);
do_git();
+p "module Commitid_2DDemo(){\n";
+p " st = Commitid__scale() * [ 10, 5 ];\n";
+p " e = Commitid_pixelsz();\n";
+p $_ foreach @gtm_demo_o;
+p "}\n";
+
flush STDOUT or die $!;
close STDOUT or die $!;
flush STDOUT or die $!;
close STDOUT or die $!;
@@
-383,8
+417,8
@@
a b c d e f
+ *
+ *
- r
- #
###
-###
#
- #
###
- L
+ # #
+ #
\#/
+###
##
#
+ #
/#\
+ # #