$segments[1] -= $used;
return if $segments[1] > 0;
@segments= @segments[2..$#segments];
+ o("% segments @segments\n");
}
sub parametric_segment ($$$$$) {
$red += 128;
$red += 32 if $segments[0] =~ m/^\-/;
$red %= 64;
- $red /= 64.0;
$red <<= 2;
+ $red /= 64.0;
$red= sprintf("%f", $red);
o(" $red $subsegcmap{$csegbare} setrgbcolor\n");
} else {
abs midx_x_m 930 700 90
part midx_x cross_peco_s m
-segment -X1 200 X3
+segment -X1 165 -X3
extend midx_x_tr -top_0rm_b parallel demos!right_main_up 315
segment X7
layer =
part bot_0rm pt_main_r c
+
+segment -X7
extend -top_0rm_c top_0rme upto bot_0rm_c
+
+segment /
+
join bot_0rm_b midx_x_br 315
+segment -X7
extend top_0rme top_0rme1 ang 9 315
-
extend top_0rme1 rim_0t uptoang -90 315
+segment /
+
rel rim_0t rim_2t 0 -37
rel rim_2t rim_3t 0 -37
-segment X7 200 X9
join top_0lm_a -top_0rm_a 450
-segment /
-
#---------- box
layer l*
join bot_23lj_a bot_2lk 450
join bot_2lk -leb_2k 352
+segment -X7 20 -X9
join rim_0t bot_0rm_c 315 arcline
+segment /
join rim_2t bot_2rk 352 arcline
#
# BLUE
# 8 bits segment main IN REVERSE ORDER
+#
+# The unknown/unidentified segment is 00 0000 0000, with feature 000000.
use strict;
use IO::Handle;
}
sub reverse_bits_in_byte ($) {
- my ($b) = @_;
- my ($c);
- $c = (($b >> 1) & 0x55) | (($b << 1) & 0xaa);
- $c |= (($b >> 2) & 0x33) | (($b << 2) & 0xcc);
- $c |= (($b >> 4) & 0x0f) | (($b << 4) & 0xf0);
- return $c;
+ my ($a) = @_;
+ my ($b,$c,$d);
+ $b = (($a >> 1) & 0x55) | (($a << 1) & 0xaa);
+ $c = (($b >> 2) & 0x33) | (($b << 2) & 0xcc);
+ $d = (($c >> 4) & 0x0f) | (($c << 4) & 0xf0);
+ return $d;
}
sub cssnmap ($$$$) {