28.04.2013 Views

Apostila - Autodesk International Communities

Apostila - Autodesk International Communities

Apostila - Autodesk International Communities

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

CAD BIM MIDI NET. Integrando AutoCAD, Revit e<br />

música em plataforma NET.<br />

José Luis Menegotto – Escola Politécnica da Universidade Federal de Rio de Janeiro.<br />

Esta palestra tem por objetivo mostrar a integração de códigos escritos em C# nos programas AutoCAD<br />

e Revit Architecture com a biblioteca Midi-dot-NET. Será apresentado o desenvolvimento de um sistema<br />

para simulação de fachada cinética no qual se integram os três ambientes de trabalho e<br />

desenvolvimento. Serão apresentadas a teoria que sustenta o modelo de desenvolvimento do sistema, a<br />

formulação dos modelos 3D nos dois aplicativos gráficos e a relação destes com os algoritmos escritos<br />

para o ambiente MIDI. Serão apresentadas dicas de desenvolvimento.<br />

Objetivo de aprendizado<br />

Ao final desta palestra você terá condições de:<br />

Integrar AutoCAD e Revit com ambientes de simulação sonora.<br />

Incorporar som em seus aplicativos.<br />

Propor soluções específicas de integração visual e sonora para AutoCAD e Revit.<br />

Pensar o projeto de desenvolvimento interplataformas.<br />

Sobre o Palestrante<br />

Arquiteto Faculdade de Arquitetura Desenho e Urbanismo da Universidade Nacional de Buenos Aires,<br />

Argentina (1989). Estudou Desenho Assistido por Computador na cátedra do Arq. Arturo Montagú, no<br />

CentroCAO da FADU-UBA. Desenvolveu o aplicativo Cadtools arquitetura para AutoCAD. Realizou<br />

diversos trabalhos no campo da modelagem tridimensional e visualização. Ganhou o 1° prêmio<br />

TecnaCAD ‘93 com o modelo da Opera de Sydney. Autor do livro O desenho Digital. Técnica e arte,<br />

Interciência, 2000. Atuou como consultor CAD/AEC em diversas empresas de Rio de Janeiro.<br />

Desenvolveu os aplicativos DuctilCAD e PredialCAD para a Saint-Gobain Canalização (2000-2004).<br />

Doutorado em Arquitetura e Urbanismo pela Universidade Federal de Rio de Janeiro (2009).<br />

Desenvolveu o aplicativo Caixa de Música que traduz formas geométricas em formas sonoras e<br />

musicais. Atualmente é professor do Departamento de Expressão Gráfica da Escola Politécnica da<br />

UFRJ e do programa de Pós-Graduação em Engenharia Urbana da mesma instituição.<br />

Contato e-mail:<br />

jlmenegotto@poli.ufrj.br


Antecedentes e referências do trabalho.<br />

CAD BIM MIDI NET. Integrando AutoCAD, Revit e música em plataforma NET.<br />

Existem diversos estudos e reflexões sobre a relação entre Arquitetura e Música. Dentre eles, me<br />

interessa destacar apenas algumas ideias e experiências significativas para fundamentar o presente<br />

trabalho. A primeira referência data do início do século XIX, quando o filósofo alemão Friedrich Schelling<br />

ministrando um curso de Filosofia da Arte criou a metáfora segundo a qual a arquitetura seria música<br />

petrificada. Na mesma época, o escritor alemão Goethe, expressou a relação em outros termos. Em<br />

suas Máximas e Reflexões, expressava que a arquitetura seria uma música emudecida. A analogia, que<br />

se referia ao silêncio, encerrava em si a discussão filosófica tratada por Schelling, acerca da origem e<br />

possibilidade do conhecimento, mas também carregava uma crítica de natureza política, que Goethe<br />

fazia dos costumes aristocráticos da sua época.<br />

No século XX, o engenheiro e compositor grego Iannis Xenakis (1921-2001) mudaria o foco da analogia<br />

expressando que a música seria uma espécie de arquitetura móvel. Colocando o acento no movimento<br />

Xenakis criaria em 1954 a peça Metástases, composição para orquestra de 60 músicos na qual<br />

prevalecem os sons de glissandos de cordas. Enquanto engenheiro, ele escreveu a peça musical<br />

seguindo um procedimento gráfico, utilizando a representação de duas superfícies geométricas: o<br />

paraboloide hiperbólico e o conoide. Cada linha do desenho é a representação do glissando executado<br />

por um instrumento de cordas. Alguns anos mais tarde, projetando o Pavilhão Philips para a EXPO 58<br />

em Bruxelas, Xenakis transportou a analogia geométrica de Metástases utilizando os mesmos<br />

elementos e conceitos geométricos para projetar o edifício.<br />

Esquerda: estudo gráfico para Metástases (1954) I. Xenakis.<br />

Direita: Pavilhão Philips (1958) I. Xenakis, Le Corbusier.<br />

Outro evento interessante aconteceu no ano 2008, quando o compositor David Byrne, criou a instalação<br />

sonora denominada “Playing the building”, num prédio desocupado da cidade de Nova York. Inspirado<br />

talvez por experiências mais antigas como a do cravo ocular de Louis-Bertrand Castel (sec. XVII) ou a<br />

dos órgãos cromáticos de Alexander Rimington e Bainbridge Bishop (sec XIX), Byrne conectou um<br />

teclado a dispositivos mecânicos distribuídos pelo edifício e associados aos seus elementos<br />

arquitetônicos. Aproveitando as propriedades acústicas do grande espaço ressonante do galpão,<br />

transformou a edificação num instrumento não convencional. Cada dispositivo tinha a função de percutir,<br />

insuflar ou vibrar sobre a estrutura metálica, as tubulações e as vidraças, produzindo ressonâncias.<br />

2


CAD BIM MIDI NET. Integrando AutoCAD, Revit e música em plataforma NET.<br />

Esquerda: Órgão de cores de Bishop. Centro e direita: Playing the building. D. Byrne.<br />

Este trabalho se insere na tradição das pesquisas que procuram explorar relações entre as artes e o faz<br />

relacionando os ambientes gráficos de AutoCAD e Revit, associando-os com ferramentas utilizadas pela<br />

disciplina conhecida como Composição Assistida por Computador (CAC).<br />

Integração AutoCAD – Compo Music.<br />

Compo Music é um programa de composição musical escrito em Common LISP pelo engenheiro e<br />

compositor Bruno Lartillot disponível em http://sourceforge.net/projects/compo/files/compo/3.0/. Apoia-se<br />

por uma biblioteca de funções CMN (Common Music Notation) que permite escrever as partituras<br />

musicais ou exportar a composição em formato de protocolo MIDI (Musical Instruments Digital Interface).<br />

MIDI é uma interface de comunicação que permite conectar, através de programas específicos,<br />

instrumentos musicais equipados com microprocessadores entre si ou a computadores. O protocolo de<br />

comunicação MIDI contém as ordens que serão processadas pelos sequenciadores e sintetizadores de<br />

som.<br />

Para realizar a integração entre AutoCAD e o Compo Music, foi definida a Caixa de Música, que é um<br />

conjunto de técnicas, mecanismos matemáticos e procedimentos algorítmicos programados em<br />

AutoLISP. A funcionalidade dos algoritmos permite extrair coordenadas espaciais de objetos modelados<br />

em AutoCAD; transformar essas coordenadas numéricas em eventos sonoros na sintaxe do Compo<br />

Music; concatenar os eventos de acordo a diversos critérios de organização; e, finalmente, exportar o<br />

resultado a arquivos em formato MIDI para realizar a audição.<br />

A caixa é materializada como um sistema de três eixos ortogonais que ao invés de serem graduados<br />

com valores numéricos graduam-se com parâmetros musicais: nome da nota, duração, oitava e<br />

dinâmica. Os primeiros três parâmetros são distribuídos modularmente sobre os eixos, isto é, repetidos<br />

ad-infinitum em unidades inteiras de acordo com a quantidade de elementos de conjuntos de parâmetros<br />

musicais arbitrários, guardados em formato de listas em Autolisp. A dinâmica é distribuída<br />

arbitrariamente sobre os três eixos, sendo computada como resultado da média aritmética de valores<br />

numericamente expressos.<br />

3


CAD BIM MIDI NET. Integrando AutoCAD, Revit e música em plataforma NET.<br />

Configuração dos eixos X Y Z da Caixa de Música.<br />

O procedimento de tradução musical realizado com o Compo é realizado em duas etapas. Primeiro se<br />

procede a capturar as coordenadas numéricas do modelo e exportá-las a um arquivo de extensão lsp<br />

com a tradução à sintaxe musical do Compo. O segundo passo é a geração do arquivo MIDI, realizada<br />

desde a interface de comandos do ambiente Windows, no qual se procede a executar o Compo que faz<br />

a leitura do arquivo Lsp gerando o arquivo com extensão mid. O arquivo mid, é lido posteriormente por<br />

programas específicos que o executam.<br />

(defun nome_da_peça () ;; Inicia a função...<br />

(setf Voz_01 ;; definição da primeira voz traduzida.<br />

(note :pos 0 ;; define a posição de início da voz.<br />

(:voice-class 0 ;; define o número do instrumento associado com a voz.<br />

(:hei :d4 :dur 0.250 :dyn 7.47) ;; som tônico.<br />

(:hei :d4 :dur 0.250 :dyn 7.47) ;; som tônico.<br />

(....) ;; continua sequência de toques.<br />

))) ;; fecha a lista de sons tônicos da primeira voz traduzida.<br />

(setf Voz_02 ;; definição da segunda voz traduzida.<br />

(note :pos 0 ;; define a posição de início da voz.<br />

(:voice-class 1 ;; define o número do instrumento associado com a voz.<br />

(:hei :d4 :dur 0.250 :dyn 7.47) ;; som tônico.<br />

(:hei :d4 :dur 0.250 :dyn 7.47) ;; som tônico.<br />

(....) ;; continua sequência de toques.<br />

))) ;; fecha a lista de sons tônicos da segunda voz traduzida.<br />

;;Inicia definição de instrumentos (timbres) para cada voz.<br />

(program-change 0 :acoustic-grand-piano) ;; definição do instrumento 1<br />

(program-change 1 :vibraphone) ;; definição do instrumento 2<br />

(realize (midi :sync :midi-file "nome_da_peça.mid" ;; Inicia ordens de exportação com definição de pulsações.<br />

:tempo 40 ;; definição de pulsações por minuto.<br />

(Voz_01)<br />

(Voz_02)<br />

))) ;; fecha a função.<br />

Exemplo de organização do arquivo Lsp enviado para o Compo Music.<br />

4


CAD BIM MIDI NET. Integrando AutoCAD, Revit e música em plataforma NET.<br />

Esta técnica de integração para a leitura dos pontos e a sua execução sonora não é síncrona. A<br />

sincronia entre leitura e execução pode ser realizada programando a API com o auxílio de Midi-dot-net.<br />

Integração de Revit e AutoCAD com Midi-dot-NET.<br />

Fachada cinética.<br />

Midi-dot-net é uma biblioteca de funções que permite<br />

controlar dispositivos MIDI. Ela é escrita em C# na<br />

plataforma .NET. Pode ser baixada desde<br />

http://code.google.com/p/midi-dot-net/. Funciona a<br />

partir do .NET Framework 3.5 em diante e no Visual<br />

Studio 2008, tanto na versão Express como na<br />

Professional. Utiliza a API winmm.dll.<br />

Para utilizar as classes e objetos definidos na<br />

biblioteca deve-se carregar como referência<br />

(Reference) do projeto no Solution Explorer o arquivo<br />

Midi.dll.<br />

Na imagem ao lado também foram carregadas, como<br />

Recursos do projeto (Resources), 7 sequencias<br />

sonoras pré-gravadas em formato Wave<br />

(cristal_01.wav a cristal_07.wav). Será mostrado mais<br />

adiante, que esses arquivos podem ser executados<br />

pelo driver do Windows Midia Player, o que representa<br />

outra técnica possível para o tratamento de sons tanto<br />

em Revit como em AutoCAD.<br />

Para integrar a biblioteca Midi-dot-Net em AutoCAD<br />

valem as mesmas recomendações de drivers e<br />

recursos aplicados em Revit.<br />

A API programada para Revit em C# visa assistir os projetistas durante a etapa de concepção de uma<br />

fachada cinética, isto é, uma fachada que apresente algum tipo de comportamento dinâmico. O<br />

algoritmo simula visualmente os padrões de movimento que serão posteriormente transferidos aos<br />

componentes dinâmicos concretos do edifício. No caso apresentado, busca-se controlar esteticamente a<br />

variação de vidros polarizados aplicados sobre a fachada.<br />

A tecnologia de vidros polarizados permite mudar a transparência do vidro pela aplicação de corrente<br />

elétrica. A passagem ou a obstrução da corrente pelo vidro, tem como efeito permitir que as moléculas<br />

do material se alinhem ou desalinhem, conferindo-lhe o aspecto de transparência ou opacidade. Partindo<br />

dessa possibilidade, a programação da API procura estabelecer uma forma de estudar a configuração de<br />

padrões de passagem ou obstrução da corrente elétrica para produzir tramas com efeito visual.<br />

5


Organização do modelo.<br />

CAD BIM MIDI NET. Integrando AutoCAD, Revit e música em plataforma NET.<br />

O algoritmo modifica o estado de um componente arquitetônico do modelo 3D de acordo à posição que<br />

ocupe na fachada. Ela é modelada utilizando uma família Wall-Panel. A família do tipo Curtain-Wall<br />

utiliza como elemento de fechamento uma família do tipo Curtain Panel preparada com duas camadas<br />

de vidro. Projetou-se a família com parâmetros de visibilidade. Cada camada de vidro possui os<br />

parâmetros de visibilidade instanciados: Vidro_Ligado / Vidro_Desligado. Esse recurso permite simular o<br />

comportamento de um vidro polarizado real em estados ON/OFF, o que implica em transparência ou<br />

opacidade.<br />

Família de Painel cinético.<br />

6


Corpo principal do código.<br />

CAD BIM MIDI NET. Integrando AutoCAD, Revit e música em plataforma NET.<br />

7


Resultado visual das tramas.<br />

CAD BIM MIDI NET. Integrando AutoCAD, Revit e música em plataforma NET.<br />

Fachada com tramas variáveis - Fator de variabilidade = 5<br />

Execução das notas musicais em sincronia sobre a fachada cinética.<br />

A fachada cinética completa-se com eventos sonoros. Na próxima imagem a função Toca_a_Nota<br />

executa uma nota musical (escala cromática com 12 notas) da biblioteca Midi-dot-net. A função recebe<br />

dois argumentos inteiros, grau e oitava que são utilizados para selecionar uma nota da lista de Graus e<br />

transpô-la para a altura de entonação correspondente.<br />

Por exemplo, utilizando a classe Pitch pode-se executar a nota Dó no seu tom mais grave escrevendo<br />

Pitch.C0 ou tocar o Dó, no seu tom mais agudo, oito oitavas acima com Pitch.C8. A seguinte linha de<br />

código cumpre a função de selecionar a nota da lista de Graus e transpô-la à oitava correspondente.<br />

Nota = Graus.ElementAt(grau) + (12 * oitava);<br />

Como o Midi-dot-net é uma biblioteca independente, os códigos que contenham apenas referências aos<br />

objetos e classes dessa biblioteca podem ser aproveitados sem modificações tanto em Revit como em<br />

AutoCAD. Procurou-se assim manter os mecanismos de toque em métodos independentes aos<br />

mecanismos de procura e filtragem de objetos gráficos.<br />

8


CAD BIM MIDI NET. Integrando AutoCAD, Revit e música em plataforma NET.<br />

A seguir se mostra o código exemplificando a definição do tempo e das escalas que serão utilizadas. As<br />

escalas são definidas através dos índices numéricos das notas da escala cromática (as 12 notas<br />

separadas por intervalos de semitom) e da estrutura intervalar correspondente à escala desejada. Assim,<br />

a lista de índices para qualquer escala maior com estrutura T, T, St, T, T, T, St (T = tom, St = Semitom)<br />

será 0, 2, 4, 5, 7, 9, 11, pois o intervalo sonoro entre duas notas vizinhas da escala cromática<br />

corresponde a um semitom. Neste exemplo utiliza-se a estrutura da escala Menor Natural.<br />

O seguinte código mostra as chamadas para a definição dos dispositivos MIDI e dos instrumentos que<br />

serão executados. Finalmente, o sequenciamento dos toques através da classe clock do Midi-dot-net.<br />

9


Outro método de execução de sons.<br />

CAD BIM MIDI NET. Integrando AutoCAD, Revit e música em plataforma NET.<br />

Pode-se optar pela execução de sons através do driver do Midia Player do Windows ao invés de fazê-lo<br />

pela biblioteca de funções do Midi-dot-Net. Na imagem embaixo, a função Tocar executa sequencias<br />

sonoras que estão pré-gravadas em formato Wave e carregadas como Recursos do projeto (cristal_01 a<br />

cristal_07). Cria-se um objeto SoundPlayer que é executado pelo método Play().<br />

Esta técnica abre a possibilidade de gravar uma biblioteca de pequenas locuções, cujo conteúdo poderia<br />

ser composto por nomes de compartimentos, legendas, referências dos materiais ou especificações<br />

funcionais do edifício que se está projetando, chamadas dinamicamente durante uma seção de projeto.<br />

Referências.<br />

AUTODESK, INC. Revit 2011. API Developer´s guide. <strong>Autodesk</strong>, 2010.<br />

GOETHE, Johann Wolfgang von. Escritos sobre arte. São Paulo: Imprensa Oficial, 2008.<br />

MENEGOTTO, José Luis. A caixa de música. Contraponto formal entre a arquitetura e a música. Tese.<br />

Universidade Federal de Rio de Janeiro, Faculdade de Arquitetura e Urbanismo, Rio de Janeiro: UFRJ/<br />

FAU, 2009.<br />

MOLONEY, Jules. Designing kinetics for Architectural Facades: State Change. Routledge. London , New<br />

York, 2009.<br />

SCHELLING, F.W.J. Filosofia da arte. São Paulo: USP, 2001.<br />

XENAKIS, Iannis. Formalized Music.Thought and Mathematics in Composition. New York: Pendragon<br />

Press, 1992.<br />

Agradecimentos.<br />

Agradecimentos a <strong>Autodesk</strong> ADN, <strong>Autodesk</strong> Student Program e a Jeremy Tammik pelo valioso suporte<br />

durante a criação da aplicação.<br />

10

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!