From 85bcc06ea09df9c8e9ad376e133573de311fbb87 Mon Sep 17 00:00:00 2001 From: mattmcw Date: Wed, 5 Apr 2023 20:07:57 -0400 Subject: [PATCH] The random_seed parameter does not produce the desired effects. Creates different files even though they share the same random_seed. --- deterministic_tests.sh | 24 ++++++++++++++++++++++++ scad/deterministic_random_seed.scad | 9 +++++++++ scad/deterministic_random_seed2.scad | 9 +++++++++ 3 files changed, 42 insertions(+) create mode 100644 scad/deterministic_random_seed.scad create mode 100644 scad/deterministic_random_seed2.scad diff --git a/deterministic_tests.sh b/deterministic_tests.sh index f393344..6ba75ef 100644 --- a/deterministic_tests.sh +++ b/deterministic_tests.sh @@ -75,5 +75,29 @@ fi rm -rf "${C14N}" +############## +# RANDOM_SEED +############## + +echo "random_seed..." + +RANDOM_SEED=$(mktemp -d) +FIRST="${RANDOM_SEED}/first.stl" +SECOND="${RANDOM_SEED}/second.stl" + +openscad -q -o "${FIRST}" scad/deterministic_random_seed.scad +openscad -q -o "${SECOND}" scad/deterministic_random_seed2.scad + +DIFF_VAL=$(diff "${FIRST}" "${SECOND}") + +if [[ "${DIFF_VAL}" == "" ]]; then + echo "Files are the same" +else + #echo "${DIFF_VAL}" + echo "Files are different" +fi + +rm -rf "${RANDOM_SEED}" + #--export-format asciistl #--export-format binstl diff --git a/scad/deterministic_random_seed.scad b/scad/deterministic_random_seed.scad new file mode 100644 index 0000000..64e2615 --- /dev/null +++ b/scad/deterministic_random_seed.scad @@ -0,0 +1,9 @@ +$fn = 100; +random_seed=1337; + +difference () { + cube([40, 40, 40], center = true); + cylinder(r = 20/2, h = 40 + 1, center = true); + rotate([90, 0, 0]) cylinder(r = 20/2, h = 40 + 1, center = true); + rotate([0, 90, 0]) cylinder(r = 20/2, h = 40 + 1, center = true); +} \ No newline at end of file diff --git a/scad/deterministic_random_seed2.scad b/scad/deterministic_random_seed2.scad new file mode 100644 index 0000000..54934ae --- /dev/null +++ b/scad/deterministic_random_seed2.scad @@ -0,0 +1,9 @@ +$fn = 100; +random_seed=1337; + +difference () { + cube([40, 40, 40], center = true); + rotate([0, 90, 0]) cylinder(r = 20/2, h = 40 + 1, center = true); + rotate([90, 0, 0]) cylinder(r = 20/2, h = 40 + 1, center = true); + cylinder(r = 20/2, h = 40 + 1, center = true); +} \ No newline at end of file