Alhambra Star Pattern Construction: p4g Symmetry Design

Alhambra Star Pattern Construction: p4g Symmetry Design
Loading the math board and drawing, please wait…
2023-03-22 23:17
In collections geometriadinamica.es
This example demonstrates how to construct the classic Alhambra star pattern (Estrellas) with p4g symmetry using GeoGebra. The core mathematical concepts include planar tessellation, symmetry transformations (mirror, rotation, translation), and polygon construction. Construction highlights: Using commands such as Midpoint, Line, OrthogonalLine, Point, Mirror, Intersect, Vector, Circle, Polygon, Segment, Translate, and Rotate to create complex star patterns with p4g group symmetry. Suitable for high school and above students to explore the mathematical principles in Islamic geometric decoration, and as a vivid case study for coordinate geometry and transformational geometry teaching.

GeoGebra Commands & Parameters

  1. Midpoint(C, D) → G
  2. Line(D, C) → b
  3. OrthogonalLine(G, b) → e
  4. OrthogonalLine(D, b) → d
  5. Point(d) → E
  6. Midpoint(E, D) → F
  7. Midpoint(G, F) → H
  8. Mirror(H, e) → H'
  9. OrthogonalLine(F, d) → g
  10. Mirror(H, g) → H'_1
  11. Mirror(H'_1, d) → K
  12. OrthogonalLine(E, d) → h
  13. OrthogonalLine(C, b) → f
  14. Mirror(H', f) → H''
  15. Mirror(H'', g) → H'''
  16. Line(K, H''') → k_1
  17. Intersect(f, g) → N
  18. Intersect(f, h) → O
  19. Line(O, N) → n_1
  20. Mirror(H'_1, h) → J
  21. Mirror(H', g) → H''_1
  22. Mirror(H''_1, h) → I
  23. Line(I, J) → p
  24. Intersect(f, p) → R_3
  25. Line(H'', H') → n
  26. Intersect(n_1, k_1) → P_5
  27. Vector(R_3, P_5) → u
  28. Length(u) → d1
  29. If(a < 2.3, 0, If[a < 3.3, a - 2.3, 1]) → d3
  30. If(a < 3.4, 0, If[a < 4.4, a - 3.4, 1]) → d4
  31. If(a < 4.5, 0, If[a < 5.5, a - 4.5, 1]) → d5
  32. If(a < 5.6, 0, If[a < 6.6, a - 5.6, 1]) → d6
  33. If(a < 6.7, 0, If[a < 7.7, a - 6.7, 1]) → d7
  34. If(a < 7.8, 0, If[a < 8.8, a - 7.8, 1]) → d8
  35. OrthogonalLine(H, b) → i
  36. Mirror(H, d) → H'_2
  37. Line(H'_2, K) → j
  38. Line(H', H''_1) → k
  39. Line(H'', H''') → l
  40. Line(H''', H''_1) → m
  41. Mirror(H, b) → H'_3
  42. Mirror(H', b) → H''_2
  43. Intersect(e, g) → M
  44. Intersect(e, h) → P
  45. Intersect(j, p) → Q
  46. Point(e) → T
  47. Circle(M, T) → q
  48. Intersect(q, g, 2) → V
  49. OrthogonalLine(V, g) → a_1
  50. Mirror(T, i) → T'
  51. Mirror(U, i) → U'
  52. Mirror(U, i) → U'_1
  53. Mirror(V, i) → V'
  54. Mirror(T, i) → T'_1
  55. Mirror(V, i) → V'_1
  56. Mirror(T', m) → T''
  57. Mirror(U', m) → U''
  58. Mirror(U'_1, m) → A_1
  59. Mirror(V', m) → V''
  60. Mirror(V'_1, m) → D_1
  61. Mirror(T'_1, m) → G_1
  62. Mirror(T'', i) → T'''
  63. Mirror(U'', i) → U'''
  64. Mirror(A_1, i) → H_1
  65. Mirror(V'', i) → V'''
  66. Mirror(D_1, i) → K_1
  67. Mirror(G_1, i) → N_1
  68. Polygon(H, H'_1, H''_1) → poly1, h''_1, h_1, h'_1
  69. Point(h''_1) → R
  70. Point(h'_1) → W
  71. Circle(M, W) → r
  72. Intersect(r, h'_1, 2) → S
  73. Line(S, m) → s
  74. Intersect(r, s, 2) → Z
  75. Point(s) → B_1
  76. Segment(R, H) → t
  77. Circle(H'_1, t) → c_1
  78. Intersect(c_1, h_1) → C_1,
  79. OrthogonalLine(S, s) → b_1
  80. Point(b_1) → E_1
  81. Polygon(H'_1, C_1, E_1, S, B_1, R) → poly2, h'_2, c_2, e_1, s_1, b_2, r_1
  82. Polygon(Z, W, M) → poly3, m_1, z, w
  83. Polygon(S, H''_1, C_1, E_1) → poly4, s_2, h''_2, c_3, e_2
  84. Polygon(Z, W, H, R, B_1) → poly5, z_1, w_1, h_2, r_2, b_3
  85. Polygon(Z, M, S) → poly6, s_3, z_2, m_2
  86. Mirror(Z, i) → Z'
  87. Mirror(W, i) → W'
  88. Mirror(H, i) → H'_4
  89. Mirror(R, i) → R'
  90. Mirror(B_1, i) → F_1
  91. Polygon(Z', W', H'_4, R', F_1) → poly5', z', w', h'_4, r', f_1
  92. Mirror(Z, i) → Z'_1
  93. Mirror(W, i) → W'_1
  94. Mirror(M, i) → M'
  95. Polygon(Z'_1, W'_1, M') → poly3', m', z'_1, w'_1
  96. Mirror(Z, i) → Z'_2
  97. Mirror(M, i) → M'_1
  98. Mirror(S, i) → S'
  99. Polygon(Z'_2, M'_1, S') → poly6', s', z'_2, m'_1
  100. Mirror(H'_1, i) → I_1
  101. Mirror(C_1, i) → J_1
  102. Mirror(E_1, i) → L_1
  103. Mirror(S, i) → S'_1
  104. Mirror(B_1, i) → M_1
  105. Mirror(R, i) → R'_1
  106. Polygon(I_1, J_1, L_1, S'_1, M_1, R'_1) → poly2', i_1, j_1, l_1, s'_1, m_3, r'_1
  107. Mirror(S, i) → S'_2
  108. Mirror(H''_1, i) → O_1
  109. Mirror(C_1, i) → P_1
  110. Mirror(E_1, i) → Q_1
  111. Polygon(S'_2, O_1, P_1, Q_1) → poly4', s'_2, o_1, p_1, q_1
  112. Mirror(Z', m) → Z''
  113. Mirror(W', m) → W''
  114. Mirror(H'_4, m) → R_1
  115. Mirror(R', m) → R''
  116. Mirror(F_1, m) → S_1
  117. Polygon(Z'', W'', R_1, R'', S_1) → poly5'', z'', w'', r_3, r'', s_4
  118. Mirror(I_1, m) → T_1
  119. Mirror(J_1, m) → U_1
  120. Mirror(L_1, m) → V_1
  121. Mirror(S'_1, m) → W_1
  122. Mirror(M_1, m) → Z_1
  123. Mirror(R'_1, m) → A_2
  124. Polygon(T_1, U_1, V_1, W_1, Z_1, A_2) → poly2'', t_1, u_1, v_1, w_2, z_3, a_2
  125. Mirror(S'_2, m) → B_2
  126. Mirror(O_1, m) → C_2
  127. Mirror(P_1, m) → D_2
  128. Mirror(Q_1, m) → E_2
  129. Polygon(B_2, C_2, D_2, E_2) → poly4'', b_4, c_4, d_2, e_3
  130. Mirror(Z'_2, m) → F_2
  131. Mirror(M'_1, m) → G_2
  132. Mirror(S', m) → S''
  133. Polygon(F_2, G_2, S'') → poly6'', s'', f_2, g_2
  134. Mirror(Z'_1, m) → H_2
  135. Mirror(W'_1, m) → I_2
  136. Mirror(M', m) → M''
  137. Polygon(H_2, I_2, M'') → poly3'', m'', h_3, i_2
  138. Mirror(Z'', i) → Z'''
  139. Mirror(W'', i) → W'''
  140. Mirror(R_1, i) → J_2
  141. Mirror(R'', i) → R'''
  142. Mirror(S_1, i) → K_2
  143. Polygon(Z''', W''', J_2, R''', K_2) → poly5''', z''', w''', j_2, r''', k_2
  144. Mirror(T_1, i) → L_2
  145. Mirror(U_1, i) → M_2
  146. Mirror(V_1, i) → N_2
  147. Mirror(W_1, i) → O_2
  148. Mirror(Z_1, i) → P_2
  149. Mirror(A_2, i) → Q_2
  150. Polygon(L_2, M_2, N_2, O_2, P_2, Q_2) → poly2''', l_2, m_4, n_2, o_2, p_2, q_2
  151. Mirror(B_2, i) → R_2
  152. Mirror(C_2, i) → S_2
  153. Mirror(D_2, i) → T_2
  154. Mirror(E_2, i) → U_2
  155. Polygon(R_2, S_2, T_2, U_2) → poly4''', r_4, s_5, t_2, u_2
  156. Mirror(F_2, i) → V_2
  157. Mirror(G_2, i) → W_2
  158. Mirror(S'', i) → S'''
  159. Polygon(V_2, W_2, S''') → poly6''', s''', v_2, w_3
  160. Mirror(H_2, i) → Z_2
  161. Mirror(I_2, i) → A_3
  162. Mirror(M'', i) → M'''
  163. Polygon(Z_2, A_3, M''') → poly3''', m''', z_4, a_3
  164. Mirror(Z, e) → Z'_3
  165. Mirror(W, e) → W'_2
  166. Mirror(H, e) → H'_5
  167. Mirror(R, e) → R'_2
  168. Mirror(B_1, e) → B_3
  169. Polygon(Z'_3, W'_2, H'_5, R'_2, B_3) → poly5'_1, z'_3, w'_2, h'_5, r'_2, b_5
  170. Mirror(Z', e) → Z''_1
  171. Mirror(W', e) → W''_1
  172. Mirror(H'_4, e) → C_3
  173. Mirror(R', e) → R''_1
  174. Mirror(F_1, e) → D_3
  175. Polygon(Z''_1, W''_1, C_3, R''_1, D_3) → poly5''_1, z''_1, w''_1, c_5, r''_1, d_3
  176. Mirror(Z, e) → Z'_4
  177. Mirror(W, e) → W'_3
  178. Mirror(M, e) → M'_2
  179. Polygon(Z'_4, W'_3, M'_2) → poly3'_1, m'_2, z'_4, w'_3
  180. Mirror(Z, e) → Z'_5
  181. Mirror(M, e) → M'_3
  182. Mirror(S, e) → S'_3
  183. Polygon(Z'_5, M'_3, S'_3) → poly6'_1, s'_3, z'_5, m'_3
  184. Mirror(S, e) → S'_4
  185. Mirror(H''_1, e) → E_3
  186. Mirror(C_1, e) → F_3
  187. Mirror(E_1, e) → G_3
  188. Polygon(S'_4, E_3, F_3, G_3) → poly4'_1, s'_4, e_4, f_3, g_3
  189. Mirror(Z_2, e) → H_3
  190. Mirror(A_3, e) → I_3
  191. Mirror(M''', e) → J_3
  192. Polygon(H_3, I_3, J_3) → poly7, j_3, h_4, i_3
  193. Mirror(Z''', e) → K_3
  194. Mirror(W''', e) → L_3
  195. Mirror(J_2, e) → M_3
  196. Mirror(R''', e) → N_3
  197. Mirror(K_2, e) → O_3
  198. Polygon(K_3, L_3, M_3, N_3, O_3) → poly8, k_3, l_3, m_5, n_3, o_3
  199. Mirror(Z'', e) → Z'''_1
  200. Mirror(W'', e) → W'''_1
  201. Mirror(R_1, e) → P_3
  202. Mirror(R'', e) → R'''_1
  203. Mirror(S_1, e) → Q_3
  204. Polygon(Z'''_1, W'''_1, P_3, R'''_1, Q_3) → poly5'''_1, z'''_1, w'''_1, p_3, r'''_1, q_3
  205. Mirror(L_2, e) → S_3
  206. Mirror(M_2, e) → T_3
  207. Mirror(N_2, e) → U_3
  208. Mirror(O_2, e) → V_3
  209. Mirror(P_2, e) → W_3
  210. Mirror(Q_2, e) → Z_3
  211. Polygon(S_3, T_3, U_3, V_3, W_3, Z_3) → poly9, s_6, t_3, u_3, v_3, w_4, z_5
  212. Mirror(H'_1, e) → A_4
  213. Mirror(C_1, e) → B_4
  214. Mirror(E_1, e) → C_4
  215. Mirror(S, e) → S'_5
  216. Mirror(B_1, e) → D_4
  217. Mirror(R, e) → R'_3
  218. Polygon(A_4, B_4, C_4, S'_5, D_4, R'_3) → poly2'_1, a_4, b_6, c_6, s'_5, d_4, r'_3
  219. Mirror(I_1, e) → E_4
  220. Mirror(J_1, e) → F_4
  221. Mirror(L_1, e) → G_4
  222. Mirror(S'_1, e) → H_4
  223. Mirror(M_1, e) → I_4
  224. Mirror(R'_1, e) → J_4
  225. Polygon(E_4, F_4, G_4, H_4, I_4, J_4) → poly2''_1, e_5, f_4, g_4, h_5, i_4, j_4
  226. Mirror(T_1, e) → K_4
  227. Mirror(U_1, e) → L_4
  228. Mirror(V_1, e) → M_4
  229. Mirror(W_1, e) → N_4
  230. Mirror(Z_1, e) → O_4
  231. Mirror(A_2, e) → P_4
  232. Polygon(K_4, L_4, M_4, N_4, O_4, P_4) → poly2'''_1, k_4, l_4, m_6, n_4, o_4, p_4
  233. Mirror(Z'_1, e) → Q_4
  234. Mirror(W'_1, e) → R_4
  235. Mirror(M', e) → M''_1
  236. Polygon(Q_4, R_4, M''_1) → poly3''_1, m''_1, q_4, r_5
  237. Mirror(Z'_2, e) → S_4
  238. Mirror(M'_1, e) → T_4
  239. Mirror(S', e) → S''_1
  240. Polygon(S_4, T_4, S''_1) → poly6''_1, s''_1, s_7, t_4
  241. Mirror(S'_2, e) → U_4
  242. Mirror(O_1, e) → V_4
  243. Mirror(P_1, e) → W_4
  244. Mirror(Q_1, e) → Z_4
  245. Polygon(U_4, V_4, W_4, Z_4) → poly4''_1, u_4, v_4, w_5, z_6
  246. Mirror(B_2, e) → A_5
  247. Mirror(C_2, e) → B_5
  248. Mirror(D_2, e) → C_5
  249. Mirror(E_2, e) → D_5
  250. Polygon(A_5, B_5, C_5, D_5) → poly4'''_1, a_5, b_7, c_7, d_5
  251. Mirror(F_2, e) → E_5
  252. Mirror(G_2, e) → F_5
  253. Mirror(S'', e) → S'''_1
  254. Polygon(E_5, F_5, S'''_1) → poly6'''_1, s'''_1, e_6, f_5
  255. Mirror(H_2, e) → G_5
  256. Mirror(I_2, e) → H_5
  257. Mirror(M'', e) → M'''_1
  258. Polygon(G_5, H_5, M'''_1) → poly3'''_1, m'''_1, g_5, h_6
  259. Mirror(R_2, e) → I_5
  260. Mirror(S_2, e) → J_5
  261. Mirror(T_2, e) → K_5
  262. Mirror(U_2, e) → L_5
  263. Polygon(I_5, J_5, K_5, L_5) → poly10, i_5, j_5, k_5, l_5
  264. Mirror(V_2, e) → M_5
  265. Mirror(W_2, e) → N_5
  266. Mirror(S''', e) → O_5
  267. Polygon(M_5, N_5, O_5) → poly11, o_5, m_7, n_5
  268. Min(d1, ((a - 3.5) * d1)) → d2
  269. Circle(R_3, d2) → d_1
  270. Intersect(d_1, f) → L, Q_5
  271. Vector(R_3, Q_5) → g_1
  272. Translate(Z'_3, g_1) → R_5
  273. Translate(W'_2, g_1) → S_5
  274. Translate(H'_5, g_1) → T_5
  275. Translate(R'_2, g_1) → U_5
  276. Translate(B_3, g_1) → V_5
  277. Polygon(R_5, S_5, T_5, U_5, V_5) → poly12, r_6, s_8, t_5, u_5, v_5
  278. Translate(Z''_1, g_1) → W_5
  279. Translate(W''_1, g_1) → Z_5
  280. Translate(C_3, g_1) → A_6
  281. Translate(R''_1, g_1) → B_6
  282. Translate(D_3, g_1) → C_6
  283. Polygon(W_5, Z_5, A_6, B_6, C_6) → poly13, w_6, z_7, a_6, b_8, c_8
  284. Translate(Q_4, g_1) → D_6
  285. Translate(R_4, g_1) → E_6
  286. Translate(M''_1, g_1) → F_6
  287. Polygon(D_6, E_6, F_6) → poly14, f_6, d_6, e_7
  288. Translate(E_4, g_1) → G_6
  289. Translate(F_4, g_1) → H_6
  290. Translate(G_4, g_1) → I_6
  291. Translate(H_4, g_1) → J_6
  292. Translate(I_4, g_1) → K_6
  293. Translate(J_4, g_1) → L_6
  294. Polygon(G_6, H_6, I_6, J_6, K_6, L_6) → poly15, g_6, h_7, i_6, j_6, k_6, l_6
  295. Translate(S_4, g_1) → M_6
  296. Translate(T_4, g_1) → N_6
  297. Translate(S''_1, g_1) → O_6
  298. Polygon(M_6, N_6, O_6) → poly16, o_6, m_8, n_6
  299. Translate(U_4, g_1) → P_6
  300. Translate(V_4, g_1) → Q_6
  301. Translate(W_4, g_1) → R_6
  302. Translate(Z_4, g_1) → S_6
  303. Polygon(P_6, Q_6, R_6, S_6) → poly17, p_6, q_6, r_7, s_9
  304. Translate(A_5, g_1) → T_6
  305. Translate(B_5, g_1) → U_6
  306. Translate(C_5, g_1) → V_6
  307. Translate(D_5, g_1) → W_6
  308. Polygon(T_6, U_6, V_6, W_6) → poly18, t_6, u_6, v_6, w_7
  309. Translate(K_4, g_1) → Z_6
  310. Translate(L_4, g_1) → A_7
  311. Translate(M_4, g_1) → B_7
  312. Translate(N_4, g_1) → C_7
  313. Translate(O_4, g_1) → D_7
  314. Translate(P_4, g_1) → E_7
  315. Polygon(Z_6, A_7, B_7, C_7, D_7, E_7) → poly19, z_8, a_7, b_9, c_9, d_7, e_8
  316. Translate(S_3, g_1) → F_7
  317. Translate(T_3, g_1) → G_7
  318. Translate(U_3, g_1) → H_7
  319. Translate(V_3, g_1) → I_7
  320. Translate(W_3, g_1) → J_7
  321. Translate(Z_3, g_1) → K_7
  322. Polygon(F_7, G_7, H_7, I_7, J_7, K_7) → poly9', f_7, g_7, h_8, i_7, j_7, k_7
  323. Translate(A_4, g_1) → L_7
  324. Translate(B_4, g_1) → M_7
  325. Translate(C_4, g_1) → N_7
  326. Translate(S'_5, g_1) → O_7
  327. Translate(D_4, g_1) → P_7
  328. Translate(R'_3, g_1) → Q_7
  329. Polygon(L_7, M_7, N_7, O_7, P_7, Q_7) → poly20, l_7, m_9, n_7, o_7, p_7, q_7
  330. Translate(Z'_4, g_1) → R_7
  331. Translate(W'_3, g_1) → S_7
  332. Translate(M'_2, g_1) → T_7
  333. Polygon(R_7, S_7, T_7) → poly21, t_7, r_8, s_{10}
  334. Translate(Z'_5, g_1) → U_7
  335. Translate(M'_3, g_1) → V_7
  336. Translate(S'_3, g_1) → W_7
  337. Polygon(U_7, V_7, W_7) → poly22, w_8, u_7, v_7
  338. Translate(S'_4, g_1) → Z_7
  339. Translate(E_3, g_1) → A_8
  340. Translate(F_3, g_1) → B_8
  341. Translate(G_3, g_1) → C_8
  342. Polygon(Z_7, A_8, B_8, C_8) → poly23, z_9, a_8, b_{10}, c_{10}
  343. Translate(I_5, g_1) → D_8
  344. Translate(J_5, g_1) → E_8
  345. Translate(K_5, g_1) → F_8
  346. Translate(L_5, g_1) → G_8
  347. Polygon(D_8, E_8, F_8, G_8) → poly10', d_8, e_9, f_8, g_8
  348. Translate(M_5, g_1) → H_8
  349. Translate(N_5, g_1) → I_8
  350. Translate(O_5, g_1) → J_8
  351. Polygon(H_8, I_8, J_8) → poly11', j_8, h_9, i_8
  352. Translate(K_3, g_1) → K_8
  353. Translate(L_3, g_1) → L_8
  354. Translate(M_3, g_1) → M_8
  355. Translate(N_3, g_1) → N_8
  356. Translate(O_3, g_1) → O_8
  357. Polygon(K_8, L_8, M_8, N_8, O_8) → poly8', k_8, l_8, m_{10}, n_8, o_8
  358. Translate(Z'''_1, g_1) → P_8
  359. Translate(W'''_1, g_1) → Q_8
  360. Translate(P_3, g_1) → R_8
  361. Translate(R'''_1, g_1) → S_8
  362. Translate(Q_3, g_1) → T_8
  363. Polygon(P_8, Q_8, R_8, S_8, T_8) → poly24, p_8, q_8, r_9, s_{11}, t_8
  364. Translate(K_3, g_1) → U_8
  365. Translate(L_3, g_1) → V_8
  366. Translate(M_3, g_1) → W_8
  367. Translate(N_3, g_1) → Z_8
  368. Translate(O_3, g_1) → A_9
  369. Polygon(U_8, V_8, W_8, Z_8, A_9) → poly8'_1, u_8, v_8, w_9, z_{10}, a_9
  370. Translate(G_5, g_1) → B_9
  371. Translate(H_5, g_1) → C_9
  372. Translate(M'''_1, g_1) → D_9
  373. Polygon(B_9, C_9, D_9) → poly25, d_9, b_{11}, c_{11}
  374. Translate(E_5, g_1) → E_9
  375. Translate(F_5, g_1) → F_9
  376. Translate(S'''_1, g_1) → G_9
  377. Polygon(E_9, F_9, G_9) → poly26, g_9, e_{10}, f_9
  378. Mirror(Z_2, e) → H_9
  379. Mirror(A_3, e) → I_9
  380. Mirror(M''', e) → J_9
  381. Polygon(H_9, I_9, J_9) → poly27, j_9, h_{10}, i_9
  382. Translate(H_9, g_1) → K_9
  383. Translate(I_9, g_1) → L_9
  384. Translate(J_9, g_1) → M_9
  385. Polygon(K_9, L_9, M_9) → poly27', m_{11}, k_9, l_9
  386. Min(180, ((a - 5) * 180)) → r1
  387. Rotate(R_5, r1°, G) → N_9
  388. Rotate(S_5, r1°, G) → O_9
  389. Rotate(T_5, r1°, G) → P_9
  390. Rotate(U_5, r1°, G) → Q_9
  391. Rotate(V_5, r1°, G) → R_9
  392. Polygon(N_9, O_9, P_9, Q_9, R_9) → poly12', n_9, o_9, p_9, q_9, r_{10}
  393. Rotate(R_7, r1°, G) → S_9
  394. Rotate(S_7, r1°, G) → T_9
  395. Rotate(T_7, r1°, G) → U_9
  396. Polygon(S_9, T_9, U_9) → poly21', u_9, s_{12}, t_9
  397. Rotate(U_7, r1°, G) → V_9
  398. Rotate(V_7, r1°, G) → W_9
  399. Rotate(W_7, r1°, G) → Z_9
  400. Polygon(V_9, W_9, Z_9) → poly22', z_{11}, v_9, w_{10}
  401. Rotate(Z_7, r1°, G) → A_{10}
  402. Rotate(A_8, r1°, G) → B_{10}
  403. Rotate(B_8, r1°, G) → C_{10}
  404. Rotate(C_8, r1°, G) → D_{10}
  405. Polygon(A_{10}, B_{10}, C_{10}, D_{10}) → poly23', a_{10}, b_{12}, c_{12}, d_{10}
  406. Rotate(L_7, r1°, G) → E_{10}
  407. Rotate(M_7, r1°, G) → F_{10}
  408. Rotate(N_7, r1°, G) → G_{10}
  409. Rotate(O_7, r1°, G) → H_{10}
  410. Rotate(P_7, r1°, G) → I_{10}
  411. Rotate(Q_7, r1°, G) → J_{10}
  412. Polygon(E_{10}, F_{10}, G_{10}, H_{10}, I_{10}, J_{10}) → poly20', e_{11}, f_{10}, g_{10}, h_{11}, i_{10}, j_{10}
  413. Rotate(W_5, r1°, G) → K_{10}
  414. Rotate(Z_5, r1°, G) → L_{10}
  415. Rotate(A_6, r1°, G) → M_{10}
  416. Rotate(B_6, r1°, G) → N_{10}
  417. Rotate(C_6, r1°, G) → O_{10}
  418. Polygon(K_{10}, L_{10}, M_{10}, N_{10}, O_{10}) → poly13', k_{10}, l_{10}, m_{12}, n_{10}, o_{10}
  419. Rotate(D_6, r1°, G) → P_{10}
  420. Rotate(E_6, r1°, G) → Q_{10}
  421. Rotate(F_6, r1°, G) → R_{10}
  422. Polygon(P_{10}, Q_{10}, R_{10}) → poly14', r_{11}, p_{10}, q_{10}
  423. Rotate(M_6, r1°, G) → S_{10}
  424. Rotate(N_6, r1°, G) → T_{10}
  425. Rotate(O_6, r1°, G) → U_{10}
  426. Polygon(S_{10}, T_{10}, U_{10}) → poly16', u_{10}, s_{13}, t_{10}
  427. Rotate(G_6, r1°, G) → V_{10}
  428. Rotate(H_6, r1°, G) → W_{10}
  429. Rotate(I_6, r1°, G) → Z_{10}
  430. Rotate(J_6, r1°, G) → A_{11}
  431. Rotate(K_6, r1°, G) → B_{11}
  432. Rotate(L_6, r1°, G) → C_{11}
  433. Polygon(V_{10}, W_{10}, Z_{10}, A_{11}, B_{11}, C_{11}) → poly15', v_{10}, w_{11}, z_{12}, a_{11}, b_{13}, c_{13}
  434. Rotate(P_6, r1°, G) → D_{11}
  435. Rotate(Q_6, r1°, G) → E_{11}
  436. Rotate(R_6, r1°, G) → F_{11}
  437. Rotate(S_6, r1°, G) → G_{11}
  438. Polygon(D_{11}, E_{11}, F_{11}, G_{11}) → poly17', d_{11}, e_{12}, f_{11}, g_{11}
  439. Rotate(T_6, r1°, G) → H_{11}
  440. Rotate(U_6, r1°, G) → I_{11}
  441. Rotate(V_6, r1°, G) → J_{11}
  442. Rotate(W_6, r1°, G) → K_{11}
  443. Polygon(H_{11}, I_{11}, J_{11}, K_{11}) → poly18', h_{12}, i_{11}, j_{11}, k_{11}
  444. Rotate(E_9, r1°, G) → L_{11}
  445. Rotate(F_9, r1°, G) → M_{11}
  446. Rotate(G_9, r1°, G) → N_{11}
  447. Polygon(L_{11}, M_{11}, N_{11}) → poly26', n_{11}, l_{11}, m_{13}
  448. Rotate(B_9, r1°, G) → O_{11}
  449. Rotate(C_9, r1°, G) → P_{11}
  450. Rotate(D_9, r1°, G) → Q_{11}
  451. Polygon(O_{11}, P_{11}, Q_{11}) → poly25', q_{11}, o_{11}, p_{11}
  452. Rotate(P_8, r1°, G) → R_{11}
  453. Rotate(Q_8, r1°, G) → S_{11}
  454. Rotate(R_8, r1°, G) → T_{11}
  455. Rotate(S_8, r1°, G) → U_{11}
  456. Rotate(T_8, r1°, G) → V_{11}
  457. Polygon(R_{11}, S_{11}, T_{11}, U_{11}, V_{11}) → poly24', r_{12}, s_{14}, t_{11}, u_{11}, v_{11}
  458. Rotate(U_8, r1°, G) → W_{11}
  459. Rotate(V_8, r1°, G) → Z_{11}
  460. Rotate(W_8, r1°, G) → A_{12}
  461. Rotate(Z_8, r1°, G) → B_{12}
  462. Rotate(A_9, r1°, G) → C_{12}
  463. Polygon(W_{11}, Z_{11}, A_{12}, B_{12}, C_{12}) → poly28, w_{12}, z_{13}, a_{12}, b_{14}, c_{14}
  464. Rotate(K_9, r1°, G) → D_{12}
  465. Rotate(L_9, r1°, G) → E_{12}
  466. Rotate(M_9, r1°, G) → F_{12}
  467. Polygon(D_{12}, E_{12}, F_{12}) → poly27'', f_{12}, d_{12}, e_{13}
  468. Rotate(H_8, r1°, G) → G_{12}
  469. Rotate(I_8, r1°, G) → H_{12}
  470. Rotate(J_8, r1°, G) → I_{12}
  471. Polygon(G_{12}, H_{12}, I_{12}) → poly11'', i_{12}, g_{12}, h_{13}
  472. Rotate(D_8, r1°, G) → J_{12}
  473. Rotate(E_8, r1°, G) → K_{12}
  474. Rotate(F_8, r1°, G) → L_{12}
  475. Rotate(G_8, r1°, G) → M_{12}
  476. Polygon(J_{12}, K_{12}, L_{12}, M_{12}) → poly10'', j_{12}, k_{12}, l_{12}, m_{14}
  477. Rotate(Z_6, r1°, G) → N_{12}
  478. Rotate(A_7, r1°, G) → O_{12}
  479. Rotate(B_7, r1°, G) → P_{12}
  480. Rotate(C_7, r1°, G) → Q_{12}
  481. Rotate(D_7, r1°, G) → R_{12}
  482. Rotate(E_7, r1°, G) → S_{12}
  483. Polygon(N_{12}, O_{12}, P_{12}, Q_{12}, R_{12}, S_{12}) → poly19', n_{12}, o_{12}, p_{12}, q_{12}, r_{13}, s_{15}
  484. Rotate(F_7, r1°, G) → T_{12}
  485. Rotate(G_7, r1°, G) → U_{12}
  486. Rotate(H_7, r1°, G) → V_{12}
  487. Rotate(I_7, r1°, G) → W_{12}
  488. Rotate(J_7, r1°, G) → Z_{12}
  489. Rotate(K_7, r1°, G) → A_{13}
  490. Polygon(T_{12}, U_{12}, V_{12}, W_{12}, Z_{12}, A_{13}) → poly9'', t_{12}, u_{12}, v_{12}, w_{13}, z_{14}, a_{13}
  491. Min(180, ((a - 6.5) * 180)) → r5
  492. Mirror(H'_1, J) → B_{13}
  493. Vector(Q, B_{13}) → p_5
  494. Vector(Q, I) → q_5
  495. Rotate(S'_2, (-(r5°)), H) → C_{13}
  496. Rotate(O_1, (-(r5°)), H) → D_{13}
  497. Rotate(P_1, (-(r5°)), H) → E_{13}
  498. Rotate(Q_1, (-(r5°)), H) → F_{13}
  499. Rotate(G_6, (-(r5°)), N) → G_{13}
  500. Rotate(H_6, (-(r5°)), N) → H_{13}
  501. Rotate(I_6, (-(r5°)), N) → I_{13}
  502. Rotate(J_6, (-(r5°)), N) → J_{13}
  503. Rotate(K_6, (-(r5°)), N) → K_{13}
  504. Rotate(L_6, (-(r5°)), N) → L_{13}
  505. Polygon(G_{13}, H_{13}, I_{13}, J_{13}, K_{13}, L_{13}) → poly15'_1, g_{13}, h_{14}, i_{13}, j_{13}, k_{13}, l_{13}
  506. Rotate(L_7, (-(r5°)), N) → M_{13}
  507. Rotate(M_7, (-(r5°)), N) → N_{13}
  508. Rotate(N_7, (-(r5°)), N) → O_{13}
  509. Rotate(O_7, (-(r5°)), N) → P_{13}
  510. Rotate(P_7, (-(r5°)), N) → Q_{13}
  511. Rotate(Q_7, (-(r5°)), N) → R_{13}
  512. Polygon(M_{13}, N_{13}, O_{13}, P_{13}, Q_{13}, R_{13}) → poly20'_1, m_{15}, n_{13}, o_{13}, p_{13}, q_{13}, r_{14}
  513. Rotate(F_7, (-(r5°)), N) → S_{13}
  514. Rotate(G_7, (-(r5°)), N) → T_{13}
  515. Rotate(H_7, (-(r5°)), N) → U_{13}
  516. Rotate(I_7, (-(r5°)), N) → V_{13}
  517. Rotate(J_7, (-(r5°)), N) → W_{13}
  518. Rotate(K_7, (-(r5°)), N) → Z_{13}
  519. Polygon(S_{13}, T_{13}, U_{13}, V_{13}, W_{13}, Z_{13}) → poly9''_1, s_{16}, t_{13}, u_{13}, v_{13}, w_{14}, z_{15}
  520. Rotate(Z_6, (-(r5°)), N) → A_{14}
  521. Rotate(A_7, (-(r5°)), N) → B_{14}
  522. Rotate(B_7, (-(r5°)), N) → C_{14}
  523. Rotate(C_7, (-(r5°)), N) → D_{14}
  524. Rotate(D_7, (-(r5°)), N) → E_{14}
  525. Rotate(E_7, (-(r5°)), N) → F_{14}
  526. Polygon(A_{14}, B_{14}, C_{14}, D_{14}, E_{14}, F_{14}) → poly19'_1, a_{14}, b_{15}, c_{15}, d_{14}, e_{14}, f_{14}
  527. Rotate(H'_1, (-(r5°)), P) → G_{14}
  528. Rotate(C_1, (-(r5°)), P) → H_{14}
  529. Rotate(E_1, (-(r5°)), P) → I_{14}
  530. Rotate(S, (-(r5°)), P) → S'_6
  531. Rotate(B_1, (-(r5°)), P) → J_{14}
  532. Rotate(R, (-(r5°)), P) → R'_4
  533. Polygon(G_{14}, H_{14}, I_{14}, S'_6, J_{14}, R'_4) → poly2'_2, g_{14}, h_{15}, i_{14}, s'_6, j_{14}, r'_4
  534. Rotate(I_1, (-(r5°)), P) → K_{14}
  535. Rotate(J_1, (-(r5°)), P) → L_{14}
  536. Rotate(L_1, (-(r5°)), P) → M_{14}
  537. Rotate(S'_1, (-(r5°)), P) → N_{14}
  538. Rotate(M_1, (-(r5°)), P) → O_{14}
  539. Rotate(R'_1, (-(r5°)), P) → P_{14}
  540. Polygon(K_{14}, L_{14}, M_{14}, N_{14}, O_{14}, P_{14}) → poly2''_2, k_{14}, l_{14}, m_{16}, n_{14}, o_{14}, p_{14}
  541. Rotate(T_1, (-(r5°)), P) → Q_{14}
  542. Rotate(U_1, (-(r5°)), P) → R_{14}
  543. Rotate(V_1, (-(r5°)), P) → S_{14}
  544. Rotate(W_1, (-(r5°)), P) → T_{14}
  545. Rotate(Z_1, (-(r5°)), P) → U_{14}
  546. Rotate(A_2, (-(r5°)), P) → V_{14}
  547. Polygon(Q_{14}, R_{14}, S_{14}, T_{14}, U_{14}, V_{14}) → poly2'''_2, q_{14}, r_{15}, s_{17}, t_{14}, u_{14}, v_{14}
  548. Rotate(L_2, (-(r5°)), P) → W_{14}
  549. Rotate(M_2, (-(r5°)), P) → Z_{14}
  550. Rotate(N_2, (-(r5°)), P) → A_{15}
  551. Rotate(O_2, (-(r5°)), P) → B_{15}
  552. Rotate(P_2, (-(r5°)), P) → C_{15}
  553. Rotate(Q_2, (-(r5°)), P) → D_{15}
  554. Polygon(W_{14}, Z_{14}, A_{15}, B_{15}, C_{15}, D_{15}) → poly29, w_{15}, z_{16}, a_{15}, b_{16}, c_{16}, d_{15}
  555. Rotate(I_1, (-(r5°)), E) → E_{15}
  556. Rotate(J_1, (-(r5°)), E) → F_{15}
  557. Rotate(L_1, (-(r5°)), E) → G_{15}
  558. Rotate(S'_1, (-(r5°)), E) → H_{15}
  559. Rotate(M_1, (-(r5°)), E) → I_{15}
  560. Rotate(R'_1, (-(r5°)), E) → J_{15}
  561. Polygon(E_{15}, F_{15}, G_{15}, H_{15}, I_{15}, J_{15}) → poly2''_3, e_{15}, f_{15}, g_{15}, h_{16}, i_{15}, j_{15}
  562. Rotate(H'_1, (-(r5°)), E) → K_{15}
  563. Rotate(C_1, (-(r5°)), E) → L_{15}
  564. Rotate(E_1, (-(r5°)), E) → M_{15}
  565. Rotate(S, (-(r5°)), E) → S'_7
  566. Rotate(B_1, (-(r5°)), E) → N_{15}
  567. Rotate(R, (-(r5°)), E) → R'_5
  568. Polygon(K_{15}, L_{15}, M_{15}, S'_7, N_{15}, R'_5) → poly2'_3, k_{15}, l_{15}, m_{17}, s'_7, n_{15}, r'_5
  569. Rotate(L_2, (-(r5°)), E) → O_{15}
  570. Rotate(M_2, (-(r5°)), E) → P_{15}
  571. Rotate(N_2, (-(r5°)), E) → Q_{15}
  572. Rotate(O_2, (-(r5°)), E) → R_{15}
  573. Rotate(P_2, (-(r5°)), E) → S_{15}
  574. Rotate(Q_2, (-(r5°)), E) → T_{15}
  575. Polygon(O_{15}, P_{15}, Q_{15}, R_{15}, S_{15}, T_{15}) → poly30, o_{15}, p_{15}, q_{15}, r_{16}, s_{18}, t_{15}
  576. Rotate(T_1, (-(r5°)), E) → U_{15}
  577. Rotate(U_1, (-(r5°)), E) → V_{15}
  578. Rotate(V_1, (-(r5°)), E) → W_{15}
  579. Rotate(W_1, (-(r5°)), E) → Z_{15}
  580. Rotate(Z_1, (-(r5°)), E) → A_{16}
  581. Rotate(A_2, (-(r5°)), E) → B_{16}
  582. Polygon(U_{15}, V_{15}, W_{15}, Z_{15}, A_{16}, B_{16}) → poly2'''_3, u_{15}, v_{15}, w_{16}, z_{17}, a_{16}, b_{17}
  583. Rotate(I_1, (-(r5°)), F) → C_{16}
  584. Rotate(J_1, (-(r5°)), F) → D_{16}
  585. Rotate(L_1, (-(r5°)), F) → E_{16}
  586. Rotate(S'_1, (-(r5°)), F) → F_{16}
  587. Rotate(M_1, (-(r5°)), F) → G_{16}
  588. Rotate(R'_1, (-(r5°)), F) → H_{16}
  589. Polygon(C_{16}, D_{16}, E_{16}, F_{16}, G_{16}, H_{16}) → poly2''_4, c_{17}, d_{16}, e_{16}, f_{16}, g_{16}, h_{17}
  590. Rotate(H'_1, (-(r5°)), F) → I_{16}
  591. Rotate(C_1, (-(r5°)), F) → J_{16}
  592. Rotate(E_1, (-(r5°)), F) → K_{16}
  593. Rotate(S, (-(r5°)), F) → S'_8
  594. Rotate(B_1, (-(r5°)), F) → L_{16}
  595. Rotate(R, (-(r5°)), F) → R'_6
  596. Polygon(I_{16}, J_{16}, K_{16}, S'_8, L_{16}, R'_6) → poly2'_4, i_{16}, j_{16}, k_{16}, s'_8, l_{16}, r'_6
  597. Rotate(T_1, (-(r5°)), F) → M_{16}
  598. Rotate(U_1, (-(r5°)), F) → N_{16}
  599. Rotate(V_1, (-(r5°)), F) → O_{16}
  600. Rotate(W_1, (-(r5°)), F) → P_{16}
  601. Rotate(Z_1, (-(r5°)), F) → Q_{16}
  602. Rotate(A_2, (-(r5°)), F) → R_{16}
  603. Polygon(M_{16}, N_{16}, O_{16}, P_{16}, Q_{16}, R_{16}) → poly2'''_4, m_{18}, n_{16}, o_{16}, p_{16}, q_{16}, r_{17}
  604. Rotate(L_2, (-(r5°)), F) → S_{16}
  605. Rotate(M_2, (-(r5°)), F) → T_{16}
  606. Rotate(N_2, (-(r5°)), F) → U_{16}
  607. Rotate(O_2, (-(r5°)), F) → V_{16}
  608. Rotate(P_2, (-(r5°)), F) → W_{16}
  609. Rotate(Q_2, (-(r5°)), F) → Z_{16}
  610. Polygon(S_{16}, T_{16}, U_{16}, V_{16}, W_{16}, Z_{16}) → poly31, s_{19}, t_{16}, u_{16}, v_{16}, w_{17}, z_{18}
  611. Midpoint(H''_2, H) → A_{17}
  612. Midpoint(H, H''_1) → B_{17}
  613. Midpoint(H''_1, H'') → C_{17}
  614. Midpoint(H'', H''_2) → D_{17}
  615. Midpoint(H'_3, H'_2) → E_{17}
  616. Midpoint(H'_2, H'_1) → F_{17}
  617. Midpoint(H'_1, I) → G_{17}
  618. Midpoint(I, H''') → H_{17}
  619. Midpoint(I, B_{13}) → I_{17}
  620. Midpoint(J, K) → J_{17}
  621. Mirror(J_{17}, K) → K_{17}
  622. Mirror(F_{17}, K) → L_{17}
  623. Mirror(G_{17}, J) → M_{17}
  624. Mirror(Q, L_{17}) → Q'
  625. Mirror(D_{17}, H''_2) → N_{17}
  626. Mirror(D_{17}, H'') → O_{17}

AI Drawing Prompt Reference

Draw an Alhambra star pattern with p4g symmetry, featuring multiple symmetric star shapes and geometric figures. Start by constructing a basic polygon, then use midpoints and perpendicular lines to locate key points. Create symmetric star structures through mirror and rotation operations. Connect these points with line segments to form complex star patterns. Finally, add decorative arcs and lines to enrich the design.
The prompt above was compiled from the original drawing commands and is for reference only.