Stained Glass Wall

Stained Glass Wall
Loading the math board and drawing, please wait…
2016-06-02 02:08
This example demonstrates the generation of a stained glass wall pattern inspired by pentagonal descent. It involves core mathematical concepts such as transformation (Dilation, Symmetry, Translation), linear regression, solid geometry, and fractal geometry. The construction utilizes GeoGebra commands like Sequence, Intersect, Polygon, Mirror, PolyLine, and Segment. Suitable for high school and above students interested in spatial geometry and fractal pattern design.

GeoGebra Commands & Parameters

  1. Sequence(RandomElement[{-1, -1, 0, 1, 1, 1, 2}], i, 1, M) → list1
  2. Sequence(Random[1, N], i, 1, M) → list3'
  3. Intersect(Ray[Rotate[A, 90° - (180 * ° / N), A], Rotate[B, 90° - (180 * ° / N), A]], Ray[Rotate[B, (-(90° - (180 * ° / N))), B], Rotate[A, (-(90° - (180 * ° / N))), B]]) → F
  4. Sequence(Segment[Rotate[A, ((i * 360) * ° / N), F], Rotate[B, ((i * 360) * ° / N), F]], i, 1, N) → border1
  5. Sequence(Vector[Rotate[Vector[A, B], ((i * 360) * ° / N), F]], i, 1, N) → list2
  6. Polygon(A, B, N) → poly1, f, q, r, s, t, a, b, c, d, e, C, g, D, E, G, H, I, J, K, L, M_1, O, h, P, Q, R, S, T, i, j, l, m, n, p
  7. Sequence(Random[1, wid], i, 1, M) → list5'
  8. Sequence(F + (Element[list2, Element[list3', i]] * Element[list5', i]), i, 1, M) → list8
  9. Mirror(B, Line[A, C]) → B'
  10. PolyLine(A, B', C) → k
  11. Sequence(PolyLine[Rotate[A, ((i * 360) * ° / N), F], Rotate[B', ((i * 360) * ° / N), F], Rotate[C, ((i * 360) * ° / N), F]], i, 1, N) → star1
  12. Segment(F, B') → f_1
  13. Sequence(Random[1, N], i, 1, M) → list3
  14. Sequence(Random[1, wid], i, 1, M) → list5
  15. Sequence(F + (Element[list2, Element[list3, i]] * Element[list5, i]) + (Element[list2, Element[list3, i + 1]] * Element[list5, i + 1]), i, 1, M) → list6
  16. Sequence(RandomElement[{-1, -1, 0, 1, 1, 2}], i, 1, M) → list10
  17. Sequence(F + (Element[list2, Element[list3, i]] * Element[list5, i]), i, 1, M) → list11
  18. Sequence(Translate[Dilate[star1, rt^(Element[list10, i]), F], Vector[F, Element[list11, i]]], i, 1, M) → list7
  19. Sequence(Segment[F, Rotate[B, ((i * 360) * ° / N), F]], i, 1, N) → list4
  20. Sequence(Translate[Dilate[border1, rt^(Element[list1, i]), F], Vector[F, Element[list8, i]]], i, 1, M) → list9
  21. Sequence(Translate[Dilate[list4, rt^(Element[list1, i]), F], Vector[F, Element[list8, i]]], i, 1, M) → list12