α_1

α_2

O = (10.291949609420888, 1.4071875396843405)
a, b, c, d, e, f, g, polígono1, polígono2 = EspacioDiédrico(O)
A_3 = (3.0858595183319335, -2.9448323589512126)
B_3 = Point(xAxis)
C = (2.3456275623586498, 4.962632367587491)
h, i, j, k, D, E, F, α = PlanoOblicuoAVB(A_3, B_3, C, O)
A_1 = (0.6747627798467858, -0.9436803519893275)
l = PerpendicularaLT(A_1)
B_1 = (4.560494832199958, -2.0511139869099813)
m = PerpendicularaLT(B_1)
A_2 = Point(l)
B_2 = Point(m)
n, p, q, r, s, A, B, T, U, V, W = SegmentoAB(A_1, A_2, B_1, B_2, O)
I_1, I_2, I, N, P, Q = Intersecciónrectaplano(A_1, A_2, B_1, B_2, A_3, B_3, C, O)
t = PerpendicularaLT(I_1)
G = Intersect(t, xAxis)
a_1 = Segment(I_1, G)
b_1 = Segment(G, I_2)
c_1 = Segment(N, I)
d_1 = Segment(I, P)
e_1 = Segment(P, Q)
f_1 = Segment(Q, N)

Tool: Perpendicular a LT (command PerpendicularaLT)
Punto.
Input: B_1
Output: e_1

e_1 = OrthogonalLine(B_1, xAxis)

Tool: Espacio Diédrico (command EspacioDiédrico)
Seleccionar un punto renombrado a O.
Input: O
Output: s, t, a_1, i, q, r, c, polígono1, polígono2

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A = Intersect(c, xAxis, 1)
B = Intersect(c, xAxis, 2)
a = Ray(O, A)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A)
f = Ray(C, B)
u' = UnitVector(e)
v' = UnitVector(f)
D: C + u'
E: C + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G)
u_1 = Length(u)
v_1 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_1^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
p: floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)
I: ((1.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), 0)
H: O + (x(I) * u)
J: O + (x(I) * v)
K: O + (x(I) * w)
M: J + (x(I) * w)
N: J + (x(I) * u)
polígono1, o, h_1, n, j = Polygon(O, H, N, J)
polígono2, o_1, j_1, m, k = Polygon(O, J, M, K)
i = Segment(O, H)
q = Segment(O, J)
r = Segment(O, K)
P: (x(O) - x(O), x(O) - x(O))
Q: (x(O) - x(O), ((-0.04) * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)))
R: ((0.1 * p^(2)), ((-0.04) * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)))
S: ((1.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), ((-0.04) * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)))
T: ((1.4 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), ((-0.04) * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)))
s = Segment(P, I)
t = Segment(Q, R)
a_1 = Segment(T, S)

Tool: Espacio Axonométrico (command EspacioAxonométrico)
Seleccionar un punto renombrado a O.
Input: O
Output: b_1, c_1, a_1, i, q, r, c, polígono1, polígono2, polígono3, d_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A = Intersect(c, xAxis, 1)
B = Intersect(c, xAxis, 2)
a = Ray(O, A)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A)
f = Ray(C, B)
u' = UnitVector(e)
v' = UnitVector(f)
D: C + u'
E: C + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G)
u_1 = Length(u)
v_1 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_1^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
I: ((1.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), 0)
H: O + (x(I) * u)
J: O + (x(I) * v)
K: O + (x(I) * w)
L: H + (x(I) * w)
M: J + (x(I) * w)
N: J + (x(I) * u)
polígono1, o, h_1, n, j = Polygon(O, H, N, J)
polígono2, o_1, j_1, m, k = Polygon(O, J, M, K)
polígono3, o_2, k_1, l, h_2 = Polygon(O, K, L, H)
i = Segment(O, H)
q = Segment(O, J)
r = Segment(O, K)
S: ((1.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), ((-0.04) * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)))
T: ((1.4 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), ((-0.04) * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)))
U: (((-1.5) * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), 0)
V: (((-1.5) * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), ((-0.04) * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)))
W: (((-1.4) * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), ((-0.04) * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)))
a_1 = Segment(T, S)
b_1 = Segment(U, I)
c_1 = Segment(V, W)
Z: (0, (1.3 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)))
A_1: (0, ((-1.3) * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)))
d_1 = Segment(Z, A_1)

Tool: Proy Axonométrica de A (command ProyAxonométricadeA)
A_1, A_2 y O
Input: A_1, A_2, O
Output: E_1, C_1, D_1, B_1, f_1, g_1, i_1, l_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A = Intersect(c, xAxis, 1)
B = Intersect(c, xAxis, 2)
a = Ray(O, A)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A)
f = Ray(C, B)
u' = UnitVector(e)
v' = UnitVector(f)
D: C + u'
E: C + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G)
u_1 = Length(u)
v_1 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_1^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
e_1 = OrthogonalLine(A_1, xAxis)
B_1: O + (x(A_1) * v)
C_1: O + (x(A_1) * v) - (y(A_1) * u)
D_1: O + (x(A_1) * v) + (y(A_2) * w)
E_1: O + (x(A_1) * v) - (y(A_1) * u) + (y(A_2) * w)
f_1 = Segment(C_1, E_1)
g_1 = Segment(E_1, D_1)
i_1 = Segment(D_1, B_1)
l_1 = Segment(B_1, C_1)

Tool: Proy Axonométrica Simplificada de A (command ProyAxonométricaSimplificadadeA)
A_1, A_2 y O
Input: A_1, A_2, O
Output: E_1, C_1, D_1, B_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A = Intersect(c, xAxis, 1)
B = Intersect(c, xAxis, 2)
a = Ray(O, A)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A)
f = Ray(C, B)
u' = UnitVector(e)
v' = UnitVector(f)
D: C + u'
E: C + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G)
u_1 = Length(u)
v_1 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_1^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
e_1 = OrthogonalLine(A_1, xAxis)
B_1: O + (x(A_1) * v)
C_1: O + (x(A_1) * v) - (y(A_1) * u)
D_1: O + (x(A_1) * v) + (y(A_2) * w)
E_1: O + (x(A_1) * v) - (y(A_1) * u) + (y(A_2) * w)

Tool: Proy Axonométrica de A en PH (command ProyAxonométricadeAenPH)
A_1 y O
Input: A_1, O
Output: C_1, B_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A = Intersect(c, xAxis, 1)
B = Intersect(c, xAxis, 2)
a = Ray(O, A)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A)
f = Ray(C, B)
u' = UnitVector(e)
v' = UnitVector(f)
D: C + u'
E: C + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G)
B_1: O + (x(A_1) * v)
C_1: O + (x(A_1) * v) - (y(A_1) * u)

Tool: Proy Axonométrica de A en LT (command ProyAxonométricadeAenLT)
A_1=A_2 y O
Input: F_1, O
Output: G_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
B = Intersect(c, xAxis, 2)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
f = Ray(C, B)
v' = UnitVector(f)
E: C + v'
h = OrthogonalLine(E, xAxis)
G = Intersect(h, b)
v = Vector(O, G)
G_1: O + (x(F_1) * v)

Tool: Proy Axonométrica de A en PV (command ProyAxonométricadeAenPV)
A_2 y O
Input: H_1, O
Output: I_1, J_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A = Intersect(c, xAxis, 1)
B = Intersect(c, xAxis, 2)
a = Ray(O, A)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A)
f = Ray(C, B)
u' = UnitVector(e)
v' = UnitVector(f)
D: C + u'
E: C + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G)
u_1 = Length(u)
v_1 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_1^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
I_1: O + (x(H_1) * v) + (y(H_1) * w)
J_1: O + (x(H_1) * v)

Tool: Proy Axonométrica  de A3 (command ProyAxonométricadeA3)
A_1, A_2 y O
Input: A_1, A_2, O
Output: E_1, C_1, D_1, M_1, K_1, B_1, L_1, f_1, g_1, i_1, l_1, m_1, p_1, a_2, n_1, r_1, q_1, s_1, t_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A = Intersect(c, xAxis, 1)
B = Intersect(c, xAxis, 2)
a = Ray(O, A)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A)
f = Ray(C, B)
u' = UnitVector(e)
v' = UnitVector(f)
D: C + u'
E: C + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G)
u_1 = Length(u)
v_1 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_1^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
e_1 = OrthogonalLine(A_1, xAxis)
B_1: O + (x(A_1) * v)
C_1: O + (x(A_1) * v) - (y(A_1) * u)
D_1: O + (x(A_1) * v) + (y(A_2) * w)
E_1: O + (x(A_1) * v) - (y(A_1) * u) + (y(A_2) * w)
f_1 = Segment(C_1, E_1)
g_1 = Segment(E_1, D_1)
i_1 = Segment(D_1, B_1)
l_1 = Segment(B_1, C_1)
K_1: O - (y(A_1) * u)
L_1: O + (y(A_2) * w)
M_1: O + (y(A_2) * w) - (y(A_1) * u)
m_1 = Segment(E_1, M_1)
n_1 = Segment(C_1, K_1)
p_1 = Segment(D_1, L_1)
q_1 = Segment(L_1, M_1)
r_1 = Segment(M_1, K_1)
s_1 = Segment(O, L_1)
t_1 = Segment(O, K_1)
a_2 = Segment(O, B_1)

Tool: Proy Axonométrica  Simplificada de A3 (command ProyAxonométricaSimplificadadeA3)
A_1, A_2 y O
Input: A_1, A_2, O
Output: E_1, C_1, D_1, M_1, K_1, B_1, L_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A = Intersect(c, xAxis, 1)
B = Intersect(c, xAxis, 2)
a = Ray(O, A)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A)
f = Ray(C, B)
u' = UnitVector(e)
v' = UnitVector(f)
D: C + u'
E: C + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G)
u_1 = Length(u)
v_1 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_1^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
e_1 = OrthogonalLine(A_1, xAxis)
B_1: O + (x(A_1) * v)
C_1: O + (x(A_1) * v) - (y(A_1) * u)
D_1: O + (x(A_1) * v) + (y(A_2) * w)
E_1: O + (x(A_1) * v) - (y(A_1) * u) + (y(A_2) * w)
K_1: O - (y(A_1) * u)
L_1: O + (y(A_2) * w)
M_1: O + (y(A_2) * w) - (y(A_1) * u)

Tool: Proy Diédrica de A (command ProyDiédricadeA)
A, A_1 y O
Input: A, A_1, O
Output: C_1, B_1, z_1, a_2, b_2, A_2, A_x

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A_4)
f = Ray(C, B)
u' = UnitVector(e)
v' = UnitVector(f)
D: C + u'
E: C + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G)
u_1 = Length(u)
v_1 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_1^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
I: ((1.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), 0)
H: O + (x(I) * u)
J: O + (x(I) * v)
K: O + (x(I) * w)
i = Segment(O, H)
q = Segment(O, J)
r = Segment(O, K)
e_1 = PerpendicularaLT(A_1)
f_1 = Line(A_1, i)
g_1 = Line(A, i)
A_x = Intersect(q, f_1)
i_1 = Line(A_x, r)
A_2 = Intersect(g_1, i_1)
l_1 = Line(A_2, q)
n_1 = Line(A_1, q)
A_y = Intersect(n_1, i)
A_z = Intersect(l_1, r)
z_y = Vector(O, A_y)
z_x = Vector(O, A_x)
z_z = Vector(O, A_z)
z_1: z_x / v
z_2: z_y / u
z_3 = Rotate(z_2, 270*°)
z_4: z_z / w
z_5 = Rotate(z_4, 90*°)
r_1 = OrthogonalLine(z_1, xAxis)
s_1 = Line(z_3, xAxis)
t_1 = Line(z_5, xAxis)
B_1 = Intersect(r_1, t_1)
C_1 = Intersect(r_1, s_1)
a_2 = Segment(z_1, C_1)
b_2 = Segment(z_1, B_1)

Tool: Proy Diédrica de A en PH (command ProyDiédricadeAenPH)
A = A_1 y O
Input: A_1, O
Output: C_1, z_1, a_2, A_x

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A_4)
f = Ray(C, B)
u' = UnitVector(e)
v' = UnitVector(f)
D: C + u'
E: C + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G)
I: ((1.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), 0)
H: O + (x(I) * u)
J: O + (x(I) * v)
i = Segment(O, H)
q = Segment(O, J)
f_1 = Line(A_1, i)
A_x = Intersect(q, f_1)
n_1 = Line(A_1, q)
A_y = Intersect(n_1, i)
z_y = Vector(O, A_y)
z_x = Vector(O, A_x)
z_1: z_x / v
z_2: z_y / u
z_3 = Rotate(z_2, 270*°)
r_1 = OrthogonalLine(z_1, xAxis)
s_1 = Line(z_3, xAxis)
C_1 = Intersect(r_1, s_1)
a_2 = Segment(z_1, C_1)

Tool: Proy Diédrica de A en LT (command ProyDiédricadeAenLT)
A = A_1=A_2 y O
Input: D_1, O
Output: z_6

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
B = Intersect(c, xAxis, 2)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
f = Ray(C, B)
v' = UnitVector(f)
E: C + v'
h = OrthogonalLine(E, xAxis)
G = Intersect(h, b)
v = Vector(O, G)
I: ((1.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), 0)
J: O + (x(I) * v)
q = Segment(O, J)
z = Vector(O, D_1)
z_6: z / v

Tool: Proy Diédrica de A en PV2 (command ProyDiédricadeAenPV2)
A=A_3 y O
Input: I_1, O
Output: z_{12}, z_{13}, P, m_2, l_2, J_1, R_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A_4)
f = Ray(C, B)
u' = UnitVector(e)
v' = UnitVector(f)
D: C + u'
E: C + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G)
u_1 = Length(u)
v_1 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_1^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
I: ((1.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), 0)
H: O + (x(I) * u)
K: O + (x(I) * w)
i = Segment(O, H)
r = Segment(O, K)
P: (x(O) - x(O), x(O) - x(O))
i_2 = Line(I_1, i)
j_2 = Line(I_1, r)
J_1 = Intersect(j_2, i)
R_1 = Intersect(i_2, r)
w_2 = Vector(O, J_1)
k_2 = Vector(O, R_1)
z_{10}: w_2 / u
z_{11}: k_2 / w
z_{12} = Rotate(z_{11}, 90*°)
z_{13} = Rotate(z_{10}, 270*°)
l_2 = Segment(P, z_{12})
m_2 = Segment(P, z_{13})

Tool: Proy Diédrica de A en PV (command ProyDiédricadeAenPV)
A=A_2 y O
Input: E_1, O
Output: H_1, z_7, g_2, F_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A_4)
f = Ray(C, B)
u' = UnitVector(e)
v' = UnitVector(f)
D: C + u'
E: C + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G)
u_1 = Length(u)
v_1 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_1^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
I: ((1.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), 0)
J: O + (x(I) * v)
K: O + (x(I) * w)
q = Segment(O, J)
r = Segment(O, K)
c_2 = Line(E_1, r)
d_2 = Line(E_1, q)
F_1 = Intersect(c_2, q)
G_1 = Intersect(d_2, r)
u_2 = Vector(O, F_1)
v_2 = Vector(O, G_1)
z_7: u_2 / v
z_8: v_2 / w
z_{9} = Rotate(z_8, 90*°)
e_2 = Line(z_{9}, xAxis)
f_2 = OrthogonalLine(z_7, xAxis)
H_1 = Intersect(e_2, f_2)
g_2 = Segment(H_1, z_7)

Tool: Segmento paralelo a X de longitud n. (command SegmentoparaleloaXdelongitudn)
Origen del segmento,  O y n.
Input: Z_5, O, z
Output: e_1, A_6

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
B = Intersect(c, xAxis, 2)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
f = Ray(C, B)
v' = UnitVector(f)
E: C + v'
h = OrthogonalLine(E, xAxis)
G = Intersect(h, b)
v = Vector(O, G)
A_6: Z_5 + (z * v)
e_1 = Segment(Z_5, A_6)

Tool: Segmento paralelo a Y de longitud n. (command SegmentoparaleloaYdelongitudn)
Origen del segmento,  O y n.
Input: Z_5, O, z
Output: f_1, B_6

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
a = Ray(O, A_4)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A_4)
u' = UnitVector(e)
D: C + u'
g = OrthogonalLine(D, xAxis)
F = Intersect(g, a)
u = Vector(O, F)
B_6: Z_5 + (z * u)
f_1 = Segment(Z_5, B_6)

Tool: Segmento paralelo a Z de longitud n. (command SegmentoparaleloaZdelongitudn)
Origen del segmento,  O y n.
Input: Z_5, O, z
Output: g_1, C_6

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A_4)
f = Ray(C, B)
u' = UnitVector(e)
v' = UnitVector(f)
D: C + u'
E: C + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G)
u_1 = Length(u)
v_1 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_1^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
C_6: Z_5 + (z * w)
g_1 = Segment(Z_5, C_6)

Tool: Malla Axonométrica (command MallaAxonométrica)
O.
Input: O
Output: A, A_1, B_1, C_1, D_1, E_1, O', A', F_1, G_1, H_1, I_1, J_1, O'', A'', K_1, L_1, M_1, N_1, P_1, O''', A''', Q_1, R_1, S_1, T_1, U_1, V_1, W_1, Z_1, A_2, B_2, C_2, D_2, E_2, F_2, G_2, H_2, I_2, J_2, K_2, L_2, M_2, N_2, O_2, P_2, Q_2, R_2, O'_1, O''_1, O'''_1, S_2, T_2, U_2, V_2, W_2, Z_2, A_3, B_3, C_3, D_3, E_3, F_3, G_3, H_3, I_3, J_3, K_3, L_3, M_3, N_3, O_3, P_3, Q_3, R_3, S_3, T_3, U_3, V_3, W_3, Z_3, B_4, C_4, D_4, E_4, F_4, G_4, H_4, I_4, J_4, K_4, L_4, M_4, N_4, O_4, P_4, Q_4, R_4, S_4, T_4, U_4, V_4, W_4, Z_4, B_5, C_5, D_5, E_5, F_5, G_5, H_5, I_5, J_5, K_5, L_5, M_5, N_5, O_5, P_5, Q_5, R_5, S_5, T_5, U_5, V_5, W_5

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A_4)
f = Ray(C, B)
u' = UnitVector(e)
v' = UnitVector(f)
D: C + u'
E: C + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G)
u_1 = Length(u)
v_1 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_1^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
A: O + u
A_1: O + (2 * u)
B_1: O + (3 * u)
C_1: O + (4 * u)
D_1: O + (5 * u)
E_1: O + (6 * u)
O' = Translate(O, v)
A' = Translate(A, v)
F_1 = Translate(A_1, v)
G_1 = Translate(B_1, v)
H_1 = Translate(C_1, v)
I_1 = Translate(D_1, v)
J_1 = Translate(E_1, v)
O'' = Translate(O', v)
A'' = Translate(A', v)
K_1 = Translate(F_1, v)
L_1 = Translate(G_1, v)
M_1 = Translate(H_1, v)
N_1 = Translate(I_1, v)
P_1 = Translate(J_1, v)
O''' = Translate(O'', v)
A''' = Translate(A'', v)
Q_1 = Translate(K_1, v)
R_1 = Translate(L_1, v)
S_1 = Translate(M_1, v)
T_1 = Translate(N_1, v)
U_1 = Translate(P_1, v)
V_1 = Translate(O''', v)
W_1 = Translate(A''', v)
Z_1 = Translate(Q_1, v)
A_2 = Translate(R_1, v)
B_2 = Translate(S_1, v)
C_2 = Translate(T_1, v)
D_2 = Translate(U_1, v)
E_2 = Translate(V_1, v)
F_2 = Translate(W_1, v)
G_2 = Translate(Z_1, v)
H_2 = Translate(A_2, v)
I_2 = Translate(B_2, v)
J_2 = Translate(C_2, v)
K_2 = Translate(D_2, v)
L_2 = Translate(E_2, v)
M_2 = Translate(F_2, v)
N_2 = Translate(G_2, v)
O_2 = Translate(H_2, v)
P_2 = Translate(I_2, v)
Q_2 = Translate(J_2, v)
R_2 = Translate(K_2, v)
O'_1 = Translate(O, w)
O''_1 = Translate(O', w)
O'''_1 = Translate(O'', w)
S_2 = Translate(O''', w)
T_2 = Translate(V_1, w)
U_2 = Translate(E_2, w)
V_2 = Translate(L_2, w)
W_2 = Translate(O'_1, w)
Z_2 = Translate(O''_1, w)
A_3 = Translate(O'''_1, w)
B_3 = Translate(S_2, w)
C_3 = Translate(T_2, w)
D_3 = Translate(U_2, w)
E_3 = Translate(V_2, w)
F_3 = Translate(W_2, w)
G_3 = Translate(Z_2, w)
H_3 = Translate(A_3, w)
I_3 = Translate(B_3, w)
J_3 = Translate(C_3, w)
K_3 = Translate(D_3, w)
L_3 = Translate(E_3, w)
M_3 = Translate(F_3, w)
N_3 = Translate(G_3, w)
O_3 = Translate(H_3, w)
P_3 = Translate(I_3, w)
Q_3 = Translate(J_3, w)
R_3 = Translate(K_3, w)
S_3 = Translate(L_3, w)
T_3 = Translate(M_3, w)
U_3 = Translate(N_3, w)
V_3 = Translate(O_3, w)
W_3 = Translate(P_3, w)
Z_3 = Translate(Q_3, w)
B_4 = Translate(R_3, w)
C_4 = Translate(S_3, w)
D_4 = Translate(T_3, w)
E_4 = Translate(U_3, w)
F_4 = Translate(V_3, w)
G_4 = Translate(W_3, w)
H_4 = Translate(Z_3, w)
I_4 = Translate(B_4, w)
J_4 = Translate(C_4, w)
K_4 = Translate(O'_1, u)
L_4 = Translate(W_2, u)
M_4 = Translate(F_3, u)
N_4 = Translate(M_3, u)
O_4 = Translate(T_3, u)
P_4 = Translate(D_4, u)
Q_4 = Translate(K_4, u)
R_4 = Translate(L_4, u)
S_4 = Translate(M_4, u)
T_4 = Translate(N_4, u)
U_4 = Translate(O_4, u)
V_4 = Translate(P_4, u)
W_4 = Translate(Q_4, u)
Z_4 = Translate(R_4, u)
B_5 = Translate(S_4, u)
C_5 = Translate(T_4, u)
D_5 = Translate(U_4, u)
E_5 = Translate(V_4, u)
F_5 = Translate(W_4, u)
G_5 = Translate(Z_4, u)
H_5 = Translate(B_5, u)
I_5 = Translate(C_5, u)
J_5 = Translate(D_5, u)
K_5 = Translate(E_5, u)
L_5 = Translate(F_5, u)
M_5 = Translate(G_5, u)
N_5 = Translate(H_5, u)
O_5 = Translate(I_5, u)
P_5 = Translate(J_5, u)
Q_5 = Translate(K_5, u)
R_5 = Translate(L_5, u)
S_5 = Translate(M_5, u)
T_5 = Translate(N_5, u)
U_5 = Translate(O_5, u)
V_5 = Translate(P_5, u)
W_5 = Translate(Q_5, u)

Tool: recta AB (command rectaAB)
ABO
Input: A_1, A_2, B_1, B_2, O
Output: r1, r2, r_1, r_2, g_1, a_1, a_2, p_1, p_2, h_1, h_2, v_1, v_2, v_3, v_4, A, B, H_r, H'_r, V_r, V'_r

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A_4)
f = Ray(C, B_3)
u' = UnitVector(e)
v' = UnitVector(f)
D: C + u'
E: C + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G)
u_1 = Length(u)
v_5 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_5^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
e_1 = PerpendicularaLT(B_1)
f_1 = PerpendicularaLT(A_1)
r1(x) = If[0 ≤ x ≤ (1.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)),((x * (y(B_1) - y(A_1))) - (x(A_1) * y(B_1)) + (x(B_1) * y(A_1))) / (x(B_1) - x(A_1))]
r2(x) = If[0 ≤ x ≤ (1.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)),((x * (y(B_2) - y(A_2))) - (x(A_2) * y(B_2)) + (x(B_2) * y(A_2))) / (x(B_2) - x(A_2))]
r_1(x) = If[(r1(x) ≤ 0) ∧ (r2(x) ≥ 0),r1(x)]
r_2(x) = If[(r1(x) ≤ 0) ∧ (r2(x) ≥ 0),r2(x)]
g_1 = OrthogonalLine(A_1, xAxis)
A_3 = Intersect(xAxis, g_1)
H'_r: (x(A_1), ((y(A_1) * y(B_2)) - (y(A_2) * y(B_1))) / (y(B_2) - y(A_2)))
V'_r: (x(A_1), ((y(A_1) * y(B_2)) - (y(A_2) * y(B_1))) / (y(A_1) - y(B_1)))
p_1 = Segment(H'_r, A_3)
p_2 = Segment(A_3, V'_r)
r'_1 = Line(A_1, B_1)
B = Intersect(r'_1, xAxis)
r'_2 = Line(A_2, B_2)
A = Intersect(r'_2, xAxis)
q_1 = OrthogonalLine(A, xAxis)
s_1 = OrthogonalLine(B, xAxis)
H_r = Intersect(q_1, r'_1)
V_r = Intersect(s_1, r'_2)
a_1 = Segment(H_r, A)
a_2 = Segment(B, V_r)
v_2 = Ray((x(A_1), 0), w)
v_1 = Ray((x(A_1), 0), Vector[(-w)])
v_4 = Ray((x(A_1), ((y(A_1) * y(B_2)) - (y(A_2) * y(B_1))) / (y(A_1) - y(B_1))), w)
h_2 = Ray((x(A_1), 0), Vector[(-w)])
h_1 = Ray((x(A_1), ((y(A_1) * y(B_2)) - (y(A_2) * y(B_1))) / (y(B_2) - y(A_2))), Vector[(-w)])
v_3 = Ray((x(A_1), 0), w)

Tool: Recta AB AXO (command RectaABAXO)
A_1, A_2, B_1, B_2 y O
Input: A_1, A_2, B_1, B_2, O
Output: r, r', r_1, r'_1, r_2, r'_2, d_2, j_2, f_2, l_2, n_2, g_2, h_2, i_2, C, H, H_1, V, V_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C_2 = Intersect(c, d, 1)
e_2 = Ray(C_2, A_4)
f = Ray(C_2, B_3)
u' = UnitVector(e_2)
v' = UnitVector(f)
D: C_2 + u'
E: C_2 + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G_2 = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G_2)
u_1 = Length(u)
v_5 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_5^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
I_1: ((1.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), 0)
H_2: O + (x(I_1) * u)
J_2: O + (x(I_1) * v)
i = Segment(O, H_2)
q = Segment(O, J_2)
e_1 = PerpendicularaLT(B_1)
f_1 = PerpendicularaLT(A_1)
Q: O + (6 * v)
e(x) = If[(1.7 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2))  <  x  <  (4.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)),((x * (y(Q) - y(O))) - (x(O) * y(Q)) + (x(Q) * y(O))) / (x(Q) - x(O))]
A, B_4, G, K_1 = ProyAxonométricaSimplificadadeA(A_1, A_2, O)
B, J, K, L_1 = ProyAxonométricaSimplificadadeA(B_1, B_2, O)
r'_1(x) = If[(1.7 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2))  <  x  <  (4.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)),((x * (y(B_4) - y(J))) - (x(J) * y(B_4)) + (x(B_4) * y(J))) / (x(B_4) - x(J))]
j = OrthogonalLine(A, xAxis)
l = Line(G, q)
N = Intersect(j, l)
n = OrthogonalLine(B, xAxis)
k_1 = Line(K, q)
R = Intersect(n, k_1)
r_3 = OrthogonalLine(K, xAxis)
t_1 = Line(J, q)
M = Intersect(r_3, t_1)
b_2 = OrthogonalLine(G, xAxis)
c_2 = Line(B_4, q)
I = Intersect(b_2, c_2)
ra_1(x) = ((x * (y(N) - y(R))) - (x(R) * y(N)) + (x(N) * y(R))) / (x(N) - x(R))
ra_2(x) = ((x * (y(M) - y(I))) - (x(I) * y(M)) + (x(M) * y(I))) / (x(M) - x(I))
r_1(x) = If[r'_1(x) ≤ e(x) ≤ ra_1(x),r'_1(x)]
r'_2(x) = If[(1.7 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2))  <  x  <  (4.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)),((x * (y(G) - y(K))) - (x(K) * y(G)) + (x(G) * y(K))) / (x(G) - x(K))]
r_2(x) = If[ra_2(x) ≤ e(x) ≤ r'_2(x),r'_2(x)]
r'(x) = If[(1.7 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2))  <  x  <  (4.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)),((x * (y(B) - y(A))) - (x(A) * y(B)) + (x(B) * y(A))) / (x(B) - x(A))]
r(x) = If[r'_1(x) ≤ e(x) ≤ ra_1(x),r'(x)]
d_2 = OrthogonalLine(K_1, xAxis)
H = Intersect(r', r'_1, (1.7 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), (4.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)))
g_2 = Ray(K_1, w)
i_2 = Ray(B_4, w)
j_2 = Line(A, B)
V = Intersect(r', r'_2, (1.7 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), (4.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)))
k_2 = OrthogonalLine(V, xAxis)
V_1 = Intersect(k_2, q)
l_2 = Segment(V_1, V)
m_2 = Line(H, i)
H_1 = Intersect(q, m_2)
n_2 = Segment(H_1, H)
C = Intersect(j_2, b_2)
h_2 = Ray((x(C), Max[y(C), y(K_1)]), w)
f_2 = Segment(C, K_1)

Tool: Plano ABC (command PlanoABC)
A_1, A_2, B_1, B_2, C_1, C_2 y O
Input: A_1, A_2, B_1, B_2, C_1, C_2, O
Output: f_1, f'_1, f_2, f'_2, g_1, g'_1, g_2, g'_2, h', e_1, l, r, G, H

n = PerpendicularaLT(C_1)
l_1 = PerpendicularaLT(B_1)
j = PerpendicularaLT(A_1)
f_2(x) = If[0 ≤ x ≤ (1.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)),((((x - x(A_1)) * (y(A_1) - y(B_1))) * (y(C_2) - y(A_2))) + ((y(A_1) * (y(B_2) - y(A_2))) * (x(C_1) - x(A_1))) - ((y(A_1) * (x(B_1) - x(A_1))) * (y(C_2) - y(A_2))) - (((x - x(A_1)) * (y(B_2) - y(A_2))) * (y(A_1) - y(C_1)))) / (((y(A_1) - y(B_1)) * (x(C_1) - x(A_1))) - ((x(B_1) - x(A_1)) * (y(A_1) - y(C_1)))) + y(A_2)]
c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C_3 = Intersect(c, d, 1)
e_2 = Ray(C_3, A_4)
f = Ray(C_3, B_3)
u' = UnitVector(e_2)
v' = UnitVector(f)
D: C_3 + u'
E: C_3 + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G_2 = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G_2)
u_1 = Length(u)
v_5 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_5^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
M_1, A = ProyAxonométricadeAenPV((6, f_2(6)), O)
Q: O + (6 * v)
f_1(x) = If[0 ≤ x ≤ (1.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)),((((x - x(A_1)) * ((-y(A_1)) + y(B_1))) * ((-y(C_2)) + y(A_2))) + ((y(A_2) * (x(B_1) - x(A_1))) * ((-y(A_1)) + y(C_1))) - ((y(A_2) * ((-y(A_1)) + y(B_1))) * (x(C_1) - x(A_1))) - (((x - x(A_1)) * ((-y(B_2)) + y(A_2))) * ((-y(A_1)) + y(C_1)))) / (((x(B_1) - x(A_1)) * ((-y(C_2)) + y(A_2))) - (((-y(B_2)) + y(A_2)) * (x(C_1) - x(A_1)))) + y(A_1)]
f'_1(x) = If[f_1(x) ≤ 0,f_1(x)]
f'_2(x) = If[f_2(x) ≥ 0,f_2(x)]
e(x) = If[(1.7 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2))  <  x  <  (4.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)),((x * (y(Q) - y(O))) - (x(O) * y(Q)) + (x(Q) * y(O))) / (x(Q) - x(O))]
K, B = ProyAxonométricadeAenPH((0, f_1(0)), O)
G_1, G_3 = ProyAxonométricadeAenPH((6, f_1(6)), O)
J_1, J_3 = ProyAxonométricadeAenPV((0, f_2(0)), O)
g_1(x) = If[(1.6 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2))  <  x  <  (4.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)),((x * (y(K) - y(G_1))) - (x(G_1) * y(K)) + (x(K) * y(G_1))) / (x(K) - x(G_1))]
g_2(x) = If[(1.6 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2))  <  x  <  (4.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)),((x * (y(J_1) - y(M_1))) - (x(M_1) * y(J_1)) + (x(J_1) * y(M_1))) / (x(J_1) - x(M_1))]
g'_1(x) = If[g_1(x) ≤ e(x),g_1(x)]
g'_2(x) = If[g_2(x) ≥ e(x),g_2(x)]
d_1 = Line(A_1, B_1)
C = Intersect(d_1, xAxis)
l = Ray(C, w)
P_1 = ProyAxonométricadeAenLT(C, O)
r = Ray(P_1, w)
a_1 = Line(A_2, B_2)
I = Intersect(a_1, xAxis)
e_1 = Ray(I, Vector[(-w)])
Q_1 = ProyAxonométricadeAenLT(I, O)
R_1 = Translate(Q_1, u)
h''(x) = If[(1.6 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2))  <  x  <  (4.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)),((x * (y(R_1) - y(Q_1))) - (x(Q_1) * y(R_1)) + (x(R_1) * y(Q_1))) / (x(R_1) - x(Q_1))]
h'(x) = If[h''(x) ≤ e(x),h''(x)]
G = Intersect(f_1, f_2, 0, (1.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)))
H = Intersect(g_1, g_2, (1.6 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)), (4.5 * floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2)^(2)))

Tool: Trazas recta AB (command TrazasrectaAB)
ABO
Input: A_1, A_2, B_1, B_2, O
Output: C, B, n, G, A, r, H, I, a_1, J, K, d_1

l_1 = PerpendicularaLT(B_1)
j = PerpendicularaLT(A_1)
e = Line(A_1, B_1)
k = Line(A_2, B_2)
A = Intersect(e, xAxis)
B = Intersect(k, xAxis)
l = OrthogonalLine(B, xAxis)
m = OrthogonalLine(A, xAxis)
C = Intersect(e, l)
G = Intersect(k, m)
n = Segment(C, B)
r = Segment(G, A)
H, I = ProyAxonométricadeAenPH(C, O)
J, K = ProyAxonométricadeAenPV(G, O)
a_1 = Segment(H, I)
d_1 = Segment(J, K)

Tool: Segmento AB (command SegmentoAB)
ABO
Input: A_1, A_2, B_1, B_2, O
Output: e_1, f_1, g_1, h_1, i_1, M, C_1, N, D_1, R, E_1

l_1 = PerpendicularaLT(B_1)
j = PerpendicularaLT(A_1)
M, N, R, V = ProyAxonométricaSimplificadadeA(A_1, A_2, O)
C_1, D_1, E_1, F_1 = ProyAxonométricaSimplificadadeA(B_1, B_2, O)
e_1 = Segment(A_1, B_1)
f_1 = Segment(A_2, B_2)
g_1 = Segment(M, C_1)
h_1 = Segment(N, D_1)
i_1 = Segment(R, E_1)

Tool: SegmentoAB AXO (command SegmentoABAXO)
A, A_1, B, B_1 y O.
Input: J_1, G_1, K_1, H_1, O
Output: r_1, s_1, t_1, P_1, T_1, a_2, b_2, L_1, M_1, R_1, S_1

j_1 = PerpendicularaLT(G_1)
k_1 = PerpendicularaLT(H_1)
L_1, M_1, z_1, m_1, n_1, P_1, Q_1 = ProyDiédricadeA(J_1, G_1, O)
R_1, S_1, z_2, p_1, q_1, T_1, U_1 = ProyDiédricadeA(K_1, H_1, O)
r_1 = Segment(J_1, K_1)
s_1 = Segment(G_1, H_1)
t_1 = Segment(P_1, T_1)
a_2 = Segment(L_1, R_1)
b_2 = Segment(M_1, S_1)

Tool: Abat Plano (command AbatPlano)
AVB O
Input: A, V, B, O
Output: r, a_1, p_2, l_2, j_2

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C_3 = Intersect(c, d, 1)
e_2 = Ray(C_3, A_4)
f = Ray(C_3, B_3)
u' = UnitVector(e_2)
v' = UnitVector(f)
D: C_3 + u'
E: C_3 + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G_2 = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G_2)
I: O + (x(V) * v)
j = Segment(V, B)
A' = Rotate(A, ((((x(V) - x(B)) / abs(x(V) - x(B)) * acos(((x(A) - x(V)) * (x(B) - x(V)) / ((sqrt((x(A) - x(V))^(2) + y(A)^(2)) * sqrt((x(B) - x(V))^(2) + y(B)^(2))))))) * 180) * ° / π), V)
r = Segment(V, A')
C: O + (x(A') * v) - (y(A') * u)
a_1 = Segment(I, C)
k_2 = Circle(V, 1)
L_1 = Intersect(k_2, j, 2)
M_1 = Intersect(k_2, r, 2)
i_2 = OrthogonalLine(L_1, xAxis)
P_1 = Intersect(i_2, xAxis)
j_2 = Segment(M_1, P_1)
l_2 = Segment(P_1, L_1)
p_2 = CircleArc(V, M_1, L_1)

Tool: Abat Punto (command AbatPunto)
A_1, AVB y O
Input: D_1, A, V, B, O
Output: G_1, K, b_2, t_1, a_2, s_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C_3 = Intersect(c, d, 1)
e_2 = Ray(C_3, A_4)
f = Ray(C_3, B_3)
u' = UnitVector(e_2)
v' = UnitVector(f)
D: C_3 + u'
E: C_3 + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G_2 = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G_2)
e = Segment(A, V)
A' = Rotate(A, ((((x(V) - x(B)) / abs(x(V) - x(B)) * acos(((x(A) - x(V)) * (x(B) - x(V)) / ((sqrt((x(A) - x(V))^(2) + y(A)^(2)) * sqrt((x(B) - x(V))^(2) + y(B)^(2))))))) * 180) * ° / π), V)
r = Segment(V, A')
n_1 = Line(D_1, e)
E_1 = Intersect(n_1, xAxis)
p_1 = OrthogonalLine(E_1, e)
q_1 = OrthogonalLine(D_1, e)
F_1 = Intersect(p_1, r)
r_1 = Line(F_1, e)
G_1 = Intersect(q_1, r_1)
s_1 = Segment(D_1, E_1)
t_1 = Segment(E_1, F_1)
a_2 = Segment(F_1, G_1)
b_2 = Segment(G_1, D_1)
K: O + (x(G_1) * v) - (y(G_1) * u)

Tool: Desabat Punto (command DesabatPunto)
(A), AVB y O
Input: Q_1, A, V, B, O
Output: T_1, N, B_1, A_1, U_1, R, c_3, d_3, e_3, f_3

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C_3 = Intersect(c, d, 1)
e_2 = Ray(C_3, A_4)
f = Ray(C_3, B_3)
u' = UnitVector(e_2)
v' = UnitVector(f)
D: C_3 + u'
E: C_3 + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G_2 = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G_2)
u_1 = Length(u)
v_5 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_5^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
e = Segment(A, V)
j = Segment(V, B)
A' = Rotate(A, ((((x(V) - x(B)) / abs(x(V) - x(B)) * acos(((x(A) - x(V)) * (x(B) - x(V)) / ((sqrt((x(A) - x(V))^(2) + y(A)^(2)) * sqrt((x(B) - x(V))^(2) + y(B)^(2))))))) * 180) * ° / π), V)
r = Segment(V, A')
r_2 = Line(Q_1, e)
R_1 = Intersect(r_2, r)
s_2 = OrthogonalLine(R_1, e)
t_2 = OrthogonalLine(Q_1, e)
S_1 = Intersect(s_2, xAxis)
b_3 = Line(S_1, e)
T_1 = Intersect(t_2, b_3)
c_3 = Segment(T_1, Q_1)
d_3 = Segment(Q_1, R_1)
e_3 = Segment(R_1, S_1)
f_3 = Segment(S_1, T_1)
U_1: O + (x(T_1) * v) - (y(T_1) * u)
d_1 = OrthogonalLine(T_1, xAxis)
e_1 = OrthogonalLine(S_1, xAxis)
M = Intersect(e_1, j)
f_1 = Line(M, xAxis)
N = Intersect(d_1, f_1)
R: O + (x(T_1) * v) + (y(N) * w)
A_1: O + (x(T_1) * v) - (y(T_1) * u) + (y(N) * w)
B_1: O + (x(Q_1) * v) - (y(Q_1) * u)

Tool: Desabat triángulo (command Desabattriángulo)
Vértices, AVB y O
Input: C, K, M, A, V, B, O
Output: polígono3, polígono4, polígono5, polígono6, polígono7, polígono8, h_3, b_3, q_2, j_3, c_2, r_1, k_3, d_3, s_2, l_3, e_3, t_2, m_2, f_3, u_2, p_2, g_3, v_1, G, G_1, F_1, E_1, D_1, C_1, B_1, P_1, M_1, L_1, K_1, J_1, H_1, V_1, U_1, T_1, S_1, R_1, Q_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C_3 = Intersect(c, d, 1)
e_2 = Ray(C_3, A_4)
f = Ray(C_3, B_3)
u' = UnitVector(e_2)
v' = UnitVector(f)
D: C_3 + u'
E: C_3 + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G_2 = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G_2)
G: O + (x(A) * v) - (y(A) * u)
B_1, C_1, D_1, E_1, F_1, G_1, l_1, p_1, q_1, s_1 = DesabatPunto(C, A, V, B, O)
H_1, J_1, K_1, L_1, M_1, P_1, t_1, b_2, f_2, g_2 = DesabatPunto(K, A, V, B, O)
Q_1, R_1, S_1, T_1, U_1, V_1, h_2, i_2, j_2, l_2 = DesabatPunto(M, A, V, B, O)
polígono3, q_2, b_3, h_3 = Polygon(B_1, H_1, Q_1)
polígono4, r_1, c_2, j_3 = Polygon(C_1, J_1, R_1)
polígono5, s_2, d_3, k_3 = Polygon(D_1, K_1, S_1)
polígono6, t_2, e_3, l_3 = Polygon(E_1, L_1, T_1)
polígono7, u_2, f_3, m_2 = Polygon(F_1, M_1, U_1)
polígono8, v_1, g_3, p_2 = Polygon(G_1, P_1, V_1)

Tool: Desabat cuadrilátero (command Desabatcuadrilátero)
Vértices, AVB y O
Input: C, K, M, N, A, V, B, O
Output: polígono3, polígono4, polígono5, polígono6, polígono7, polígono8, r_2, q_2, h_3, b_3, a_4, r_3, j_3, c_3, w_2, s_2, k_3, d_3, b_4, v_1, p_2, g_3, z_1, t_2, l_3, e_3, a_5, u_2, m_3, f_3, G_1, F_1, E_1, D_1, C_1, B_1, P_1, M_1, L_1, K_1, J_1, H_1, V_1, U_1, T_1, S_1, R_1, Q_1, B_2, A_2, Z_1, W_1, A_1, R

B_1, C_1, D_1, E_1, F_1, G_1, l_1, p_1, q_1, s_1 = DesabatPunto(C, A, V, B, O)
H_1, J_1, K_1, L_1, M_1, P_1, t_1, b_2, f_2, g_2 = DesabatPunto(K, A, V, B, O)
Q_1, R_1, S_1, T_1, U_1, V_1, h_2, i_2, j_2, l_2 = DesabatPunto(M, A, V, B, O)
R, A_1, W_1, Z_1, A_2, B_2, a_2, c_2, m_2, n_2 = DesabatPunto(N, A, V, B, O)
polígono3, b_3, h_3, q_2, r_2 = Polygon(B_1, H_1, Q_1, R)
polígono4, c_3, j_3, r_3, a_4 = Polygon(C_1, J_1, R_1, A_1)
polígono5, d_3, k_3, s_2, w_2 = Polygon(D_1, K_1, S_1, W_1)
polígono6, g_3, p_2, v_1, b_4 = Polygon(G_1, P_1, V_1, B_2)
polígono7, e_3, l_3, t_2, z_1 = Polygon(E_1, L_1, T_1, Z_1)
polígono8, f_3, m_3, u_2, a_5 = Polygon(F_1, M_1, U_1, A_2)

Tool: Desabat pentágono (command Desabatpentágono)
Vértices, AVB y O
Input: C, K, M, N, C_2, A, V, B, O
Output: polígono3, polígono4, polígono5, polígono6, polígono7, polígono8, d_3, r_2, q_2, h_3, b_3, e_3, a_4, r_3, j_3, c_3, f_3, w_2, s_2, k_3, d_4, m_3, b_4, v_1, p_2, g_4, i_3, z_1, t_2, l_3, e_4, l_4, a_5, u_2, m_4, f_4, G_1, F_1, E_1, D_1, C_1, B_1, P_1, M_1, L_1, K_1, J_1, H_1, V_1, U_1, T_1, S_1, R_1, Q_1, B_2, A_2, Z_1, W_1, A_1, R, M_2, L_2, I_2, F_2, E_2, D_2

B_1, C_1, D_1, E_1, F_1, G_1, l_1, p_1, q_1, s_1 = DesabatPunto(C, A, V, B, O)
H_1, J_1, K_1, L_1, M_1, P_1, t_1, b_2, f_2, g_2 = DesabatPunto(K, A, V, B, O)
Q_1, R_1, S_1, T_1, U_1, V_1, h_2, i_2, j_2, l_2 = DesabatPunto(M, A, V, B, O)
R, A_1, W_1, Z_1, A_2, B_2, a_2, c_2, m_2, n_2 = DesabatPunto(N, A, V, B, O)
D_2, E_2, F_2, I_2, L_2, M_2, n_3, p_3, q_3, s_3 = DesabatPunto(C_2, A, V, B, O)
polígono3, b_3, h_3, q_2, r_2, d_3 = Polygon(B_1, H_1, Q_1, R, D_2)
polígono4, c_3, j_3, r_3, a_4, e_3 = Polygon(C_1, J_1, R_1, A_1, E_2)
polígono5, d_4, k_3, s_2, w_2, f_3 = Polygon(D_1, K_1, S_1, W_1, F_2)
polígono6, g_4, p_2, v_1, b_4, m_3 = Polygon(G_1, P_1, V_1, B_2, M_2)
polígono7, e_4, l_3, t_2, z_1, i_3 = Polygon(E_1, L_1, T_1, Z_1, I_2)
polígono8, f_4, m_4, u_2, a_5, l_4 = Polygon(F_1, M_1, U_1, A_2, L_2)

Tool: Desabat hexágono (command Desabathexágono)
Vértices, AVB y O
Input: C, K, M, N, C_2, N_2, A, V, B, O
Output: polígono3, polígono4, polígono5, polígono6, polígono8, polígono7, o_2, d_3, r_2, q_2, h_3, b_3, p_2, e_3, a_4, r_3, j_3, c_3, s_4, f_3, w_2, s_2, k_3, d_4, u_3, l_3, a_5, u_2, m_3, f_4, w_3, m_4, b_4, v_1, p_5, g_5, t_4, i_4, z_1, t_2, l_4, e_4, G_1, F_1, E_1, D_1, C_1, B_1, P_1, M_1, L_1, K_1, J_1, H_1, V_1, U_1, T_1, S_1, R_1, Q_1, B_2, A_2, Z_1, W_1, A_1, R, M_2, L_2, I_2, F_2, E_2, D_2, W_2, U_2, T_2, S_2, P_2, O_2

B_1, C_1, D_1, E_1, F_1, G_1, l_1, p_1, q_1, s_1 = DesabatPunto(C, A, V, B, O)
H_1, J_1, K_1, L_1, M_1, P_1, t_1, b_2, f_2, g_2 = DesabatPunto(K, A, V, B, O)
Q_1, R_1, S_1, T_1, U_1, V_1, h_2, i_2, j_2, l_2 = DesabatPunto(M, A, V, B, O)
R, A_1, W_1, Z_1, A_2, B_2, a_2, c_2, m_2, n_2 = DesabatPunto(N, A, V, B, O)
D_2, E_2, F_2, I_2, L_2, M_2, n_3, p_3, q_3, s_3 = DesabatPunto(C_2, A, V, B, O)
O_2, P_2, S_2, T_2, U_2, W_2, c_4, g_4, h_4, j_4 = DesabatPunto(N_2, A, V, B, O)
polígono3, b_3, h_3, q_2, r_2, d_3, o_2 = Polygon(B_1, H_1, Q_1, R, D_2, O_2)
polígono4, c_3, j_3, r_3, a_4, e_3, p_2 = Polygon(C_1, J_1, R_1, A_1, E_2, P_2)
polígono5, d_4, k_3, s_2, w_2, f_3, s_4 = Polygon(D_1, K_1, S_1, W_1, F_2, S_2)
polígono6, f_4, m_3, u_2, a_5, l_3, u_3 = Polygon(F_1, M_1, U_1, A_2, L_2, U_2)
polígono8, g_5, p_5, v_1, b_4, m_4, w_3 = Polygon(G_1, P_1, V_1, B_2, M_2, W_2)
polígono7, e_4, l_4, t_2, z_1, i_4, t_4 = Polygon(E_1, L_1, T_1, Z_1, I_2, T_2)

Tool: Proyectante Horizontal (command ProyectanteHorizontal)
A_1, B_1 y O
Input: A_1, B_1, O
Output: A, polígono1, j, k, m, n

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C_3 = Intersect(c, d, 1)
e_2 = Ray(C_3, A_4)
f = Ray(C_3, B_3)
u' = UnitVector(e_2)
v' = UnitVector(f)
D: C_3 + u'
E: C_3 + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G_2 = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G_2)
u_1 = Length(u)
v_5 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_5^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
e = Line(A_1, B_1)
A = Intersect(e, xAxis)
j = Segment(A_1, A)
k = Ray(A, w)
B: O + (x(A_1) * v) - (y(A_1) * u)
C: O + (x(A) * v)
l = Ray(C, w)
G = Point(l)
m = Segment(B, C)
n = Segment(C, G)
r = Line(B, n)
a_1 = Line(G, m)
H = Intersect(r, a_1)
polígono1, c_2, b_2, h_1, g_1 = Polygon(C, B, H, G)

Tool: Abat Proy Horizontal (command AbatProyHorizontal)
A_1, B_1 y O
Input: A_1, B_1, O
Output: d_1, e_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C_3 = Intersect(c, d, 1)
e_2 = Ray(C_3, A_4)
f = Ray(C_3, B_3)
u' = UnitVector(e_2)
v' = UnitVector(f)
D: C_3 + u'
E: C_3 + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G_2 = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G_2)
u_1 = Length(u)
v_5 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_5^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
e = Line(A_1, B_1)
A = Intersect(e, xAxis)
j = Segment(A_1, A)
k = Ray(A, w)
C: O + (x(A) * v)
α = Angle(j, k)
I = Rotate(A_1, (-90 * ((2 * floor((α * π / 90 / π))) - °)), A)
J: O + (x(I) * v) - (y(I) * u)
d_1 = Segment(A, I)
e_1 = Segment(J, C)

Tool: Abat Punto en Proy Horizontal (command AbatPuntoenProyHorizontal)
P_2, A_1, B_1 y O
Input: P_2, A_1, B_1, O
Output: N, K

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C_3 = Intersect(c, d, 1)
e_2 = Ray(C_3, A_4)
f = Ray(C_3, B_3)
u' = UnitVector(e_2)
v' = UnitVector(f)
D: C_3 + u'
E: C_3 + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G_2 = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G_2)
u_1 = Length(u)
v_5 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_5^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
e = Line(A_1, B_1)
A = Intersect(e, xAxis)
j = Segment(A_1, A)
k = Ray(A, w)
α = Angle(j, k)
I = Rotate(A_1, (-90 * ((2 * floor((α * π / 90 / π))) - °)), A)
d_1 = Segment(A, I)
f_1 = OrthogonalLine(P_2, xAxis)
M = Intersect(f_1, j)
z = UnitVector(d_1)
N: M + (y(P_2) * z)
K: O + (x(N) * v) - (y(N) * u)

Tool: Recta horizontal por P_1 (command RectahorizontalporP_1)
P_1, AVB y O
Input: P_1, A_1, V, B_2, O
Output: f_1, h_1, P_2, j_1, i_1, k_1, C_1, D_1, E_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C_3 = Intersect(c, d, 1)
e_2 = Ray(C_3, A_4)
f = Ray(C_3, B_3)
u' = UnitVector(e_2)
v' = UnitVector(f)
D: C_3 + u'
E: C_3 + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G_2 = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G_2)
u_1 = Length(u)
v_5 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_5^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
e = Segment(A_1, V)
j = Segment(V, B_2)
m = Line(P_1, e)
G = Intersect(m, xAxis)
n = OrthogonalLine(P_1, xAxis)
r = OrthogonalLine(G, xAxis)
H = Intersect(r, j)
a_1 = Line(H, xAxis)
P_2 = Intersect(n, a_1)
d_1 = Ray(H, P_2)
e_1 = Ray(G, P_1)
I = Point(e_1)
f_1 = Segment(G, I)
g_1 = OrthogonalLine(I, xAxis)
J = Intersect(g_1, d_1)
h_1 = Segment(H, J)
K: O + (x(H) * v) + (y(H) * w)
M: O + (x(H) * v)
N: O + (x(J) * v) + (y(J) * w)
R: O + (x(I) * v) - (y(I) * u)
B_1: O + (x(I) * v) - (y(I) * u) + (y(J) * w)
i_1 = Segment(M, R)
j_1 = Segment(K, B_1)
k_1 = Segment(K, N)
C_1: O + (x(P_1) * v) - (y(P_1) * u) + (y(P_2) * w)
D_1: O + (x(P_1) * v) - (y(P_1) * u)
E_1: O + (x(P_1) * v) + (y(P_2) * w)

Tool: Recta frontal por P_1 (command RectafrontalporP_1)
P_1, AVB y O
Input: P_1, A_1, V, B_2, O
Output: r_1, s_1, P_2, a_2, t_1, b_2, C_1, D_1, E_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C_3 = Intersect(c, d, 1)
e_2 = Ray(C_3, A_4)
f = Ray(C_3, B_3)
u' = UnitVector(e_2)
v' = UnitVector(f)
D: C_3 + u'
E: C_3 + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G_2 = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G_2)
u_1 = Length(u)
v_5 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_5^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
e = Segment(A_1, V)
j = Segment(V, B_2)
m = Line(P_1, e)
G = Intersect(m, xAxis)
n = OrthogonalLine(P_1, xAxis)
r = OrthogonalLine(G, xAxis)
H = Intersect(r, j)
a_1 = Line(H, xAxis)
P_2 = Intersect(n, a_1)
C_1: O + (x(P_1) * v) - (y(P_1) * u) + (y(P_2) * w)
D_1: O + (x(P_1) * v) - (y(P_1) * u)
E_1: O + (x(P_1) * v) + (y(P_2) * w)
l_1 = Line(P_1, xAxis)
F_1 = Intersect(l_1, e)
m_1 = OrthogonalLine(F_1, l_1)
G_1 = Intersect(xAxis, m_1)
n_1 = Ray(F_1, P_1)
p_1 = Ray(G_1, P_2)
H_1 = Point(n_1)
q_1 = OrthogonalLine(H_1, xAxis)
J_1 = Intersect(q_1, p_1)
r_1 = Segment(F_1, H_1)
s_1 = Segment(G_1, J_1)
K_1: O + (x(F_1) * v) - (y(F_1) * u)
L_1: O + (x(G_1) * v)
M_1: O + (x(H_1) * v) - (y(H_1) * u)
Q_1: O + (x(J_1) * v) + (y(J_1) * w)
R_1: O + (x(H_1) * v) - (y(H_1) * u) + (y(J_1) * w)
t_1 = Segment(M_1, K_1)
a_2 = Segment(R_1, K_1)
b_2 = Segment(L_1, Q_1)

Tool: Perpendicular a un plano desde P exterior (command PerpendicularaunplanodesdePexterior)
P_1, P_2, plano y O
Input: C, D_1, A, V, B, O
Output: h_1, i_1, E_1, C_1, j_1, k_1, l_1, F_1, G_1, H_1, A_1, N, R

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C_3 = Intersect(c, d, 1)
e_2 = Ray(C_3, A_4)
f = Ray(C_3, B_3)
u' = UnitVector(e_2)
v' = UnitVector(f)
D: C_3 + u'
E: C_3 + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G_2 = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G_2)
u_1 = Length(u)
v_5 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_5^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
e = Segment(A, V)
j = Segment(V, B)
l = OrthogonalLine(C, xAxis)
N: O + (x(C) * v) - (y(C) * u)
R: O + (x(D_1) * v) + (y(D_1) * w)
A_1: O + (x(C) * v) - (y(C) * u) + (y(D_1) * w)
k = OrthogonalLine(C, e)
m = OrthogonalLine(D_1, j)
G = Intersect(k, xAxis)
n = OrthogonalLine(G, xAxis)
H = Intersect(k, e)
r = OrthogonalLine(H, xAxis)
I = Intersect(r, xAxis)
B_1 = Intersect(n, j)
a_1 = Line(I, B_1)
C_1 = Intersect(m, a_1)
d_1 = OrthogonalLine(C_1, xAxis)
E_1 = Intersect(k, d_1)
F_1: O + (x(E_1) * v) - (y(E_1) * u) + (y(C_1) * w)
G_1: O + (x(E_1) * v) - (y(E_1) * u)
H_1: O + (x(C_1) * v) + (y(C_1) * w)
h_1 = Segment(E_1, C)
i_1 = Segment(C_1, D_1)
j_1 = Segment(F_1, A_1)
k_1 = Segment(G_1, N)
l_1 = Segment(H_1, R)

Tool: Giro segmento AB hasta frontal (command GirosegmentoABhastafrontal)
A_1, A_2, B_1, B_2 y O
Input: J_1, M_1, K_1, P_1, O
Output: m_1, f_2, S_1, R_1, k_2, m_2, l_2, B_2, Z_1, A_2

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C_3 = Intersect(c, d, 1)
e_2 = Ray(C_3, A_4)
f = Ray(C_3, B_3)
u' = UnitVector(e_2)
v' = UnitVector(f)
D: C_3 + u'
E: C_3 + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G_2 = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G_2)
u_1 = Length(u)
v_5 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_5^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
n_1 = Line(J_1, xAxis)
p_1 = OrthogonalLine(J_1, n_1)
q_1 = OrthogonalLine(K_1, n_1)
t_1 = Circle(J_1, K_1)
S_1 = Intersect(t_1, n_1, 2)
s_1 = OrthogonalLine(S_1, n_1)
a_2 = Line(P_1, xAxis)
R_1 = Intersect(s_1, a_2)
f_2 = Segment(R_1, M_1)
m_1 = Segment(J_1, S_1)
L_1: O + (x(J_1) * v) - (y(J_1) * u)
Q_1: O + (x(J_1) * v) + (y(M_1) * w)
T_1: O + (x(J_1) * v) - (y(J_1) * u) + (y(M_1) * w)
Z_1: O + (x(S_1) * v) - (y(S_1) * u)
A_2: O + (x(S_1) * v) + (y(R_1) * w)
B_2: O + (x(S_1) * v) - (y(S_1) * u) + (y(R_1) * w)
k_2 = Segment(T_1, B_2)
l_2 = Segment(Q_1, A_2)
m_2 = Segment(L_1, Z_1)

Tool: Perpendicular por P de un plano (command PerpendicularporPdeunplano)
P_1, plano y O
Input: M_2, A, V, B, O
Output: P_2, d_3, e_3, S_2, T_2, f_3, h_3, g_3, D_3, Z_2, A_3, G_3, E_3, F_3

e = Segment(A, V)
s_2 = OrthogonalLine(M_2, e)
W_2 = Intersect(s_2, e)
c_3 = Ray(M_2, W_2)
c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C_3 = Intersect(c, d, 1)
e_2 = Ray(C_3, A_4)
f = Ray(C_3, B_3)
u' = UnitVector(e_2)
v' = UnitVector(f)
D: C_3 + u'
E: C_3 + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G_2 = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G_2)
u_1 = Length(u)
v_5 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_5^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
j = Segment(V, B)
n_2 = Line(M_2, e)
N_2 = Intersect(n_2, xAxis)
p_2 = OrthogonalLine(N_2, xAxis)
q_2 = OrthogonalLine(M_2, xAxis)
O_2 = Intersect(p_2, j)
r_2 = Line(O_2, xAxis)
P_2 = Intersect(q_2, r_2)
t_2 = OrthogonalLine(P_2, j)
S_2 = Point(c_3)
a_3 = OrthogonalLine(S_2, xAxis)
U_2 = Intersect(t_2, j)
b_3 = Ray(P_2, U_2)
T_2 = Intersect(b_3, a_3)
d_3 = Segment(M_2, S_2)
e_3 = Segment(P_2, T_2)
Z_2: O + (x(M_2) * v) - (y(M_2) * u)
A_3: O + (x(P_2) * v) + (y(P_2) * w)
D_3: O + (x(M_2) * v) - (y(M_2) * u) + (y(P_2) * w)
E_3: O + (x(S_2) * v) - (y(S_2) * u)
F_3: O + (x(T_2) * v) + (y(T_2) * w)
G_3: O + (x(S_2) * v) - (y(S_2) * u) + (y(T_2) * w)
f_3 = Segment(D_3, G_3)
g_3 = Segment(A_3, F_3)
h_3 = Segment(Z_2, E_3)

Tool: Intersección recta plano (command Intersecciónrectaplano)
A_1, A_2, B_1, B_2, AVB y O
Input: A_1, A_2, B_1, B_2, A, V, B, O
Output: P_1, P_2, C_1, N, R, D_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C_3 = Intersect(c, d, 1)
e_2 = Ray(C_3, A_4)
f = Ray(C_3, B_3)
u' = UnitVector(e_2)
v' = UnitVector(f)
D: C_3 + u'
E: C_3 + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G_2 = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G_2)
u_1 = Length(u)
v_5 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_5^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
k = OrthogonalLine(B_1, xAxis)
l = OrthogonalLine(A_1, xAxis)
P_1: (x(A_1) + ((x(B_1) - x(A_1)) * ((((-x(A_1)) * y(A)) * y(B)) + ((x(V) * y(A)) * y(B)) + ((y(A_1) * y(B)) * (x(A) - x(V))) + ((y(A_2) * y(A)) * (x(B) - x(V)))) / ((((x(B_1) - x(A_1)) * y(A)) * y(B)) + (((y(A_1) - y(B_1)) * y(B)) * (x(A) - x(V))) - (((y(B_2) - y(A_2)) * y(A)) * (x(B) - x(V))))), y(A_1) + ((y(B_1) - y(A_1)) * ((((-x(A_1)) * y(A)) * y(B)) + ((x(V) * y(A)) * y(B)) + ((y(A_1) * y(B)) * (x(A) - x(V))) + ((y(A_2) * y(A)) * (x(B) - x(V)))) / ((((x(B_1) - x(A_1)) * y(A)) * y(B)) + (((y(A_1) - y(B_1)) * y(B)) * (x(A) - x(V))) - (((y(B_2) - y(A_2)) * y(A)) * (x(B) - x(V))))))
P_2: (x(A_1) + ((x(B_1) - x(A_1)) * ((((-x(A_1)) * y(A)) * y(B)) + ((x(V) * y(A)) * y(B)) + ((y(A_1) * y(B)) * (x(A) - x(V))) + ((y(A_2) * y(A)) * (x(B) - x(V)))) / ((((x(B_1) - x(A_1)) * y(A)) * y(B)) + (((y(A_1) - y(B_1)) * y(B)) * (x(A) - x(V))) - (((y(B_2) - y(A_2)) * y(A)) * (x(B) - x(V))))), y(A_2) + ((y(B_2) - y(A_2)) * ((((-x(A_1)) * y(A)) * y(B)) + ((x(V) * y(A)) * y(B)) + ((y(A_1) * y(B)) * (x(A) - x(V))) + ((y(A_2) * y(A)) * (x(B) - x(V)))) / ((((x(B_1) - x(A_1)) * y(A)) * y(B)) + (((y(A_1) - y(B_1)) * y(B)) * (x(A) - x(V))) - (((y(B_2) - y(A_2)) * y(A)) * (x(B) - x(V))))))
N: O + (x(P_1) * v) - (y(P_1) * u)
R: O + (x(P_2) * v) + (y(P_2) * w)
C_1: O + (x(P_1) * v) - (y(P_1) * u) + (y(P_2) * w)
D_1: O + (x(P_1) * v)

Tool: Prisma hexagonal* (command Prismahexagonal)
Vértices de la base, vértice superior y O
Input: K_1, L_1, M_1, N_1, P_1, Q_1, Z_1, H_2, O
Output: polígono4, polígono4', polígono5, polígono6, polígono7, q_1, p_1, n_1, m_1, l_2, k_2, d_2, e_2, f_2, g_2, i_2, j_2, g_3, f_3, e_3, d_3, c_3, b_3, a_3, h_3, i_3, j_3, k_3, l_3, m_3, n_3, p_3, q_3, r_3, s_3, t_3, a_4, b_4, c_4, d_4, e_4, z_2, v_2, t_4, r_4, p_4, n_4, w_3, s_4, o_3, k_4, g_4, c_5, f_4, h_4, i_4, j_4, l_4, m_4, q_4, a_5, b_5, d_5, e_5, f_5, g_5, h_5, i_5, j_5, k_5, l_5, z_3, t_5, p_5, l_6, h_6, d_6, m_5, n_5, q_5, r_5, s_5, a_6, e_1, f_1, g_1, i_1, l_1, b_6, R_1, S_1, T_1, U_1, V_1, W_1, C_2, D_2, E_2, F_2, G_2, I_2, J_2, K_2, L_2, M_2, O_2, N_2, Q_2, P_2, S_2, R_2, U_2, T_2, W_2, V_2, B_3, Z_2, E_3, D_3, C_3, I_3, H_3, G_3, M_3, L_3, K_3, Q_3, P_3, O_3, U_3, T_3, S_3, A_4, Z_3, W_3

polígono4, k_2, l_2, m_1, n_1, p_1, q_1 = Polygon(K_1, L_1, M_1, N_1, P_1, Q_1)
r_1 = OrthogonalLine(K_1, xAxis)
s_1 = OrthogonalLine(L_1, xAxis)
t_1 = OrthogonalLine(M_1, xAxis)
a_2 = OrthogonalLine(N_1, xAxis)
b_2 = OrthogonalLine(P_1, xAxis)
c_2 = OrthogonalLine(Q_1, xAxis)
R_1 = Intersect(r_1, xAxis)
S_1 = Intersect(s_1, xAxis)
T_1 = Intersect(xAxis, t_1)
U_1 = Intersect(a_2, xAxis)
V_1 = Intersect(b_2, xAxis)
W_1 = Intersect(c_2, xAxis)
d_2 = Segment(R_1, S_1)
e_2 = Segment(S_1, T_1)
f_2 = Segment(T_1, U_1)
g_2 = Segment(U_1, V_1)
i_2 = Segment(V_1, W_1)
j_2 = Segment(W_1, R_1)
m_2 = OrthogonalLine(Z_1, xAxis)
z = Vector(K_1, Z_1)
B_2 = Translate(K_1, z)
C_2 = Translate(L_1, z)
D_2 = Translate(M_1, z)
E_2 = Translate(N_1, z)
F_2 = Translate(P_1, z)
G_2 = Translate(Q_1, z)
polígono4', b_3, c_3, d_3, e_3, f_3, g_3 = Polygon(B_2, C_2, D_2, E_2, F_2, G_2)
n_2 = OrthogonalLine(C_2, xAxis)
p_2 = OrthogonalLine(D_2, xAxis)
q_2 = OrthogonalLine(E_2, xAxis)
r_2 = OrthogonalLine(F_2, xAxis)
s_2 = OrthogonalLine(G_2, xAxis)
t_2 = Line(H_2, xAxis)
I_2 = Intersect(n_2, t_2)
J_2 = Intersect(p_2, t_2)
K_2 = Intersect(q_2, t_2)
L_2 = Intersect(r_2, t_2)
M_2 = Intersect(s_2, t_2)
a_3 = Segment(R_1, H_2)
h_3 = Segment(S_1, I_2)
i_3 = Segment(T_1, J_2)
j_3 = Segment(U_1, K_2)
k_3 = Segment(V_1, L_2)
l_3 = Segment(W_1, M_2)
m_3 = Segment(H_2, I_2)
n_3 = Segment(I_2, J_2)
p_3 = Segment(J_2, K_2)
q_3 = Segment(K_2, L_2)
r_3 = Segment(L_2, M_2)
s_3 = Segment(M_2, H_2)
t_3 = Segment(K_1, Z_1)
a_4 = Segment(L_1, C_2)
b_4 = Segment(M_1, D_2)
c_4 = Segment(N_1, E_2)
d_4 = Segment(P_1, F_2)
e_4 = Segment(Q_1, G_2)
N_2, O_2 = ProyAxonométricadeAenPH(K_1, O)
P_2, Q_2 = ProyAxonométricadeAenPH(L_1, O)
R_2, S_2 = ProyAxonométricadeAenPH(M_1, O)
T_2, U_2 = ProyAxonométricadeAenPH(N_1, O)
V_2, W_2 = ProyAxonométricadeAenPH(P_1, O)
Z_2, B_3 = ProyAxonométricadeAenPH(Q_1, O)
polígono5, n_4, p_4, r_4, t_4, v_2, z_2 = Polygon(N_2, P_2, R_2, T_2, V_2, Z_2)
C_3, D_3, E_3, F_3 = ProyAxonométricaSimplificadadeA(Z_1, H_2, O)
G_3, H_3, I_3, J_3 = ProyAxonométricaSimplificadadeA(C_2, I_2, O)
K_3, L_3, M_3, N_3 = ProyAxonométricaSimplificadadeA(D_2, J_2, O)
O_3, P_3, Q_3, R_3 = ProyAxonométricaSimplificadadeA(E_2, K_2, O)
S_3, T_3, U_3, V_3 = ProyAxonométricaSimplificadadeA(F_2, L_2, O)
W_3, Z_3, A_4, B_4 = ProyAxonométricaSimplificadadeA(G_2, M_2, O)
polígono6, c_5, g_4, k_4, o_3, s_4, w_3 = Polygon(C_3, G_3, K_3, O_3, S_3, W_3)
f_4 = Segment(O_2, E_3)
h_4 = Segment(Q_2, I_3)
i_4 = Segment(S_2, M_3)
j_4 = Segment(U_2, Q_3)
l_4 = Segment(W_2, U_3)
m_4 = Segment(B_3, A_4)
q_4 = Segment(O_2, Q_2)
a_5 = Segment(Q_2, S_2)
b_5 = Segment(S_2, U_2)
d_5 = Segment(U_2, W_2)
e_5 = Segment(W_2, B_3)
f_5 = Segment(B_3, O_2)
g_5 = Segment(E_3, I_3)
h_5 = Segment(I_3, M_3)
i_5 = Segment(M_3, Q_3)
j_5 = Segment(Q_3, U_3)
k_5 = Segment(U_3, A_4)
l_5 = Segment(A_4, E_3)
polígono7, d_6, h_6, l_6, p_5, t_5, z_3 = Polygon(D_3, H_3, L_3, P_3, T_3, Z_3)
m_5 = Segment(N_2, C_3)
n_5 = Segment(P_2, G_3)
q_5 = Segment(R_2, K_3)
r_5 = Segment(T_2, O_3)
s_5 = Segment(V_2, S_3)
a_6 = Segment(Z_2, W_3)
e_1 = Segment(Z_2, Z_3)
f_1 = Segment(V_2, T_3)
g_1 = Segment(T_2, P_3)
i_1 = Segment(R_2, L_3)
l_1 = Segment(P_2, H_3)
b_6 = Segment(N_2, D_3)

Tool: Pirámide hexagonal* (command Pirámidehexagonal)
Vértices de la base, vértice superior y O
Input: K_1, L_1, M_1, N_1, P_1, Q_1, Z_1, H_2, O
Output: polígono4, polígono5, q_1, p_1, n_1, m_1, l_2, k_2, d_2, e_2, f_2, g_2, i_2, j_2, a_3, t_3, z_2, v_2, t_4, r_4, p_4, n_4, f_4, q_4, a_5, b_5, d_5, e_5, f_5, m_5, b_6, e_1, f_1, g_1, i_1, l_1, n_2, p_2, q_2, r_2, s_2, b_3, c_3, d_3, e_3, f_3, g_3, h_3, i_3, j_3, k_3, l_3, m_3, n_3, p_3, q_3, R_1, S_1, T_1, U_1, V_1, W_1, O_2, N_2, Q_2, P_2, S_2, R_2, U_2, T_2, W_2, V_2, B_3, Z_2, E_3, D_3, C_3

polígono4, k_2, l_2, m_1, n_1, p_1, q_1 = Polygon(K_1, L_1, M_1, N_1, P_1, Q_1)
r_1 = OrthogonalLine(K_1, xAxis)
s_1 = OrthogonalLine(L_1, xAxis)
t_1 = OrthogonalLine(M_1, xAxis)
a_2 = OrthogonalLine(N_1, xAxis)
b_2 = OrthogonalLine(P_1, xAxis)
c_2 = OrthogonalLine(Q_1, xAxis)
R_1 = Intersect(r_1, xAxis)
S_1 = Intersect(s_1, xAxis)
T_1 = Intersect(xAxis, t_1)
U_1 = Intersect(a_2, xAxis)
V_1 = Intersect(b_2, xAxis)
W_1 = Intersect(c_2, xAxis)
d_2 = Segment(R_1, S_1)
e_2 = Segment(S_1, T_1)
f_2 = Segment(T_1, U_1)
g_2 = Segment(U_1, V_1)
i_2 = Segment(V_1, W_1)
j_2 = Segment(W_1, R_1)
m_2 = OrthogonalLine(Z_1, xAxis)
a_3 = Segment(R_1, H_2)
t_3 = Segment(K_1, Z_1)
N_2, O_2 = ProyAxonométricadeAenPH(K_1, O)
P_2, Q_2 = ProyAxonométricadeAenPH(L_1, O)
R_2, S_2 = ProyAxonométricadeAenPH(M_1, O)
T_2, U_2 = ProyAxonométricadeAenPH(N_1, O)
V_2, W_2 = ProyAxonométricadeAenPH(P_1, O)
Z_2, B_3 = ProyAxonométricadeAenPH(Q_1, O)
polígono5, n_4, p_4, r_4, t_4, v_2, z_2 = Polygon(N_2, P_2, R_2, T_2, V_2, Z_2)
C_3, D_3, E_3, F_3 = ProyAxonométricaSimplificadadeA(Z_1, H_2, O)
f_4 = Segment(O_2, E_3)
q_4 = Segment(O_2, Q_2)
a_5 = Segment(Q_2, S_2)
b_5 = Segment(S_2, U_2)
d_5 = Segment(U_2, W_2)
e_5 = Segment(W_2, B_3)
f_5 = Segment(B_3, O_2)
m_5 = Segment(N_2, C_3)
b_6 = Segment(N_2, D_3)
e_1 = Segment(P_2, D_3)
f_1 = Segment(R_2, D_3)
g_1 = Segment(T_2, D_3)
i_1 = Segment(V_2, D_3)
l_1 = Segment(Z_2, D_3)
n_2 = Segment(Q_2, E_3)
p_2 = Segment(S_2, E_3)
q_2 = Segment(U_2, E_3)
r_2 = Segment(W_2, E_3)
s_2 = Segment(B_3, E_3)
b_3 = Segment(P_2, C_3)
c_3 = Segment(R_2, C_3)
d_3 = Segment(T_2, C_3)
e_3 = Segment(V_2, C_3)
f_3 = Segment(Z_2, C_3)
g_3 = Segment(S_1, H_2)
h_3 = Segment(T_1, H_2)
i_3 = Segment(U_1, H_2)
j_3 = Segment(V_1, H_2)
k_3 = Segment(W_1, H_2)
l_3 = Segment(L_1, Z_1)
m_3 = Segment(M_1, Z_1)
n_3 = Segment(N_1, Z_1)
p_3 = Segment(P_1, Z_1)
q_3 = Segment(Q_1, Z_1)

Tool: Punto en esfera-(P_2) (command Puntoenesfera)
P_1, centro esfera (O_1, O_2), C_1 y O
Input: E_1, B_1, D_1, C_1, O
Output: d_2, s_1, t_1, a_2, b_2, c_2, M_1, L_1, N_1, P_1, Q_1, R_1, S_1, T_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A = Intersect(c, xAxis, 1)
B = Intersect(c, xAxis, 2)
a = Ray(O, A)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A)
f = Ray(C, B)
u' = UnitVector(e)
v' = UnitVector(f)
D: C + u'
E: C + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G)
u_1 = Length(u)
v_1 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_1^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
e_1 = OrthogonalLine(B_1, xAxis)
g_1 = Circle(D_1, Segment[B_1, C_1])
i_1 = OrthogonalLine(E_1, xAxis)
p_1 = Circle(B_1, E_1)
l_1 = Line(B_1, xAxis)
F_1, G_1 = Intersect(p_1, l_1)
m_1 = OrthogonalLine(G_1, xAxis)
n_1 = OrthogonalLine(F_1, xAxis)
H_1, I_1 = Intersect(g_1, n_1)
J_1, K_1 = Intersect(g_1, m_1)
q_1 = Segment(H_1, J_1)
r_1 = Segment(I_1, K_1)
L_1 = Intersect(i_1, r_1)
M_1 = Intersect(i_1, q_1)
N_1: O + (x(E_1) * v) - (y(E_1) * u)
P_1: O + (x(E_1) * v) + (y(M_1) * w)
Q_1: O + (x(E_1) * v) + (y(L_1) * w)
R_1: O + (x(E_1) * v) - (y(E_1) * u) + (y(M_1) * w)
S_1: O + (x(E_1) * v) - (y(E_1) * u) + (y(L_1) * w)
T_1: O + (x(E_1) * v)
s_1 = Segment(T_1, Q_1)
t_1 = Segment(Q_1, S_1)
a_2 = Segment(S_1, N_1)
b_2 = Segment(N_1, T_1)
c_2 = Segment(R_1, P_1)
d_2 = Segment(E_1, L_1)

Tool: Esfera
Centro (O_1, O_2), C_1 y O
Input: B_1, D_1, C_1, O
Output: U_1, V_1, W_1, f_1, g_1, lugar1, lugar2, lugar3, lugar4, lugar5, lugar6, lugar7, lugar8, lugar9, lugar10, lugar11, lugar12, lugar13, lugar14, lugar15, lugar16, lugar17, lugar18

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A = Intersect(c, xAxis, 1)
B = Intersect(c, xAxis, 2)
a = Ray(O, A)
b = Ray(O, B)
d = OrthogonalLine(O, xAxis)
C = Intersect(c, d, 1)
e = Ray(C, A)
f = Ray(C, B)
u' = UnitVector(e)
v' = UnitVector(f)
D: C + u'
E: C + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G)
u_1 = Length(u)
v_1 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_1^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
f_1 = Circle(B_1, C_1)
e_1 = OrthogonalLine(B_1, xAxis)
g_1 = Circle(D_1, Segment[B_1, C_1])
l_1 = Line(B_1, xAxis)
U_1: O + (x(B_1) * v) - (y(B_1) * u)
V_1: O + (x(B_1) * v) + (y(D_1) * w)
W_1: O + (x(B_1) * v) - (y(B_1) * u) + (y(D_1) * w)
Z_1 = Point(f_1)
A_2: O + (x(Z_1) * v) - (y(Z_1) * u)
lugar1 = Locus(A_2, Z_1)
B_2 = Point(g_1)
C_2: O + (x(B_2) * v) + (y(B_2) * w)
lugar2 = Locus(C_2, B_2)
D_2, E_2 = Intersect(f_1, l_1)
F_2, G_2 = Intersect(f_1, e_1)
g_2 = Segment(D_2, E_2)
l_2 = Line(D_1, xAxis)
L_2, M_2 = Intersect(g_1, l_2)
I_2 = Rotate(M_2, 45*°, D_1)
K_2 = Rotate(M_2, 22.5*°, D_1)
O_2 = Rotate(M_2, 67.5*°, D_1)
k_2 = Line(U_1, xAxis)
P_2: O + (x(E_2) * v) - (y(E_2) * u)
Q_2: O + (x(G_2) * v) - (y(G_2) * u)
R_2 = Rotate(D_2, 45*°, B_1)
S_2: O + (x(D_2) * v) - (y(D_2) * u)
T_2: O + (x(R_2) * v) - (y(R_2) * u)
U_2: O + (x(F_2) * v) - (y(F_2) * u)
p_2 = Conic(P_2, Q_2, S_2, T_2, U_2)
V_2, W_2 = Intersect(p_2, k_2)
B_3, z_1, n_2, C_3 = ProyDiédricadeAenPH(W_2, O)
D_3, z_2, s_2, E_3 = ProyDiédricadeAenPH(V_2, O)
t_2 = Segment(B_3, D_3)
c_3 = CircleArc(B_1, D_3, B_3)
d_3 = CircleArc(B_1, B_3, D_3)
F_3 = Point(d_3)
a_3, b_3, e_3, f_3, g_3, h_3, G_3, H_3, I_3, J_3, K_3, L_3, M_3, N_3 = Puntoenesfera(F_3, B_1, D_1, C_1, O)
lugar3 = Locus(M_3, F_3)
O_3 = Point(c_3)
i_3, j_3, k_3, l_3, m_3, n_3, P_3, Q_3, R_3, S_3, T_3, U_3, V_3, W_3 = Puntoenesfera(O_3, B_1, D_1, C_1, O)
lugar4 = Locus(V_3, O_3)
p_3 = OrthogonalLine(K_2, xAxis)
Z_3 = Intersect(p_3, g_2)
q_3 = Circle(B_1, Z_3)
A_4, B_4 = Intersect(q_3, t_2)
r_3 = CircleArc(B_1, A_4, B_4)
C_4 = Point(r_3)
s_3, t_3, a_4, b_4, c_4, d_4, D_4, E_4, F_4, G_4, H_4, I_4, J_4, K_4 = Puntoenesfera(C_4, B_1, D_1, C_1, O)
lugar5 = Locus(J_4, C_4)
lugar6 = Locus(I_4, C_4)
e_4 = CircleArc(B_1, B_4, A_4)
L_4 = Point(e_4)
f_4, g_4, h_4, i_4, j_4, k_4, M_4, N_4, O_4, P_4, Q_4, R_4, S_4, T_4 = Puntoenesfera(L_4, B_1, D_1, C_1, O)
lugar7 = Locus(S_4, L_4)
lugar8 = Locus(R_4, L_4)
l_4 = OrthogonalLine(I_2, xAxis)
U_4 = Intersect(l_4, g_2)
p_4 = Circle(B_1, U_4)
V_4, W_4 = Intersect(p_4, t_2)
q_4 = CircleArc(B_1, V_4, W_4)
Z_4 = Point(q_4)
m_4, n_4, r_4, s_4, t_4, a_5, A_5, B_5, C_5, D_5, E_5, F_5, G_5, H_5 = Puntoenesfera(Z_4, B_1, D_1, C_1, O)
lugar9 = Locus(G_5, Z_4)
lugar10 = Locus(F_5, Z_4)
c_5 = CircleArc(B_1, W_4, V_4)
I_5 = Point(c_5)
b_5, d_5, e_5, f_5, g_5, h_5, J_5, K_5, L_5, M_5, N_5, O_5, P_5, Q_5 = Puntoenesfera(I_5, B_1, D_1, C_1, O)
lugar11 = Locus(O_5, I_5)
lugar12 = Locus(P_5, I_5)
i_5 = OrthogonalLine(O_2, xAxis)
R_5 = Intersect(i_5, g_2)
k_5 = Circle(B_1, R_5)
S_5, T_5 = Intersect(k_5, t_2)
p_5 = CircleArc(B_1, S_5, T_5)
U_5 = Point(p_5)
j_5, l_5, m_5, n_5, q_5, r_5, V_5, W_5, Z_5, A_6, B_6, C_6, D_6, E_6 = Puntoenesfera(U_5, B_1, D_1, C_1, O)
lugar13 = Locus(D_6, U_5)
lugar14 = Locus(C_6, U_5)
s_5 = CircleArc(B_1, T_5, S_5)
F_6 = Point(s_5)
t_5, a_6, b_6, c_6, d_6, e_6, G_6, H_6, I_6, J_6, K_6, L_6, M_6, N_6 = Puntoenesfera(F_6, B_1, D_1, C_1, O)
lugar15 = Locus(M_6, F_6)
lugar16 = Locus(L_6, F_6)
O_6 = Point(g_2)
f_6, g_6, h_6, i_6, j_6, k_6, P_6, Q_6, R_6, S_6, T_6, U_6, V_6, W_6 = Puntoenesfera(O_6, B_1, D_1, C_1, O)
lugar17 = Locus(V_6, O_6)
lugar18 = Locus(U_6, O_6)

Tool: Plano Oblicuo AVB (command PlanoOblicuoAVB)
AVB O
Input: A, V, B, O
Output: e, j, k, l, G, I, H, polígono1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C_3 = Intersect(c, d, 1)
e_2 = Ray(C_3, A_4)
f = Ray(C_3, B_3)
u' = UnitVector(e_2)
v' = UnitVector(f)
D: C_3 + u'
E: C_3 + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G_2 = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G_2)
u_1 = Length(u)
v_5 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_5^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
G: O + (x(A) * v) - (y(A) * u)
H: O + (x(B) * v) + (y(B) * w)
I: O + (x(V) * v)
e = Segment(A, V)
j = Segment(V, B)
k = Segment(G, I)
l = Segment(I, H)
m = Line(G, l)
n = Line(H, k)
J = Intersect(m, n)
polígono1, i_1, g_1, j_1, h_1 = Polygon(I, G, J, H)

Tool: P_2 desde P_1 (command P_2desdeP1)
P_1, AVB y O
Input: C, A, V, B, O
Output: N, R, A_1, B_1, s_1, b_2, a_2, t_1

e = Segment(A, V)
j = Segment(V, B)
r = Line(C, e)
K = Intersect(r, xAxis)
a_1 = OrthogonalLine(K, xAxis)
M = Intersect(a_1, j)
d_1 = OrthogonalLine(C, xAxis)
e_1 = Line(M, xAxis)
N = Intersect(d_1, e_1)
R, A_1, B_1, C_1, f_1, k_1, l_1, m_1 = ProyAxonométricadeA(C, N, O)
s_1 = Segment(C, N)
t_1 = Segment(N, M)
a_2 = Segment(M, K)
b_2 = Segment(K, C)

Tool: P_1 desde P_2 (command P_1desdeP2)
P_2, AVB y O
Input: H_1, A, V, B, O
Output: L_1, M_1, Q_1, P_1, l_2, i_2, j_2, k_2

e = Segment(A, V)
j = Segment(V, B)
c_2 = OrthogonalLine(H_1, xAxis)
f_2 = Line(H_1, xAxis)
J_1 = Intersect(f_2, j)
g_2 = OrthogonalLine(J_1, xAxis)
K_1 = Intersect(g_2, xAxis)
h_2 = Line(K_1, e)
L_1 = Intersect(c_2, h_2)
i_2 = Segment(H_1, J_1)
j_2 = Segment(J_1, K_1)
k_2 = Segment(K_1, L_1)
l_2 = Segment(L_1, H_1)
M_1, P_1, Q_1, R_1 = ProyAxonométricaSimplificadadeA(L_1, H_1, O)

Tool: Interseccion de dos planos (command Intersecciondedosplanos)
Plano, plano y O
Input: A, V, B, A', V', B', O
Output: k, l, n_1, q_1, p_1, h_1, i_1, j_1, k_1, A_1, N, R, I, B_1, C_1, D_1, E_1

c = Circle((((7 * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2) - 1)) * cos(30°)), 0), (cos(30°) * 2^(floor(sqrt(((97 * x(O)) - x(O)^(2) - 277) / 28) / 2))))
A_4 = Intersect(c, xAxis, 1)
B_3 = Intersect(c, xAxis, 2)
a = Ray(O, A_4)
b = Ray(O, B_3)
d = OrthogonalLine(O, xAxis)
C_3 = Intersect(c, d, 1)
e_2 = Ray(C_3, A_4)
f = Ray(C_3, B_3)
u' = UnitVector(e_2)
v' = UnitVector(f)
D: C_3 + u'
E: C_3 + v'
g = OrthogonalLine(D, xAxis)
h = OrthogonalLine(E, xAxis)
F = Intersect(g, a)
G_2 = Intersect(h, b)
u = Vector(O, F)
v = Vector(O, G_2)
u_1 = Length(u)
v_5 = Length(v)
w_1: sqrt(2 - u_1^(2) - v_5^(2))
w' = UnitVector(d)
w = Vector(O, O + (w' * w_1))
k: (x * (((((-y(A)) * y(B)) * y(A')) * (x(B') - x(V'))) + (((y(A') * y(B')) * y(A)) * (x(B) - x(V))))) - (y * ((((y(B) * (x(V) - x(A))) * y(A')) * (x(B') - x(V'))) - (((y(B') * (x(V') - x(A'))) * y(A)) * (x(B) - x(V))))) + ((((x(V) * y(A)) * y(B)) * y(A')) * (x(B') - x(V'))) - ((((x(V') * y(A')) * y(B')) * y(A)) * (x(B) - x(V))) = 0
l: (x * (((((-y(A)) * y(B)) * y(B')) * (x(V') - x(A'))) + (((y(A') * y(B')) * y(B)) * (x(V) - x(A))))) + (y * ((((y(A) * (x(B) - x(V))) * y(B')) * (x(V') - x(A'))) - (((y(A') * (x(B') - x(V'))) * y(B)) * (x(V) - x(A))))) + ((((x(V) * y(A)) * y(B)) * y(B')) * (x(V') - x(A'))) - ((((x(V') * y(A')) * y(B')) * y(B)) * (x(V) - x(A))) = 0
I = Intersect(k, xAxis)
N = Intersect(l, xAxis)
d_1 = OrthogonalLine(I, xAxis)
e_1 = OrthogonalLine(N, xAxis)
R = Intersect(d_1, l)
A_1 = Intersect(e_1, k)
B_1: O + (x(A_1) * v) - (y(A_1) * u)
C_1: O + (x(A_1) * v)
D_1: O + (x(R) * v) + (y(R) * w)
E_1: O + (x(R) * v)
h_1 = Segment(A_1, N)
i_1 = Segment(I, R)
j_1 = Segment(B_1, C_1)
k_1 = Segment(E_1, D_1)
n_1 = Line(B_1, D_1)
p_1 = Line(C_1, D_1)
q_1 = Line(E_1, B_1)