[general] name = Cycloid Cylinder; comments = Cylinder with epicycloid/hypocycloid profile; a1_min = -180; a1_max = 180; a1_steps = 100; a2_min = 0; a2_max = 1; a2_steps = 20; [param] name = r; title = Radius; default = 1; min = 0.1; max = 10; [param] name = a; title = Frequency; default = 10; min = 1; max = 30; [param] name = h; title = Profile; default = 1; min = 0; max = 3; [param] name = s; title = Hypo < 0 / Epi > 0; default = 1; min = -1; max = 1; [formula] S1 = linstep(-0.000001,0,s); S2 = 1 - S1; T1 = 0.1 * a + S1 * 0.1 - S2 * 0.1; T2 = r * (T1 * cos(A1) - (S1 - S2) * (0.1 * h * cos((T1 / 0.1) * A1))); X = r * T2; Y = 3 * A2; Z = -r * (T1 * sin(A1) - 0.1 * h * sin((T1 / 0.1) * A1)); [preset] name = default; r = 1; a = 10; h = 1; s = 1; a1_min = -180; a1_max = 180; a1_steps = 100; a2_min = 0; a2_max = 1; a2_steps = 20;