Rolling Square

Rolling Square
Loading the math board and drawing, please wait…
2015-08-07 04:39
This example demonstrates the dynamic process of a square rolling on a plane. Key mathematical concepts include geometric transformations and loci. Using commands like Polygon, Rotate, and CurveCartesian, it illustrates the trajectories of the square's vertices as it rolls. Suitable for middle school and above students to learn about geometric transformations and loci.

GeoGebra Commands & Parameters

  1. Polygon((-1, 0), (1, 0), 4) → poly1
  2. Rotate(poly1, If[a < π / 2, (-a), -1.5707963267948966], (1, 0)) → poly1'
  3. Rotate(poly1', If[π / 2 < a < (2 * π / 2), (-(a - π / 2)), -1.5707963267948966], (3, 0)) → poly1''
  4. Rotate(poly1'', If[(2 * π / 2) < a < (3 * π / 2), (-(a - (2 * π / 2))), -1.5707963267948966], (5, 0)) → poly1'''
  5. Rotate(poly1''', If[(3 * π / 2) < a < (4 * π / 2), (-(a - (3 * π / 2))), -1.5707963267948966], (7, 0)) → poly2
  6. Rotate(poly2, If[(4 * π / 2) < a < (5 * π / 2), (-(a - (4 * π / 2))), -1.5707963267948966], (9, 0)) → poly2'
  7. Rotate(poly2', If[(5 * π / 2) < a < (6 * π / 2), (-(a - (5 * π / 2))), -1.5707963267948966], (11, 0)) → poly2''
  8. Rotate((-1, 2), If[a < π / 2, (-a), -1.5707963267948966], (1, 0)) → A'
  9. Rotate(A', If[π / 2 < a < (2 * π / 2), (-(a - π / 2)), -1.5708], (3, 0)) → A''
  10. Rotate(A'', If[(3 * π / 2) < a < (4 * π / 2), (-(a - (3 * π / 2))), -1.5707963267948966], (7, 0)) → A'''
  11. Rotate(A''', If[(4 * π / 2) < a < (5 * π / 2), (-(a - (4 * π / 2))), -1.5707963267948966], (9, 0)) → B
  12. Rotate(B, If[(5 * π / 2) < a < (6 * π / 2), (-(a - (5 * π / 2))), -1.5707963267948966], (11, 0)) → B'
  13. CurveCartesian(1 + (sqrt(8) * cos((3 * π / 4) - t)), (sqrt(8) * sin((3 * π / 4) - t)), t, 0, If[a < π / 2, a, 1.5708]) → b
  14. CurveCartesian(3 + (2 * cos(π / 2 - t)), (2 * sin(π / 2 - t)), t, 0, If[a < π, a - π / 2, 1.5708]) → c
  15. CurveCartesian(7 + (2 * cos((2 * π / 2) - t)), (2 * sin((2 * π / 2) - t)), t, 0, If[a < (4 * π / 2), a - (3 * π / 2), 1.5708]) → e
  16. CurveCartesian(9 + (sqrt(8) * cos((3 * π / 4) - t)), (sqrt(8) * sin((3 * π / 4) - t)), t, 0, If[a < (5 * π / 2), a - (4 * π / 2), 1.5708]) → f
  17. CurveCartesian(11 + (2 * cos(π / 2 - t)), (2 * sin(π / 2 - t)), t, 0, If[a < (3 * π), a - (5 * π / 2), 1.5708]) → g