From 7badd343c143fe080700fda7bc85d51eaa008ce9 Mon Sep 17 00:00:00 2001 From: Justin Lin Date: Tue, 30 May 2017 16:06:06 +0800 Subject: [PATCH] added test_rounded_cube --- test/test_all.scad | 3 ++ test/test_rounded_cube.scad | 83 +++++++++++++++++++++++++++++++++++++ 2 files changed, 86 insertions(+) create mode 100644 test/test_rounded_cube.scad diff --git a/test/test_all.scad b/test/test_all.scad index 30580f61..0fcb55d5 100644 --- a/test/test_all.scad +++ b/test/test_all.scad @@ -5,6 +5,9 @@ include ; include ; include ; +// 3D +include ; + // 2D Shape include ; include ; diff --git a/test/test_rounded_cube.scad b/test/test_rounded_cube.scad new file mode 100644 index 00000000..4ae311df --- /dev/null +++ b/test/test_rounded_cube.scad @@ -0,0 +1,83 @@ +include ; + +module test_rounded_cube_size_corner() { + echo("==== test_rounded_cube_size_corner ===="); + + size = 20; + corner_r = 5; + + include ; + + module test_rounded_edge_corner_center(corner_frags, corners, center_pts) { + half_size = size / 2; + + assertTrue(corner_frags % 4 == 0); + + expected_corners = [[5.0961, 5.0961, 5.0961], [-5.0961, 5.0961, 5.0961], [5.0961, -5.0961, 5.0961], [-5.0961, -5.0961, 5.0961], [5.0961, 5.0961, -5.0961], [-5.0961, 5.0961, -5.0961], [5.0961, -5.0961, -5.0961], [-5.0961, -5.0961, -5.0961]]; + + assertEqualPoints(expected_corners, corners); + + assertEqualPoint( + [half_size, half_size, half_size], + center_pts + ); + } + + rounded_cube(size, corner_r); +} + +module test_rounded_cube_size_center() { + echo("==== test_rounded_cube_size_corner ===="); + + size = [50, 25, 15]; + corner_r = 5; + + include ; + + module test_rounded_edge_corner_center(corner_frags, corners, center_pts) { + + assertTrue(corner_frags % 4 == 0); + + expected_corners = [[20.0961, 7.5961, 2.5961], [-20.0961, 7.5961, 2.5961], [20.0961, -7.5961, 2.5961], [-20.0961, -7.5961, 2.5961], [20.0961, 7.5961, -2.5961], [-20.0961, 7.5961, -2.5961], [20.0961, -7.5961, -2.5961], [-20.0961, -7.5961, -2.5961]]; + + assertEqualPoints(expected_corners, corners); + + assertEqualPoint( + [0, 0, 0], + center_pts + ); + } + + rounded_cube(size, corner_r, center = true); +} + +module test_rounded_cube_size_center_fn() { + echo("==== test_rounded_cube_size_center_fn ===="); + + $fn = 8; + + size = [50, 25, 15]; + corner_r = 5; + + include ; + + module test_rounded_edge_corner_center(corner_frags, corners, center_pts) { + + assertTrue(corner_frags == $fn); + + expected_corners = [[20.3806, 7.8806, 2.8806], [-20.3806, 7.8806, 2.8806], [20.3806, -7.8806, 2.8806], [-20.3806, -7.8806, 2.8806], [20.3806, 7.8806, -2.8806], [-20.3806, 7.8806, -2.8806], [20.3806, -7.8806, -2.8806], [-20.3806, -7.8806, -2.8806]]; + + assertEqualPoints(expected_corners, corners); + + assertEqualPoint( + [0, 0, 0], + center_pts + ); + } + + rounded_cube(size, corner_r, center = true); +} + +test_rounded_cube_size_corner(); +test_rounded_cube_size_center(); +test_rounded_cube_size_center_fn(); \ No newline at end of file