mirror of
https://github.com/JustinSDK/dotSCAD.git
synced 2025-02-25 18:15:26 +01:00
59 lines
19 KiB
OpenSCAD
59 lines
19 KiB
OpenSCAD
include <unittest.scad>;
|
|
include <shape_superformula.scad>;
|
|
|
|
module test_shape_superformula() {
|
|
echo("==== test_shape_superformula ====");
|
|
|
|
phi_step = 0.05;
|
|
|
|
assertEqualPoints(
|
|
[[1, 0], [1.0003, 0.0501], [1.0012, 0.1005], [1.0028, 0.1516], [1.005, 0.2037], [1.0077, 0.2573], [1.0111, 0.3128], [1.015, 0.3705], [1.0195, 0.431], [1.0245, 0.4949], [1.0299, 0.5626], [1.0357, 0.635], [1.0418, 0.7127], [1.0479, 0.7966], [1.0538, 0.8876], [1.0589, 0.9865], [1.0621, 1.0936], [1.0614, 1.2083], [1.0533, 1.3273], [1.0318, 1.4429], [0.9897, 1.5413], [0.9213, 1.6062], [0.8287, 1.6281], [0.7213, 1.6117], [0.6105, 1.5704], [0.5041, 1.5171], [0.4054, 1.4602], [0.3152, 1.4041], [0.2329, 1.3506], [0.1578, 1.3004], [0.0889, 1.2534], [0.0252, 1.2097], [-0.0341, 1.1688], [-0.0897, 1.1305], [-0.1422, 1.0945], [-0.1921, 1.0606], [-0.24, 1.0285], [-0.2861, 0.998], [-0.331, 0.969], [-0.375, 0.9412], [-0.4185, 0.9144], [-0.4616, 0.8885], [-0.5049, 0.8632], [-0.5484, 0.8385], [-0.5926, 0.8142], [-0.6378, 0.79], [-0.6842, 0.7657], [-0.7322, 0.7413], [-0.7821, 0.7164], [-0.8344, 0.6909], [-0.8893, 0.6644], [-0.9475, 0.6366], [-1.0093, 0.6072], [-1.0754, 0.5758], [-1.1463, 0.5419], [-1.2227, 0.5049], [-1.3052, 0.464], [-1.3941, 0.4184], [-1.4891, 0.3669], [-1.5883, 0.3081], [-1.6868, 0.2404], [-1.7743, 0.163], [-1.8345, 0.0763], [-1.851, -0.0156], [-1.8184, -0.1063], [-1.747, -0.1901], [-1.6543, -0.2643], [-1.5547, -0.3288], [-1.4565, -0.385], [-1.3634, -0.4344], [-1.2767, -0.4782], [-1.1964, -0.5177], [-1.1219, -0.5536], [-1.0527, -0.5866], [-0.9881, -0.6173], [-0.9276, -0.6461], [-0.8705, -0.6734], [-0.8165, -0.6996], [-0.7651, -0.7249], [-0.7158, -0.7496], [-0.6684, -0.7739], [-0.6225, -0.7981], [-0.5777, -0.8223], [-0.5337, -0.8468], [-0.4903, -0.8716], [-0.4471, -0.8971], [-0.4039, -0.9233], [-0.3603, -0.9504], [-0.3161, -0.9786], [-0.2708, -1.0081], [-0.2241, -1.0391], [-0.1756, -1.0718], [-0.1249, -1.1064], [-0.0714, -1.1431], [-0.0146, -1.1822], [0.0461, -1.2241], [0.1115, -1.2689], [0.1824, -1.3169], [0.2598, -1.3682], [0.3446, -1.4227], [0.4376, -1.4794], [0.5391, -1.5357], [0.6476, -1.5862], [0.7583, -1.6207], [0.8621, -1.6255], [0.9473, -1.589], [1.0066, -1.5112], [1.041, -1.4051], [1.0572, -1.2871], [1.0623, -1.169], [1.0613, -1.0566], [1.0573, -0.9523], [1.0519, -0.8562], [1.0458, -0.7676], [1.0397, -0.6859], [1.0337, -0.6101], [1.028, -0.5394], [1.0227, -0.473], [1.0179, -0.4103], [1.0136, -0.3508], [1.0099, -0.2939], [1.0067, -0.2391], [1.0042, -0.186], [1.0022, -0.1343], [1.0009, -0.0834], [1.0001, -0.0332]],
|
|
shape_superformula(phi_step, 3, 3, 4.5, 10, 10)
|
|
);
|
|
|
|
|
|
|
|
assertEqualPoints(
|
|
[[1, 0], [1.0003, 0.0501], [1.0013, 0.1005], [1.0028, 0.1516], [1.005, 0.2037], [1.0079, 0.2574], [1.0115, 0.3129], [1.0158, 0.3708], [1.0208, 0.4316], [1.0266, 0.4959], [1.0332, 0.5644], [1.0406, 0.638], [1.0489, 0.7176], [1.0572, 0.8037], [1.0628, 0.8952], [1.0548, 0.9827], [1.0124, 1.0424], [0.9331, 1.0622], [0.8414, 1.0602], [0.7526, 1.0524], [0.6703, 1.044], [0.5944, 1.0362], [0.5238, 1.0292], [0.4579, 1.0231], [0.3957, 1.0178], [0.3367, 1.0132], [0.2802, 1.0093], [0.2258, 1.0062], [0.1731, 1.0037], [0.1216, 1.0018], [0.071, 1.0006], [0.0208, 1.0001], [-0.0292, 1.0001], [-0.0794, 1.0008], [-0.1302, 1.0021], [-0.1819, 1.004], [-0.2349, 1.0066], [-0.2895, 1.0099], [-0.3464, 1.0139], [-0.4059, 1.0186], [-0.4687, 1.0241], [-0.5354, 1.0303], [-0.6067, 1.0374], [-0.6837, 1.0454], [-0.7671, 1.0538], [-0.8568, 1.0612], [-0.948, 1.061], [-1.0226, 1.0353], [-1.058, 0.9691], [-1.0624, 0.8796], [-1.0559, 0.7888], [-1.0474, 0.7037], [-1.0393, 0.6253], [-1.032, 0.5526], [-1.0255, 0.4848], [-1.0199, 0.4211], [-1.015, 0.3609], [-1.0108, 0.3034], [-1.0074, 0.2482], [-1.0046, 0.1949], [-1.0025, 0.1429], [-1.0011, 0.0919], [-1.0002, 0.0416], [-1, -0.0084], [-1.0004, -0.0585], [-1.0015, -0.109], [-1.0032, -0.1603], [-1.0055, -0.2126], [-1.0085, -0.2666], [-1.0122, -0.3224], [-1.0165, -0.3808], [-1.0217, -0.4421], [-1.0276, -0.5071], [-1.0344, -0.5764], [-1.042, -0.651], [-1.0503, -0.7316], [-1.0585, -0.8188], [-1.0629, -0.9106], [-1.0506, -0.9954], [-1.0011, -1.0483], [-0.9179, -1.0628], [-0.826, -1.0591], [-0.7383, -1.051], [-0.6571, -1.0426], [-0.5822, -1.0349], [-0.5124, -1.0281], [-0.4472, -1.0221], [-0.3855, -1.0169], [-0.327, -1.0125], [-0.2709, -1.0087], [-0.2169, -1.0057], [-0.1644, -1.0033], [-0.113, -1.0016], [-0.0625, -1.0005], [-0.0124, -1], [0.0376, -1.0002], [0.0879, -1.001], [0.1388, -1.0024], [0.1907, -1.0044], [0.2439, -1.0072], [0.2989, -1.0105], [0.3562, -1.0146], [0.4162, -1.0195], [0.4796, -1.0251], [0.547, -1.0315], [0.6193, -1.0387], [0.6973, -1.0468], [0.7818, -1.0552], [0.8723, -1.0621], [0.9625, -1.0591], [1.0315, -1.027], [1.0602, -0.9549], [1.0617, -0.8641], [1.0545, -0.774], [1.046, -0.6901], [1.038, -0.6126], [1.0309, -0.5408], [1.0245, -0.4738], [1.019, -0.4108], [1.0142, -0.351], [1.0102, -0.294], [1.0069, -0.2391], [1.0042, -0.186], [1.0022, -0.1343], [1.0009, -0.0834], [1.0001, -0.0332]],
|
|
shape_superformula(phi_step, 4, 4, 12, 15, 15)
|
|
);
|
|
|
|
|
|
assertEqualPoints(
|
|
[[1, 0], [1.001, 0.0501], [1.0042, 0.1008], [1.0096, 0.1526], [1.0173, 0.2062], [1.0271, 0.2623], [1.0381, 0.3211], [1.0476, 0.3824], [1.0493, 0.4436], [1.0343, 0.4996], [0.9989, 0.5457], [0.9496, 0.5822], [0.8957, 0.6128], [0.843, 0.6408], [0.7932, 0.6681], [0.7466, 0.6956], [0.7029, 0.7237], [0.6614, 0.7528], [0.6216, 0.7833], [0.5832, 0.8155], [0.5456, 0.8497], [0.5084, 0.8863], [0.4713, 0.9259], [0.4335, 0.9687], [0.3942, 1.0141], [0.3521, 1.0596], [0.305, 1.0985], [0.2516, 1.1208], [0.1933, 1.1208], [0.1341, 1.1044], [0.0767, 1.0812], [0.022, 1.0575], [-0.0303, 1.0357], [-0.0807, 1.0165], [-0.1299, 1], [-0.1786, 0.9858], [-0.2272, 0.9739], [-0.2764, 0.9639], [-0.3266, 0.9559], [-0.3785, 0.9499], [-0.4327, 0.9456], [-0.4899, 0.9428], [-0.55, 0.9403], [-0.6119, 0.9355], [-0.6714, 0.9224], [-0.7215, 0.8937], [-0.7571, 0.8474], [-0.7808, 0.7905], [-0.7983, 0.7312], [-0.8138, 0.6738], [-0.8294, 0.6196], [-0.8459, 0.5683], [-0.8637, 0.5196], [-0.8831, 0.4728], [-0.9041, 0.4274], [-0.9271, 0.3828], [-0.9523, 0.3386], [-0.98, 0.2941], [-1.0106, 0.249], [-1.0442, 0.2025], [-1.0798, 0.1539], [-1.1144, 0.1024], [-1.1407, 0.0475], [-1.1484, -0.0097], [-1.1334, -0.0663], [-1.1033, -0.1201], [-1.0677, -0.1706], [-1.0326, -0.2184], [-1, -0.2643], [-0.9704, -0.3091], [-0.9435, -0.3534], [-0.9191, -0.3977], [-0.8968, -0.4426], [-0.8764, -0.4884], [-0.8576, -0.5358], [-0.8402, -0.5852], [-0.8241, -0.6375], [-0.8086, -0.6928], [-0.7928, -0.7511], [-0.7738, -0.8103], [-0.7468, -0.8646], [-0.7061, -0.9054], [-0.6521, -0.9282], [-0.591, -0.9377], [-0.5294, -0.9412], [-0.4703, -0.9436], [-0.4142, -0.9468], [-0.3608, -0.9517], [-0.3095, -0.9584], [-0.2597, -0.9671], [-0.2108, -0.9777], [-0.1622, -0.9903], [-0.1135, -1.0053], [-0.0639, -1.0227], [-0.0129, -1.0427], [0.0401, -1.0653], [0.0957, -1.0893], [0.1539, -1.1111], [0.2132, -1.1231], [0.2702, -1.1157], [0.3215, -1.0867], [0.3667, -1.0445], [0.4077, -0.9986], [0.4463, -0.9539], [0.4838, -0.9122], [0.5209, -0.8737], [0.5581, -0.8379], [0.596, -0.8045], [0.6348, -0.7729], [0.6751, -0.7429], [0.7173, -0.7141], [0.762, -0.6863], [0.8096, -0.6589], [0.8604, -0.6315], [0.9139, -0.6029], [0.9671, -0.5708], [1.0129, -0.5314], [1.0417, -0.4817], [1.0501, -0.4233], [1.0449, -0.3616], [1.0344, -0.301], [1.0236, -0.2431], [1.0145, -0.1879], [1.0076, -0.135], [1.0029, -0.0836], [1.0005, -0.0332]],
|
|
shape_superformula(phi_step, 7, 7, 10, 6, 6)
|
|
);
|
|
|
|
|
|
assertEqualPoints(
|
|
[[1, 0], [1.0007, 0.0501], [1.0028, 0.1006], [1.0061, 0.1521], [1.0104, 0.2048], [1.0155, 0.2593], [1.0206, 0.3157], [1.025, 0.3742], [1.0274, 0.4344], [1.0261, 0.4957], [1.0192, 0.5568], [1.0045, 0.6158], [0.9803, 0.6706], [0.946, 0.7192], [0.9025, 0.7601], [0.8516, 0.7934], [0.7961, 0.8197], [0.7383, 0.8405], [0.6802, 0.8572], [0.6231, 0.8714], [0.5676, 0.884], [0.514, 0.8961], [0.4623, 0.9082], [0.4121, 0.9209], [0.3633, 0.9344], [0.3153, 0.949], [0.2679, 0.965], [0.2205, 0.9824], [0.1727, 1.0012], [0.124, 1.0215], [0.074, 1.043], [0.0222, 1.0652], [-0.0318, 1.0875], [-0.088, 1.1087], [-0.1464, 1.127], [-0.2065, 1.1401], [-0.2673, 1.1456], [-0.3271, 1.141], [-0.3843, 1.1249], [-0.4374, 1.0976], [-0.4854, 1.0606], [-0.5282, 1.0166], [-0.5664, 0.9685], [-0.6007, 0.9185], [-0.6322, 0.8685], [-0.6616, 0.8194], [-0.6897, 0.7719], [-0.7173, 0.7262], [-0.7448, 0.6822], [-0.7726, 0.6398], [-0.8013, 0.5986], [-0.8309, 0.5583], [-0.8619, 0.5185], [-0.8944, 0.4789], [-0.9285, 0.4389], [-0.9642, 0.3981], [-1.0013, 0.356], [-1.0391, 0.3119], [-1.0767, 0.2653], [-1.1126, 0.2158], [-1.1444, 0.1631], [-1.1694, 0.1074], [-1.185, 0.0493], [-1.189, -0.01], [-1.181, -0.0691], [-1.1619, -0.1265], [-1.1343, -0.1812], [-1.1008, -0.2328], [-1.0642, -0.2813], [-1.0263, -0.327], [-0.9887, -0.3703], [-0.9521, -0.412], [-0.9169, -0.4525], [-0.8833, -0.4922], [-0.8513, -0.5319], [-0.8208, -0.5717], [-0.7915, -0.6123], [-0.7632, -0.6539], [-0.7355, -0.6968], [-0.708, -0.7414], [-0.6803, -0.7877], [-0.6518, -0.8358], [-0.6219, -0.8852], [-0.5896, -0.9354], [-0.554, -0.985], [-0.5144, -1.032], [-0.4698, -1.074], [-0.4201, -1.108], [-0.3655, -1.1316], [-0.3072, -1.1438], [-0.2469, -1.1448], [-0.1862, -1.1364], [-0.1265, -1.1213], [-0.0688, -1.1018], [-0.0134, -1.0801], [0.0398, -1.0577], [0.091, -1.0356], [0.1405, -1.0145], [0.1888, -0.9947], [0.2365, -0.9763], [0.2838, -0.9595], [0.3314, -0.944], [0.3796, -0.9297], [0.4288, -0.9165], [0.4795, -0.9041], [0.5318, -0.8921], [0.5861, -0.8799], [0.6422, -0.8668], [0.6997, -0.8519], [0.7579, -0.834], [0.8151, -0.8115], [0.8694, -0.783], [0.9181, -0.7472], [0.9586, -0.7036], [0.9895, -0.6528], [1.0104, -0.5963], [1.0223, -0.5364], [1.0271, -0.475], [1.0269, -0.414], [1.0237, -0.3543], [1.0189, -0.2965], [1.0137, -0.2408], [1.0089, -0.1869], [1.0048, -0.1346], [1.0019, -0.0835], [1.0003, -0.0332]],
|
|
shape_superformula(phi_step, 5, 5, 4, 4, 4)
|
|
);
|
|
|
|
|
|
assertEqualPoints(
|
|
[[1, 0], [1.0056, 0.0503], [1.0227, 0.1026], [1.0519, 0.159], [1.0946, 0.2219], [1.1526, 0.2943], [1.2283, 0.38], [1.3248, 0.4836], [1.4443, 0.6106], [1.5862, 0.7662], [1.7408, 0.951], [1.8778, 1.1513], [1.9418, 1.3285], [1.8814, 1.4302], [1.7043, 1.4355], [1.4736, 1.3728], [1.247, 1.2839], [1.0505, 1.1958], [0.8884, 1.1195], [0.7565, 1.0579], [0.6488, 1.0105], [0.5599, 0.9761], [0.4853, 0.9535], [0.4214, 0.9417], [0.3656, 0.9403], [0.3154, 0.9491], [0.2689, 0.9685], [0.2243, 0.9993], [0.1798, 1.0427], [0.1336, 1.1007], [0.0834, 1.1757], [0.0264, 1.2712], [-0.0406, 1.3913], [-0.1222, 1.5402], [-0.2234, 1.7195], [-0.3482, 1.922], [-0.4943, 2.1189], [-0.6448, 2.2491], [-0.7666, 2.2438], [-0.8339, 2.0925], [-0.8507, 1.8587], [-0.8385, 1.6137], [-0.8158, 1.3949], [-0.793, 1.2124], [-0.7744, 1.0639], [-0.7617, 0.9435], [-0.7556, 0.8457], [-0.7562, 0.7657], [-0.7638, 0.6997], [-0.7787, 0.6448], [-0.8015, 0.5988], [-0.8331, 0.5597], [-0.8747, 0.5262], [-0.9281, 0.4969], [-0.9954, 0.4705], [-1.0797, 0.4458], [-1.185, 0.4213], [-1.3162, 0.395], [-1.4785, 0.3643], [-1.6756, 0.325], [-1.9038, 0.2714], [-2.1389, 0.1965], [-2.3222, 0.0966], [-2.376, -0.02], [-2.2714, -0.1328], [-2.0619, -0.2244], [-1.8245, -0.2915], [-1.6054, -0.3395], [-1.4201, -0.3754], [-1.2688, -0.4042], [-1.147, -0.4296], [-1.0492, -0.454], [-0.971, -0.4792], [-0.9087, -0.5064], [-0.8595, -0.537], [-0.8214, -0.5722], [-0.7929, -0.6134], [-0.7729, -0.6622], [-0.7605, -0.7205], [-0.7553, -0.7908], [-0.7569, -0.8764], [-0.7653, -0.9812], [-0.78, -1.1104], [-0.8003, -1.2698], [-0.8238, -1.4646], [-0.8445, -1.6943], [-0.8494, -1.9416], [-0.8177, -2.1567], [-0.7309, -2.2632], [-0.5956, -2.2175], [-0.4434, -2.0564], [-0.3035, -1.8525], [-0.1869, -1.6559], [-0.0929, -1.4867], [-0.0167, -1.3479], [0.0465, -1.2365], [0.1009, -1.1483], [0.1495, -1.0794], [0.1949, -1.0266], [0.2392, -0.9876], [0.2842, -0.9608], [0.3317, -0.945], [0.3836, -0.9396], [0.4419, -0.9445], [0.509, -0.9598], [0.588, -0.9863], [0.6827, -1.0249], [0.7979, -1.077], [0.9393, -1.1436], [1.1127, -1.2244], [1.3205, -1.3147], [1.5529, -1.3987], [1.7734, -1.4435], [1.9167, -1.4069], [1.9324, -1.2748], [1.8367, -1.084], [1.6887, -0.886], [1.5363, -0.7105], [1.4014, -0.5649], [1.2899, -0.4464], [1.2007, -0.3494], [1.1312, -0.2687], [1.0786, -0.1998], [1.0406, -0.1394], [1.0156, -0.0847], [1.0025, -0.0333]],
|
|
shape_superformula(phi_step, 5, 5, 2, 7, 7)
|
|
);
|
|
|
|
|
|
|
|
assertEqualPoints(
|
|
[[1, 0], [1.0115, 0.0506], [1.047, 0.105], [1.1092, 0.1676], [1.2034, 0.2439], [1.3379, 0.3416], [1.5257, 0.472], [1.7868, 0.6522], [2.152, 0.9098], [2.6685, 1.289], [3.4016, 1.8583], [4.3853, 2.6887], [5.318, 3.6382], [5.2197, 3.968], [4.0782, 3.4351], [2.9443, 2.7429], [2.136, 2.1994], [1.5884, 1.8082], [1.2129, 1.5284], [0.9491, 1.3273], [0.7594, 1.1826], [0.6196, 1.0801], [0.5142, 1.0103], [0.4328, 0.9672], [0.3683, 0.9474], [0.3154, 0.9492], [0.2701, 0.9728], [0.2289, 1.02], [0.1888, 1.0945], [0.146, 1.2025], [0.096, 1.3539], [0.0325, 1.5636], [-0.0542, 1.8545], [-0.1796, 2.2622], [-0.3693, 2.8422], [-0.6657, 3.6751], [-1.1265, 4.8286], [-1.7383, 6.0632], [-2.1478, 6.2868], [-2.0438, 5.1287], [-1.7389, 3.7996], [-1.4633, 2.8161], [-1.2524, 2.1414], [-1.0962, 1.676], [-0.9816, 1.3486], [-0.899, 1.1136], [-0.8417, 0.9421], [-0.8053, 0.8154], [-0.7872, 0.7211], [-0.7861, 0.6509], [-0.8019, 0.599], [-0.8358, 0.5615], [-0.8903, 0.5356], [-0.9698, 0.5193], [-1.081, 0.511], [-1.2338, 0.5095], [-1.4437, 0.5133], [-1.7341, 0.5205], [-2.1414, 0.5276], [-2.7227, 0.5281], [-3.5642, 0.5081], [-4.7564, 0.4369], [-6.1478, 0.2558], [-6.7005, -0.0564], [-5.6982, -0.3332], [-4.3144, -0.4696], [-3.2456, -0.5185], [-2.5031, -0.5293], [-1.9883, -0.5256], [-1.6255, -0.5179], [-1.3655, -0.5115], [-1.1769, -0.5093], [-1.0395, -0.513], [-0.9399, -0.5238], [-0.8694, -0.5432], [-0.8222, -0.5727], [-0.7946, -0.6147], [-0.7846, -0.6722], [-0.7914, -0.7498], [-0.8155, -0.8539], [-0.8585, -0.994], [-0.9237, -1.1844], [-1.0162, -1.4466], [-1.1435, -1.8143], [-1.3165, -2.3405], [-1.5487, -3.1073], [-1.8435, -4.2141], [-2.1216, -5.5961], [-2.0671, -6.4005], [-1.5279, -5.6887], [-0.9502, -4.4063], [-0.5506, -3.361], [-0.2961, -2.6234], [-0.1317, -2.1091], [-0.0216, -1.7457], [0.0559, -1.4853], [0.114, -1.2974], [0.1609, -1.1619], [0.2024, -1.066], [0.2425, -1.0013], [0.2847, -0.9624], [0.3322, -0.9462], [0.3885, -0.9516], [0.458, -0.979], [0.5465, -1.0305], [0.6621, -1.1106], [0.8167, -1.226], [1.0281, -1.3877], [1.3243, -1.6124], [1.7496, -1.9253], [2.3738, -2.3633], [3.2908, -2.9639], [4.5032, -3.6653], [5.416, -3.9753], [5.0622, -3.3397], [4.0315, -2.3794], [3.1266, -1.6404], [2.4741, -1.1442], [2.015, -0.8122], [1.6892, -0.5846], [1.4555, -0.4236], [1.2875, -0.3058], [1.1677, -0.2163], [1.085, -0.1454], [1.0322, -0.0861], [1.0051, -0.0334]],
|
|
shape_superformula(phi_step, 5, 5, 2, 13, 13)
|
|
);
|
|
|
|
|
|
assertEqualPoints(
|
|
[[1, 0], [0.9523, 0.0477], [0.9088, 0.0912], [0.8687, 0.1313], [0.8315, 0.1685], [0.7966, 0.2034], [0.7637, 0.2363], [0.7326, 0.2674], [0.7028, 0.2972], [0.6743, 0.3257], [0.6467, 0.3533], [0.6199, 0.3801], [0.5938, 0.4062], [0.5681, 0.4319], [0.5428, 0.4572], [0.5177, 0.4823], [0.4927, 0.5073], [0.4677, 0.5323], [0.4424, 0.5576], [0.4169, 0.5831], [0.391, 0.609], [0.3645, 0.6355], [0.3373, 0.6627], [0.3092, 0.6908], [0.2799, 0.7201], [0.2494, 0.7506], [0.2173, 0.7827], [0.1833, 0.8167], [0.1471, 0.8529], [0.1082, 0.8918], [0.0662, 0.9338], [0.0204, 0.9796], [-0.0284, 0.9716], [-0.0735, 0.9265], [-0.115, 0.885], [-0.1534, 0.8466], [-0.1892, 0.8108], [-0.2228, 0.7772], [-0.2546, 0.7454], [-0.2849, 0.7151], [-0.314, 0.686], [-0.3419, 0.6581], [-0.369, 0.631], [-0.3954, 0.6046], [-0.4213, 0.5787], [-0.4467, 0.5533], [-0.4719, 0.5281], [-0.4969, 0.5031], [-0.5219, 0.4781], [-0.547, 0.453], [-0.5724, 0.4276], [-0.5981, 0.4019], [-0.6244, 0.3756], [-0.6513, 0.3487], [-0.679, 0.321], [-0.7078, 0.2922], [-0.7377, 0.2623], [-0.7691, 0.2309], [-0.8023, 0.1977], [-0.8375, 0.1625], [-0.8752, 0.1248], [-0.9159, 0.0841], [-0.96, 0.04], [-0.9917, -0.0083], [-0.9448, -0.0552], [-0.9018, -0.0982], [-0.8623, -0.1377], [-0.8254, -0.1746], [-0.7909, -0.2091], [-0.7584, -0.2416], [-0.7275, -0.2725], [-0.698, -0.302], [-0.6696, -0.3304], [-0.6421, -0.3579], [-0.6155, -0.3845], [-0.5894, -0.4106], [-0.5638, -0.4362], [-0.5386, -0.4614], [-0.5135, -0.4865], [-0.4885, -0.5115], [-0.4634, -0.5366], [-0.4382, -0.5618], [-0.4126, -0.5874], [-0.3866, -0.6134], [-0.36, -0.64], [-0.3326, -0.6674], [-0.3043, -0.6957], [-0.2749, -0.7251], [-0.2441, -0.7559], [-0.2117, -0.7883], [-0.1774, -0.8226], [-0.1408, -0.8592], [-0.1014, -0.8986], [-0.0588, -0.9412], [-0.0122, -0.9878], [0.0363, -0.9637], [0.0807, -0.9193], [0.1216, -0.8784], [0.1596, -0.8404], [0.195, -0.805], [0.2283, -0.7717], [0.2598, -0.7402], [0.2899, -0.7101], [0.3187, -0.6813], [0.3465, -0.6535], [0.3735, -0.6265], [0.3998, -0.6002], [0.4256, -0.5744], [0.451, -0.549], [0.4761, -0.5239], [0.5011, -0.4989], [0.5261, -0.4739], [0.5513, -0.4487], [0.5767, -0.4233], [0.6025, -0.3975], [0.6289, -0.3711], [0.6559, -0.3441], [0.6838, -0.3162], [0.7127, -0.2873], [0.7429, -0.2571], [0.7746, -0.2254], [0.8081, -0.1919], [0.8437, -0.1563], [0.8819, -0.1181], [0.923, -0.077], [0.9679, -0.0321]],
|
|
shape_superformula(phi_step, 4, 4, 1, 1, 1)
|
|
);
|
|
|
|
assertEqualPoints(
|
|
[[1, 0], [1.0075, 0.0504], [1.0305, 0.1034], [1.0701, 0.1617], [1.1284, 0.2287], [1.2086, 0.3086], [1.3153, 0.4069], [1.4549, 0.5311], [1.6363, 0.6918], [1.8711, 0.9038], [2.174, 1.1877], [2.5611, 1.5702], [3.0433, 2.0821], [3.6083, 2.743], [4.1846, 3.5246], [4.6053, 4.2903], [4.6507, 4.7886], [4.2298, 4.815], [3.4997, 4.4102], [2.7159, 3.7978], [2.0403, 3.1776], [1.5167, 2.644], [1.1286, 2.2175], [0.8445, 1.887], [0.6354, 1.6343], [0.4792, 1.442], [0.3599, 1.2966], [0.2666, 1.1877], [0.1911, 1.108], [0.1278, 1.0525], [0.0722, 1.0177], [0.0208, 1.0015], [-0.0293, 1.003], [-0.0811, 1.0222], [-0.1378, 1.0603], [-0.2028, 1.1196], [-0.2808, 1.2038], [-0.3779, 1.3182], [-0.5025, 1.4708], [-0.6663, 1.6722], [-0.8863, 1.9367], [-1.1857, 2.282], [-1.5945, 2.7263], [-2.1434, 3.2772], [-2.8428, 3.9055], [-3.6327, 4.4995], [-4.3291, 4.8452], [-4.6763, 4.7346], [-4.5551, 4.1726], [-4.0927, 3.3888], [-3.5095, 2.6216], [-2.9556, 1.9858], [-2.4895, 1.4977], [-2.1176, 1.1338], [-1.8273, 0.8638], [-1.6024, 0.6617], [-1.4288, 0.508], [-1.2953, 0.3888], [-1.1934, 0.2941], [-1.1172, 0.2167], [-1.0622, 0.1514], [-1.0255, 0.0942], [-1.0052, 0.0418], [-1.0002, -0.0084], [-1.0103, -0.0591], [-1.036, -0.1128], [-1.0785, -0.1723], [-1.1403, -0.2411], [-1.2246, -0.3237], [-1.3363, -0.4257], [-1.4822, -0.5552], [-1.6717, -0.7234], [-1.9168, -0.9459], [-2.2328, -1.2443], [-2.6355, -1.6465], [-3.1335, -2.1827], [-3.7077, -2.8681], [-4.2722, -3.6603], [-4.6445, -4.4003], [-4.6112, -4.8285], [-4.1215, -4.772], [-3.3655, -4.3151], [-2.5923, -3.6902], [-1.9416, -3.0806], [-1.4427, -2.5649], [-1.0744, -2.1556], [-0.8048, -1.8396], [-0.6059, -1.5982], [-0.4569, -1.4146], [-0.3427, -1.2759], [-0.2528, -1.1724], [-0.1797, -1.0971], [-0.118, -1.0453], [-0.0633, -1.0137], [-0.0124, -1.0005], [0.0378, -1.005], [0.0902, -1.0273], [0.148, -1.0688], [0.2149, -1.1319], [0.2956, -1.2207], [0.3967, -1.341], [0.5269, -1.5009], [0.6989, -1.7118], [0.9304, -1.9886], [1.246, -2.3494], [1.6763, -2.8116], [2.2509, -3.3793], [2.9726, -4.0125], [3.7633, -4.5819], [4.4182, -4.862], [4.688, -4.6673], [4.4952, -4.0486], [3.9977, -3.2539], [3.4117, -2.5042], [2.8705, -1.8937], [2.4206, -1.4286], [2.0635, -1.0826], [1.7853, -0.8257], [1.57, -0.6329], [1.4038, -0.4858], [1.2761, -0.3713], [1.1789, -0.28], [1.1065, -0.205], [1.0548, -0.1413], [1.021, -0.0851], [1.0033, -0.0333]],
|
|
shape_superformula(phi_step, 4, 4, 1, 7, 8)
|
|
);
|
|
}
|
|
|
|
test_shape_superformula();
|