Escherized Double Rotations

Escherized Double Rotations
Loading the math board and drawing, please wait…
2016-08-05 09:10
In collections Transformations
This example demonstrates the Escherization effect with 3, 4, 5, or 6-fold rotations. By applying rotation transformations, observe the changes in the shapes. Key mathematical concepts include rotation, transformation, and geometric construction. GeoGebra commands used include Rotate, Midpoint, PointIn, and Polygon. Suitable for middle school students and teachers for teaching and exploring geometric transformations.

GeoGebra Commands & Parameters

  1. Rotate(B, (360 * ° / n), A) → B'
  2. Midpoint(B, B') → C
  3. PointIn(Polygon[A, (2 * C) - A, B' + C - A, B']) → D
  4. PointIn(Polygon[A, (2 * C) - A, (2 * B') - A, B']) → E
  5. PointIn(Polygon[A, (2 * C) - A, B' + B' - A, B']) → F
  6. Rotate(D, 180°, C) → D'
  7. Rotate(E, 180°, C) → E'
  8. Rotate(F, 180°, C) → F'
  9. PointIn(Polygon[(2 * A) - B, B, B + B' - A, B' + A - B]) → G
  10. PointIn(Polygon[(2 * A) - B, B, B + B' - A, B' + A - B]) → H
  11. Rotate(G, (-360 * ° / n), A) → G'
  12. Rotate(H, (-360 * ° / n), A) → H'
  13. Polygon(A, G', B', H, G, H', B, F', E', D', D, E, F) → poly1, a, f, b', h, g, g', h', b, f', e', d', d, e
  14. Rotate(A, (360 * ° / n), A) → A'
  15. Rotate(G', (360 * ° / n), A) → G''
  16. Rotate(H', (360 * ° / n), A) → H''
  17. Rotate(B, (360 * ° / n), A) → B'_1
  18. Rotate(F', (360 * ° / n), A) → F''
  19. Rotate(E', (360 * ° / n), A) → E''
  20. Rotate(D', (360 * ° / n), A) → D''
  21. Rotate(D, (360 * ° / n), A) → D'_1
  22. Rotate(E, (360 * ° / n), A) → E'_1
  23. Rotate(F, (360 * ° / n), A) → F'_1
  24. Rotate(B', (360 * ° / n), A) → B''
  25. Rotate(H, (360 * ° / n), A) → H'_1
  26. Rotate(G, (360 * ° / n), A) → G'_1
  27. Polygon(A', G'', B'', H'_1, G'_1, H'', B'_1, F'', E'', D'', D'_1, E'_1, F'_1) → poly1', a', f'_1, b'', h'_1, g'_1, g'', h'', b'_1, f'', e'', d'', d'_1, e'_1
  28. Rotate(A', (360 * ° / n), A) → A''
  29. Rotate(G'', (360 * ° / n), A) → G'''
  30. Rotate(H'', (360 * ° / n), A) → H'''
  31. Rotate(B'_1, (360 * ° / n), A) → I
  32. Rotate(F'', (360 * ° / n), A) → F'''
  33. Rotate(E'', (360 * ° / n), A) → E'''
  34. Rotate(D'', (360 * ° / n), A) → D'''
  35. Rotate(D'_1, (360 * ° / n), A) → J
  36. Rotate(E'_1, (360 * ° / n), A) → K
  37. Rotate(F'_1, (360 * ° / n), A) → L
  38. Rotate(B'', (360 * ° / n), A) → B'''
  39. Rotate(H'_1, (360 * ° / n), A) → M
  40. Rotate(G'_1, (360 * ° / n), A) → N
  41. Polygon(A'', G''', B''', M, N, H''', I, F''', E''', D''', J, K, L) → poly1'', a'', l, b''', m, n_1, g''', h''', i, f''', e''', d''', j, k
  42. Rotate(A'', (360 * ° / n), A) → A'''
  43. Rotate(G''', (360 * ° / n), A) → O
  44. Rotate(H''', (360 * ° / n), A) → P
  45. Rotate(I, (360 * ° / n), A) → I'
  46. Rotate(F''', (360 * ° / n), A) → Q
  47. Rotate(E''', (360 * ° / n), A) → R
  48. Rotate(D''', (360 * ° / n), A) → S
  49. Rotate(J, (360 * ° / n), A) → J'
  50. Rotate(K, (360 * ° / n), A) → K'
  51. Rotate(L, (360 * ° / n), A) → L'
  52. Rotate(B''', (360 * ° / n), A) → T
  53. Rotate(M, (360 * ° / n), A) → M'
  54. Rotate(N, (360 * ° / n), A) → N'
  55. Polygon(A''', O, T, M', N', P, I', Q, R, S, J', K', L') → poly1''', a''', l', t, m', n', o, p, i', q, r, s, j', k'
  56. Rotate(A''', (360 * ° / n), A) → U
  57. Rotate(O, (360 * ° / n), A) → O'
  58. Rotate(P, (360 * ° / n), A) → P'
  59. Rotate(I', (360 * ° / n), A) → I''
  60. Rotate(Q, (360 * ° / n), A) → Q'
  61. Rotate(R, (360 * ° / n), A) → R'
  62. Rotate(S, (360 * ° / n), A) → S'
  63. Rotate(J', (360 * ° / n), A) → J''
  64. Rotate(K', (360 * ° / n), A) → K''
  65. Rotate(L', (360 * ° / n), A) → L''
  66. Rotate(T, (360 * ° / n), A) → T'
  67. Rotate(M', (360 * ° / n), A) → M''
  68. Rotate(N', (360 * ° / n), A) → N''
  69. Polygon(U, O', T', M'', N'', P', I'', Q', R', S', J'', K'', L'') → poly2, u, l'', t', m'', n'', o', p', i'', q', r', s', j'', k''
  70. Rotate(U, (360 * ° / n), A) → U'
  71. Rotate(O', (360 * ° / n), A) → O''
  72. Rotate(P', (360 * ° / n), A) → P''
  73. Rotate(I'', (360 * ° / n), A) → I'''
  74. Rotate(Q', (360 * ° / n), A) → Q''
  75. Rotate(R', (360 * ° / n), A) → R''
  76. Rotate(S', (360 * ° / n), A) → S''
  77. Rotate(J'', (360 * ° / n), A) → J'''
  78. Rotate(K'', (360 * ° / n), A) → K'''
  79. Rotate(L'', (360 * ° / n), A) → L'''
  80. Rotate(T', (360 * ° / n), A) → T''
  81. Rotate(M'', (360 * ° / n), A) → M'''
  82. Rotate(N'', (360 * ° / n), A) → N'''
  83. Polygon(U', O'', T'', M''', N''', P'', I''', Q'', R'', S'', J''', K''', L''') → poly2', u', l''', t'', m''', n''', o'', p'', i''', q'', r'', s'', j''', k'''
  84. First(polys, n) → list1
  85. Rotate(list1, 180°, C) → list1'
  86. Sequence(Rotate[list1', ((i * 360) * ° / n), A], i, 1, n) → list2
  87. FitPoly({(3, 3), (4, 1), (5, 0), (6, 0)}, 3) → f_1
  88. Sequence(Rotate[Sequence[Rotate[list1, ((j * 60))° + (((n - 2) * 60))°, B], j, 1, f_1(n)], ((i * 360) * ° / n), A], i, 1, n) → list3