Linguagem de programação visual (Grasshopper)
Introdução
Em geral
Grasshopper é uma linguagem de programação visual desenvolvida por David Rutten na Robert McNell & Associates.[1] Grasshopper é um plug-in executado no aplicativo CAD 3D Rhinoceros. Os programas são criados arrastando componentes para a área de trabalho. Os componentes possuem entradas e saídas, as saídas se conectam às entradas dos componentes subsequentes. É usado principalmente para programar algoritmos generativos.[2][3] Muitos dos componentes do Grasshopper criam geometria 3D.[ex 1] Os programas também podem conter outros tipos de algoritmos, como numéricos e textuais[ex 2] audiovisuais[ex 3] e aplicações táteis.[ex 4].
A primeira versão do Grasshopper, na época chamada Explicit History, foi publicada em setembro de 2007. Uma versão beta está disponível atualmente, sendo esta uma fase de desenvolvimento. Por ainda estar em desenvolvimento, é oferecido gratuitamente e sem prazo. Apesar do exposto, é necessário ter uma licença do Rhinoceros 3D 4.0 ou posterior para poder executar o programa.
Editor baseado em nó
A interface principal para design de algoritmos no Grasshopper é o editor baseado em nós. A informação vai de componente a componente através de cabos que conectam saídas a entradas. A informação também pode ser definida localmente como uma constante ou importada de um documento existente do Rhino. As informações são armazenadas em parâmetros, que podem ou não estar conectados a outros componentes.
Na imagem mostrada acima você pode ver três componentes flutuantes que estão vinculados a um componente de subtração. As duas caixas amarelas localizadas à esquerda definem uma série de constantes numéricas. Na parte superior estão painéis contendo quatro números inteiros (6,7,8 e 12), enquanto na parte inferior o painel contém apenas um número. Esses parâmetros flutuantes fornecem dados para o componente de subtração, o que resulta na saída de quatro valores (6-5=1, 7-5=2, 8-5=3 e 12-5=7). O mesmo processo pode ser alcançado com expressões textuais e uma componente de avaliação. Este software permite combinar programação visual e escrita no mesmo ambiente de trabalho.
Interface do usuário
O Grasshopper possui uma GUI muito avançada, possui muitos recursos difíceis de encontrar em software de produção. Está em discussão se a presença desses elementos melhora ou dificulta o uso de interface de programação. A janela principal é composta por paletas de componentes e pela área de trabalho ou tela. Ele também possui elementos GUI padrão do Windows, como barra de título, menu e barra de status. Por ser um plug-in que roda em uma janela separada, o layout da janela é muito simples. Abaixo está uma lista de alguns elementos da interface do usuário.
Referências
- [4] ↑ A sample of grasshopper generated formsAkos, Gil; Parsons, Ronnie, Casino Studiomode (Blog), StudioMode Beta .: http://studiomode.nu/
- [5] ↑ , pudiendo así generar listas de funciones conectadas a canales de transmisión de datos que contienen información en números y texto.Fraguada, Luis. «LaN co-director».: http://www.grasshopper3d.com/group/ghowl
- [6] ↑ Andrew, Kudless (July 2011). «Co-Coordinator CCA MediaLab. San Francisco, CA». Biodynamic Structures Workshop. California College of the Arts, San Francisco: AA San Francisco Visiting School. pp. http://www.flickr.com/photos/tags/biodynamicstructures/. Consultado el 9 de febrero de 2011.: http://sanfrancisco.aaschool.ac.uk/
- [7] ↑ Payne, Andrew, USING A WII TO CONTROL GRASSHOPPER .: http://www.liftarchitects.com/journal/2009/9/8/using-a-wii-nunchuck-to-control-grasshopper.html