A Rolling Reuleaux Triangle in a Rhombus

A Rolling Reuleaux Triangle in a Rhombus
Loading the math board and drawing, please wait…
2018-09-25 21:39
This example visualizes the rolling motion of a Reuleaux triangle inside a rhombus, demonstrating constant-width curve geometry, relative motion, and locus generation. Core mathematical concepts include Reuleaux polygon properties, circular arcs, angle rotation, and differential geometry of rolling curves. Construction utilizes GeoGebra commands such as Ray, Point, Rotate, Mirror, Circle, Intersect, Translate, and objects like angle, distance, vector, circle arc, and polygon tools. Suitable for high school advanced geometry, calculus transition units, or parametric curve exploration.

GeoGebra Commands & Parameters

  1. Ray(A, A') → aa'
  2. Point(aa') → B
  3. Rotate(B, (-betta), B) → B'
  4. Mirror(B, A) → BB
  5. Circle(BB, A) → bba
  6. Circle(A, B) → ab
  7. Intersect(ab, bba, 2) → D
  8. Rotate(D, (-betta), B) → D'
  9. Rotate(B, delta, D) → K
  10. Circle(K, K2) → kk2
  11. Translate(D', Vector[B, K]) → D''
  12. Translate(B', Vector[B, K]) → B''
  13. Ray(B'', D'') → bd''
  14. Intersect(kk2, bd'') → K1,
  15. Angle(K1, K, K2) → k
  16. Intersect(ab, bba, 1) → C
  17. Distance(C, D) → cd
  18. Vector(K, M) → km
  19. Translate(D, km) → D1
  20. Rotate(D1, k, M) → D2
  21. Translate(C, km) → C1
  22. Rotate(C1, k, M) → C2
  23. Translate(B, km) → B1
  24. Rotate(B1, k, M) → B2
  25. Translate(A, km) → A1
  26. Rotate(A1, k, M) → A2
  27. Ray(M, M') → mm'
  28. Point(mm') → N
  29. Rotate(N, π / 10, M) → N'
  30. Rotate(N, π / 2, M) → Q'
  31. CircleArc(M, N', Q') → nq'
  32. Point(nq') → Q
  33. OrthogonalLine(N, Line[M, Q]) → n
  34. Intersect(Line[M, Q], n) → L
  35. Distance(N, L) → nl
  36. Dilate(D2, c, M) → D3
  37. Dilate(C2, c, M) → C3
  38. Translate(C3, Vector[N, L]) → C4
  39. Dilate(B2, c, M) → B3
  40. Line(D3, B3) → d3b3
  41. Line(C4, d3b3) → c4
  42. Dilate(A2, c, M) → A3
  43. Line(A3, C3) → a3c3
  44. Ray(B, D) → bd
  45. Ray(B', D') → bd'
  46. Translate(N, Vector[M, Q]) → P
  47. PolyLine(M, N, P, Q, M) → m
  48. Line(B3, A3) → b3a3
  49. Circle(C3, B3) → c3b3
  50. Line(C3, D3) → c3d3
  51. Translate(B3, Vector[N, L]) → B4
  52. Line(B4, b3a3) → b4
  53. Intersect(c3d3, b4) → R
  54. AffineRatio(D3, C3, R) → dcr
  55. Dilate(B4, dcr1, D3) → B5
  56. AffineRatio(C3, D3, R) → cdr
  57. Dilate(B5, cdr1, C3) → B6
  58. Translate(B6, Vector[N, L]) → B7
  59. Line(B6, B7) → b6b7
  60. Intersect(a3c3, d3b3) → T
  61. Ray(C3, A3) → c3a3
  62. Intersect(c3b3, c3a3) → U,
  63. Intersect(a3c3, c4) → S
  64. AffineRatio(T, U, S) → tus
  65. Dilate(C4, tus1, U) → C5
  66. OrthogonalLine(C5, d3b3) → c5
  67. Intersect(d3b3, c5) → V
  68. AffineRatio(D3, B3, V) → dbv
  69. Dilate(C5, dbv1, D3) → C6
  70. OrthogonalLine(C6, b6b7) → c6
  71. Intersect(b6b7, c6) → E
  72. AffineRatio(B6, B7, E) → be
  73. Dilate(C6, be1, B6) → C7
  74. Intersect(Line[M, Q], b6b7) → F
  75. Translate(A3, Vector[C7, F]) → A4
  76. Line(A4, Line[M, Q]) → a4
  77. Line(A3, Line[M, N]) → a3
  78. Intersect(a3, a4) → G
  79. Translate(C3, Vector[A3, G]) → V2
  80. Translate(B3, Vector[A3, G]) → V1
  81. Translate(D3, Vector[A3, G]) → V3
  82. CircleArc(V1, V3, V2) → v132
  83. CircleArc(V2, V1, V3) → v213
  84. CircleArc(V3, V2, V1) → v321
  85. Distance(M, N) → d
  86. Line(I, xAxis) → i
  87. Point(i) → J
  88. Polygon({M, N, P, Q}) → m1
  89. CircleSector(V1, V3, V2) → v1
  90. CircleSector(V2, V1, V3) → v2
  91. CircleSector(V3, V2, V1) → v3