Parametric Construction of a Trefoil Knot

Parametric Construction of a Trefoil Knot
Loading the math board and drawing, please wait…
2023-03-15 20:53
In collections geometriadinamica.es
This GeoGebra example demonstrates how to construct a classic trefoil knot, a fascinating curve commonly studied in topology and curve theory, shaped like a three-leaf decorative knot. Key mathematical concepts include parametric equations, Cartesian curves, combinations of circles and ellipses, sequence generation of points, angle calculations, and intersection operations. Construction highlights: Use the CurveCartesian command to generate the trefoil curve via parametric equations, apply Sequence to create series of points, build auxiliary geometric structures with commands like Circle, Ellipse, Point, and Intersect, connect key points with Segment, and complete angle annotations using OrthogonalLine and Angle. This example is suitable for high school and above students learning parametric equations and curve construction, and serves as an excellent teaching material for coordinate geometry and parametric curves.

GeoGebra Commands & Parameters

  1. Segment(Q5, Q6) → p5
  2. Point(p5) → P5
  3. Segment(Q3, Q4) → p2
  4. Point(p2) → P3
  5. Segment(P3, Q4) → p4
  6. Point(p4) → P4
  7. Segment(Q1, Q2) → p1
  8. Point(p1) → P1
  9. Segment(P1, Q2) → p3
  10. Point(p3) → P2
  11. OrthogonalLine(C, yAxis) → zz1
  12. Circle(C, 0.62) → zz0
  13. Intersect(zz0, zz1, 1) → ZZ1
  14. Intersect(zz0, zz1, 2) → ZZ2
  15. Ellipse(ZZ1, ZZ2, 0.65) → zElipse1
  16. Intersect(zElipse1, zz1) → ZZ5, ZZ6
  17. Point(zElipse1) → XY
  18. Angle(ZZ6, C, XY) → zAngRot
  19. OrthogonalLine(C, xAxis) → zz2
  20. Intersect(zz0, zz2, 2) → ZZ3
  21. Intersect(zz0, zz2, 1) → ZZ4
  22. Ellipse(ZZ3, ZZ4, 0.65) → zElipse2
  23. Intersect(zElipse2, zz2) → ZZ7, ZZ8
  24. Point(zElipse2) → Z
  25. Angle(ZZ8, C, Z) → zAngInc
  26. CurveCartesian((r / 3 * ((((r2 * cos(v)) + (r1 * (1 + (a * cos(((n * 2) * 3.14159)))))) * sin(zAngRot)) + (((r2 * sin(v)) + (a * sin(((n * 2) * 3.14159)))) * cos(zAngRot)))), (r / 3 * ((((-((r2 * cos(v)) + (r1 * (1 + (a * cos(((n * 2) * 3.14159))))))) * cos(zAngRot)) * sin(zAngInc)) + ((((r2 * sin(v)) + (a * sin(((n * 2) * 3.14159)))) * sin(zAngRot)) * sin(zAngInc)))), v, v1, v2) → curva1
  27. Segment(ZZ5, ZZ6) → zz4
  28. Segment(ZZ7, ZZ8) → zz3
  29. Intersect(zElipse2, zElipse1, 1) → zPunto1
  30. Intersect(zElipse2, zElipse1, 4) → zPunto2
  31. Segment(zPunto1, zPunto2) → zSeg2
  32. CurveCartesian((r / 3 * (((((r2 * cos(α)) * cos(u)) + ((r1 * cos(u)) * (1 + (a * cos((n * u)))))) * sin(zAngRot)) + (((r2 * sin(α)) + (a * sin((n * u)))) * cos(zAngRot)))), (r / 3 * ((((-(((r2 * cos(α)) * cos(u)) + ((r1 * cos(u)) * (1 + (a * cos((n * u))))))) * cos(zAngRot)) * sin(zAngInc)) + ((((r2 * sin(α)) + (a * sin((n * u)))) * sin(zAngRot)) * sin(zAngInc)) + ((((r2 * cos(α)) * sin(u)) + ((r1 * sin(u)) * (1 + (a * cos((n * u)))))) * cos(zAngInc)))), u, u1, u2) → curva2
  33. CurveCartesian((r / 3 * (((((r2 * cos(v)) * cos((2 * β))) + ((r1 * cos((2 * β))) * (1 + (a * cos(((n * 2) * β)))))) * sin(zAngRot)) + (((r2 * sin(v)) + (a * sin(((n * 2) * β)))) * cos(zAngRot)))), (r / 3 * ((((-(((r2 * cos(v)) * cos((2 * β))) + ((r1 * cos((2 * β))) * (1 + (a * cos(((n * 2) * β))))))) * cos(zAngRot)) * sin(zAngInc)) + ((((r2 * sin(v)) + (a * sin(((n * 2) * β)))) * sin(zAngRot)) * sin(zAngInc)) + ((((r2 * cos(v)) * sin((2 * β))) + ((r1 * sin((2 * β))) * (1 + (a * cos(((n * 2) * β)))))) * cos(zAngInc)))), v, v1, v2) → a1
  34. Sequence(CurveCartesian[(r / 3 * (((((r2 * cos(v)) * cos(u)) + ((r1 * cos(u)) * (1 + (a * cos((n * u)))))) * sin(zAngRot)) + (((r2 * sin(v)) + (a * sin((n * u)))) * cos(zAngRot)))), (r / 3 * ((((-(((r2 * cos(v)) * cos(u)) + ((r1 * cos(u)) * (1 + (a * cos((n * u))))))) * cos(zAngRot)) * sin(zAngInc)) + ((((r2 * sin(v)) + (a * sin((n * u)))) * sin(zAngRot)) * sin(zAngInc)) + ((((r2 * cos(v)) * sin(u)) + ((r1 * sin(u)) * (1 + (a * cos((n * u)))))) * cos(zAngInc)))), v, v1, v2], u, u1, u2, paso / 2) → list2
  35. Sequence(CurveCartesian[(r / 3 * (((((r2 * cos(v)) * cos(u)) + ((r1 * cos(u)) * (1 + (a * cos((n * u)))))) * sin(zAngRot)) + (((r2 * sin(v)) + (a * sin((n * u)))) * cos(zAngRot)))), (r / 3 * ((((-(((r2 * cos(v)) * cos(u)) + ((r1 * cos(u)) * (1 + (a * cos((n * u))))))) * cos(zAngRot)) * sin(zAngInc)) + ((((r2 * sin(v)) + (a * sin((n * u)))) * sin(zAngRot)) * sin(zAngInc)) + ((((r2 * cos(v)) * sin(u)) + ((r1 * sin(u)) * (1 + (a * cos((n * u)))))) * cos(zAngInc)))), u, u1, u2], v, v1, v2, (2 * paso)) → list1

AI Drawing Prompt Reference

Draw a trefoil knot using parametric equations to generate the curve, connecting points with line segments to form a complex closed curve. Start by drawing two ellipses, then use their intersections and auxiliary lines to create key points. Next, use parametric equations to draw the curve, and finally, generate more points and segments using sequences to complete the trefoil knot.
The prompt above was compiled from the original drawing commands and is for reference only.