Parking Problem
Author: Toni Chehlarova  d22178
Date: 2015

u_1 = 124.4 (slider from d + (2 * g) to d + (2 * g) + a + b + 100, step 0.1)
α = 0.7330382858376184 rad (slider from 1*° to 89*°, step 1*°)
A = Intersect(xAxis, yAxis)
o_1 = 144.9 (slider from (2 * g) + d to (2 * g) + d + 100, step 0.1)
B: (o_1, 0)
q_3 = Circle(B, u_1)
A' = Rotate(A, 180° - α, B)
a_2 = Ray(B, A')
I_2 = Intersect(q_3, a_2)
h = Segment(B, I_2)
d = 70 (slider from (2 * g) to 300, step 0.1)
g = 12 (slider from 0 to 100, step 0.1)
G: (x(A), g)
u = Vector(A, G)
B' = Translate(B, u)
B'' = Rotate(B', (-α), B)
v = Vector(B, B'')
B'_1 = Translate(B, v)
C' = Translate(I_2, v)
h' = Segment(B'_1, C')
b_2 = 57.8 (slider from 0 to 100, step 0.1)
D: (x(I_2) + (3 * b_2), y(I_2))
i = Segment(I_2, D)
j, l = AngularBisector(h, i)
H = Intersect(l, h')
d_1 = Segment(B'', H)
c = PolyLine(A, B, I_2, D)
E = Point(c)
b_1 = OrthogonalLine(E, h)
M = Intersect(b_1, d_1)
s_3 = Segment(M, H)
f_1 = Circle(M, d)
f = Segment(A, B)
A'_1 = Translate(A, u)
f' = Segment(A'_1, B')
e = OrthogonalLine(E, f)
F = Intersect(e, f')
r_3 = Segment(F, B')
q = Circle(F, d)
P = Intersect(f_1, s_3)
g_1 = Segment(M, P)
c_1 = Circle(M, g)
A_1, C = Intersect(c_1, g_1)
β = Angle(A, B, A')
k = Circle(F, E)
p = CircleArc(B, B'', B')
K = Intersect(q, p)
s = Circle(K, g)
L, N = Intersect(q, h')
t = Circle(L, g)
m = Segment(F, L)
n = Segment(F, K)
r = Circle(N, g)
e_1 = Segment(F, N)
w = Vector(I_2, H)
C'_1 = Translate(I_2, w)
D' = Translate(D, w)
i' = Segment(C'_1, D')
h_1 = Circle(P, g)
Q, I = Intersect(f_1, i')
i_1 = Segment(M, Q)
k_1 = Circle(Q, g)
R = Intersect(e, i')
p_1 = Circle(R, g)
R_1: (x(R) + d, y(R))
q_1 = Circle(R_1, g)
j_1 = Segment(R, R_1)
J = Intersect(q, r_3)
r_1 = Circle(J, g)
a_1 = Segment(F, J)
B1: (x(B) + 20, 0)
γ = Angle(I_2, B, B1)
o = true
S = Intersect(a_1, c)
T, U = Intersect(m, c)
a = 27 (slider from g to d + (2 * g), step 0.1)
b = 25 (slider from g to d + (2 * g), step 0.1)
J1: (x(J) + a, g)
l_1 = Segment(J, J1)
R_2: (x(R_1) + a, y(R_1))
m_1 = Segment(R_1, R_2)
R_3: (x(R) - b, y(R))
n_1 = Segment(R_3, R)
F_3: (x(J) - b - d, y(J))
s_1 = Segment(F_3, F)
V = Intersect(n_1, c)
W = Intersect(m_1, c)
t_1 = Circle(E, sqrt(b^(2) + g^(2)))
e_2 = Ray(A_1, B'')
Z, B_2 = Intersect(t_1, e_2)
c_2 = Segment(Z, M)
B_1 = Intersect(c_1, i_1)
d_2 = Ray(B_1, M)
g_2 = Segment(B_2, M)
h_2 = Circle(E, sqrt(g^(2) + (d + a)^(2)))
i_2 = Ray(M, P)
D_1, J_2 = Intersect(h_2, i_2)
j_2 = Segment(P, D_1)
f_2 = Ray(B_1, M)
p_2 = Circle(M, b)
C_1 = Intersect(p_2, f_2)
l_2 = Segment(C_1, M)
q_2 = Circle(Q, a)
E_1 = Intersect(k_1, i_1)
k_2 = Ray(E_1, Q)
F_1 = Intersect(q_2, k_2)
m_2 = Segment(Q, F_1)
G_1 = Intersect(m_2, i)
H_1 = Intersect(j_2, c)
I_1 = Intersect(l_2, h)
J_1, K_1 = Intersect(h, c)
L_1, M_1 = Intersect(h, c)
N_1, A_2 = Intersect(k, n)
O_1 = Intersect(s, n)
n_2 = Ray(N_1, F)
r_2 = Ray(O_1, K)
s_2 = Circle(F, b)
t_2 = Circle(K, a)
P_1, C_2 = Intersect(t_2, r_2)
Q_1, L_2 = Intersect(s_2, n_2)
a_3 = Segment(F, Q_1)
b_3 = Segment(P_1, K)
S_1 = Intersect(k, e_1)
T_1 = Intersect(r, e_1)
c_3 = Ray(T_1, N)
d_3 = Ray(S_1, F)
e_3 = Circle(N, a)
U_1 = Intersect(e_3, c_3)
f_3 = Segment(N, U_1)
V_1, O = Intersect(s_2, d_3)
g_3 = Segment(V_1, F)
разстояниеEs1 = Distance(E, s_1)
W_1 = Intersect(e_1, f)
Z_1 = Intersect(h, e_1)
h_3 = Segment(K, C_2)
D_2 = Intersect(t, m)
E_2 = Intersect(k, m)
i_3 = Ray(D_2, L)
j_3 = Ray(E_2, F)
F_2 = Intersect(s_2, j_3)
k_3 = Segment(F_2, F)
p_3 = Circle(L, a)
G_2 = Intersect(p_3, i_3)
l_3 = Segment(L, G_2)
m_3 = Ray(A_2, F)
H_2, K_2 = Intersect(s_2, m_3)
n_3 = Segment(H_2, F)
разстояниеEh = Distance(E, h)
t_3 = Segment(M, I)
c_4 = Circle(I, g)
M_2 = Intersect(c_4, t_3)
N_2 = Intersect(c_1, t_3)
a_4 = Ray(M_2, I)
b_4 = Ray(N_2, M)
d_4 = Circle(I, a)
O_2 = Intersect(d_4, a_4)
e_4 = Segment(I, O_2)
P_2 = Intersect(p_2, b_4)
f_4 = Segment(P_2, M)
Q_2 = Intersect(e_4, i)
T_2 = Intersect(f_4, h)