A = Intersect(zAxis, xAxis)
a = OrthogonalPlane(A, yAxis)
B = Point(xAxis)
C = PointIn(a)
D = (-2, -1, 2)
E = (-2, -1, 0)
poly1, c, d, e, b = Polygon(C, D, E, B)
F = Point(xAxis)
G = Point(xAxis)
H = Point(xAxis)
u = Vector(B, G)
poly1' = Translate(poly1, u)
f, I, J, K, L, faceCDJI, faceDEKJ, faceBEKL, faceBCIL, faceIJKL, arêteCI, arêteDJ, arêteEK, arêteBL, arêteIJ, arêteJK, arêteKL, arêteIL = Prism(poly1, 1.8)
g, M, N, O, P, face1, face3, face4, face2, faceMNOP, arête1, arête2, arête3, arête4, arêteMN, arêteNO, arêteOP, arêteMP = Prism(poly1', 1.8)
Q = Intersect(arêteMN, arêteMP)
R = Intersect(arête2, arêteNO)
poly2, c_1, q, r, d_1 = Polygon(C, Q, R, D)
S = Intersect(arête3, poly1')
T = Point(arête2)
poly3, j, t, s, k = Polygon(J, T, S, K)