Rolling Square
Loading the math board and drawing, please wait…
In collections
GCSE Higher Ch8 Transformations & Constructions
Rolling Circles and Polygons
Rolling Circles and Polygons
Rolling Circles and Polygons
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
Polygon((-1, 0), (1, 0), 4) → poly1Rotate(poly1, If[a < π / 2, (-a), -1.5707963267948966], (1, 0)) → poly1'Rotate(poly1', If[π / 2 < a < (2 * π / 2), (-(a - π / 2)), -1.5707963267948966], (3, 0)) → poly1''Rotate(poly1'', If[(2 * π / 2) < a < (3 * π / 2), (-(a - (2 * π / 2))), -1.5707963267948966], (5, 0)) → poly1'''Rotate(poly1''', If[(3 * π / 2) < a < (4 * π / 2), (-(a - (3 * π / 2))), -1.5707963267948966], (7, 0)) → poly2Rotate(poly2, If[(4 * π / 2) < a < (5 * π / 2), (-(a - (4 * π / 2))), -1.5707963267948966], (9, 0)) → poly2'Rotate(poly2', If[(5 * π / 2) < a < (6 * π / 2), (-(a - (5 * π / 2))), -1.5707963267948966], (11, 0)) → poly2''Rotate((-1, 2), If[a < π / 2, (-a), -1.5707963267948966], (1, 0)) → A'Rotate(A', If[π / 2 < a < (2 * π / 2), (-(a - π / 2)), -1.5708], (3, 0)) → A''Rotate(A'', If[(3 * π / 2) < a < (4 * π / 2), (-(a - (3 * π / 2))), -1.5707963267948966], (7, 0)) → A'''Rotate(A''', If[(4 * π / 2) < a < (5 * π / 2), (-(a - (4 * π / 2))), -1.5707963267948966], (9, 0)) → BRotate(B, If[(5 * π / 2) < a < (6 * π / 2), (-(a - (5 * π / 2))), -1.5707963267948966], (11, 0)) → B'CurveCartesian(1 + (sqrt(8) * cos((3 * π / 4) - t)), (sqrt(8) * sin((3 * π / 4) - t)), t, 0, If[a < π / 2, a, 1.5708]) → bCurveCartesian(3 + (2 * cos(π / 2 - t)), (2 * sin(π / 2 - t)), t, 0, If[a < π, a - π / 2, 1.5708]) → cCurveCartesian(7 + (2 * cos((2 * π / 2) - t)), (2 * sin((2 * π / 2) - t)), t, 0, If[a < (4 * π / 2), a - (3 * π / 2), 1.5708]) → eCurveCartesian(9 + (sqrt(8) * cos((3 * π / 4) - t)), (sqrt(8) * sin((3 * π / 4) - t)), t, 0, If[a < (5 * π / 2), a - (4 * π / 2), 1.5708]) → fCurveCartesian(11 + (2 * cos(π / 2 - t)), (2 * sin(π / 2 - t)), t, 0, If[a < (3 * π), a - (5 * π / 2), 1.5708]) → g