n_1 = 1.01 (slider from 1 to 3, step 0.01)
n_2 = 1.34 (slider from 1 to 3, step 0.01)
A = Intersect(xAxis, yAxis)
c = Circle(A, 4)
d = Circle(A, 5)
e = Circle(A, 6)
g = Circle(A, 2)
F = Intersect(g, yAxis, 2)
G = Intersect(g, xAxis, 1)
h = CircleArc(A, F, G)
H = Point(h)
i_1 = Ray(A, H)
I = Intersect(e, i_1, 1)
j = Segment(I, A)
i = Angle(F, A, H)
D = Intersect(c, yAxis, 1)
Rayos = 80 (slider from 0 to 200, step 1)
lista1 = Sequence(Rotate[D, ((w * 90) * ° / Rayos), A], w, 0, Rayos)
lista2 = Sequence(Segment[A, Element[lista1, w]], w, 1, Rayos + 1)
N = Intersect(c, yAxis, 2)
Agua = Intersect(d, xAxis, 1)
K = Intersect(d, xAxis, 2)
f = Segment(Agua, K)
a: sin(i)
k = Segment(N, D)
b: asin(a)
r_1: asind((n_1 / n_2 * sin(i)))
D' = Rotate(D, r_1, A)
l = Ray(A, D')
B = Intersect(e, l, 1)
m = Segment(A, B)
r = Angle(D, A, D')
Aire = Intersect(d, f, 1)