Geometric construction and parametric curves for a New Year design

Geometric construction and parametric curves for a New Year design
Loading the math board and drawing, please wait…
2020-12-31 16:53
This example demonstrates how to combine circles, lines, and intersections with parameter-driven point generation to produce geometric curves and trajectories that can serve as a New Year themed design. The key math ideas include unit-circle style reasoning, parametric curves (placing points by a varying angle/parameter), vector and line construction to guide the shape, and angle/period handling (including modular behavior) to obtain repeating symmetry. Construction highlights: Circle to set the baseline curve; Point and Intersect to obtain critical points; Segment and Line for connections and reference geometry; Sequence to generate an ordered set of points from the parameter progression; OrthogonalLine and Vector to construct perpendicular constraints and directional control; Mod together with angle-related variables (e.g., ang and related parameters) to enforce periodic/rotational effects; plus additional objects for labeling and presentation (e.g., text/image). Suitable for middle/high school geometry, lessons on parametric modeling, and GeoGebra graphing practice.

GeoGebra Commands & Parameters

  1. Circle(A, a) → c
  2. Point(c) → B
  3. Segment(A, B) → b
  4. Circle(A, m) → d
  5. Intersect(d, b) → C, H
  6. Sequence(Rotate[B, (i * ang), A], i, 0, nn) → liste1
  7. Sequence(Rotate[C, (i * ang) + ang / 2, A], i, 0, nn) → liste3
  8. OrthogonalLine(A, b) → e
  9. Vector(A, B) → u
  10. Sequence(Semicircle[Element[liste1, i], Element[liste1, i + 1]], i, 0, 30) → liste8
  11. Sequence(Segment[A, Element[liste1, i]], i, 0, nn) → liste2
  12. Sequence(Semicircle[Element[liste3, i], Element[liste3, i + 1]], i, 0, nn) → liste4
  13. Sequence(Semicircle[Element[liste1, i], Element[liste3, i]], i, 0, nn) → liste5
  14. Sequence(CircumcircleArc[Element[liste1, i], A, Element[liste1, i + 1]], i, 0, nn) → liste6
  15. Sequence(Semicircle[Element[liste1, i], Element[liste3, i + 1]], i, 0, nn) → liste9
  16. Circle(A, f) → g
  17. Line(A, yAxis) → i
  18. Segment(E, A) → j
  19. Circle(E, If[(2 * a) < j, (2 * a), j]) → k
  20. Intersect(k, i) → F, G
  21. Circle(I, o) → p
  22. Point(p) → J
  23. Circle(I, m) → q
  24. Segment(I, J) → l
  25. Circle(I, f) → r
  26. Sequence(Rotate[J, (i * ang), I], i, 0, (2 * nn)) → L1
  27. Sequence(Segment[I, Element[L1, i]], i, 0, nn) → L2
  28. Intersect(q, l) → K,
  29. Sequence(Rotate[K, (i * ang) + ang / 2, I], i, 0, nn) → L3
  30. Sequence(Semicircle[Element[L3, i], Element[L3, i + 1]], i, 0, nn) → L4
  31. Sequence(Semicircle[Element[L1, i], Element[L3, i]], i, 0, nn) → L5
  32. Sequence(CircumcircleArc[Element[L1, i], I, Element[L1, i + 1]], i, 0, nn) → L6
  33. Intersect(r, l) → L,
  34. Sequence(Rotate[L, (i * ang) + ang / 2, I], i, 0, nn) → L7
  35. Sequence(Semicircle[Element[L1, i], Element[L1, i + 1]], i, 0, 30) → L8
  36. Sequence(Semicircle[Element[L1, i], Element[L3, i + 1]], i, 0, nn) → L9
  37. Sequence(Semicircle[Element[L7, i], Element[L7, i + 1]], i, 0, nn) → L11_2
  38. Sequence(Semicircle[Element[L1, i], Element[L7, i]], i, 0, nn) → liste10
  39. Sequence(Semicircle[Element[L1, i], Element[L7, i + 1]], i, 0, nn) → L11
  40. Circle(N, (2 * v)) → s
  41. Point(s) → O
  42. Segment(N, O) → t
  43. Circle(N, (m + v) / 2) → c_1
  44. Intersect(c_1, t) → P,
  45. Sequence(Rotate[P, (i * ang), N], i, 0, nn) → liste13
  46. Segment(I, M) → a_1
  47. Circle(M, If[(2 * o) < a_1, (2 * o), a_1]) → d_1
  48. Intersect(d_1, a_1) → Q,
  49. Segment(N, R) → b_1
  50. Circle(R, If[(5 * v) < b_1, (5 * v), b_1]) → e_1
  51. Intersect(e_1, b_1) → S,
  52. Circle(T, w) → f_1
  53. Point(f_1) → U
  54. Sequence(Rotate[U, (i * ang), T], i, 0, nn, 0.2) → liste14
  55. Sequence(Rotate[A, (i * ang), O], i, 0, nn, 0.9) → liste15
  56. Sequence(Rotate[O, (i * ang), N], i, 0, nn, 0.3) → liste11
  57. Sequence(Segment[N, Element[liste11, i]], i, 0, (5 * nn)) → liste16
  58. Sequence(Segment[T, Element[liste14, i]], i, 0, (5 * nn)) → liste17
  59. Circle(AA, Ra) → g_1
  60. Sequence(Rotate[OO, i, AA], i, 0, 6.28319, 1.25664) → liste18
  61. Sequence((x(AA) + (Ra / 4 * cos(i)), y(AA) + (Ra / 4 * sin(i))), i, 1.5708, 6.28319, 0.2) → liste19
  62. Sequence(AA + (i * Vector[AA, PP]), i, 0, 1, 0.1) → liste20
  63. Sequence((x(AA) + (Ra * cos(i)), y(AA) + (Ra * sin(i))), i, 0, 6.28319, 0.1) → liste21
  64. Sequence(Circle[Element[liste18, i], Ra / 5], i, 1, Length[liste18]) → liste22
  65. Mod(nn, 2) → zz
  66. Sequence((x(C_1), y(C_1)) + (((-4 * cos(0°)) * sin(i°)), (5 * cos(i°))), i, 0, z, h_1) → liste12
  67. Sequence((x(C_1), y(C_1)) + ((cos(0°) * sin(i°)), (5 * cos(i°))), i, 0, z, h_1) → liste23
  68. Sequence((x(C_1), y(C_1)) + (((-1 * cos(0°)) * sin(i°)), (5 * cos(i°))), i, 0, z, h_1) → liste24
  69. Sequence((x(C_1), y(C_1)) + (((5 * cos(0°)) * sin(i°)), (5 * cos(i°))), i, 0, z, h_1) → liste7

AI Drawing Prompt Reference

Start with a point A and a vertical reference line. Draw two circles centered at A with different radii, then use their intersections with the segments/lines through A and with the vertical line to create several key points. Using an angle parameter ang, generate parametric point sets by rotating points about A for i from 0 to nn; for each consecutive pair, construct semicircles to form a repeating arc band. Construct a second set by rotating points about another center I with an offset of ang/2, then again connect neighboring points with semicircles and corresponding circumcircle arcs to reinforce rotational symmetry. Finish by introducing another circle centered at N, intersecting it with a segment tied to the earlier geometry, and continue the rotated constructions to extend the periodic, New-Year-like geometric curve/trajectory layout.
The prompt above was compiled from the original drawing commands and is for reference only.