彩虹旋转错觉

彩虹旋转错觉
几何画板及绘图内容加载中,请稍等……
2019-09-16 14:11
①本范例演示了通过旋转和变换多边形生成的动态彩虹色旋转效果;②涉及的核心数学概念包括旋转、向量、数列、多边形构造及参数化动画;③作图要点提炼自构造摘要,使用了Rotate(旋转)、Vector(向量)、Translate(平移)、Sequence(数列)、Append(追加)、Polygon(多边形)等GeoGebra命令与对象;④适合高中数学教学,用于理解变换几何与参数化动画的原理。

GeoGebra 命令及参数

  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'