diff options
author | Don Bright <hugh.m.bright@gmail.com> | 2013-12-29 23:20:17 (GMT) |
---|---|---|
committer | Don Bright <hugh.m.bright@gmail.com> | 2013-12-29 23:20:17 (GMT) |
commit | 81a08c05c2d03aa8791279dfbcf7f9ca826fcf96 (patch) | |
tree | 5177fa483ea81d5b5e6bbdb354425132b4f17478 /testdata | |
parent | 316c514208bebc7e5e99aeeaf916c6011a47b5ac (diff) | |
parent | b272d1f0defa8dd908217ccd43a48eb60735d2d4 (diff) |
Merge branch 'master' of github.com:openscad/openscad into colorsfix
Diffstat (limited to 'testdata')
-rw-r--r-- | testdata/scad/features/difference-2d-tests.scad | 29 | ||||
-rw-r--r-- | testdata/scad/features/difference-tests.scad | 22 | ||||
-rw-r--r-- | testdata/scad/features/linear_extrude-tests.scad | 7 |
3 files changed, 52 insertions, 6 deletions
diff --git a/testdata/scad/features/difference-2d-tests.scad b/testdata/scad/features/difference-2d-tests.scad new file mode 100644 index 0000000..bb798c2 --- /dev/null +++ b/testdata/scad/features/difference-2d-tests.scad @@ -0,0 +1,29 @@ +difference() { + square(10, center=true); + circle(r=4); +} + +translate([12,0]) difference() { + square(10, center=true); + translate([2,2]) circle(r=2); + translate([-2,-2]) circle(r=2); +} + +// Subtracting something from nothing +translate([12,12]) difference() { + square([0,10], center=true); + # circle(r=4); +} + +// Non-geometry (echo) statement as first child should be ignored +translate([0,12]) difference() { + echo("difference-2d-tests"); + square(10, center=true); + circle(r=4); +} + +// Subtract 3D from 2D +translate([24,0]) difference() { + square(10, center=true); + sphere(r=4); +} diff --git a/testdata/scad/features/difference-tests.scad b/testdata/scad/features/difference-tests.scad index b770764..0751213 100644 --- a/testdata/scad/features/difference-tests.scad +++ b/testdata/scad/features/difference-tests.scad @@ -3,27 +3,26 @@ difference(); // No children difference() { } +// Basic difference() { cube([10,10,10], center=true); cylinder(r=4, h=20, center=true); } -translate([12,0,0]) difference() { - cube([10,10,10], center=true); - cylinder(r=4, h=10.5, center=true); -} - +// Two negative objects translate([0,12,0]) difference() { cube([10,10,10], center=true); cylinder(r=4, h=11, center=true); rotate([0,90,0]) cylinder(r=4, h=11, center=true); } +// Not intersecting translate([12,12,0]) difference() { cube([10,10,10], center=true); translate([0,0,7.01]) cylinder(r=4, h=4, center=true); } +// Barely intersecting translate([24,0,0]) difference() { cube([10,10,10], center=true); translate([0,0,6.99]) cylinder(r=4, h=4, center=true); @@ -34,3 +33,16 @@ translate([24,12,0]) difference() { cube([0,10,10], center=true); # cylinder(r=4, h=20, center=true); } + +// Non-geometry (echo) statement as first child should be ignored +translate([24,-12,0]) difference() { + echo("difference-tests"); + cube([10,10,10], center=true); + cylinder(r=4, h=20, center=true); +} + +// Subtracting 2D from 3D +translate([12,0,0]) difference() { + cube([10,10,10], center=true); + circle(r=6); +} diff --git a/testdata/scad/features/linear_extrude-tests.scad b/testdata/scad/features/linear_extrude-tests.scad index 680bf53..fbd1858 100644 --- a/testdata/scad/features/linear_extrude-tests.scad +++ b/testdata/scad/features/linear_extrude-tests.scad @@ -9,7 +9,12 @@ linear_extrude(height=10) square([10,10]); translate([19,5,0]) linear_extrude(height=10, center=true) difference() {circle(5); circle(3);} translate([31.5,2.5,0]) linear_extrude(height=10, twist=-45) polygon(points = [[-5,-2.5], [5,-2.5], [0,2.5]]); -translate([0,20,0]) linear_extrude(height=20, twist=45, slices=2) square([10,10]); +translate([0,20,0]) linear_extrude(height=20, twist=30, slices=2) { + difference() { + square([10,10]); + translate([1,1]) square([8,8]); + } +} translate([19,20,0]) linear_extrude(height=20, twist=45, slices=10) square([10,10]); translate([0,-15,0]) linear_extrude(5) square([10,10]); |