Hiện cách vẽ phân giác góc O

O = (-2.944180351112883, -1.4078852895248952)
B = (12.628239365977574, 6.572979815483965)
a = Ray(O, B)
C = (15.047526000596973, -3.994019278255992)
b = Ray(O, C)
D = (14.574791830613886, -0.6848800883742667)
E = (23.028391105605845, -0.6014564113184251)
c = Segment(D, E)
F = (14.574791830613885, 1.2616723762620423)
G = (20.44225711687475, 1.2338644839100932)
d = Segment(F, G)
e = OrthogonalLine(D, c)
f = OrthogonalLine(E, c)
g = OrthogonalLine(F, d)
h = OrthogonalLine(G, d)
H = (-5.669353801603713, -7.9705478845844455)
I_1 = (-4.417998645766088, -7.942739992232498)
i = Segment(H, I_1)
k = Circle(D, i)
p = Circle(E, i)
q = Circle(F, i)
r = Circle(G, i)
J = Intersect(k, e, 2.0)
K = Intersect(p, f, 2.0)
L = Intersect(q, g, 2.0)
M = Intersect(r, h, 2.0)
đa giác1, d_1, e_1, k_1, j = Polygon(D, E, K, J)
đa giác2, f_1, g_1, m, l = Polygon(F, G, M, L)
s = Circle(O, d_1)
t = Circle(O, f_1)
N = Intersect(t, a, 1.0)
O_1 = Intersect(s, a, 1.0)
P = Intersect(t, b, 1.0)
Q = Intersect(s, b, 1.0)
n = Segment(N, Q)
a_1 = Segment(O_1, P)
I = Intersect(n, a_1)
o = false