metro5p

Releituras generativas de obras do Metrô de São Paulo com p5.js

2025

Projeto

metro5p é um experimento de arte generativa que recria, em código, obras presentes em estações do Metrô de São Paulo. A aplicação reúne duas releituras interativas e permite alterar dimensões e paletas antes de gerar uma nova composição no navegador.

Releituras

L2-BVM parte de Des-Aceleração (1991), de Fernando Lemos, presente na estação Brigadeiro. O algoritmo divide o canvas em uma grade regular, separa cada célula em dois triângulos e combina cores aleatórias com gradientes direcionais. A orientação variável das diagonais e as regras que evitam algumas combinações mantêm o ritmo visual da referência sem repetir uma imagem fixa.

Composição do experimento L2-BVM.Variação gerada a partir de uma grade triangular.

L2-BVP interpreta Cores e Formas (1991), de Cícero Dias. Uma grade de colunas com larguras ponderadas é subdividida em células de alturas variáveis. Cada área recebe um triângulo ou quadrilátero irregular, enquanto formas nas bordas superior e inferior ajudam a estruturar a composição.

Composição do experimento L2-BVP.Variação construída com células e polígonos irregulares.

Arquitetura técnica

O projeto é uma aplicação multipágina estática feita com HTML, CSS e JavaScript, sem framework ou etapa de build. Cada página carrega o p5.js 1.4.1 por CDN e executa seu sketch em instance mode. Os formulários convertem as cores selecionadas para RGB, removem o canvas anterior e iniciam uma nova renderização com os parâmetros informados.

A página inicial funciona como catálogo, enquanto navbar e rodapé são fragmentos HTML compartilhados e carregados com fetch. Por isso, a execução local requer um servidor HTTP; abrir os arquivos diretamente não garante que esses componentes sejam carregados.

Escopo

A geração acontece inteiramente no navegador, sem backend ou persistência. O projeto prioriza exploração visual e variação procedural: uma mesma paleta pode produzir composições diferentes a cada execução. A versão atual não inclui testes automatizados nem exportação direta do canvas.

GitHub