a = 0.9 (slider from 0 to 5, step 0.1)
b = 2.3 (slider from 0 to 5, step 0.1)
f(x) = a * cos(x - π / 2)
g(x) = b * sin(x - π / 2) + b
c = CurveCartesian(f(t), g(t), t, 0, 6.283185307179586)
A = Point(c)
B = Point(xAxis)
d = Segment(A, B)
C = Point(d)
D: (0, b - sqrt(b^(2) - a^(2)))
p = 0.01
t: x(C)
P: (f(t), g(t))
f_x = Derivative(f, x)
g_x = Derivative(g, x)
E: P + (f_x(t), g_x(t))
F: (x(P) + 1, y(P))
α = Angle(F, P, E)
list1 = Sequence(Distance[(f(s), g(s)), (f(s + p), g(s + p))], s, 0, t, p)
Q: (Sum[list1], 0)
u = Vector(P, Q)
c' = Translate(c, u)
D' = Translate(D, u)
c'' = Rotate(c', -α, Q)
D'' = Rotate(D', -α, Q)
loc1 = Locus(D'', C)