Rubik's Cube Construction

Rubik's Cube Construction
Loading the math board and drawing, please wait…
2017-04-28 03:40
This example demonstrates the geometric construction of a Rubik's Cube. Key mathematical concepts include solid geometry, specifically polyhedra and spatial geometry. Using GeoGebra commands such as Intersect and Point, the various faces and edges of the cube are constructed. Suitable for high school or university-level solid geometry studies.

GeoGebra Commands & Parameters

  1. Intersect(zAxis, yAxis) → A
  2. Point(yAxis) → B
  3. Point(Circle[B, Distance[A, B], Segment[A, B]]) → C
  4. Cube(A, B, C) → a, D, faceCDHG, faceEFGH, edgeAD, edgeAB, edgeBC, edgeCD_1, edgeAE, edgeDH, edgeEH, edgeEF, E, edgeBF, edgeFG, edgeCG, edgeGH, F, G, H, faceABCD, faceADHE, faceABFE, faceBCGF
  5. Point(yAxis) → I
  6. Point(Circle[I, Distance[B, I], Segment[B, I]]) → J
  7. Cube(B, I, J) → b, K, faceJKON, faceLMNO, edgeBK, edgeBI, edgeIJ, edgeJK, edgeBL, edgeKO, edgeLO, edgeLM, L, edgeIM, edgeMN, edgeJN, edgeNO, M, N, O, faceBIJK, faceBKOL, faceBIML, faceIJNM
  8. Point(yAxis) → P
  9. Point(Circle[P, Distance[I, P], Segment[I, P]]) → Q
  10. Cube(I, P, Q) → c, R, faceQRVU, faceSTUV, edgeIR, edgeIP, edgePQ, edgeQR, edgeIS, edgeRV, edgeSV, edgeST_1, S, edgePT, edgeTU, edgeQU, edgeUV, T, U, V, faceIPQR, faceIRVS, faceIPTS, facePQUT
  11. Point(zAxis) → W
  12. Point(Circle[E, Distance[W, E], Segment[W, E]]) → Z
  13. Cube(W, E, Z) → d, A_1, face5, face6, edge2, edgeEW, edgeEZ, edge4, edge3, edge6, edge8, edge7, B_1, edge1, edge9, edge5, edge10, C_1, D_1, E_1, face1, face4, face2, face3
  14. Point(Circle[S, Distance[C_1, S], Segment[C_1, S]]) → F_1
  15. Cube(C_1, S, F_1) → e, G_1, face11, face12, edge14, edge11, edge12, edge16, edge15, edge18, edge20, edge19, H_1, edge13, edge21, edge17, edge22, I_1, J_1, K_1, face7, face10, face8, face9
  16. Point(Circle[T, Distance[S, T], Segment[S, T]]) → L_1
  17. Cube(S, T, L_1) → f, M_1, face17, face18, edge23, edgeST, edge25, edge27, edge24, edge29, edge31, edge30, N_1, edge26, edge32, edge28, edge33, O_1, P_1, Q_1, face13, face15, face14, face16
  18. Point(Circle[H_1, Distance[W, H_1], Segment[W, H_1]]) → R_1
  19. Cube(W, H_1, R_1) → g, S_1, face23, face24, edge35, edge34, edge37, edge39, edge36, edge41, edge43, edge42, T_1, edge38, edge44, edge40, edge45, U_1, V_1, W_1, face19, face21, face20, face22
  20. Point(Circle[N_1, Distance[H_1, N_1], Segment[H_1, N_1]]) → Z_1
  21. Cube(H_1, N_1, Z_1) → h, A_2, face29, face30, edge47, edge46, edge49, edge51, edge48, edge53, edge55, edge54, B_2, edge50, edge56, edge52, edge57, C_2, D_2, E_2, face25, face27, face26, face28
  22. Point(Circle[O_1, Distance[N_1, O_1], Segment[N_1, O_1]]) → F_2
  23. Cube(N_1, O_1, F_2) → i, G_2, face35, face36, edge59, edge58, edge61, edge63, edge60, edge65, edge67, edge66, H_2, edge62, edge68, edge64, edge69, I_2, J_2, K_2, face31, face33, face32, face34
  24. Intersect(edgeCD_1, edgeDH) → L_2
  25. Point(xAxis) → M_2
  26. Point(Circle[M_2, Distance[L_2, M_2], Segment[L_2, M_2]]) → N_2
  27. Cube(L_2, M_2, N_2) → j, O_2, face41, face42, edge71, edge70, edge73, edge75, edge72, edge77, edge79, edge78, P_2, edge74, edge80, edge76, edge81, Q_2, R_2, S_2, face37, face39, face38, face40
  28. Point(xAxis) → T_2
  29. Point(Circle[T_2, Distance[M_2, T_2], Segment[M_2, T_2]]) → U_2
  30. Cube(M_2, T_2, U_2) → k, V_2, face47, face48, edge83, edge82, edge85, edge87, edge84, edge89, edge91, edge90, W_2, edge86, edge92, edge88, edge93, Z_2, A_3, B_3, face43, face45, face44, face46
  31. Point(Circle[T_2, Distance[Z_2, T_2], Segment[Z_2, T_2]]) → C_3
  32. Cube(Z_2, T_2, C_3) → l, D_3, face53, face54, edge97, edge94, edge95, edge99, edge98, edge101, edge103, edge102, E_3, edge96, edge104, edge100, edge105, F_3, G_3, H_3, face49, face52, face50, face51
  33. Point(Circle[N_2, Distance[O_2, N_2], Segment[O_2, N_2]]) → K_3
  34. Cube(O_2, N_2, K_3) → m, L_3, face59, face60, edge109, edge106, edge107, edge111, edge110, edge113, edge115, edge114, M_3, edge108, edge116, edge112, edge117, N_3, O_3, P_3, face55, face58, face56, face57
  35. Point(Circle[U_2, Distance[N_2, U_2], Segment[N_2, U_2]]) → Q_3
  36. Cube(N_2, U_2, Q_3) → n, R_3, face65, face66, edge119, edge118, edge121, edge123, edge120, edge125, edge127, edge126, S_3, edge122, edge128, edge124, edge129, T_3, U_3, V_3, face61, face63, face62, face64
  37. Point(Circle[V_3, Distance[P_3, V_3], Segment[P_3, V_3]]) → I_3
  38. Cube(P_3, V_3, I_3) → o, J_3, face71, face72, edge131, edge130, edge133, edge135, edge132, edge137, edge139, edge138, W_3, edge134, edge140, edge136, edge141, Z_3, A_4, B_4, face67, face69, face68, face70
  39. Point(Circle[U_3, Distance[V_3, U_3], Segment[V_3, U_3]]) → C_4
  40. Cube(V_3, U_3, C_4) → p, D_4, face77, face78, edge145, edge142, edge143, edge147, edge146, edge149, edge151, edge150, E_4, edge144, edge152, edge148, edge153, F_4, G_4, H_4, face73, face76, face74, face75
  41. Intersect(edgeQU, edgePQ) → I_4
  42. Point(edgeQR) → J_4
  43. Point(Circle[J_4, Distance[I_4, J_4], Segment[I_4, J_4]]) → K_4
  44. Cube(I_4, J_4, K_4) → q, L_4, face83, face84, edge155, edge154, edge157, edge159, edge156, edge161, edge163, edge162, M_4, edge158, edge164, edge160, edge165, N_4, O_4, P_4, face79, face81, face80, face82
  45. Point(Circle[M_4, Distance[N_4, M_4], Segment[N_4, M_4]]) → Q_4
  46. Cube(N_4, M_4, Q_4) → r, R_4, face89, face90, edge169, edge166, edge167, edge171, edge170, edge173, edge175, edge174, S_4, edge168, edge176, edge172, edge177, T_4, U_4, V_4, face85, face88, face86, face87
  47. Point(Circle[R_4, Distance[N_4, R_4], Segment[N_4, R_4]]) → W_4
  48. Cube(N_4, R_4, W_4) → s, Z_4, face95, face96, edge179, edge178, edge181, edge183, edge180, edge185, edge187, edge186, A_5, edge182, edge188, edge184, edge189, B_5, C_5, D_5, face91, face93, face92, face94
  49. Intersect(edge28, edge159) → E_5
  50. Point(Circle[E_5, Distance[T_4, E_5], Segment[T_4, E_5]]) → F_5
  51. Cube(T_4, E_5, F_5) → t, G_5, face101, face102, edge191, edge190, edge193, edge195, edge192, edge197, edge199, edge198, H_5, edge194, edge200, edge196, edge201, I_5, J_5, K_5, face97, face99, face98, face100
  52. Point(Circle[U_4, Distance[T_4, U_4], Segment[T_4, U_4]]) → L_5
  53. Cube(T_4, U_4, L_5) → u, M_5, face107, face108, edge203, edge202, edge205, edge207, edge204, edge209, edge211, edge210, N_5, edge206, edge212, edge208, edge213, O_5, P_5, Q_5, face103, face105, face104, face106
  54. Intersect(edge208, edge188) → R_5
  55. Intersect(edge128, edge189) → S_5
  56. Point(Circle[S_5, Distance[R_5, S_5], Segment[R_5, S_5]]) → T_5
  57. Cube(R_5, S_5, T_5) → v, U_5, face113, face114, edge215, edge214, edge217, edge219, edge216, edge221, edge223, edge222, V_5, edge218, edge224, edge220, edge225, W_5, Z_5, A_6, face109, face111, face110, face112
  58. Intersect(edge201, edge196) → B_6
  59. Intersect(edge64, edge61) → C_6
  60. Point(Circle[C_6, Distance[B_6, C_6], Segment[B_6, C_6]]) → D_6
  61. Cube(B_6, C_6, D_6) → w, E_6, face119, face120, edge227, edge226, edge229, edge231, edge228, edge233, edge235, edge234, F_6, edge230, edge236, edge232, edge237, G_6, H_6, I_6, face115, face117, face116, face118
  62. Intersect(edge222, edge223) → J_6
  63. Intersect(edge210, edge212) → K_6
  64. Point(Circle[K_6, Distance[J_6, K_6], Segment[J_6, K_6]]) → L_6
  65. Intersect(edge212, edge223) → M_6
  66. Intersect(edge212, edge210) → N_6
  67. Point(Circle[N_6, Distance[M_6, N_6], Segment[M_6, N_6]]) → O_6
  68. Cube(M_6, N_6, O_6) → a_1, P_6, face125, face126, edge239, edge238, edge241, edge243, edge240, edge245, edge247, edge246, Q_6, edge242, edge248, edge244, edge249, R_6, S_6, T_6, face121, face123, face122, face124
  69. Intersect(edge239, edge240) → U_6
  70. Point(Circle[U_6, Distance[P_6, U_6], Segment[P_6, U_6]]) → V_6
  71. Cube(P_6, U_6, V_6) → b_1, W_6, face131, face132, edge251, edge250, edge253, edge255, edge252, edge257, edge259, edge258, Z_6, edge254, edge260, edge256, edge261, A_7, B_7, C_7, face127, face129, face128, face130
  72. Intersect(edge235, edge57) → D_7
  73. Point(edge139) → E_7
  74. Point(Circle[E_7, Distance[D_7, E_7], Segment[D_7, E_7]]) → F_7
  75. Cube(D_7, E_7, F_7) → c_1, G_7, face137, face138, edge263, edge262, edge265, edge267, edge264, edge269, edge271, edge270, H_7, edge266, edge272, edge268, edge273, I_7, J_7, K_7, face133, face135, face134, face136
  76. Point(edge158) → L_7
  77. Intersect(edge158, edge154) → M_7
  78. Point(Circle[M_7, Distance[L_7, M_7], Segment[L_7, M_7]]) → N_7
  79. Cube(L_7, M_7, N_7) → d_1, O_7, face143, face144, edge275, edge274, edge277, edge279, edge276, edge281, edge283, edge282, P_7, edge278, edge284, edge280, edge285, Q_7, R_7, S_7, face139, face141, face140, face142