a: 1
b: sqrt(2)
A = (1.5, 0.5)
B = (0.5, 1.5)
C = (-0.5, 1.5)
D = (-1.5, 0.5)
E = (-1.5, -0.5)
F = (-0.5, -1.5)
G = (0.5, -1.5)
H = (1.5, -0.5)
poly1, a_1, b_1, c, d, e, f, g, h = Polygon(A, B, C, D, E, F, G, H)
I = Intersect(yAxis, zAxis)
i = Sphere(I, A)
J = (0.7946690864540706, 0.4996984267676531)
K = Point(xAxis)
L = (0.7997050892432982, -0.5024661282886211)
poly2, a_2, j, k, l, h_1 = Polygon(A, J, K, L, H)
A' = Rotate(A, 80°, h_1)
J' = Rotate(J, 80°, h_1)
K' = Rotate(K, 80°, h_1)
L' = Rotate(L, 80°, h_1)
H' = Rotate(H, 80°, h_1)
poly2', a', j', k', l', h' = Polygon(A', J', K', L', H')
poly2'' = Rotate(poly2', 90°, zAxis)
poly2''' = Rotate(poly2'', 90°, zAxis)
poly3 = Rotate(poly2''', 90°, zAxis)
L'' = Rotate(L', 90°, zAxis)
p = Plane(A, B, L'')
q: z = 0
r = Plane(K', xOyPlane)
M = Midpoint(A, B)
p_1 = OrthogonalPlane(M, a_1)
N = Midpoint(J', L'')
m = Line(M, N)
t1, l'', a_3, b_2 = Polygon(A, B, L'')
t2, n, a_4, s = Polygon(A, L'', J')
O = Intersect(m, r)
t3, o, t, f_1 = Polygon(J', L'', O)
t1' = Rotate(t1, 90°, zAxis)
t2' = Rotate(t2, 90°, zAxis)
t3' = Rotate(t3, 90°, zAxis)
t1'' = Rotate(t1', 90°, zAxis)
t2'' = Rotate(t2', 90°, zAxis)
t3'' = Rotate(t3', 90°, zAxis)
t1''' = Rotate(t1'', 90°, zAxis)
t2''' = Rotate(t2'', 90°, zAxis)
t3''' = Rotate(t3'', 90°, zAxis)
q_1 = Plane(K', J', O)
g_1: z = 1.25
i_1 = IntersectPath(q_1, g_1)
r_1 = OrthogonalPlane(J', i_1)
P = Point(zAxis)
p_2 = Plane(J', I, P)
q_2 = Plane(O, I, P)
r_2 = Plane(K', I, P)
Q = Intersect(i_1, p_2)
q1, j_1, k_1, o_1, q_3 = Polygon(K', J', O, Q)
eq1: x = 0
s_1: y = 0
q1' = Mirror(q1, s_1)
t_1: y = x
q1'_{1} = Mirror(q1, t_1)
q2 = Mirror(q1'_{1}, eq1)
q1'' = Mirror(q1', zAxis)
q1'_{2} = Mirror(q1, zAxis)
q3 = Mirror(q1'_{1}, zAxis)
q2' = Mirror(q2, zAxis)
f_2: z = 1.55
Q' = Mirror(Q, s_1)
t4, q', l_1, q_4 = Polygon(K', Q, Q')
Q'_{1} = Mirror(Q, t_1)
t5, q_5, o_2, q'_{1} = Polygon(O, Q'_{1}, Q)
t4' = Mirror(t4, t_1)
t5' = Mirror(t5, eq1)
t4'_{1} = Mirror(t4, zAxis)
t5'_{1} = Mirror(t5, zAxis)
t4'' = Mirror(t4', zAxis)
t5'' = Mirror(t5', zAxis)
m_1 = Segment(A, P)
R = Intersect(m_1, f_2)
c_1 = IntersectPath(f_2, i)
S: (x(R), (-y(R)), z(R))
R' = Mirror(R, t_1)
S' = Mirror(S, t_1)
S'_{1} = Mirror(S, zAxis)
R'_{1} = Mirror(R, zAxis)
R'' = Mirror(R', zAxis)
S'' = Mirror(S', zAxis)
q4, n_1, q_6, r_3, s_2 = Polygon(Q', Q, R, S)
q5, q_7, d_1, r', r_4 = Polygon(Q, Q'_{1}, R', R)
q5' = Mirror(q5, t_1)
q5'_{1} = Mirror(q5, s_1)
q4' = Mirror(q4, eq1)
q4'_{1} = Mirror(q4, t_1)
q6 = Mirror(q5'_{1}, zAxis)
q5'_{2} = Mirror(q5, zAxis)
q7 = Mirror(q4'_{1}, zAxis)
P' = Mirror(P, zAxis)