Hilbert Space-Filling Curve Construction

Hilbert Space-Filling Curve Construction
Loading the math board and drawing, please wait…
2018-11-06 14:13
This GeoGebra example demonstrates the generation of the Hilbert curve, a classic fractal space-filling curve that maps a unit square into a continuous curve through recursive subdivision. Core mathematical concepts include: recursive fractals, space-filling curves, grid traversal, and iterated function systems (IFS). Construction details: uses Join command to connect line segments sequentially, Translate command for recursive curve duplication, button objects (butCreate, butDelete) to control curve generation and deletion, and variable n to control recursion depth. Suitable for upper secondary school and university mathematics courses, ideal for understanding fractal geometry, recursive constructions, and curve-filling algorithms in computer graphics.

GeoGebra Commands & Parameters

  1. Join(Zip[ApplyMatrix[M, LP0], M, LM]) → LP1
  2. Join(Zip[ApplyMatrix[M, LP1], M, LM]) → LP2
  3. Join(Zip[ApplyMatrix[M, LP2], M, LM]) → LP3
  4. Join(Zip[ApplyMatrix[M, LP3], M, LM]) → LP4
  5. Join(Zip[ApplyMatrix[M, LP4], M, LM]) → LP5
  6. Join(Zip[ApplyMatrix[M, LP5], M, LM]) → LP6
  7. Translate(PolyLine[LP1], Vector[(0, 0, -1)]) → PL1
  8. Translate(PolyLine[LP2], Vector[(0, 0, -1)]) → PL2
  9. Translate(PolyLine[LP3], Vector[(0, 0, -1)]) → PL3
  10. Translate(PolyLine[LP4], Vector[(0, 0, -1)]) → PL4
  11. Translate(PolyLine[LP5], Vector[(0, 0, -1)]) → PL5
  12. Translate(PolyLine[LP6], Vector[(0, 0, -1)]) → PL6