Rainbow Rotation Illusion

Rainbow Rotation Illusion
Loading the math board and drawing, please wait…
2019-09-16 14:11
This example demonstrates a dynamic rainbow-colored rotation effect generated by rotating and transforming polygons. Core math concepts include rotation, vector, sequence, polygon construction, and parametric animation. Construction highlights from the summary involve commands like Rotate, Vector, Translate, Sequence, Append, and Polygon in GeoGebra. Suitable for high school mathematics teaching to understand the principles of transformation geometry and parametric animation.

GeoGebra Commands & Parameters

  1. Rotate((1, 0), (2 * π / limit), (0, 0)) → R1
  2. Rotate((1, 0), ((2 * π / limit) * 2), (0, 0)) → R2
  3. Rotate((1, 0), ((2 * π / limit) * 3), (0, 0)) → R3
  4. Rotate((1, 0), ((2 * π / limit) * 4), (0, 0)) → R4
  5. Rotate((1, 0), ((2 * π / limit) * 5), (0, 0)) → R5
  6. Rotate((1, 0), ((2 * π / limit) * 6), (0, 0)) → R6
  7. Rotate((1, 0), ((2 * π / limit) * 7), (0, 0)) → R7
  8. Rotate((1, 0), ((2 * π / limit) * 8), (0, 0)) → R8
  9. Rotate((1, 0), ((2 * π / limit) * 9), (0, 0)) → R9
  10. Rotate((1, 0), ((2 * π / limit) * 10), (0, 0)) → R10
  11. Rotate((1, 0), ((2 * π / limit) * 11), (0, 0)) → R11
  12. Rotate((1, 0), ((2 * π / limit) * 12), (0, 0)) → R12
  13. Rotate((1, 0), ((2 * π / limit) * 13), (0, 0)) → R13
  14. Rotate((1, 0), ((2 * π / limit) * 14), (0, 0)) → R14
  15. Rotate((1, 0), ((2 * π / limit) * 15), (0, 0)) → R15
  16. Rotate((1, 0), ((2 * π / limit) * 16), (0, 0)) → R16
  17. Rotate((1, 0), ((2 * π / limit) * 17), (0, 0)) → R17
  18. Rotate((1, 0), ((2 * π / limit) * 18), (0, 0)) → R18
  19. Rotate((1, 0), ((2 * π / limit) * 19), (0, 0)) → R19
  20. Rotate((1, 0), ((2 * π / limit) * 20), (0, 0)) → R20
  21. Rotate((1, 0), ((2 * π / limit) * 21), (0, 0)) → R21
  22. Rotate((1, 0), ((2 * π / limit) * 22), (0, 0)) → R22
  23. Rotate((1, 0), ((2 * π / limit) * 23), (0, 0)) → R23
  24. Rotate((1, 0), ((2 * π / limit) * 24), (0, 0)) → R24
  25. Rotate((1, 0), ((2 * π / limit) * 25), (0, 0)) → R25
  26. Rotate((1, 0), ((2 * π / limit) * 26), (0, 0)) → R26
  27. Rotate((1, 0), ((2 * π / limit) * 27), (0, 0)) → R27
  28. Rotate((1, 0), ((2 * π / limit) * 28), (0, 0)) → R28
  29. Rotate((1, 0), ((2 * π / limit) * 29), (0, 0)) → R29
  30. Rotate((1, 0), ((2 * π / limit) * 30), (0, 0)) → R30
  31. Rotate((1, 0), ((2 * π / limit) * 31), (0, 0)) → R31
  32. Rotate((1, 0), ((2 * π / limit) * 32), (0, 0)) → R32
  33. Rotate((1, 0), ((2 * π / limit) * 33), (0, 0)) → R33
  34. Rotate((1, 0), ((2 * π / limit) * 34), (0, 0)) → R34
  35. Rotate((1, 0), ((2 * π / limit) * 35), (0, 0)) → R35
  36. Rotate((1, 0), ((2 * π / limit) * 36), (0, 0)) → R36
  37. Rotate((1, 0), ((2 * π / limit) * 37), (0, 0)) → R37
  38. Rotate((1, 0), ((2 * π / limit) * 38), (0, 0)) → R38
  39. Rotate((1, 0), ((2 * π / limit) * 39), (0, 0)) → R39
  40. Rotate((1, 0), ((2 * π / limit) * 40), (0, 0)) → R40
  41. Rotate((1, 0), ((2 * π / limit) * 41), (0, 0)) → R41
  42. Rotate((1, 0), ((2 * π / limit) * 42), (0, 0)) → R42
  43. Rotate((1, 0), ((2 * π / limit) * 43), (0, 0)) → R43
  44. Rotate((1, 0), ((2 * π / limit) * 44), (0, 0)) → R44
  45. Rotate((1, 0), ((2 * π / limit) * 45), (0, 0)) → R45
  46. Rotate((1, 0), ((2 * π / limit) * 46), (0, 0)) → R46
  47. Rotate((1, 0), ((2 * π / limit) * 47), (0, 0)) → R47
  48. Rotate((1, 0), ((2 * π / limit) * 48), (0, 0)) → R48
  49. Rotate((1, 0), ((2 * π / limit) * 49), (0, 0)) → R49
  50. Rotate((1, 0), ((2 * π / limit) * 50), (0, 0)) → R50
  51. Rotate((1, 0), ((2 * π / limit) * 51), (0, 0)) → R51
  52. Rotate((1, 0), ((2 * π / limit) * 52), (0, 0)) → R52
  53. Rotate((1, 0), ((2 * π / limit) * 53), (0, 0)) → R53
  54. Rotate((1, 0), ((2 * π / limit) * 54), (0, 0)) → R54
  55. Rotate((1, 0), ((2 * π / limit) * 55), (0, 0)) → R55
  56. Rotate((1, 0), ((2 * π / limit) * 56), (0, 0)) → R56
  57. Rotate((1, 0), ((2 * π / limit) * 57), (0, 0)) → R57
  58. Rotate((1, 0), ((2 * π / limit) * 58), (0, 0)) → R58
  59. Rotate((1, 0), ((2 * π / limit) * 59), (0, 0)) → R59
  60. Rotate((1, 0), ((2 * π / limit) * 60), (0, 0)) → R60
  61. Rotate((1, 0), ((2 * π / limit) * 61), (0, 0)) → R61
  62. Rotate((1, 0), ((2 * π / limit) * 62), (0, 0)) → R62
  63. Rotate((1, 0), ((2 * π / limit) * 63), (0, 0)) → R63
  64. Rotate((1, 0), ((2 * π / limit) * 64), (0, 0)) → R64
  65. Rotate((1, 0), ((2 * π / limit) * 65), (0, 0)) → R65
  66. Rotate((1, 0), ((2 * π / limit) * 66), (0, 0)) → R66
  67. Rotate((1, 0), ((2 * π / limit) * 67), (0, 0)) → R67
  68. Rotate((1, 0), ((2 * π / limit) * 68), (0, 0)) → R68
  69. Rotate((1, 0), ((2 * π / limit) * 69), (0, 0)) → R69
  70. Rotate((1, 0), ((2 * π / limit) * 70), (0, 0)) → R70
  71. Rotate((1, 0), ((2 * π / limit) * 71), (0, 0)) → R71
  72. Rotate((1, 0), ((2 * π / limit) * 72), (0, 0)) → R72
  73. Rotate((1, 0), ((2 * π / limit) * 73), (0, 0)) → R73
  74. Rotate((1, 0), ((2 * π / limit) * 74), (0, 0)) → R74
  75. Rotate((1, 0), ((2 * π / limit) * 75), (0, 0)) → R75
  76. Rotate((1, 0), ((2 * π / limit) * 76), (0, 0)) → R76
  77. Rotate((1, 0), ((2 * π / limit) * 77), (0, 0)) → R77
  78. Rotate((1, 0), ((2 * π / limit) * 78), (0, 0)) → R78
  79. Rotate((1, 0), ((2 * π / limit) * 79), (0, 0)) → R79
  80. Rotate((1, 0), ((2 * π / limit) * 80), (0, 0)) → R80
  81. Vector((0, 0), R1) → v1
  82. Vector((0, 0), R2) → v2
  83. Vector((0, 0), R3) → v3
  84. Vector((0, 0), R4) → v4
  85. Vector((0, 0), R5) → v5
  86. Vector((0, 0), R6) → v6
  87. Vector((0, 0), R7) → v7
  88. Vector((0, 0), R8) → v8
  89. Vector((0, 0), R9) → v9
  90. Vector((0, 0), R10) → v10
  91. Vector((0, 0), R11) → v11
  92. Vector((0, 0), R12) → v12
  93. Vector((0, 0), R13) → v13
  94. Vector((0, 0), R14) → v14
  95. Vector((0, 0), R15) → v15
  96. Vector((0, 0), R16) → v16
  97. Vector((0, 0), R17) → v17
  98. Vector((0, 0), R18) → v18
  99. Vector((0, 0), R19) → v19
  100. Vector((0, 0), R20) → v20
  101. Vector((0, 0), R21) → v21
  102. Vector((0, 0), R22) → v22
  103. Vector((0, 0), R23) → v23
  104. Vector((0, 0), R24) → v24
  105. Vector((0, 0), R25) → v25
  106. Vector((0, 0), R26) → v26
  107. Vector((0, 0), R27) → v27
  108. Vector((0, 0), R28) → v28
  109. Vector((0, 0), R29) → v29
  110. Vector((0, 0), R30) → v30
  111. Vector((0, 0), R31) → v31
  112. Vector((0, 0), R32) → v32
  113. Vector((0, 0), R33) → v33
  114. Vector((0, 0), R34) → v34
  115. Vector((0, 0), R35) → v35
  116. Vector((0, 0), R36) → v36
  117. Vector((0, 0), R37) → v37
  118. Vector((0, 0), R38) → v38
  119. Vector((0, 0), R39) → v39
  120. Vector((0, 0), R40) → v40
  121. Vector((0, 0), R41) → v41
  122. Vector((0, 0), R42) → v42
  123. Vector((0, 0), R43) → v43
  124. Vector((0, 0), R44) → v44
  125. Vector((0, 0), R45) → v45
  126. Vector((0, 0), R46) → v46
  127. Vector((0, 0), R47) → v47
  128. Vector((0, 0), R48) → v48
  129. Vector((0, 0), R49) → v49
  130. Vector((0, 0), R50) → v50
  131. Vector((0, 0), R51) → v51
  132. Vector((0, 0), R52) → v52
  133. Vector((0, 0), R53) → v53
  134. Vector((0, 0), R54) → v54
  135. Vector((0, 0), R55) → v55
  136. Vector((0, 0), R56) → v56
  137. Vector((0, 0), R57) → v57
  138. Vector((0, 0), R58) → v58
  139. Vector((0, 0), R59) → v59
  140. Vector((0, 0), R60) → v60
  141. Vector((0, 0), R61) → v61
  142. Vector((0, 0), R62) → v62
  143. Vector((0, 0), R63) → v63
  144. Vector((0, 0), R64) → v64
  145. Vector((0, 0), R65) → v65
  146. Vector((0, 0), R66) → v66
  147. Vector((0, 0), R67) → v67
  148. Vector((0, 0), R68) → v68
  149. Vector((0, 0), R69) → v69
  150. Vector((0, 0), R70) → v70
  151. Vector((0, 0), R71) → v71
  152. Vector((0, 0), R72) → v72
  153. Vector((0, 0), R73) → v73
  154. Vector((0, 0), R74) → v74
  155. Vector((0, 0), R75) → v75
  156. Vector((0, 0), R76) → v76
  157. Vector((0, 0), R77) → v77
  158. Vector((0, 0), R78) → v78
  159. Vector((0, 0), R79) → v79
  160. Vector((0, 0), R80) → v80
  161. Translate(R1, ((t * f((2 * π / limit))) * v1)) → T1
  162. Translate(R2, ((t * f(((2 * π / limit) * 2))) * v2)) → T2
  163. Translate(R3, ((t * f(((2 * π / limit) * 3))) * v3)) → T3
  164. Translate(R4, ((t * f(((2 * π / limit) * 4))) * v4)) → T4
  165. Translate(R5, ((t * f(((2 * π / limit) * 5))) * v5)) → T5
  166. Translate(R6, ((t * f(((2 * π / limit) * 6))) * v6)) → T6
  167. Translate(R7, ((t * f(((2 * π / limit) * 7))) * v7)) → T7
  168. Translate(R8, ((t * f(((2 * π / limit) * 8))) * v8)) → T8
  169. Translate(R9, ((t * f(((2 * π / limit) * 9))) * v9)) → T9
  170. Translate(R10, ((t * f(((2 * π / limit) * 10))) * v10)) → T10
  171. Translate(R11, ((t * f(((2 * π / limit) * 11))) * v11)) → T11
  172. Translate(R12, ((t * f(((2 * π / limit) * 12))) * v12)) → T12
  173. Translate(R13, ((t * f(((2 * π / limit) * 13))) * v13)) → T13
  174. Translate(R14, ((t * f(((2 * π / limit) * 14))) * v14)) → T14
  175. Translate(R15, ((t * f(((2 * π / limit) * 15))) * v15)) → T15
  176. Translate(R16, ((t * f(((2 * π / limit) * 16))) * v16)) → T16
  177. Translate(R17, ((t * f(((2 * π / limit) * 17))) * v17)) → T17
  178. Translate(R18, ((t * f(((2 * π / limit) * 18))) * v18)) → T18
  179. Translate(R19, ((t * f(((2 * π / limit) * 19))) * v19)) → T19
  180. Translate(R20, ((t * f(((2 * π / limit) * 20))) * v20)) → T20
  181. Translate(R21, ((t * f(((2 * π / limit) * 21))) * v21)) → T21
  182. Translate(R22, ((t * f(((2 * π / limit) * 22))) * v22)) → T22
  183. Translate(R23, ((t * f(((2 * π / limit) * 23))) * v23)) → T23
  184. Translate(R24, ((t * f(((2 * π / limit) * 24))) * v24)) → T24
  185. Translate(R25, ((t * f(((2 * π / limit) * 25))) * v25)) → T25
  186. Translate(R26, ((t * f(((2 * π / limit) * 26))) * v26)) → T26
  187. Translate(R27, ((t * f(((2 * π / limit) * 27))) * v27)) → T27
  188. Translate(R28, ((t * f(((2 * π / limit) * 28))) * v28)) → T28
  189. Translate(R29, ((t * f(((2 * π / limit) * 29))) * v29)) → T29
  190. Translate(R30, ((t * f(((2 * π / limit) * 30))) * v30)) → T30
  191. Translate(R31, ((t * f(((2 * π / limit) * 31))) * v31)) → T31
  192. Translate(R32, ((t * f(((2 * π / limit) * 32))) * v32)) → T32
  193. Translate(R33, ((t * f(((2 * π / limit) * 33))) * v33)) → T33
  194. Translate(R34, ((t * f(((2 * π / limit) * 34))) * v34)) → T34
  195. Translate(R35, ((t * f(((2 * π / limit) * 35))) * v35)) → T35
  196. Translate(R36, ((t * f(((2 * π / limit) * 36))) * v36)) → T36
  197. Translate(R37, ((t * f(((2 * π / limit) * 37))) * v37)) → T37
  198. Translate(R38, ((t * f(((2 * π / limit) * 38))) * v38)) → T38
  199. Translate(R39, ((t * f(((2 * π / limit) * 39))) * v39)) → T39
  200. Translate(R40, ((t * f(((2 * π / limit) * 40))) * v40)) → T40
  201. Translate(R41, ((t * f(((2 * π / limit) * 41))) * v41)) → T41
  202. Translate(R42, ((t * f(((2 * π / limit) * 42))) * v42)) → T42
  203. Translate(R43, ((t * f(((2 * π / limit) * 43))) * v43)) → T43
  204. Translate(R44, ((t * f(((2 * π / limit) * 44))) * v44)) → T44
  205. Translate(R45, ((t * f(((2 * π / limit) * 45))) * v45)) → T45
  206. Translate(R46, ((t * f(((2 * π / limit) * 46))) * v46)) → T46
  207. Translate(R47, ((t * f(((2 * π / limit) * 47))) * v47)) → T47
  208. Translate(R48, ((t * f(((2 * π / limit) * 48))) * v48)) → T48
  209. Translate(R49, ((t * f(((2 * π / limit) * 49))) * v49)) → T49
  210. Translate(R50, ((t * f(((2 * π / limit) * 50))) * v50)) → T50
  211. Translate(R51, ((t * f(((2 * π / limit) * 51))) * v51)) → T51
  212. Translate(R52, ((t * f(((2 * π / limit) * 52))) * v52)) → T52
  213. Translate(R53, ((t * f(((2 * π / limit) * 53))) * v53)) → T53
  214. Translate(R54, ((t * f(((2 * π / limit) * 54))) * v54)) → T54
  215. Translate(R55, ((t * f(((2 * π / limit) * 55))) * v55)) → T55
  216. Translate(R56, ((t * f(((2 * π / limit) * 56))) * v56)) → T56
  217. Translate(R57, ((t * f(((2 * π / limit) * 57))) * v57)) → T57
  218. Translate(R58, ((t * f(((2 * π / limit) * 58))) * v58)) → T58
  219. Translate(R59, ((t * f(((2 * π / limit) * 59))) * v59)) → T59
  220. Translate(R60, ((t * f(((2 * π / limit) * 60))) * v60)) → T60
  221. Translate(R61, ((t * f(((2 * π / limit) * 61))) * v61)) → T61
  222. Translate(R62, ((t * f(((2 * π / limit) * 62))) * v62)) → T62
  223. Translate(R63, ((t * f(((2 * π / limit) * 63))) * v63)) → T63
  224. Translate(R64, ((t * f(((2 * π / limit) * 64))) * v64)) → T64
  225. Translate(R65, ((t * f(((2 * π / limit) * 65))) * v65)) → T65
  226. Translate(R66, ((t * f(((2 * π / limit) * 66))) * v66)) → T66
  227. Translate(R67, ((t * f(((2 * π / limit) * 67))) * v67)) → T67
  228. Translate(R68, ((t * f(((2 * π / limit) * 68))) * v68)) → T68
  229. Translate(R69, ((t * f(((2 * π / limit) * 69))) * v69)) → T69
  230. Translate(R70, ((t * f(((2 * π / limit) * 70))) * v70)) → T70
  231. Translate(R71, ((t * f(((2 * π / limit) * 71))) * v71)) → T71
  232. Translate(R72, ((t * f(((2 * π / limit) * 72))) * v72)) → T72
  233. Translate(R73, ((t * f(((2 * π / limit) * 73))) * v73)) → T73
  234. Translate(R74, ((t * f(((2 * π / limit) * 74))) * v74)) → T74
  235. Translate(R75, ((t * f(((2 * π / limit) * 75))) * v75)) → T75
  236. Translate(R76, ((t * f(((2 * π / limit) * 76))) * v76)) → T76
  237. Translate(R77, ((t * f(((2 * π / limit) * 77))) * v77)) → T77
  238. Translate(R78, ((t * f(((2 * π / limit) * 78))) * v78)) → T78
  239. Translate(R79, ((t * f(((2 * π / limit) * 79))) * v79)) → T79
  240. Translate(R80, ((t * f(((2 * π / limit) * 80))) * v80)) → T80
  241. Sequence((1^(1 / freq) * (cos(π / 2 / freq + (((2 * π) * k)) / freq) + (ί * sin(π / 2 / freq + (((2 * π) * k)) / freq)))), k, 0, freq - 1) → ZP
  242. Append(T1:T80, T1) → Points
  243. Polygon(Points) → poly1
  244. Rotate(ZP, s / freq, (0, 0)) → ZP'