tanks/fraktele.py

1296 lines
30 KiB
Python
Raw Permalink Normal View History

2026-05-17 19:55:12 +02:00
import random
import time
from turtle import *
from math import pi, sqrt
from itertools import permutations
def kolo():
print("rogi: 360")
h = int(input("promień w centymetrach: "))
c = input("kolor wypełnienia (ang): ")
h *= 37
speed(0)
penup()
goto(0, -h)
pendown()
color('gray')
try:
fillcolor(c)
except:
print("no no no, white!")
fillcolor("white")
begin_fill()
for o in range(360):
forward((2 * pi * h) / 360)
left(1)
end_fill()
def vektor(ile):
t = [[0 for _ in range(2)] for _ in range(ile)]
for i in range(ile):
print(i + 1, end="")
t[i][0], t[i][1] = input(". wektor: ").split(" ")
t[i][0] = int(t[i][0])
t[i][1] = int(t[i][1])
w = [list(p) for p in permutations(t)]
pensize(2)
for i in range(ile):
goto(t[i][0], t[i][1])
penup()
goto(0, 0)
pendown()
pensize(1)
for i in range(len(w)):
for j in range(len(w[i])):
goto(w[i][j][0] + xcor(), w[i][j][1] + ycor())
penup()
goto(0, 0)
pendown()
def kwgene(wiel, ilo, t):
fillcolor(kolory())
if t:
begin_fill()
for i in range(random.randrange(5, 10)):
rt(90)
fd(wiel)
if i == 3:
end_fill()
if ilo > 0:
lt(90)
print(ilo)
kwgene(wiel, ilo - 1, t)
# fd(wiel)
def kolowkole(wie, kol):
fillcolor(kolory())
if kol:
begin_fill()
for i in range(36):
forward((2 * pi * wie) / 36)
if wie > 20 and i % 3 == 0:
kolowkole(wie / 5, kol)
left(10)
end_fill()
def gwiazda():
n = int(input("ile ramion: "))
h = int(input("dułgosc ramion: "))
w = float(input("wspulczynik pomniejszenia: "))
a = kolory()
print("kolor wypelnienia (ang): " + a)
h *= 37
speed(0)
color('gray')
fillcolor(a)
begin_fill()
for kli in range(n):
penup()
fd(h)
x, y = pos()
lt(180)
fd(h)
lt(180)
lt(360 / n / 2)
fd(h * w)
pendown()
goto(x, y)
penup()
goto(0, 0)
rt(360 / n)
fd(h * w)
pendown()
goto(x, y)
penup()
goto(0, 0)
rt(360 / n * 3 / 2)
end_fill()
def dzewo(wys):
if wys <= 5:
fd(wys)
bk(wys)
return
pensize(wys / 37)
c = random.randrange(25, 35)
fd(wys)
if w > 9:
lt(c)
dzewo(wys * (1 / 1.5))
rt(c * 2)
dzewo(wys * (1 / 1.5))
lt(c)
bk(wys)
def pieciokat(w, t):
if w < 2:
return
fillcolor(kolory())
if t:
begin_fill()
for c in range(5):
pieciokat(w / 2.643, t)
fd(w)
lt(360 / 5)
end_fill()
def fgwiazda(w, n):
if n == 0:
fd(w)
return
fgwiazda(w / 3, n - 1)
lt(60)
fgwiazda(w / 3, n - 1)
rt(120)
fgwiazda(w / 3, n - 1)
lt(60)
fgwiazda(w / 3, n - 1)
def TT(w, y):
speed(0)
if w < y:
return
fd(w)
if w > y * 1.5:
lt(90)
TT(w * (1 / 1.5), y)
rt(180)
TT(w * (1 / 1.5), y)
lt(90)
bk(w)
def koniczyna(w, n):
if n > 2:
for i in range(n):
fd(w / 10 - i * 2)
lt(90)
koniczyna(w / (i + 2), n - 1)
rt(180)
koniczyna(w / (i + 2), n - 1)
lt(120)
i += 1
for j in range(n):
rt(30)
bk(w / 10 - (n - j - 1) * 2)
else:
i = 0
while i * 2 <= w / 10:
fd(w / 10 - i * 2)
lt(30)
i += 1
for j in range(i):
rt(30)
bk(w / 10 - (i - j - 1) * 2)
def trujkat(w, t):
if w > 2:
fillcolor(kolory())
if t:
begin_fill()
for i in range(3):
fd(w)
lt(120)
trujkat(w / 2, t)
rt(120)
fd(w)
rt(120)
end_fill()
def dzewoniekon(ile_k, sto, wiel):
fd(wiel)
if sto == 0:
for i in range(ile_k):
rt(360 / ile_k)
if wiel / 2 > 5:
dzewoniekon(ile_k, sto, wiel / 2)
else:
fd(wiel / 2)
bk(wiel / 2)
else:
if ile_k % 2 == 1:
if wiel / 2 > 10:
dzewoniekon(ile_k, sto, wiel / 2)
else:
fd(wiel / 2)
bk(wiel / 2)
for i in range(int(ile_k / 2)):
rt(sto)
if wiel / 2 > 10:
dzewoniekon(ile_k, sto, wiel / 2)
else:
fd(wiel / 2)
bk(wiel / 2)
lt(sto * int(ile_k / 2))
for i in range(int(ile_k / 2)):
lt(sto)
if wiel / 2 > 10:
dzewoniekon(ile_k, sto, wiel / 2)
else:
fd(wiel / 2)
bk(wiel / 2)
rt(sto * int(ile_k / 2))
else:
lt(sto / 2)
for i in range(int(ile_k / 2)):
rt(sto)
if wiel / 2 > 10:
dzewoniekon(ile_k, sto, wiel / 2)
else:
fd(wiel / 2)
bk(wiel / 2)
lt(sto * (int(ile_k / 2) - 1))
for i in range(int(ile_k / 2)):
lt(sto)
if wiel / 2 > 10:
dzewoniekon(ile_k, sto, wiel / 2)
else:
fd(wiel / 2)
bk(wiel / 2)
rt(sto * (int(ile_k / 2) - 1))
rt(sto / 2)
def kolory():
lis = ["white", "white smoke", "gainsboro", "light gray", "silver", "gray", "dim gray", "black", "light slate gray",
"slate gray", "alice blue", "light steel blue", "cornflower blue", "royal blue", "blue", "medium blue",
"navy", "dark blue", "midnight blue", "light blue", "deep sky blue", "dodger blue", "powder blue",
"sky blue", "light sky blue", "steel blue", "azure", "light cyan", "cyan", "pale turquoise",
"dark turquoise", "turquoise", "medium turquoise", "light sea green", "cadet blue", "dark cyan", "teal",
"dark slate gray", "mint cream", "aquamarine", "medium aquamarine", "dark sea green", "medium sea green",
"sea green", "honeydew", "pale green", "light green", "medium spring green", "spring green", "lime green",
"green", "forest green", "dark green", "green yellow", "chartreuse", "lawn green", "lime", "yellow green",
"olive drab", "beige", "dark khaki", "olive", "dark olive green", "pale goldenrod", "khaki", "ivory",
"light yellow", "light goldenrod yellow", "cornsilk", "lemon chiffon", "yellow", "gold", "goldenrod",
"dark goldenrod", "wheat", "tan", "burlywood", "peru", "sienna", "saddle brown", "floral white", "old lace",
"navajo white", "moccasin", "sandy brown", "orange", "dark orange", "chocolate", "firebrick", "brown",
"dark red", "maroon", "antique white", "papaya whip", "blanched almond", "bisque", "peach puff",
"light salmon", "coral", "tomato", "orange red", "red", "crimson", "dark salmon", "salmon", "light coral",
"indian red", "rosy brown", "linen", "seashell", "misty rose", "pink", "light pink", "hot pink", "deep pink",
"snow", "lavender blush", "pale violet red", "violet red", "medium violet red", "purple", "dark magenta",
"violet", "magenta", "thistle", "plum", "orchid", "medium orchid", "dark orchid", "dark violet",
"blue violet", "medium purple", "rebecca purple", "indigo", "ghost white", "lavender", "light slate blue",
"medium slate blue", "slate blue", "dark slate blue"]
return lis[random.randrange(0, len(lis))]
def litera(wiel, lit):
pendown()
if lit == "a":
penup()
fd(wiel / 4)
pendown()
for i in range(36):
forward((pi * wiel / 2) / 36)
lt(10)
penup()
fd(wiel / 4)
pendown()
lt(90)
fd(wiel / 2)
bk(wiel / 2)
rt(90)
elif lit == "A":
x = xcor()
y = ycor()
goto(x + wiel / 8, y + wiel / 2)
ob = heading()
rt(ob)
fd(wiel / 4)
bk(wiel / 4)
lt(ob)
goto(x + wiel / 4, y + wiel)
goto(x + wiel / 2, y)
elif lit == "b":
penup()
fd(wiel / 4)
pendown()
for i in range(36):
forward((pi * wiel / 2) / 36)
lt(10)
penup()
bk(wiel / 4)
pendown()
lt(90)
fd(wiel)
bk(wiel)
rt(90)
penup()
fd(wiel / 2)
pendown()
elif lit == "B":
penup()
fd(wiel / 4)
pendown()
for i in range(36):
forward((pi * wiel / 2) / 36)
lt(10)
penup()
bk(wiel / 4)
pendown()
lt(90)
fd(wiel / 2)
rt(90)
penup()
fd(wiel / 4)
pendown()
for i in range(36):
forward((pi * wiel / 2) / 36)
lt(10)
penup()
bk(wiel / 4)
pendown()
lt(90)
fd(wiel / 2)
bk(wiel)
rt(90)
penup()
fd(wiel / 2)
pendown()
elif lit == "c":
penup()
fd(wiel / 4)
lt(180)
for i in range(36):
if i < 22 or i > 33:
pendown()
else:
penup()
fd((pi * wiel / 2) / 36)
rt(10)
rt(180)
penup()
fd(wiel / 4)
pendown()
elif lit == "C":
penup()
fd(wiel / 4)
lt(180)
for i in range(36):
if i < 22 or i > 33:
pendown()
else:
penup()
if i == 9 or i == 27:
fd(wiel / 2)
fd((pi * wiel / 2) / 36)
rt(10)
rt(180)
penup()
fd(wiel / 4)
pendown()
elif lit == "d":
penup()
fd(wiel / 4)
pendown()
for i in range(36):
forward((pi * wiel / 2) / 36)
lt(10)
penup()
fd(wiel / 4)
pendown()
lt(90)
fd(wiel)
bk(wiel)
rt(90)
elif lit == "D":
lt(90)
fd(wiel)
rt(90)
for i in range(36):
fd((pi * wiel) / 72)
rt(5)
lt(180)
penup()
fd(wiel / 2)
pendown()
elif lit == "e":
penup()
fd(wiel / 4)
pendown()
lt(180)
for i in range(36):
if 27 <= i <= 32:
penup()
else:
pendown()
fd((pi * wiel / 2) / 36)
rt(10)
penup()
rt(90)
fd(wiel / 4)
rt(90)
pendown()
fd(wiel / 4)
bk(wiel / 4)
penup()
lt(90)
bk(wiel / 4)
rt(90)
fd(wiel / 4)
pendown()
elif lit == "E":
lt(90)
fd(wiel)
rt(90)
fd(wiel / 2)
rt(90)
penup()
fd(wiel)
rt(90)
pendown()
fd(wiel / 2)
rt(90)
fd(wiel / 2)
rt(90)
fd(wiel / 4)
bk(wiel / 4)
lt(90)
bk(wiel / 2)
rt(90)
fd(wiel / 2)
elif lit == "f":
x = xcor()
y = ycor()
penup()
fd(wiel / 4)
pendown()
lt(90)
fd(wiel * 3 / 4)
lt(90)
fd(wiel / 4)
bk(wiel / 2)
fd(wiel / 4)
rt(90)
for i in range(9):
fd((pi * wiel / 2) / 36)
rt(10)
penup()
goto(x + wiel / 2, y)
elif lit == "F":
lt(90)
fd(wiel)
rt(90)
fd(wiel / 2)
bk(wiel / 2)
lt(90)
bk(wiel / 2)
rt(90)
fd(wiel / 4)
bk(wiel / 4)
lt(90)
bk(wiel / 2)
rt(90)
penup()
fd(wiel / 2)
pendown()
elif lit == "g":
penup()
fd(wiel / 4)
pendown()
for i in range(36):
fd(wiel / 2 * pi / 36)
lt(10)
penup()
fd(wiel / 4)
pendown()
rt(90)
for i in range(9):
fd(wiel / 2 * pi / 36)
rt(10)
for i in range(9):
lt(10)
bk(wiel / 2 * pi / 36)
bk(wiel / 4)
fd(wiel / 4)
lt(90)
elif lit == "G":
penup()
fd(wiel / 4)
lt(180)
pendown()
for i in range(36):
fd((pi * wiel / 4) / 72)
rt(2.5)
fd(wiel / 2)
for i in range(36):
fd((pi * wiel / 2) / 72)
rt(5)
penup()
fd(wiel / 4)
pendown()
rt(90)
fd(wiel / 4)
bk(wiel / 4)
lt(90)
fd(wiel / 4)
for i in range(36):
fd((pi * wiel / 4) / 72)
rt(2.5)
penup()
bk(wiel / 4)
lt(180)
pendown()
elif lit == "h":
lt(90)
fd(wiel)
bk(wiel / 4 * 3)
for i in range(36):
fd((pi * wiel / 2) / 72)
rt(5)
fd(wiel / 4)
lt(90)
elif lit == "H":
lt(90)
fd(wiel)
bk(wiel / 2)
rt(90)
fd(wiel / 2)
lt(90)
fd(wiel / 2)
bk(wiel)
rt(90)
elif lit == "i":
penup()
fd(wiel / 4)
pendown()
lt(90)
fd(wiel / 4 * 3)
penup()
fd(wiel / 8)
pendown()
lt(90)
for i in range(36):
fd((wiel / 8 * pi) / 36)
rt(10)
lt(90)
penup()
fd(wiel / 8 * 7)
lt(90)
fd(wiel / 4)
pendown()
elif lit == "I":
penup()
fd(wiel / 4)
pendown()
lt(90)
fd(wiel)
bk(wiel)
rt(90)
penup()
fd(wiel / 4)
pendown()
elif lit == "j":
penup()
lt(90)
fd(wiel / 4)
rt(90)
pendown()
fd(wiel / 4)
lt(90)
penup()
fd(wiel / 8)
lt(90)
pendown()
for i in range(36):
fd((wiel / 8 * pi) / 36)
rt(10)
penup()
lt(90)
fd(wiel / 8)
pendown()
fd(wiel / 4 * 3)
for i in range(36):
fd((wiel / 8 * pi) / 36)
rt(6)
fd(wiel / 2)
bk(wiel / 2)
penup()
for i in range(36):
bk((wiel / 8 * pi) / 36)
lt(6)
bk(wiel / 2)
lt(90)
fd(wiel / 4)
pendown()
elif lit == "J":
penup()
lt(90)
fd(wiel)
rt(90)
pendown()
fd(wiel / 2)
rt(90)
fd(wiel)
for i in range(36):
fd((wiel / 4 * pi) / 36)
rt(5)
penup()
rt(90)
fd(wiel / 2)
elif lit == "k" or lit == "K":
lt(90)
fd(wiel / 2)
rt(60)
fd(wiel / 2)
bk(wiel / 2)
rt(75)
p = 2 * ((wiel / 2) * (wiel / 2))
fd(sqrt(p))
bk(sqrt(p))
lt(135)
fd(wiel / 2)
bk(wiel)
rt(90)
penup()
fd(wiel / 2)
pendown()
elif lit == "l":
penup()
lt(90)
fd(wiel / 8)
pendown()
fd(wiel / 8 * 7)
lt(180)
fd(wiel / 8 * 7)
for i in range(36):
fd((wiel / 16 * pi) / 36)
lt(2.5)
fd(wiel / 4)
elif lit == "L":
lt(90)
fd(wiel)
bk(wiel)
rt(90)
fd(wiel / 2)
elif lit == "m":
lt(90)
fd(wiel / 2)
for i in range(18):
fd((pi * wiel / 8) / 18)
rt(10)
fd((pi * wiel / 8) / 18)
fd(wiel / 2)
rt(180)
fd(wiel / 2)
for i in range(18):
fd((pi * wiel / 8) / 18)
rt(10)
fd((pi * wiel / 8) / 18)
fd(wiel / 2)
lt(90)
elif lit == "M":
lt(90)
fd(wiel)
x = xcor()
y = ycor()
goto(x + wiel / 4, y - wiel)
goto(x + wiel / 2, y)
bk(wiel)
rt(90)
elif lit == "n":
lt(90)
fd(wiel / 2)
for i in range(18):
rt(10)
fd((2 * pi * wiel / 8) / 18)
fd(wiel / 2)
lt(90)
elif lit == "N":
lt(90)
fd(wiel)
x = xcor()
y = ycor()
goto(x + wiel / 2, y - wiel)
fd(wiel)
bk(wiel)
rt(90)
elif lit == "o":
penup()
fd(wiel / 4)
pendown()
for i in range(36):
lt(10)
fd((2 * pi * wiel / 4) / 36)
penup()
fd(wiel / 4)
pendown()
elif lit == "O":
penup()
fd(wiel / 4)
pendown()
for i in range(18):
lt(5)
fd((2 * pi * wiel / 4) / 72)
fd(wiel / 2)
for i in range(18):
lt(10)
fd((2 * pi * wiel / 4) / 36)
fd(wiel / 2)
for i in range(18):
lt(5)
fd((2 * pi * wiel / 4) / 72)
penup()
fd(wiel / 4)
pendown()
elif lit == "p":
lt(90)
fd(wiel / 2)
bk(wiel)
fd(wiel / 4 * 3)
for i in range(36):
rt(10)
fd((pi * wiel / 2) / 36)
bk(wiel / 4)
penup()
rt(90)
fd(wiel / 2)
elif lit == "P":
lt(90)
fd(wiel)
rt(90)
for i in range(18):
fd((wiel / 4 * pi) / 18)
rt(10)
fd((wiel / 4 * pi) / 18)
penup()
lt(90)
fd(wiel / 2)
lt(90)
fd(wiel / 2)
pendown()
elif lit == "q":
penup()
fd(wiel / 4)
pendown()
for i in range(36):
fd((wiel / 2 * pi) / 36)
lt(10)
penup()
fd(wiel / 4)
pendown()
lt(90)
fd(wiel / 2)
bk(wiel)
fd(wiel / 2)
rt(90)
elif lit == "Q":
penup()
fd(wiel / 4)
pendown()
for i in range(18):
lt(5)
fd((2 * pi * wiel / 4) / 72)
fd(wiel / 2)
for i in range(18):
lt(10)
fd((2 * pi * wiel / 4) / 36)
fd(wiel / 2)
for i in range(18):
lt(5)
fd((2 * pi * wiel / 4) / 72)
rt(45)
fd(wiel / 4)
bk(wiel / 4)
lt(45)
penup()
fd(wiel / 4)
pendown()
elif lit == "r":
lt(90)
fd(wiel / 2)
bk(wiel / 16)
for i in range(18):
rt(5)
fd((2 * pi * wiel / 4) / 36)
for i in range(18):
bk((2 * pi * wiel / 4) / 36)
lt(5)
bk(wiel * 15 / 16 / 2)
rt(90)
penup()
fd(wiel / 2)
elif lit == "R":
lt(90)
fd(wiel)
rt(90)
for i in range(18):
fd((wiel / 4 * pi) / 18)
rt(10)
fd((wiel / 4 * pi) / 18)
goto(xcor() + wiel / 2, ycor() - wiel / 2)
lt(180)
elif lit == "s":
penup()
fd(wiel / 4)
pendown()
for i in range(36):
lt(5)
fd((2 * pi * wiel / 16) / 36)
for i in range(72):
rt(5)
fd((2 * pi * wiel / 16) / 36)
if i == 54:
penup()
for i in range(36):
lt(5)
fd((2 * pi * wiel / 16) / 36)
if i == 18:
pendown()
penup()
fd(wiel / 4)
elif lit == "S":
penup()
fd(wiel / 4)
pendown()
for i in range(36):
lt(5)
fd((2 * pi * wiel / 8) / 36)
for i in range(72):
rt(5)
fd((2 * pi * wiel / 8) / 36)
if (i == 54):
penup()
for i in range(36):
lt(5)
fd((2 * pi * wiel / 8) / 36)
if (i == 18):
pendown()
penup()
fd(wiel / 4)
elif lit == "t":
penup()
fd(wiel / 4)
lt(90)
pendown()
fd(wiel)
bk(wiel / 4)
lt(90)
fd(wiel / 4)
bk(wiel / 2)
fd(wiel / 4)
rt(90)
bk(wiel * 3 / 4)
rt(90)
penup()
fd(wiel / 4)
elif lit == "T":
penup()
fd(wiel / 4)
pendown()
lt(90)
fd(wiel)
lt(90)
fd(wiel / 4)
bk(wiel / 2)
penup()
lt(90)
fd(wiel)
lt(90)
elif lit == "u":
penup()
lt(90)
fd(wiel / 8)
fd(wiel * 3 / 8)
rt(180)
pendown()
fd(wiel * 3 / 8)
for i in range(36):
lt(5)
fd((2 * pi * wiel / 8) / 36)
fd(wiel * 3 / 8)
penup()
bk(wiel / 2)
rt(90)
elif lit == "U":
penup()
lt(90)
fd(wiel / 8)
fd(wiel * 7 / 8)
rt(180)
pendown()
fd(wiel * 7 / 8)
for i in range(36):
lt(5)
fd((2 * pi * wiel / 8) / 36)
fd(wiel * 7 / 8)
penup()
bk(wiel)
rt(90)
elif lit == "v":
penup()
goto(xcor(), ycor() + wiel / 2)
pendown()
goto(xcor() + wiel / 4, ycor() - wiel / 2)
goto(xcor() + wiel / 4, ycor() - wiel / 2)
penup()
goto(xcor(), ycor() - wiel / 2)
elif lit == "V":
penup()
goto(xcor(), ycor() + wiel)
pendown()
goto(xcor() + wiel / 4, ycor() - wiel)
goto(xcor() + wiel / 4, ycor() - wiel)
penup()
goto(xcor(), ycor() - wiel)
elif lit == "w":
penup()
goto(xcor(), ycor() + wiel / 2)
pendown()
goto(xcor() + wiel / 8, ycor() - wiel / 2)
goto(xcor() + wiel / 8, ycor() + wiel / 2)
goto(xcor() + wiel / 8, ycor() - wiel / 2)
goto(xcor() + wiel / 8, ycor() + wiel / 2)
penup()
goto(xcor(), ycor() - wiel / 2)
elif lit == "W":
penup()
goto(xcor(), ycor() + wiel)
pendown()
goto(xcor() + wiel / 8, ycor() - wiel)
goto(xcor() + wiel / 8, ycor() + wiel)
goto(xcor() + wiel / 8, ycor() - wiel)
goto(xcor() + wiel / 8, ycor() + wiel)
penup()
goto(xcor(), ycor() - wiel)
elif lit == "x":
goto(xcor() + wiel / 2, ycor() + wiel / 2)
penup()
bk(wiel / 2)
pendown()
goto(xcor() + wiel / 2, ycor() - wiel / 2)
elif lit == "X":
goto(xcor() + wiel / 2, ycor() + wiel)
penup()
bk(wiel / 2)
pendown()
goto(xcor() + wiel / 2, ycor() - wiel)
elif lit == "y":
penup()
goto(xcor(), ycor() + wiel / 2)
pendown()
goto(xcor() + wiel / 4, ycor() - wiel / 2)
goto(xcor() + wiel / 4, ycor() + wiel / 2)
goto(xcor() - wiel / 2, ycor() - wiel)
penup()
goto(xcor() + wiel / 2, ycor() + wiel / 2)
elif lit == "Y":
penup()
fd(wiel / 4)
lt(90)
pendown()
fd(wiel / 2)
goto(xcor() - wiel / 4, ycor() + wiel / 2)
goto(xcor() + wiel / 4, ycor() - wiel / 2)
goto(xcor() + wiel / 4, ycor() + wiel / 2)
goto(xcor() - wiel / 4, ycor() - wiel / 2)
bk(wiel / 2)
penup()
rt(90)
fd(wiel / 4)
elif lit == "z":
goto(xcor() + (wiel / 2), ycor() + wiel / 2)
bk(wiel / 2)
penup()
goto(xcor(), ycor() - wiel / 2)
pendown()
fd(wiel / 2)
elif lit == "Z":
goto(xcor() + (wiel / 2), ycor() + wiel)
bk(wiel / 2)
penup()
goto(xcor(), ycor() - wiel)
pendown()
fd(wiel / 2)
elif lit == "0":
penup()
fd(wiel / 4)
pendown()
for i in range(18):
lt(5)
fd((2 * pi * wiel / 4) / 72)
fd(wiel / 2)
for i in range(18):
lt(10)
fd((2 * pi * wiel / 4) / 36)
fd(wiel / 2)
for i in range(18):
lt(5)
fd((2 * pi * wiel / 4) / 72)
penup()
lt(90)
fd(wiel / 2)
lt(90)
pendown()
for i in range(36):
rt(10)
fd((2 * pi * wiel / 36) / 36)
penup()
lt(90)
fd(wiel / 2)
lt(90)
fd(wiel / 4)
pendown()
# elif lit == "1":
# elif lit == "2":
# elif lit == "3":
# elif lit == "4":
# elif lit == "5":
# elif lit == "6":
# elif lit == "7":
# elif lit == "8":
# elif lit == "9":
elif lit == "/":
goto(xcor() + wiel / 2, ycor() + wiel)
penup()
goto(xcor(), ycor() - wiel)
elif lit == "$":
penup()
goto(xcor(), ycor() + wiel)
pendown()
goto(xcor() + wiel / 2, ycor() - wiel)
else:
lt(90)
fd(wiel)
rt(90)
fd(wiel / 2)
rt(90)
fd(wiel)
rt(90)
fd(wiel / 2)
x = xcor()
y = ycor()
goto(x + wiel / 2, y + wiel)
fd(wiel / 2)
goto(x + wiel / 2, y)
rt(180)
pendown()
k = input("haslo: ")
if k != "surf":
while True:
if random.randrange(0, 10) == 1:
print("Intruz! (# - #)")
else:
print("Intruz! (^ - ^)")
time.sleep(0.3)
while True:
k = input("kod(p-pomoc): ")
if k == "p":
print(" |ko-rysuje kolo |", "\n", "|dz-rysuje drzewo |", "\n",
"|fg-rysuje gwiazge trojkatowa |", "\n", "|gw-rysuje gwiazdę |", "\n",
"|tt-rysuje fraktal złozony z liter'T' |", "\n", "|pi-rysuje pieciokaty w pieciokatach |", "\n",
"|pa-rysuje koniczyne |", "\n", "|tr-rysuje trojkaty w trojkatach |", "\n",
"|dznk-rysuje fraktal do zmodefikowania.|", "\n", "|kk-rysuje kola w kolach |", "\n",
"|pil-rysuje parabole pilki |", "\n", "|del-wyczysc ekran |", "\n",
"|q-wyjscie |", "\n", "|gt-idz do(x,y) |", "\n",
"|vek-vektory")
k = input("kod: ")
if k == "gt":
x, y = input("x,y (-460<x<460,-380<y<380): ").split(" ")
x = int(x)
y = int(y)
penup()
goto(x, y)
pendown()
k = input("kod: ")
# |
# Dalej \|/
# *
if k == "ko":
tracer(0, 0)
kolo()
if k == "dz":
w = int(input("wysokość pnia: "))
tracer(0, 0)
lt(90)
w *= 37
penup()
bk(w * 2)
pendown()
dzewo(w)
if k == "fg":
w = int(input("duldość ramy: "))
n = int(input("ilość fraktali na fraktalach: "))
i = int(input("ile bokow: "))
tracer(0, 0)
w *= 37
for d in range(i):
fgwiazda(w, n)
rt(360 / i)
if k == "gw":
tracer(0, 0)
gwiazda()
o = "o"
if k == "tt":
n = int(input("Wielkość: "))
y = int(input("powtażaj do wielkości(zal.:0,5-2): "))
tracer(0, 0)
n *= 37
left(90)
bk(n)
TT(n, y)
if k == "pi":
w = int(input("wielkość: "))
w *= 37
t = input("kolor(t/N): ")
tracer(0, 0)
if t == "t":
t = True
else:
t = False
penup()
goto(-w / 2, -w / 2)
pendown()
pieciokat(w, t)
if k == "pa":
w = int(input("wielkość: "))
w *= 37
n = int(input("głębokość: "))
tracer(0, 0)
koniczyna(w, n)
if k == "tr":
w = int(input("wielkość: "))
t = input("kolor(t/N): ")
tracer(0, 0)
if t == "t":
t = True
else:
t = False
w *= 37
lt(60)
fd(w)
rt(120)
fd(2 * w)
rt(120)
fd(2 * w)
rt(120)
fd(w)
rt(60)
trujkat(w / 2, t)
if k == "dznk":
i = int(input("Ile kontów na każdym rozdzieleniu: "))
print("Kont pomiędzy ramionami mniejszy niż ", end="")
print(360 / i, end="")
s = int(input(" : "))
w = int(input("duldość ramy: "))
tracer(0, 0)
w *= 37
dzewoniekon(i, s, w)
if k == "kk":
w = int(input("promień: "))
t = input("kolor(t/N): ")
w *= 37
tracer(0, 0)
if t == "t":
t = True
else:
t = False
while w > 10:
pendown()
kolowkole(w, t)
penup()
forward((2 * pi * w) / 144)
lt(90)
fd(w / 2.5)
rt(90)
w -= 2 * w / 5
if k == "kwa":
wiel = int(input("wielkość(piksele): "))
t = input("kolor(t/N): ")
if t == "t":
t = True
else:
t = False
# wiel *= 37
ilo = int(input("ilość: "))
tracer(0, 0)
li = []
kwgene(wiel, ilo - 1, t)
# fd(90)
if k == "lit":
w = int(input("wielkość: "))
l = input("znak: ")
w *= 37
tracer(0, 0)
litera(w, l)
if k == "nap":
w = input("wielkość: ")
l = input("ciąg znakow: ").split()
w = float(w)
w *= 37
# print(l)
o = 0
for i in l:
for j in i:
o += 1
o += 1
print("znaki: ", end="")
print(o - 1)
pensize(int(w / 37))
tracer(0, 0)
px = xcor()
for i in l:
for k in i:
if k == '|':
penup()
fd(w / 10)
goto(px, ycor() - (w + 10))
pendown()
else:
litera(w, k)
penup()
fd(w / 10)
if xcor() + w > 460:
goto(px, ycor() - (w + 10))
pendown()
penup()
fd(w)
pendown()
print(" ", end="")
# print("\n", ll)
if k == "pil":
n = int(input("moc: "))
f = int(input("Kąt(od pionu w prawo): "))
tracer(0, 0)
# odbicie(n, f)
goto(0, 0)
if k == "del":
clear()
o = 0
if k == "q":
o = 0
break
if k == "vek":
n = int(input("Podaj ilość wektorów: "))
vektor(n)
penup()
goto(0, 0)
rt(heading() + 720)
print("")
pendown()
update()
mainloop()
# aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ