a: 10
b: 10
c: 10
e = 3 (slider from 0 to 8, step 1)
r = 3.2 (slider from 0.01 to 7, step 0.01)
A: (a, b, c)
B: ((-a), b, c)
C: ((-a), (-b), c)
D: (a, (-b), c)
E: (a, b, (-c))
F: ((-a), b, (-c))
G: ((-a), (-b), (-c))
H: (a, (-b), (-c))
d = Sphere(A, r)
f = Sphere(B, r)
g = Sphere(C, r)
h = Sphere(D, r)
i = Sphere(E, r)
j = Sphere(F, r)
k = Sphere(G, r)
l = Sphere(H, r)
O: (0, 0, 0)
I: (1, 0, 0)
J: (0, 1, 0)
K: (0, 0, 1)
u = Vector(O, I)
v = Vector(O, J)
w = Vector(O, K)
A1: A + (r * u)
B1: B - (r * u)
C1: C - (r * u)
D1: D + (r * u)
E1: E + (r * u)
F1: F - (r * u)
G1: G - (r * u)
H1: H + (r * u)
A2: A + (r * v)
B2: B + (r * v)
C2: C - (r * v)
D2: D - (r * v)
E2: E + (r * v)
F2: F + (r * v)
G2: G - (r * v)
H2: H - (r * v)
A3: A - (r * u)
B3: B + (r * u)
C3: C + (r * u)
D3: D - (r * u)
E3: E - (r * u)
F3: F + (r * u)
G3: G + (r * u)
H3: H - (r * u)
A4: A - (r * v)
B4: B - (r * v)
C4: C + (r * v)
D4: D + (r * v)
E4: E - (r * v)
F4: F - (r * v)
G4: G + (r * v)
H4: H + (r * v)
A5: A + (r * w)
B5: B + (r * w)
C5: C + (r * w)
D5: D + (r * w)
E5: E - (r * w)
F5: F - (r * w)
G5: G - (r * w)
H5: H - (r * w)
A6: A - (r * w)
B6: B - (r * w)
C6: C - (r * w)
D6: D - (r * w)
E6: E + (r * w)
F6: F + (r * w)
G6: G + (r * w)
H6: H + (r * w)
q1, a1, a2, a3, a4 = Polygon(A1, A2, A3, A4)
q2, b1, b2, b3, b4 = Polygon(B1, B2, B3, B4)
q3, c1, c2, c3, c4 = Polygon(C1, C2, C3, C4)
q4, d1, d2, d3, d4 = Polygon(D1, D2, D3, D4)
q5, e1, e2, e3, e4 = Polygon(E1, E2, E3, E4)
q6, f1, f2, f3, f4 = Polygon(F1, F2, F3, F4)
q7, g1, g2, g3, g4 = Polygon(G1, G2, G3, G4)
q8, h1, h2, h3, h4 = Polygon(H1, H2, H3, H4)
m, faceA1A2A5, faceA2A3A5, faceA3A4A5, faceA1A4A5, arêteA1A5, arêteA2A5, arêteA3A5, arêteA4A5 = Pyramid(q1, A5)
n, faceA1A2A6, faceA2A3A6, faceA3A4A6, faceA1A4A6, arêteA1A6, arêteA2A6, arêteA3A6, arêteA4A6 = Pyramid(q1, A6)
o, faceB1B2B5, faceB2B3B5, faceB3B4B5, faceB1B4B5, arêteB1B5, arêteB2B5, arêteB3B5, arêteB4B5 = Pyramid(q2, B5)
p, faceB1B2B6, faceB2B3B6, faceB3B4B6, faceB1B4B6, arêteB1B6, arêteB2B6, arêteB3B6, arêteB4B6 = Pyramid(q2, B6)
q, faceC1C2C5, faceC2C3C5, faceC3C4C5, faceC1C4C5, arêteC1C5, arêteC2C5, arêteC3C5, arêteC4C5 = Pyramid(q3, C5)
s, faceC1C2C6, faceC2C3C6, faceC3C4C6, faceC1C4C6, arêteC1C6, arêteC2C6, arêteC3C6, arêteC4C6 = Pyramid(q3, C6)
t, faceD1D2D5, faceD2D3D5, faceD3D4D5, faceD1D4D5, arêteD1D5, arêteD2D5, arêteD3D5, arêteD4D5 = Pyramid(q4, D5)
a_1, faceD1D2D6, faceD2D3D6, faceD3D4D6, faceD1D4D6, arêteD1D6, arêteD2D6, arêteD3D6, arêteD4D6 = Pyramid(q4, D6)
b_1, faceE1E2E5, faceE2E3E5, faceE3E4E5, faceE1E4E5, arêteE1E5, arêteE2E5, arêteE3E5, arêteE4E5 = Pyramid(q5, E5)
c_1, faceE1E2E6, faceE2E3E6, faceE3E4E6, faceE1E4E6, arêteE1E6, arêteE2E6, arêteE3E6, arêteE4E6 = Pyramid(q5, E6)
d_1, faceF1F2F5, faceF2F3F5, faceF3F4F5, faceF1F4F5, arêteF1F5, arêteF2F5, arêteF3F5, arêteF4F5 = Pyramid(q6, F5)
e_1, faceF1F2F6, faceF2F3F6, faceF3F4F6, faceF1F4F6, arêteF1F6, arêteF2F6, arêteF3F6, arêteF4F6 = Pyramid(q6, F6)
f_1, faceG1G2G5, faceG2G3G5, faceG3G4G5, faceG1G4G5, arêteG1G5, arêteG2G5, arêteG3G5, arêteG4G5 = Pyramid(q7, G5)
g_1, faceG1G2G6, faceG2G3G6, faceG3G4G6, faceG1G4G6, arêteG1G6, arêteG2G6, arêteG3G6, arêteG4G6 = Pyramid(q7, G6)
h_1, faceH1H2H5, faceH2H3H5, faceH3H4H5, faceH1H4H5, arêteH1H5, arêteH2H5, arêteH3H5, arêteH4H5 = Pyramid(q8, H5)
i_1, faceH1H2H6, faceH2H3H6, faceH3H4H6, faceH1H4H6, arêteH1H6, arêteH2H6, arêteH3H6, arêteH4H6 = Pyramid(q8, H6)
j_1: x = a - e
k_1 = IntersectPath(j_1, faceA3A4A5)
L, M = Intersect(j_1, faceA3A4A5)
l_1 = IntersectPath(j_1, faceA2A3A5)
N, P = Intersect(j_1, faceA2A3A5)
m_1 = IntersectPath(j_1, faceA2A3A6)
Q, R = Intersect(j_1, faceA2A3A6)
n_1 = IntersectPath(j_1, faceA3A4A6)
S, T = Intersect(j_1, faceA3A4A6)
q9, n_2, r_1, t_1, s_1 = Polygon(N, R, T, S)
o_1, U, V, W, Z, faceNRVU, faceRTWV, faceSTWZ, faceNSZU, faceUVWZ, arêteNU, arêteRV, arêteTW, arêteSZ, arêteUV, arêteVW, arêteWZ, arêteUZ = Prism(q9, (2 * a) - (2 * e))
p_1: y = b - e
q_1: z = c - e
poly1, A_1, B_1, C_1, f_2, g_2, h_2 = IntersectPath(p_1, m)
i_2 = IntersectPath(p_1, faceA1A4A6)
D_1, E_1 = Intersect(p_1, faceA1A4A6)
j_2 = IntersectPath(p_1, faceA3A4A6)
F_1, G_1 = Intersect(p_1, faceA3A4A6)
poly2, poly3, H_1, I_1, J_1, K_1, Z_1, A_2, B_2, k_2, l_2, m_2, p_2, f_4, g_4, h_4 = IntersectPath(q_1, n)
q10, q_2, r_2, s_2, t_2 = Polygon(I_1, J_1, K_1, H_1)
q11, a_2, b_2, c_2, d_2 = Polygon(C_1, D_1, F_1, G_1)
u_1, L_1, M_1, N_1, O_1, face1, face2, face3, face4, face5, arête1, arête2, arête3, arête4, arête5, arête6, arête7, arête8 = Prism(q10, (2 * c) - (2 * e))
v_1, P_1, Q_1, R_1, S_1, face6, face7, face8, face9, face10, arête9, arête10, arête11, arête12, arête13, arête14, arête15, arête16 = Prism(q11, (-((2 * b) - (2 * e))))
e_2 = IntersectPath(j_1, d)
c_3 = IntersectPath(p_1, d)
d_3 = IntersectPath(q_1, d)
w_1, e_3, o_2 = Cylinder(e_2, (2 * a) - (2 * e))
u_2, f_3, v_2 = Cylinder(c_3, (2 * a) - (2 * e))
w_2, w_3, w_4 = Cylinder(d_3, (-((2 * a) - (2 * e))))
a_3 = Rotate(o_1, 90°, zAxis)
b_3 = Rotate(w_1, 90°, zAxis)
g_3 = Rotate(v_1, (-(90°)), zAxis)
h_3 = Rotate(u_2, (-(90°)), zAxis)
i_3 = Rotate(u_1, 90°, zAxis)
j_3 = Rotate(w_2, 90°, zAxis)
k_3 = Rotate(u_1, (-(90°)), zAxis)
l_3 = Rotate(w_2, (-(90°)), zAxis)
m_3 = Rotate(u_1, 180°, zAxis)
n_3 = Rotate(w_2, 180°, zAxis)
o_3 = Rotate(o_1, (-(90°)), xAxis)
p_3 = Rotate(w_1, (-(90°)), xAxis)
q_3 = Rotate(o_1, 180°, xAxis)
r_3 = Rotate(w_1, 180°, xAxis)
s_3 = Rotate(v_1, 90°, yAxis)
t_3 = Rotate(u_2, 90°, yAxis)
u_3 = Rotate(v_1, (-(180°)), yAxis)
v_3 = Rotate(u_2, (-(180°)), yAxis)
U_1, V_1 = Intersect(c_3, e_2)
voir = 2 (slider from 1 to 2, step 1)
tube: (sgn(r - e) + 1) / 2
U_2: ((-x(U_1)), y(U_1), z(U_1))
U_3: ((-x(U_1)), (-y(U_1)), z(U_1))
U_4: (x(U_1), (-y(U_1)), z(U_1))
V_2: ((-x(V_1)), y(V_1), z(V_1))
V_3: ((-x(V_1)), (-y(V_1)), z(V_1))
V_4: (x(V_1), (-y(V_1)), z(V_1))
C_2 = PointIn(g)
D_2 = PointIn(h)
q12, i_4, j_4, k_4, l_4 = Polygon(U_1, U_2, U_3, U_4)
E_2 = PointIn(h)
q13, m_4, n_4, p_4, v_4 = Polygon(V_1, V_2, V_3, V_4)
q12' = Rotate(q12, (-(90°)), xAxis)
q12'_1 = Rotate(q12, 90°, xAxis)
q12'_2 = Rotate(q12, (-(180°)), xAxis)
q13' = Rotate(q13, (-(90°)), xAxis)
q13'_1 = Rotate(q13, 90°, xAxis)
q13'_2 = Rotate(q13, (-(180°)), xAxis)
q12'_3 = Rotate(q12, (-(90°)), yAxis)
q12'_4 = Rotate(q12, 90°, yAxis)
q13'_3 = Rotate(q13, (-(90°)), yAxis)
q13'_4 = Rotate(q13, 90°, yAxis)
rac2: nroot(2,2)
surfs: (sgn(r - (e * rac2)) + 1) / 2
W_1: (a - e, b - e, c + r - (2 * e))
W_1': (a - e, b - e, c - r + (2 * e))
W_2: ((-x(W_1)), y(W_1), z(W_1))
W_3: ((-x(W_1)), (-y(W_1)), z(W_1))
W_4: (x(W_1), (-y(W_1)), z(W_1))
W_2': ((-x(W_1')), y(W_1'), z(W_1'))
W_3': ((-x(W_1')), (-y(W_1')), z(W_1'))
W_4': (x(W_1'), (-y(W_1')), z(W_1'))
T_1 = PointIn(faceD1D2D5)
F_2 = PointIn(faceSTWZ)
G_2 = PointIn(faceC2C3C6)
H_2 = PointIn(faceD1D2D5)
I_2 = PointIn(faceD1D2D5)
q14, q_4, r_4, s_4, t_4 = Polygon(W_1', W_2', W_3', W_4')
J_2 = PointIn(faceC2C3C5)
K_2 = Point(arêteD2D5)
q15, a_4, b_4, c_4, d_4 = Polygon(W_1, W_2, W_3, W_4)
q14' = Rotate(q14, (-(90°)), xAxis)
q14'_1 = Rotate(q14, 90°, xAxis)
q14'_2 = Rotate(q14, (-(180°)), xAxis)
q14'_3 = Rotate(q14, (-(90°)), yAxis)
q14'_4 = Rotate(q14, 90°, yAxis)
q15' = Rotate(q15, (-(90°)), xAxis)
q15'_1 = Rotate(q15, 90°, xAxis)
q15'_2 = Rotate(q15, (-(180°)), xAxis)
q15'_3 = Rotate(q15, (-(90°)), yAxis)
q15'_4 = Rotate(q15, 90°, yAxis)
surf0: (sgn(r - (2 * e)) + 1) / 2