Closed danielappinheiro closed 4 years ago
Olá @danielappinheiro ! Os formatos mais usuais que o Processing salva não tem camadas (PNG, JPG). Estou pensando aqui quais estratégias seriam possíveis...
Tente por favor editar a descrição da sua issue pondo mais contexto. Por exemplo, qual o uso que você imaginou para isso? Você tem alguma ideia específica que usaria isso? Não é legal abrir um issue com o corpo/descrição vazio.
Aqui um exemplo que salva cada "camada" em um arquivo PNG diferente. O desenho é feito em superfícies chamadas PGraphics (https://py.processing.org/reference/createGraphics.html) em vez de ser feita diretamente na tela (uma estratégia conhecida como offscreen buffer).
def setup():
size(600, 400)
def draw():
global c0, c1
# camada 0
c0 = createGraphics(600, 400)
c0.beginDraw()
# c0.background(200) # fundo (opaco)
c0.clear() # limpa os pixels, deixa transparente
c0.fill(255, 0, 0)
c0.rect(100, 100, 100, 100)
c0.endDraw()
# camada 1
c1 = createGraphics(600, 400)
c1.beginDraw()
c1.clear() # limpa os pixels, deixa transparente
c1.fill(0, 0, 200)
c1.ellipse(200, 200, 200, 200)
c1.endDraw()
# desenhe as camandas na tela
image(c0, 0, 0)
image(c1, 0, 0)
def keyPressed():
global sinalizador
if key == 's':
c0.save('camada0.png')
c1.save('camada1.png')
saveFrame("camadas-combinadas.png")
Pensando em design e manipulação de imagem, fiquei curiosa se seria possível salvar a imagem em camadas para poder ser feita edição posteriormente :)