Alexandre B A Villares 2019-08-22 23:07:56 -03:00
rodzic d93c9e64f4
commit 4e34a56012
2 zmienionych plików z 71 dodań i 0 usunięć

Plik binarny nie jest wyświetlany.

Po

Szerokość:  |  Wysokość:  |  Rozmiar: 2.1 MiB

Wyświetl plik

@ -0,0 +1,71 @@
add_library('pdf')
linhas = []
divisoes = 5
salvar_pdf = False
ponto_clique = []
def setup():
size(500, 500)
def draw():
if salvar_pdf:
beginRecord(PDF, "####.pdf")
stroke(255) # traço branco
strokeWeight(10) # espessura do traço ("peso")
mh, mv = width / 2, height / 2
translate(mh, mv)
background(0, 128, 32) # verde (mude a sua cor!)
for num in range(divisoes):
rotate(radians(360. / divisoes))
for linha in linhas:
x1, y1, x2, y2 = linha
line(x1 - mh, y1 - mv, x2 - mh, y2 - mv)
scale(1, -1)
line(x1 - mh, y1 - mv, x2 - mh, y2 - mv)
scale(1, -1)
if salvar_pdf:
endRecord()
global salvar_pdf
salvar_pdf = False
if ponto_clique:
for num in range(divisoes):
rotate(radians(360 / divisoes))
line(ponto_clique[0] - mh, ponto_clique[1] - mv,
mouseX - mh, mouseY - mv)
scale(1, -1)
line(ponto_clique[0] - mh, ponto_clique[1] - mv,
mouseX - mh, mouseY - mv)
scale(1, -1)
def mousePressed(): # def mouseDragged():
if ponto_clique:
px, py = ponto_clique
linhas.append((px, py, mouseX, mouseY))
if mouseButton == LEFT:
ponto_clique[:] = mouseX, mouseY
elif mouseButton == RIGHT:
ponto_clique[:] = []
def keyPressed():
global salvar_pdf, divisoes
if key == "a":
linhas[:] = [] # esvazia lista de linhas
ponto_clique[:] = []
if key == "g":
saveFrame("#####.png")
print("salvando PNG")
if key == "p":
salvar_pdf = True
print("salvando PDF")
if key == BACKSPACE and linhas:
linhas.pop()
if key == "-" and divisoes > 2:
divisoes -= 1
if key == "+" or key == "=":
divisoes += 1