A = (0, 0, 0)
B = (6, 0, 0)
C = Point(Circle[B, Distance[A, B], Segment[A, B]])
a_1, D, E, F, G, H, faceABCD, faceADHE, faceABFE, faceBCGF, faceCDHG, faceEFGH, arêteAD, arêteAB, arêteBC, arêteCD, arêteAE, arêteDH, arêteEH, arêteEF, arêteBF, arêteFG, arêteCG, arêteGH = Cube(A, B, C)
a = 0.47 (slider from 0 to 1, step 0.01)
M: A + (a * Vector[A, B])
N: A + (a * Vector[A, D])
P: G + (a * Vector[G, B])
Q: D + (a * Vector[D, E])
b, faceMNP, faceNPQ, faceMNQ, faceMPQ, arêteNP, arêteMN, arêteMP, arêtePQ, arêteNQ, arêteMQ = Pyramid(P, N, M, Q)
angle_{NMP} = Angle(N, M, P)