1
0
mirror of https://github.com/JustinSDK/dotSCAD.git synced 2025-08-25 23:46:32 +02:00
This commit is contained in:
Justin Lin
2019-06-11 14:49:12 +08:00
parent eaeb0d1e28
commit fcddf7b187
2 changed files with 14 additions and 14 deletions

View File

@@ -46,15 +46,17 @@ module assertEqualPoint(expected, actual, epsilon = 0.0001) {
", but: ", leng_actual)
);
} else {
for(elem = (expected - actual)) {
if(abs(elem) > epsilon) {
fail(
"Point",
str("expected: ", expected,
", but: ", actual)
);
}
v_diff = expected - actual;
v3d = len(v_diff) == 2 ? [v_diff[0], v_diff[1], 0] : v_diff;
if(abs(v3d[0]) > epsilon && abs(v3d[1]) > epsilon && abs(v3d[2]) > epsilon) {
fail(
"Point",
str("expected: ", expected,
", but: ", actual)
);
}
}
}

View File

@@ -12,13 +12,11 @@ module test_archimedean_spiral() {
);
expected_points = [[-5, 0], [-3.3333, -5.7735], [1.9153, -7.6542], [6.9287, -5.6121], [9.7591, -1.1017], [9.7906, 4.1666], [7.2895, 8.7588], [3.0136, 11.7181], [-2.0901, 12.5895], [-7.0994, 11.3524], [-11.25, 8.3116], [-14.0047, 3.9802], [-15.0734, -1.03], [-14.3991, -6.0996], [-12.1214, -10.6703], [-8.5301, -14.2915], [-4.013, -16.6466], [0.9931, -17.5619], [6.0464, -17.0006], [10.7367, -15.0488], [14.7127, -11.8925], [17.7005, -7.7927], [19.5144, -3.0584], [20.0591, 1.9792], [19.327, 6.9904], [17.3894, 11.6667], [14.385, 15.7377], [10.5054, 18.9824], [5.9805, 21.2371], [1.0622, 22.3994], [-3.9897, 22.4281], [-8.9216, 21.3404], [-13.4974, 19.2066], [-17.5086, 16.1426], [-20.7812, 12.3017], [-23.1817, 7.8645], [-24.6193, 3.0301], [-25.0472, -1.9943], [-24.4614, -7.0016], [-22.8983, -11.7935], [-20.4309, -16.1876], [-17.1632, -20.0228], [-13.2255, -23.1648], [-8.7672, -25.5085], [-3.9513, -26.9808], [1.0527, -27.5407], [6.0742, -27.1795], [10.9476, -25.9189], [15.5171, -23.8091], [19.6415, -20.9256], [23.1974, -17.3655], [26.0825, -13.2437], [28.2172, -8.6885], [29.5463, -3.8373], [30.0392, 1.168], [29.6895, 6.1848], [28.5147, 11.0741], [26.5539, 15.704], [23.8664, 19.9529], [20.5291, 23.7124], [16.6337, 26.8894], [12.2839, 29.4078], [7.5924, 31.21], [2.6774, 32.2573], [-2.3402, 32.5302], [-7.3397, 32.0283], [-12.2036, 30.7692], [-16.8203, 28.7878], [-21.0862, 26.1347], [-24.9077, 22.8745], [-28.2033, 19.084], [-30.9046, 14.8497], [-32.9575, 10.2661], [-34.3228, 5.4333], [-34.9764, 0.4543], [-34.9096, -4.5667], [-34.1286, -9.5267], [-32.6536, -14.326], [-30.5187, -18.8701], [-27.77, -23.0711], [-24.4648, -26.8496], [-20.67, -30.1356], [-16.4604, -32.8699], [-11.9176, -35.0046], [-7.1276, -36.5038], [-2.1794, -37.3437], [2.8365, -37.513], [7.83, -37.0127], [12.713, -35.8552], [17.4007, -34.0647], [21.8134, -31.6755], [25.8769, -28.7318], [29.5245, -25.2864], [32.6974, -21.3997], [35.3456, -17.1384], [37.4285, -12.5742], [38.9152, -7.7828], [39.7851, -2.8422], [40.0275, 2.1685], [39.6416, 7.1699]];
expected_angles = [181, 241, 285, 321, 354, 384, 411, 436, 460, 483, 504, 525, 544, 563, 582, 600, 617, 634, 650, 666, 682, 697, 712, 726, 740, 754, 768, 782, 795, 808, 821, 833, 846, 858, 870, 882, 893, 905, 916, 928, 939, 950, 961, 972, 982, 993, 1003, 1013, 1024, 1034, 1044, 1054, 1063, 1073, 1083, 1092, 1102, 1111, 1120, 1130, 1139, 1148, 1157, 1166, 1175, 1183, 1192, 1201, 1209, 1218, 1226, 1235, 1243, 1252, 1260, 1268, 1276, 1284, 1292, 1300, 1308, 1316, 1324, 1332, 1339, 1347, 1355, 1362, 1370, 1378, 1385, 1393, 1400, 1407, 1415, 1422, 1429, 1436, 1444, 1451];
expected_points = [[-5, -5.6166e-6], [-3.33332, -5.77351], [1.91533, -7.65424], [6.92877, -5.61211], [9.7591, -1.1017], [9.79062, 4.16668], [7.28945, 8.75883], [3.01356, 11.7181], [-2.09019, 12.5895], [-7.09946, 11.3523], [-11.25, 8.31153], [-14.0047, 3.9801], [-15.0734, -1.03017], [-14.399, -6.09976], [-12.1214, -10.6704], [-8.52998, -14.2915], [-4.01284, -16.6467], [0.993248, -17.5618], [6.04659, -17.0006], [10.7369, -15.0487], [14.7128, -11.8923], [17.7006, -7.79251], [19.5144, -3.05819], [20.0591, 1.97944], [19.327, 6.99059], [17.3893, 11.6669], [14.3848, 15.7379], [10.5052, 18.9825], [5.98025, 21.2372], [1.06198, 22.3994], [-3.98996, 22.4281], [-8.92185, 21.3403], [-13.4977, 19.2064], [-17.5088, 16.1424], [-20.7814, 12.3014], [-23.1818, 7.86423], [-24.6194, 3.02975], [-25.0472, -1.9946], [-24.4613, -7.0019], [-22.8982, -11.7938], [-20.4306, -16.1878], [-17.163, -20.0231], [-13.2252, -23.165], [-8.76686, -25.5087], [-3.95086, -26.9808], [1.05313, -27.5407], [6.07462, -27.1794], [10.948, -25.9187], [15.5175, -23.8089], [19.6418, -20.9253], [23.1977, -17.3652], [26.0827, -13.2433], [28.2174, -8.68809], [29.5464, -3.8368], [30.0391, 1.16851], [29.6894, 6.18531], [28.5145, 11.0746], [26.5536, 15.7045], [23.866, 19.9533], [20.5287, 23.7128], [16.6332, 26.8897], [12.2835, 29.408], [7.59187, 31.2101], [2.6768, 32.2573], [-2.34079, 32.5302], [-7.34027, 32.0282], [-12.2042, 30.769], [-16.8208, 28.7875], [-21.0866, 26.1344], [-24.9081, 22.8741], [-28.2036, 19.0834], [-30.9049, 14.8491], [-32.9577, 10.2655], [-34.3229, 5.43264], [-34.9764, 0.453654], [-34.9095, -4.56731], [-34.1284, -9.52732], [-32.6534, -14.3266], [-30.5184, -18.8707], [-27.7696, -23.0716], [-24.4643, -26.8501], [-20.6694, -30.136], [-16.4598, -32.8703], [-11.9169, -35.0049], [-7.12684, -36.5039], [-2.17866, -37.3437], [2.83721, -37.513], [7.83071, -37.0125], [12.7137, -35.855], [17.4014, -34.0643], [21.814, -31.675], [25.8775, -28.7313], [29.525, -25.2858], [32.6978, -21.399], [35.3459, -17.1377], [37.4287, -12.5734], [38.9154, -7.78198], [39.7852, -2.84131], [40.0274, 2.16931], [39.6415, 7.17075]];
expected_angles = [180, 240, 284.049, 320.993, 353.559, 383.054, 410.231, 435.578, 459.427, 482.021, 503.543, 524.135, 543.91, 562.959, 581.357, 599.169, 616.447, 633.237, 649.579, 665.507, 681.051, 696.239, 711.093, 725.636, 739.885, 753.859, 767.572, 781.039, 794.273, 807.286, 820.087, 832.689, 845.098, 857.325, 869.377, 881.261, 892.984, 904.553, 915.973, 927.251, 938.391, 949.398, 960.277, 971.033, 981.669, 992.19, 1002.6, 1012.9, 1023.09, 1033.19, 1043.18, 1053.08, 1062.89, 1072.6, 1082.23, 1091.77, 1101.23, 1110.6, 1119.9, 1129.12, 1138.26, 1147.33, 1156.33, 1165.26, 1174.12, 1182.91, 1191.64, 1200.3, 1208.9, 1217.44, 1225.92, 1234.34, 1242.7, 1251.01, 1259.26, 1267.45, 1275.6, 1283.69, 1291.73, 1299.72, 1307.66, 1315.55, 1323.4, 1331.2, 1338.95, 1346.66, 1354.33, 1361.95, 1369.52, 1377.06, 1384.55, 1392.01, 1399.42, 1406.8, 1414.13, 1421.43, 1428.69, 1435.92, 1443.1, 1450.25];
actual_points = [for(pa = points_angles) pa[0]];
// ceil for annoying float errors when echoing...XD
actual_angles = [for(pa = points_angles) ceil(pa[1])];
actual_angles = [for(pa = points_angles) pa[1]];
assertEqualPoints(expected_points, actual_points);