22 lines
841 B
Text
22 lines
841 B
Text
WIDTH = 243 //a power of 3 for a evenly spaced curve
|
|
|
|
open window 700, 700
|
|
|
|
Peano(0, 0, WIDTH, 0, 0)
|
|
|
|
Sub Peano(x, y, lg, i1, i2)
|
|
If (lg = 1) Then
|
|
line x * 3, y * 3
|
|
return
|
|
End If
|
|
lg = lg / 3
|
|
Peano(x + (2 * i1 * lg), y + (2 * i1 * lg), lg, i1, i2)
|
|
Peano(x + ((i1 - i2 + 1) * lg), y + ((i1 + i2) * lg), lg, i1, 1 - i2)
|
|
Peano(x + lg, y + lg, lg, i1, 1 - i2)
|
|
Peano(x + ((i1 + i2) * lg), y + ((i1 - i2 + 1) * lg), lg, 1 - i1, 1 - i2)
|
|
Peano(x + (2 * i2 * lg), y + (2 * (1 - i2) * lg), lg, i1, i2)
|
|
Peano(x + ((1 + i2 - i1) * lg), y + ((2 - i1 - i2) * lg), lg, i1, i2)
|
|
Peano(x + (2 * (1 - i1) * lg), y + (2 * (1 - i1) * lg), lg, i1, i2)
|
|
Peano(x + ((2 - i1 - i2) * lg), y + ((1 + i2 - i1) * lg), lg, 1 - i1, i2)
|
|
Peano(x + (2 * (1 - i2) * lg), y + (2 * i2 * lg), lg, 1 - i1, i2)
|
|
End Sub
|