From 32a809cd372efb10041cdc36d2bb6982fec9290b Mon Sep 17 00:00:00 2001
From: Alexandre B A Villares <3694604+villares@users.noreply.github.com>
Date: Thu, 23 Jul 2020 23:39:36 -0300
Subject: [PATCH] 23
---
2020/sketch_2020_07_23c/mapa.py | 37 ++++++++++++------
.../sketch_2020_07_23c/sketch_2020_07_22c.gif | Bin 1909909 -> 0 bytes
.../sketch_2020_07_23c/sketch_2020_07_23c.gif | Bin 0 -> 2482188 bytes
.../sketch_2020_07_23c.pyde | 5 ++-
README.md | 6 +++
5 files changed, 33 insertions(+), 15 deletions(-)
delete mode 100644 2020/sketch_2020_07_23c/sketch_2020_07_22c.gif
create mode 100644 2020/sketch_2020_07_23c/sketch_2020_07_23c.gif
diff --git a/2020/sketch_2020_07_23c/mapa.py b/2020/sketch_2020_07_23c/mapa.py
index 90f2a47f..cc6d385e 100644
--- a/2020/sketch_2020_07_23c/mapa.py
+++ b/2020/sketch_2020_07_23c/mapa.py
@@ -28,23 +28,34 @@ class Quadrado():
self.cor = CORES[self.tipo]
def desenha(self):
- posX, posY = self.coluna * self.tamanho, self.fila * self.tamanho
+ tam = self.tamanho
+ posX, posY = self.coluna * tam, self.fila * tam
with pushMatrix():
translate(posX, posY)
noStroke()
fill(self.cor)
- pushMatrix()
- translate(0, 0, self.altura)
- rect(0, 0, self.tamanho, self.tamanho)
- popMatrix()
- fill(255) # branco
+
+ pos = ((-1, -1), (1, -1), (1, 1), (-1, 1))
+ for i, c in enumerate(self.cantos):
+ pc = self.cantos[i - 1]
+ ipos, ppos = pos[i], pos[i - 1]
+ beginShape()
+ vertex(ipos[0] * tam/2, ipos[1] * tam/2, c)
+ vertex(ppos[0] * tam/2, ppos[1] * tam/2, pc)
+ vertex(0, 0, self.altura)
+ endShape(CLOSE)
+ # translate(0, 0, self.altura)
+ # rect(0, 0, self.tamanho, self.tamanho)
+
textSize(20) # para escrever o tipo se o mouse estiver perto
textAlign(CENTER, CENTER)
if (dist(posX, posY, mouseX, mouseY) < self.tamanho * 2):
- text(self.tipo, self.tamanho / 2,
- self.tamanho / 2, self.altura + 5)
+ fill(0)
+ text(self.tipo, self.tamanho / 2, self.tamanho / 2, 35)
+ fill(255)
+ text(self.tipo, self.tamanho / 2 - 2, self.tamanho / 2 - 2, 36)
- def media_cantos(self):
+ def calcula_cantos(self):
"""
Devolva uma lista dos cantos nesta ordem:
0 --- 1
@@ -57,14 +68,14 @@ class Quadrado():
BL = ((-1, +1), (0, +1), (-1, 0), (0, 0))
BR = ((+1, +1), (0, +1), (+1, 0), (0, 0))
- result = []
- for corner in (TL, TR, BR, BL):
+ self.cantos = []
+ for canto in (TL, TR, BR, BL):
alturas = [self.mapa[(self.coluna + i, self.fila + j)].altura
- for i, j in corner
+ for i, j in canto
if self.mapa.get((self.coluna + i, self.fila + j))]
print(alturas)
media = sum(alturas) / len(alturas)
- result.append(media)
+ self.cantos.append(media)
@staticmethod
def sorteiaAltura(tipo):
diff --git a/2020/sketch_2020_07_23c/sketch_2020_07_22c.gif b/2020/sketch_2020_07_23c/sketch_2020_07_22c.gif
deleted file mode 100644
index 7fe3f061802b1ca29a278d122f01d6efb1052181..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 1909909
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