Valentine's Day Heart Curve

Valentine's Day Heart Curve
Loading the math board and drawing, please wait…
2020-02-14 21:51
This example demonstrates how to construct a heart curve using parametric equations and transformations. It involves core concepts of parametric equations, transformations, and coordinate geometry. Using commands like coeur, If, Rotate, Vector, and CurveCartesian, a beautiful heart shape can be created. Suitable for high school mathematics education and learning the application of parametric equation transformations.

GeoGebra Commands & Parameters

  1. coeur(A, B) → c, d, poly1
  2. coeur(E, F) → e, f, poly2
  3. coeur(G_8, H) → g, h, poly3
  4. coeur(I, J) → k_{14}, p, poly4
  5. coeur(K, L) → q, r, poly5
  6. coeur(M, N) → s, t_{13}, poly6
  7. coeur(A_1, B_1) → c_1, d_1, poly7
  8. coeur(C_1, D_1) → e_1, f_1, poly8
  9. coeur(E_1, F_1) → g_1, h_1, poly9
  10. coeur(G_1, H_1) → k_1, p_1, poly10
  11. coeur(I_1, J_1) → q_1, r_1, poly11
  12. coeur(O, P) → s_1, t_1, poly12
  13. coeur(Q, R) → c_2, d_2, poly13
  14. coeur(S, T) → e_2, f_2, poly14
  15. coeur(U, V) → g_2, h_2, poly15
  16. coeur(W, Z) → k_2, p_2, poly16
  17. coeur(K_1, L_1) → q_2, r_2, poly17
  18. coeur(M_1, N_1) → s_2, t_2, poly18
  19. coeur(O_1, P_1) → c_3, d_3, poly19
  20. coeur(Q_1, R_1) → e_3, f_3, poly20
  21. coeur(S_1, T_1) → g_3, h_3, poly21
  22. coeur(U_1, V_1) → k_3, p_3, poly22
  23. coeur(W_1, Z_1) → q_3, r_3, poly23
  24. coeur(A_2, B_2) → s_3, t_3, poly24
  25. coeur(C_2, D_2) → c_4, d_4, poly25
  26. coeur(E_2, F_2) → e_4, f_4, poly26
  27. coeur(G_2, H_2) → g_4, h_4, poly27
  28. coeur(I_2, J_2) → k_4, p_4, poly28
  29. coeur(Q_2, R_2) → q_4, r_4, poly29
  30. coeur(K_2, L_2) → s_4, t_4, poly30
  31. coeur(M_2, N_2) → c_5, d_5, poly31
  32. coeur(O_2, P_2) → e_5, f_5, poly32
  33. coeur(U_2, V_2) → g_5, h_5, poly33
  34. coeur(S_2, T_2) → k_5, p_5, poly34
  35. coeur(A_3, B_3) → s_5, t_5, poly36
  36. coeur(E_3, F_3) → c_6, d_6, poly37
  37. coeur(C_3, D_3) → e_6, f_6, poly38
  38. coeur(G_3, H_3) → g_6, h_6, poly39
  39. coeur(I_3, J_3) → k_6, p_6, poly40
  40. If(t ≤ 20, ((t * 18))°, 0°) → m8
  41. Rotate(E, m8, C) → E'
  42. Rotate(F, m8, C) → F'
  43. coeur(E', F') → q_6, r_6, poly41
  44. coeur(I_2, J_2) → s_6, t_6, poly42
  45. Rotate(I_2, m8, N_3) → K_3
  46. Rotate(J_2, m8, N_3) → L_3
  47. coeur(K_3, L_3) → c_7, d_7, poly43
  48. Rotate(Z, (-m8), D) → Z'_1
  49. Rotate(W, (-m8), D) → W'_1
  50. coeur(Z'_1, W'_1) → e_7, f_7, poly44
  51. Rotate(P_1, (-m8), O_3) → P_3
  52. Rotate(O_1, (-m8), O_3) → Q_3
  53. coeur(P_3, Q_3) → g_7, h_7, poly45
  54. Rotate(G_8, m8, R_3) → G'_1
  55. Rotate(H, m8, R_3) → H'_1
  56. coeur(G'_1, H'_1) → k_7, p_7, poly46
  57. Rotate(C_1, (-m8), S_3) → T_3
  58. Rotate(D_1, (-m8), S_3) → U_3
  59. coeur(T_3, U_3) → q_7, r_7, poly47
  60. Rotate(H, m8, V_3) → H'
  61. Rotate(G_8, m8, V_3) → G'
  62. coeur(G', H') → s_7, t_7, poly48
  63. Rotate(I, m8, W_3) → I'
  64. Rotate(J, m8, W_3) → J'
  65. coeur(I', J') → c_8, d_8, poly49
  66. Rotate(A_1, m8, A_4) → Z_3
  67. Rotate(B_1, m8, A_4) → B_4
  68. coeur(Z_3, B_4) → e_8, f_8, poly50
  69. Rotate(Z, (-((45° * m8))), C_4) → Z'_2
  70. Rotate(W, (-m8), C_4) → W'_2
  71. Rotate(Z, (-m8), C_4) → Z'
  72. Rotate(W, (-m8), C_4) → W'
  73. coeur(W', Z') → q_5, r_5, poly35
  74. coeur(W_2, Z_2) → g_8, h_8, poly51
  75. Rotate(V, (-m8), D_4) → V'
  76. Rotate(U, (-m8), D_4) → U'
  77. coeur(U', V') → k_8, p_8, poly52
  78. Rotate(S, (-m8), E_4) → S'
  79. Rotate(T, (-m8), E_4) → T'
  80. coeur(S', T') → q_8, r_8, poly53
  81. Rotate(G_2, (-m8), F_4) → G_4
  82. Rotate(H_2, (-m8), F_4) → H_4
  83. coeur(G_4, H_4) → s_8, t_8, poly54
  84. Rotate(O_2, (-m8), I_4) → J_4
  85. Rotate(P_2, (-m8), I_4) → K_4
  86. coeur(J_4, K_4) → c_9, d_9, poly55
  87. Rotate(Q, m8, L_4) → Q'
  88. Rotate(R, m8, L_4) → R'
  89. coeur(Q', R') → e_9, f_9, poly56
  90. Rotate(M_1, (-m8), M_4) → N_4
  91. Rotate(N_1, (-m8), M_4) → O_4
  92. coeur(N_4, O_4) → g_9, h_9, poly57
  93. Rotate(A_2, (-m8), P_4) → Q_4
  94. Rotate(B_2, (-m8), P_4) → R_4
  95. coeur(Q_4, R_4) → k_9, p_9, poly58
  96. Rotate(S_1, (-m8), S_4) → T_4
  97. Rotate(T_1, (-m8), S_4) → U_4
  98. coeur(T_4, U_4) → q_9, r_9, poly59
  99. Rotate(C_2, m8, V_4) → W_4
  100. Rotate(D_2, m8, V_4) → Z_4
  101. coeur(W_4, Z_4) → s_9, t_9, poly60
  102. Rotate(U_1, (-m8), A_5) → B_5
  103. Rotate(V_1, (-m8), A_5) → C_5
  104. coeur(B_5, C_5) → c_{10}, d_{10}, poly61
  105. Rotate(Q_1, m8, D_5) → E_5
  106. Rotate(R_1, m8, D_5) → F_5
  107. coeur(E_5, F_5) → e_{10}, f_{10}, poly62
  108. Rotate(O, m8, G_5) → O'
  109. Rotate(P, m8, G_5) → P'
  110. coeur(O', P') → g_{10}, h_{10}, poly63
  111. Rotate(K_1, m8, H_5) → I_5
  112. Rotate(L_1, m8, H_5) → J_5
  113. coeur(I_5, J_5) → k_{10}, p_{10}, poly64
  114. Rotate(W_1, (-m8), K_5) → L_5
  115. Rotate(Z_1, (-m8), K_5) → M_5
  116. coeur(L_5, M_5) → q_{10}, r_{10}, poly65
  117. Rotate(G_1, (-m8), N_5) → O_5
  118. Rotate(H_1, (-m8), N_5) → P_5
  119. coeur(O_5, P_5) → s_{10}, t_{10}, poly66
  120. Rotate(I_1, m8, Q_5) → R_5
  121. Rotate(J_1, m8, Q_5) → S_5
  122. coeur(R_5, S_5) → c_{11}, d_{11}, poly67
  123. Rotate(E_1, (-m8), T_5) → U_5
  124. Rotate(F_1, (-m8), T_5) → V_5
  125. coeur(U_5, V_5) → e_{11}, f_{11}, poly68
  126. Rotate(M, m8, W_5) → M'
  127. Rotate(N, m8, W_5) → N'
  128. coeur(M', N') → g_{11}, h_{11}, poly69
  129. Rotate(K, (-m8), Z_5) → K'
  130. Rotate(L, (-m8), Z_5) → L'
  131. coeur(K', L') → k_{11}, p_{11}, poly70
  132. Rotate(I_3, (-m8), A_6) → B_6
  133. Rotate(J_3, (-m8), A_6) → C_6
  134. coeur(B_6, C_6) → q_{11}, r_{11}, poly71
  135. Rotate(W_2, m8, D_6) → E_6
  136. Rotate(Z_2, m8, D_6) → F_6
  137. coeur(E_6, F_6) → s_{11}, t_{11}, poly72
  138. Rotate(C_3, m8, G_6) → H_6
  139. Rotate(D_3, m8, G_6) → I_6
  140. coeur(H_6, I_6) → c_{12}, d_{12}, poly73
  141. Rotate(G_3, m8, J_6) → K_6
  142. Rotate(H_3, m8, J_6) → L_6
  143. coeur(K_6, L_6) → e_{12}, f_{12}, poly74
  144. Rotate(A_3, (-m8), M_6) → N_6
  145. Rotate(B_3, (-m8), M_6) → O_6
  146. coeur(N_6, O_6) → g_{12}, h_{12}, poly75
  147. Rotate(Q_2, m8, P_6) → Q_6
  148. Rotate(R_2, m8, P_6) → R_6
  149. coeur(Q_6, R_6) → k_{12}, p_{12}, poly76
  150. Rotate(S_2, m8, S_6) → T_6
  151. Rotate(T_2, m8, S_6) → U_6
  152. coeur(T_6, U_6) → q_{12}, r_{12}, poly77
  153. Rotate(U_2, m8, V_6) → W_6
  154. Rotate(V_2, m8, V_6) → Z_6
  155. coeur(W_6, Z_6) → s_{12}, t_{12}, poly78
  156. Rotate(K_2, m8, A_7) → B_7
  157. Rotate(L_2, m8, A_7) → C_7
  158. coeur(B_7, C_7) → c_{13}, d_{13}, poly79
  159. Rotate(E_2, m8, D_7) → E_7
  160. Rotate(F_2, m8, D_7) → F_7
  161. coeur(E_7, F_7) → e_{13}, f_{13}, poly80
  162. Rotate(M_2, (-m8), G_7) → H_7
  163. Rotate(N_2, (-m8), G_7) → I_7
  164. coeur(H_7, I_7) → g_{13}, h_{13}, poly81
  165. Rotate(E_3, (-m8), J_7) → K_7
  166. Rotate(F_3, (-m8), J_7) → L_7
  167. coeur(K_7, L_7) → k_{13}, p_{13}, poly82
  168. coeur(A, M_7) → q_{13}, r_{13}, poly83
  169. Vector(NN, MM) → u
  170. CurveCartesian(x(G) + ((10 * tan((k / 100 * α))) * cos(α)), y(G) + ((10 * tan((k / 100 * α))) * sin(α)), α, 0, 180) → b

AI Drawing Prompt Reference

Draw a heart curve using parametric equations and transformations. First, draw multiple heart curves, then adjust their positions and angles by rotating and using conditional statements, and finally combine them to form a complex heart pattern.
The prompt above was compiled from the original drawing commands and is for reference only.