1
0
mirror of https://github.com/JustinSDK/dotSCAD.git synced 2025-05-14 01:35:26 +02:00

modify use case

This commit is contained in:
Justin Lin 2019-06-12 13:08:07 +08:00
parent c5c9ca40c9
commit edd022bca2

@ -9,42 +9,10 @@ module test_ring_extrude_closed() {
include <ring_extrude.scad>;
module test_ring_extrude(sections) {
expected = [
[[52, 0, -10], [52, 0, 10], [48, 0, 10], [48, 0, -10]]
, [[51.875, 11.026, -9.736], [49.831, 10.592, 10.154], [45.939, 9.765, 9.736], [47.984, 10.199, -10.154]]
, [[49.364, 21.978, -9.366], [45.565, 20.287, 10.197], [41.991, 18.695, 9.366], [45.789, 20.387, -10.197]]
, [[44.49, 32.324, -8.893], [39.49, 28.691, 10.129], [36.412, 26.455, 8.893], [41.412, 30.088, -10.129]]
, [[37.401, 41.538, -8.322], [31.957, 35.492, 9.949], [29.512, 32.777, 8.322], [34.956, 38.822, -9.949]]
, [[28.366, 49.131, -7.66], [23.366, 40.471, 9.66], [21.634, 37.471, 7.66], [26.634, 46.131, -9.66]]
, [[17.767, 54.682, -6.915], [14.134, 43.501, 9.266], [13.134, 40.424, 6.915], [16.767, 51.604, -9.266]]
, [[6.081, 57.859, -6.093], [4.682, 44.55, 8.77], [4.372, 41.593, 6.093], [5.77, 54.903, -8.77]]
, [[-6.143, 58.448, -5.205], [-4.59, 43.666, 8.178], [-4.31, 41.004, 5.205], [-5.863, 55.786, -8.178]]
, [[-18.314, 56.365, -4.26], [-13.314, 40.977, 7.496], [-12.588, 38.741, 4.26], [-17.588, 54.129, -7.496]]
, [[-29.83, 51.667, -3.268], [-21.17, 36.667, 6.732], [-20.17, 34.935, 3.268], [-28.83, 49.935, -6.732]]
, [[-40.114, 44.551, -2.24], [-27.888, 30.973, 5.894], [-26.799, 29.764, 2.24], [-39.025, 43.342, -5.894]]
, [[-48.645, 35.343, -1.188], [-33.257, 24.162, 4.992], [-32.257, 23.436, 1.188], [-47.645, 34.616, -4.992]]
, [[-54.993, 24.484, -0.123], [-37.121, 16.527, 4.035], [-36.362, 16.189, 0.123], [-54.233, 24.146, -4.035]]
, [[-58.84, 12.507, 0.944], [-39.384, 8.371, 3.034], [-38.975, 8.284, -0.944], [-58.431, 12.42, -3.034]]
, [[-60, 0, 2], [-40, 0, 2], [-40, 0, -2], [-60, 0, -2]]
, [[-58.431, -12.42, 3.034], [-38.975, -8.284, 0.944], [-39.384, -8.371, -3.034], [-58.84, -12.507, -0.944]]
, [[-54.233, -24.146, 4.035], [-36.362, -16.189, -0.123], [-37.121, -16.527, -4.035], [-54.993, -24.484, 0.123]]
, [[-47.645, -34.616, 4.992], [-32.257, -23.436, -1.188], [-33.257, -24.162, -4.992], [-48.645, -35.343, 1.188]]
, [[-39.025, -43.342, 5.894], [-26.799, -29.764, -2.24], [-27.888, -30.973, -5.894], [-40.114, -44.551, 2.24]]
, [[-28.83, -49.935, 6.732], [-20.17, -34.935, -3.268], [-21.17, -36.667, -6.732], [-29.83, -51.667, 3.268]]
, [[-17.588, -54.129, 7.496], [-12.588, -38.741, -4.26], [-13.314, -40.977, -7.496], [-18.314, -56.365, 4.26]]
, [[-5.863, -55.786, 8.178], [-4.31, -41.004, -5.205], [-4.59, -43.666, -8.178], [-6.143, -58.448, 5.205]]
, [[5.77, -54.903, 8.77], [4.372, -41.593, -6.093], [4.682, -44.55, -8.77], [6.081, -57.859, 6.093]]
, [[16.767, -51.604, 9.266], [13.134, -40.424, -6.915], [14.134, -43.501, -9.266], [17.767, -54.682, 6.915]]
, [[26.634, -46.131, 9.66], [21.634, -37.471, -7.66], [23.366, -40.471, -9.66], [28.366, -49.131, 7.66]]
, [[34.956, -38.822, 9.949], [29.512, -32.777, -8.322], [31.957, -35.492, -9.949], [37.401, -41.538, 8.322]]
, [[41.412, -30.088, 10.129], [36.412, -26.455, -8.893], [39.49, -28.691, -10.129], [44.49, -32.324, 8.893]]
, [[45.789, -20.387, 10.197], [41.991, -18.695, -9.366], [45.565, -20.287, -10.197], [49.364, -21.978, 9.366]]
, [[47.984, -10.199, 10.154], [45.939, -9.765, -9.736], [49.831, -10.592, -10.154], [51.875, -11.026, 9.736]]
, [[48, 0, 10], [48, 0, -10], [52, 0, -10], [52, 0, 10]]
];
expected = [[[52, 0, -10], [52, 0, 10], [48, 0, 10], [48, 0, -10]], [[51.8754, 11.0265, -9.73616], [49.8305, 10.5918, 10.1543], [45.9394, 9.76471, 9.73616], [47.9842, 10.1994, -10.1543]], [[49.3638, 21.9782, -9.36565], [45.5651, 20.2869, 10.1973], [41.9907, 18.6955, 9.36565], [45.7895, 20.3868, -10.1973]], [[44.4897, 32.3237, -8.89253], [39.4897, 28.6909, 10.1286], [36.412, 26.4549, 8.89253], [41.412, 30.0876, -10.1286]], [[37.4007, 41.5377, -8.32198], [31.9575, 35.4924, 9.94893], [29.5124, 32.7768, 8.32198], [34.9556, 38.8221, -9.94893]], [[28.366, 49.1314, -7.66025], [23.366, 40.4711, 9.66025], [21.634, 37.4711, 7.66025], [26.634, 46.1314, -9.66025]], [[17.7672, 54.6818, -6.9146], [14.1345, 43.5015, 9.26574], [13.1345, 40.4238, 6.9146], [16.7672, 51.6042, -9.26574]], [[6.08121, 57.8589, -6.09319], [4.68235, 44.5496, 8.76971], [4.37163, 41.5933, 6.09319], [5.7705, 54.9026, -8.76971]], [[-6.14311, 58.4478, -5.20502], [-4.58951, 43.6663, 8.1776], [-4.30974, 41.0044, 5.20502], [-5.86333, 55.7859, -8.1776]], [[-18.3141, 56.3651, -4.25982], [-13.3141, 40.9767, 7.49589], [-12.5876, 38.7406, 4.25982], [-17.5876, 54.129, -7.49589]], [[-29.8301, 51.6673, -3.26795], [-21.1699, 36.6673, 6.73205], [-20.1699, 34.9352, 3.26795], [-28.8301, 49.9352, -6.73205]], [[-40.1137, 44.5507, -2.24028], [-27.888, 30.9728, 5.89446], [-26.7994, 29.7637, 2.24028], [-39.025, 43.3417, -5.89446]], [[-48.6451, 35.3427, -1.18806], [-33.2566, 24.1624, 4.99228], [-32.2566, 23.4358, 1.18806], [-47.6451, 34.6162, -4.99228]], [[-54.993, 24.4844, -0.122822], [-37.1213, 16.5275, 4.03541], [-36.3616, 16.1892, 0.122822], [-54.2332, 24.1462, -4.03541]], [[-58.8398, 12.5068, 0.943759], [-39.384, 8.37132, 3.03433], [-38.975, 8.28439, -0.943759], [-58.4308, 12.4198, -3.03433]], [[-60, 0, 2], [-40, 0, 2], [-40, 0, -2], [-60, 0, -2]], [[-58.4308, -12.4198, 3.03433], [-38.975, -8.28439, 0.943759], [-39.384, -8.37132, -3.03433], [-58.8398, -12.5068, -0.943759]], [[-54.2332, -24.1462, 4.03541], [-36.3616, -16.1892, -0.122822], [-37.1213, -16.5275, -4.03541], [-54.993, -24.4844, 0.122822]], [[-47.6451, -34.6162, 4.99228], [-32.2566, -23.4358, -1.18806], [-33.2566, -24.1624, -4.99228], [-48.6451, -35.3427, 1.18806]], [[-39.025, -43.3417, 5.89446], [-26.7994, -29.7637, -2.24028], [-27.888, -30.9728, -5.89446], [-40.1137, -44.5507, 2.24028]], [[-28.8301, -49.9352, 6.73205], [-20.1699, -34.9352, -3.26795], [-21.1699, -36.6673, -6.73205], [-29.8301, -51.6673, 3.26795]], [[-17.5876, -54.129, 7.49589], [-12.5876, -38.7406, -4.25982], [-13.3141, -40.9767, -7.49589], [-18.3141, -56.3651, 4.25982]], [[-5.86333, -55.7859, 8.1776], [-4.30974, -41.0044, -5.20502], [-4.58951, -43.6663, -8.1776], [-6.14311, -58.4478, 5.20502]], [[5.7705, -54.9026, 8.76971], [4.37163, -41.5933, -6.09319], [4.68235, -44.5496, -8.76971], [6.08121, -57.8589, 6.09319]], [[16.7672, -51.6042, 9.26574], [13.1345, -40.4238, -6.9146], [14.1345, -43.5015, -9.26574], [17.7672, -54.6818, 6.9146]], [[26.634, -46.1314, 9.66025], [21.634, -37.4711, -7.66025], [23.366, -40.4711, -9.66025], [28.366, -49.1314, 7.66025]], [[34.9556, -38.8221, 9.94893], [29.5124, -32.7768, -8.32198], [31.9575, -35.4924, -9.94893], [37.4007, -41.5377, 8.32198]], [[41.412, -30.0876, 10.1286], [36.412, -26.4549, -8.89253], [39.4897, -28.6909, -10.1286], [44.4897, -32.3237, 8.89253]], [[45.7895, -20.3868, 10.1973], [41.9907, -18.6955, -9.36565], [45.5651, -20.2869, -10.1973], [49.3638, -21.9782, 9.36565]], [[47.9842, -10.1994, 10.1543], [45.9394, -9.76471, -9.73616], [49.8305, -10.5918, -10.1543], [51.8754, -11.0265, 9.73616]], [[48, 0, 10], [48, 0, -10], [52, 0, -10], [52, 0, 10]]];
for(i = [0:len(expected) - 1]) {
assertEqualPoints(expected[i], sections[i], float_digits = 3);
assertEqualPoints(expected[i], sections[i]);
}
}
@ -64,27 +32,10 @@ module test_ring_extrude_not_closed() {
include <ring_extrude.scad>;
module test_ring_extrude(sections) {
expected = [
[[52, 0, -10], [52, 0, 10], [48, 0, 10], [48, 0, -10]]
, [[50.994, 10.839, -10.667], [50.994, 10.839, 10.667], [46.821, 9.952, 10.667], [46.821, 9.952, -10.667]]
, [[47.748, 21.259, -11.333], [47.748, 21.259, 11.333], [43.607, 19.415, 11.333], [43.607, 19.415, -11.333]]
, [[42.392, 30.8, -12], [42.392, 30.8, 12], [38.509, 27.979, 12], [38.509, 27.979, -12]]
, [[35.152, 39.04, -12.667], [35.152, 39.04, 12.667], [31.761, 35.275, 12.667], [31.761, 35.275, -12.667]]
, [[26.333, 45.611, -13.333], [26.333, 45.611, 13.333], [23.667, 40.992, 13.333], [23.667, 40.992, -13.333]]
, [[16.316, 50.216, -14], [16.316, 50.216, 14], [14.586, 44.89, 14], [14.586, 44.89, -14]]
, [[5.533, 52.643, -14.667], [5.533, 52.643, 14.667], [4.92, 46.809, 14.667], [4.92, 46.809, -14.667]]
, [[-5.547, 52.776, -15.333], [-5.547, 52.776, 15.333], [-4.906, 46.676, 15.333], [-4.906, 46.676, -15.333]]
, [[-16.44, 50.596, -16], [-16.44, 50.596, 16], [-14.462, 44.509, 16], [-14.462, 44.509, -16]]
, [[-26.667, 46.188, -16.667], [-26.667, 46.188, 16.667], [-23.333, 40.415, 16.667], [-23.333, 40.415, -16.667]]
, [[-35.776, 39.733, -17.333], [-35.776, 39.733, 17.333], [-31.137, 34.581, 17.333], [-31.137, 34.581, -17.333]]
, [[-43.363, 31.505, -18], [-43.363, 31.505, 18], [-37.538, 27.273, 18], [-37.538, 27.273, -18]]
, [[-49.088, 21.855, -18.667], [-49.088, 21.855, 18.667], [-42.267, 18.818, 18.667], [-42.267, 18.818, -18.667]]
, [[-52.69, 11.2, -19.333], [-52.69, 11.2, 19.333], [-45.125, 9.592, 19.333], [-45.125, 9.592, -19.333]]
, [[-54, 0, -20], [-54, 0, 20], [-46, 0, 20], [-46, 0, -20]]
];
expected = [[[52, 0, -10], [52, 0, 10], [48, 0, 10], [48, 0, -10]], [[50.9941, 10.8391, -10.6667], [50.9941, 10.8391, 10.6667], [46.8207, 9.95204, 10.6667], [46.8207, 9.95204, -10.6667]], [[47.748, 21.2588, -11.3333], [47.748, 21.2588, 11.3333], [43.6066, 19.4149, 11.3333], [43.6066, 19.4149, -11.3333]], [[42.3925, 30.7999, -12], [42.3925, 30.7999, 12], [38.5092, 27.9786, 12], [38.5092, 27.9786, -12]], [[35.1517, 39.0399, -12.6667], [35.1517, 39.0399, 12.6667], [31.7614, 35.2746, 12.6667], [31.7614, 35.2746, -12.6667]], [[26.3333, 45.6107, -13.3333], [26.3333, 45.6107, 13.3333], [23.6667, 40.9919, 13.3333], [23.6667, 40.9919, -13.3333]], [[16.3161, 50.2158, -14], [16.3161, 50.2158, 14], [14.5856, 44.8899, 14], [14.5856, 44.8899, -14]], [[5.53304, 52.6434, -14.6667], [5.53304, 52.6434, 14.6667], [4.91981, 46.8088, 14.6667], [4.91981, 46.8088, -14.6667]], [[-5.54698, 52.776, -15.3333], [-5.54698, 52.776, 15.3333], [-4.90587, 46.6762, 15.3333], [-4.90587, 46.6762, -15.3333]], [[-16.4397, 50.5962, -16], [-16.4397, 50.5962, 16], [-14.462, 44.5094, 16], [-14.462, 44.5094, -16]], [[-26.6667, 46.188, -16.6667], [-26.6667, 46.188, 16.6667], [-23.3333, 40.4145, 16.6667], [-23.3333, 40.4145, -16.6667]], [[-35.7762, 39.7335, -17.3333], [-35.7762, 39.7335, 17.3333], [-31.1369, 34.581, 17.3333], [-31.1369, 34.581, -17.3333]], [[-43.3633, 31.5053, -18], [-43.3633, 31.5053, 18], [-37.5384, 27.2732, 18], [-37.5384, 27.2732, -18]], [[-49.0878, 21.8553, -18.6667], [-49.0878, 21.8553, 18.6667], [-42.2667, 18.8183, 18.6667], [-42.2667, 18.8183, -18.6667]], [[-52.6896, 11.1995, -19.3333], [-52.6896, 11.1995, 19.3333], [-45.1252, 9.59166, 19.3333], [-45.1252, 9.59166, -19.3333]], [[-54, 0, -20], [-54, 0, 20], [-46, 0, 20], [-46, 0, -20]]];
for(i = [0:len(expected) - 1]) {
assertEqualPoints(expected[i], sections[i], float_digits = 3);
assertEqualPoints(expected[i], sections[i]);
}
}