Arte Computacional com Ruby...e amigos!
-
Upload
thibusil -
Category
Technology
-
view
599 -
download
0
description
Transcript of Arte Computacional com Ruby...e amigos!
Arte Computacional com Ruby...e amigos.
© 2011 ThoughtWorks, Ltd. All rights reserved.
Carlos Villela (@cv)
ThoughtWorks há 6 anos (Londres, Porto Alegre)Ruby desde 2004Java, Ruby, Smalltalk, Io, Ioke, etc...
Twitter, GitHub, Flickr: cvBlog: http://lixo.org
© 2011 ThoughtWorks, Ltd. All rights reserved.
Thiago Bueno (@tbueno)
ThoughtWorks há 1+ ano (Porto Alegre)Ruby desde 2005Java, Ruby, Clojure, etc
Twitter, GitHub, Flickr: tbuenoBlog: http://tbueno.org
© 2011 ThoughtWorks, Ltd. All rights reserved.
e + 1 = 0iπ
© 2011 ThoughtWorks, Ltd. All rights reserved.
e + 1 = 0iπIdentidade de Euler
Número de EulerUnidade Imaginária
© 2011 ThoughtWorks, Ltd. All rights reserved.
e + 1 = 0iπIdentidade de Euler
Número de EulerUnidade Imaginária
Pi
© 2011 ThoughtWorks, Ltd. All rights reserved.
e + 1 = 0iπIdentidade de Euler
Número de EulerUnidade Imaginária
Pi
1
© 2011 ThoughtWorks, Ltd. All rights reserved.
e + 1 = 0iπIdentidade de Euler
Número de EulerUnidade Imaginária
Pi
10
© 2011 ThoughtWorks, Ltd. All rights reserved.
e + 1 = 0iπIdentidade de Euler
Número de EulerUnidade Imaginária
Pi
10
Adição
© 2011 ThoughtWorks, Ltd. All rights reserved.
e + 1 = 0iπIdentidade de Euler
Número de EulerUnidade Imaginária
Pi
10
Adição
Multiplicação
© 2011 ThoughtWorks, Ltd. All rights reserved.
e + 1 = 0iπIdentidade de Euler
Número de EulerUnidade Imaginária
Pi
10
Adição
Multiplicação
Exponenciação
© 2011 ThoughtWorks, Ltd. All rights reserved.
e + 1 = 0iπ
“most beautiful theorem in mathematics”
“greatest equation ever”
© 2011 ThoughtWorks, Ltd. All rights reserved.
“Beauty depends on size as well as symmetry.” – Aristotle (384 B.C.-322 B.C.), Poetics
© 2011 ThoughtWorks, Ltd. All rights reserved.
“the mathematician is only complete in so far as he feels within himself the beauty of the true.” – Goethe
© 2011 ThoughtWorks, Ltd. All rights reserved.
“... who is not at the same time a bit of a poet will never be a full mathematician..”
– O. Spengler, in J. Newman, The World
of Mathematics, Simon & Schuster, 1956
© 2011 ThoughtWorks, Ltd. All rights reserved.
Por que Ruby?
© 2011 ThoughtWorks, Ltd. All rights reserved.
Beleza
© 2011 ThoughtWorks, Ltd. All rights reserved.
Simplicidade
© 2011 ThoughtWorks, Ltd. All rights reserved.
Sintaxe
© 2011 ThoughtWorks, Ltd. All rights reserved.
“Beauty depends on size as well as symmetry.” - Aristotle (384 B.C.-322 B.C.),
Poetics
Beleza
© 2011 ThoughtWorks, Ltd. All rights reserved.
“Beauty depends on size as well as symmetry.” - Aristotle (384 B.C.-322 B.C.),
Poetics
Simplicidade
Beleza
© 2011 ThoughtWorks, Ltd. All rights reserved.
“Beauty depends on size as well as symmetry.” - Aristotle (384 B.C.-322 B.C.),
Poetics
Simplicidade
Beleza
Sintaxe
© 2011 ThoughtWorks, Ltd. All rights reserved.
Matemática e a Arte
Proporção Áurea (Phi)• Aprox.1.6180339887A proporção de a+b para a é a mesma de a para bAlega-se ser a proporção mais esteticamente aplasível ao ser humano.
a b
a+b
© 2011 ThoughtWorks, Ltd. All rights reserved.
Matemática e a Arte
© 2011 ThoughtWorks, Ltd. All rights reserved.
Matemática e a Arte
© 2011 ThoughtWorks, Ltd. All rights reserved.
Matemática e a Arte
© 2011 ThoughtWorks, Ltd. All rights reserved.
Matemática e a Arte
© 2011 ThoughtWorks, Ltd. All rights reserved.
Matemática e a Arte
Nota LogaritmoFrequência
Música Física Matemática
© 2011 ThoughtWorks, Ltd. All rights reserved.
A Matemática é Sua Amiga
Álgebra• Curvas, retas, transformações
Geometria
• Quadriláteros, círculos...Geometria
• Senos, cosenos, tangentes... Propriedades dos números
• Naturais, inteiros, racionais, primos...
© 2011 ThoughtWorks, Ltd. All rights reserved.
Ver
© 2011 ThoughtWorks, Ltd. All rights reserved.
ruby-processing
Processing• Linguagem/ambiente de programação para imagens,
animações e projetos multimídia• MIDI, OpenGL, Arduino...
ruby-processing• É um wrapper Ruby do framework • Beleza do Ruby + as bibliotecas gráficas do Java
© 2011 ThoughtWorks, Ltd. All rights reserved.
ruby-processing
© 2011 ThoughtWorks, Ltd. All rights reserved.
ruby-processing posição e ângulo de uma “raiz”
© 2011 ThoughtWorks, Ltd. All rights reserved.
ruby-processing
PI, Cos e Sen
© 2011 ThoughtWorks, Ltd. All rights reserved.
ruby-processing
Chamadas Recursivas
© 2011 ThoughtWorks, Ltd. All rights reserved.
ruby-processing
Desenha “folhas”
© 2011 ThoughtWorks, Ltd. All rights reserved.
ruby-processing
© 2011 ThoughtWorks, Ltd. All rights reserved.
Context-free Art
Geração de imagens através de uma gramática livre de contexto e regras não determinísticas
Escrito em C++ e Objective-C
Parcialmente re-escrito com uma DSL em Ruby para o ruby-processing
© 2011 ThoughtWorks, Ltd. All rights reserved.
Context-free Art
© 2011 ThoughtWorks, Ltd. All rights reserved.
Context-free Art
© 2011 ThoughtWorks, Ltd. All rights reserved.
Visualização de Dados - Exemplo Real
Base de Dados de 100 corais de Johann S. BachSalvos em um arquivo Lisp
(1 ((st 8) (pitch 67) (dur 4) (keysig 1) (timesig 12) (fermata 0))((st 12) (pitch 67) (dur 8) (keysig 1) (timesig 12) (fermata 0)) ((st 20) (pitch 74) (dur 4) (keysig 1) (timesig 12) (fermata 0))((st 24) (pitch 71) (dur 6) (keysig 1) (timesig 12) (fermata 0)) ((st 30) (pitch 69) (dur 2) (keysig 1) (timesig 12) (fermata 0))((st 32) (pitch 67) (dur 4) (keysig 1) (timesig 12) (fermata 0)) ((st 36) (pitch 67) (dur 6) (keysig 1) (timesig 12) (fermata 0))((st 42) (pitch 69) (dur 2) (keysig 1) (timesig 12) (fermata 0)) ((st 44) (pitch 71) (dur 4) (keysig 1) (timesig 12) (fermata 0))((st 48) (pitch 69) (dur 8) (keysig 1) (timesig 12) (fermata 1)) ((st 56) (pitch 71) (dur 4) (keysig 1) (timesig 12) (fermata 0))((st 60) (pitch 74) (dur 8) (keysig 1) (timesig 12) (fermata 0)) ((st 68) (pitch 72) (dur 4) (keysig 1) (timesig 12) (fermata 0))((st 72) (pitch 71) (dur 4) (keysig 1) (timesig 12) (fermata 0)) ((st 76) (pitch 69) (dur 8) (keysig 1) (timesig 12) (fermata 0))((st 84) (pitch 67) (dur 8) (keysig 1) (timesig 12) (fermata 1))
© 2011 ThoughtWorks, Ltd. All rights reserved.
Visualização de Dados - Exemplo Real
Uso de Ruby devido à facilidade para parsing de stringsRuby + JRuby + Processing
Reconhecimento de padrõesTransformação de música em imagem
© 2011 ThoughtWorks, Ltd. All rights reserved.
Ouvir
© 2011 ThoughtWorks, Ltd. All rights reserved.
Básico do básico
C = 261.626 HzD = 293.665 HzE = 329.628 HzF = 349.228 HzG = 391.995 HzA = 440.000 HzB = 493.883 Hz
C D E F G A B = escala C Maior
© 2011 ThoughtWorks, Ltd. All rights reserved.
Básico do básico
C# = 277.183 HzD# = 311.127 HzE# = 349.228 HzF# = 369.994 HzG# = 415.305 HzA# = 466.164 HzB# = 523.251 Hz
© 2011 ThoughtWorks, Ltd. All rights reserved.
Básico do básico
C♭ = 246.942 Hz
D♭ = 277.183 Hz
E♭ = 311.127 Hz
F♭ = 329.628 Hz
G♭ = 369.994 Hz
A♭ = 415.305 Hz
B♭ = 466.164 Hz
© 2011 ThoughtWorks, Ltd. All rights reserved.
Básico do básico
C D E F G A B = C maiorC G D A E = pentatônica em CF G A C D = pentatônica em FC E♭ F F♯ G B♭ C = Blues!
© 2011 ThoughtWorks, Ltd. All rights reserved.
MIDI, OSC
Protocolos de comunicação como quaisquer outrosUbíquos• Ok, OSC nem tanto...SimplesLatência é o fator mais importante• Antigamente, hardware/cabos especiais• Hoje, Ethernet, USB e até Wi-Fi
© 2011 ThoughtWorks, Ltd. All rights reserved.
OSC
UDPSimplesPequenos pacotesBaixa latênciahttps://github.com/maca/ruby-oschttps://github.com/aberant/osc-ruby
© 2011 ThoughtWorks, Ltd. All rights reserved.
OSC
Suporte nativo no MonomeQuartz ComposerÓtimo para iniciantes!
© 2011 ThoughtWorks, Ltd. All rights reserved.
MIDI
Padrão indústriaSuporte pelo OSGarageBand, Logic, Reason, Ableton Live!, etcMuita coisa legada• Meio gambiarrento• Protocolo ainda bastante atrelado a hardware
© 2011 ThoughtWorks, Ltd. All rights reserved.
Midiator
Biblioteca Ruby para iteração com MIDIhttps://github.com/bleything/midiator• gem install midiatorExtremamente simplesMulti-plataforma• Software synth incluído para a versão Mac
© 2011 ThoughtWorks, Ltd. All rights reserved.
Midiatorrequire 'rubygems'require 'midiator' midi = MIDIator::Interface.newmidi.use :dls_synth
include MIDIator::Notes
2.times do [C3, D3, E3, C3].each{ |note| midi.play note, 0.5 }end
2.times do midi.play E3, 0.5 midi.play F3, 0.5 midi.play G3, 1 end
2.times do [G3, A3, G3, F3].each { |note| midi.play note, 0.250 } midi.play E3, 0.5 midi.play C3, 1end
2.times do midi.play C3, 0.5 midi.play G3, 0.5 midi.play C3, 1.0end
Mac Only!
© 2011 ThoughtWorks, Ltd. All rights reserved.
Archaeopteryx
Gerador de MIDI real-time, usando live codinggithub.com/gilesbowkett/archaeopteryxSequenciador de batidas que permite a criação de ritmos como Drum’n’Bass, Techno e Ambient Probabilidade para gerar comportamentos randômicos e “improvisações”
© 2011 ThoughtWorks, Ltd. All rights reserved.
A seguir, algumas palavras soltas...
...para você se divertir no Google
© 2011 ThoughtWorks, Ltd. All rights reserved.
sierpinski - chiptunes - mandelbrot - fibonacci - fractals - hypercube - game of life - arduino - monome - chuck - circuit bending - escher - sistemas de particulas - supercollider - pure data - quartz composer - reactable - c’74 max
© 2011 ThoughtWorks, Ltd. All rights reserved.
Livros
The Computational Beauty of NatureGödel, Escher, Bach: An Eternal Golden BraidProgramming Interactivity: A Designer's Guide to Processing, Arduino, and OpenframeworksProcessing: A Programming Handbook for Visual Designers and Artists
© 2011 ThoughtWorks, Ltd. All rights reserved.
Websites - Matemática e Arte
http://www.maths.surrey.ac.uk/hosted-sites/R.Knott/Fibonacci/fibInArt.html • Proporção áurea e Números de Fibonacci nas artes,
arquitetura e música.http://www.2dcurves.com/• Coleção de curvas matemáticashttp://www.cut-the-knot.org/manifesto/index.shtml• Manifesto matemática-arte
© 2011 ThoughtWorks, Ltd. All rights reserved.
Websites - Visuais
http://www.complexification.net/• Exemplos de obras feitas com Processing (incluindo a
imagem da capa desta apresentação)http://openprocessing.org• Agregador de animações feitas com Processing(incluindo a
imagem mostrada no último slide desta apresentação)http://www.contextfreeart.org/• Site sobre context-free art
© 2011 ThoughtWorks, Ltd. All rights reserved.
Websites - Áudio
http://upload.wikimedia.org/wikipedia/commons/9/97/Fibonacci.ogg• Composição musical feita com os números de Fibonaccihttp://botverse.com/music-and-mathematics-finding-the-natural-and-the-pentathonic-scales/5http://thinkzone.wlonk.com/Music/12Tone.htm• Explicação matemática para as escalas musicais
Entre em contatoCarlos [email protected]
Thiago [email protected]
Obrigado!”Mathematics, as much as music or any other art, is one of the means by
which we rise to a complete self-consciousness. The significance of Mathematics resides precisely in the fact that it is an art; by informing us of the nature of our own minds it informs us of much that depends on our
minds.” - J.W.N.Sullivan (1886-1937), Aspects of Science, 1925.