謝飛揚(yáng)
摘要:本文研究探討了基于Grasshopper參數(shù)化產(chǎn)品輔助設(shè)計(jì)的教學(xué)方法,試圖幫助學(xué)生去除學(xué)習(xí)障礙,掌握正確的學(xué)習(xí)方法。
關(guān)鍵詞:Grasshopper;參數(shù)化;產(chǎn)品設(shè)計(jì)
中圖分類號(hào):TP37 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9416(2019)09-0151-01
1 Grasshopper簡介
Grasshopper是Rhinoceros的一個(gè)內(nèi)置插件,是一種基于節(jié)點(diǎn)操作的可視化程序語言,設(shè)計(jì)師可以直觀的可視化操作節(jié)點(diǎn)進(jìn)行連接和調(diào)整,不需要手寫代碼,快速進(jìn)行參數(shù)化設(shè)計(jì)。最初Grasshopper是為了彌補(bǔ)犀牛4的歷史紀(jì)錄功能的不足而構(gòu)建出來的,而Grasshopper作為犀牛的一個(gè)參數(shù)化插件,它可以用批處理的方式調(diào)用犀牛的建模工具和命令,然后再用參數(shù)化的方式來控制產(chǎn)品的形體模型,這樣就可以更加高效的完成設(shè)計(jì)任務(wù),同時(shí)還可以基于邏輯關(guān)系模擬參數(shù)模型、幾何模型和算法模型。
2 基于Grasshopper可視化編程與傳統(tǒng)編程的區(qū)別
傳統(tǒng)的編程環(huán)境需要手動(dòng)敲擊代碼進(jìn)行編輯,并且會(huì)涉及到相當(dāng)復(fù)雜的函數(shù)和語言語法,抽象的函數(shù)名和變量名稱,復(fù)雜的編程邏輯,這種編程方式對(duì)于傳統(tǒng)的設(shè)計(jì)師來說并不能很快適應(yīng)和使用。
Grasshopper提供了另外一種編程方式,通過內(nèi)部的component(一般翻譯為“電池”)的組件,每種電池都具有不同的功能,將這些模塊按照一定的邏輯連接起來后它就會(huì)變?yōu)橐粋€(gè)程序。Grasshopper對(duì)于習(xí)慣形象設(shè)計(jì)的設(shè)計(jì)師來說師一種更加容易接受的建模方式,而且通過實(shí)踐發(fā)現(xiàn)這也是一種更加高效的編程方式[1]。
3 Grasshopper參數(shù)化設(shè)計(jì)帶來的變化
(1)Grasshopper是非常強(qiáng)大的參數(shù)化輔助設(shè)計(jì)工具,設(shè)計(jì)師利用參數(shù)化設(shè)計(jì)能夠快速生成大量的產(chǎn)品設(shè)計(jì)方案,借助Grasshopper相關(guān)的工具組件能夠輕松完成非常復(fù)雜的曲面設(shè)計(jì)形態(tài),并且能夠方便的進(jìn)行調(diào)整,其帶來的便捷性是傳統(tǒng)設(shè)計(jì)方法無法比擬的。高效率的設(shè)計(jì)迭代過程也使得參數(shù)化設(shè)計(jì)方法在實(shí)際項(xiàng)目中被廣泛運(yùn)用。(2)Grasshopper可以基于邏輯算法進(jìn)行產(chǎn)品曲面結(jié)構(gòu)優(yōu)化,能夠按照編程邏輯實(shí)現(xiàn)包含復(fù)雜形態(tài)規(guī)則的模型構(gòu)建,可以將有關(guān)性能的形態(tài)優(yōu)化結(jié)合在程序的邏輯構(gòu)建當(dāng)中,使得產(chǎn)品設(shè)計(jì)的性能得到客觀的評(píng)價(jià),以及更合理的優(yōu)化結(jié)構(gòu)。(3)Grasshopper利于產(chǎn)品設(shè)計(jì)的后期的施工建造。參數(shù)化設(shè)計(jì)與建模也能為產(chǎn)品設(shè)計(jì)帶來新的可能性,由于基于Grasshopper的輔助設(shè)計(jì)方法是基于高度數(shù)字化的設(shè)計(jì)方法,空間中由點(diǎn)、線、面、體構(gòu)成的視覺元素都能夠直接輸出到數(shù)控機(jī)床等加工設(shè)備中,在工廠中進(jìn)行精確的加工。在施工現(xiàn)場,數(shù)字模型的空間坐標(biāo)位置也可以精確的指導(dǎo)安裝。我們可以使用參數(shù)化的設(shè)計(jì)方法,可以根據(jù)構(gòu)件的構(gòu)造需要以及加工安裝條件對(duì)產(chǎn)品設(shè)計(jì)進(jìn)行優(yōu)化,這樣就能實(shí)現(xiàn)復(fù)雜形體的建造,大大提升的建造的精度和質(zhì)量[2]。
4 Grasshopper參數(shù)化產(chǎn)品輔助設(shè)計(jì)的教學(xué)探討
4.1 教學(xué)問題分析
(1)國內(nèi)Grasshopper主要應(yīng)用在建筑環(huán)藝設(shè)計(jì)專業(yè)的教學(xué),導(dǎo)致產(chǎn)品設(shè)計(jì)應(yīng)用Grasshopper的教學(xué)案例相對(duì)較少,出現(xiàn)問題很難找到參考資料。然后產(chǎn)品設(shè)計(jì)專業(yè)的學(xué)生大多都是文科藝術(shù)類,沒有理工科編程學(xué)習(xí)經(jīng)驗(yàn),理解起相關(guān)的概念比較困難。(2)Grasshopper獨(dú)特的使用方法有別于傳統(tǒng)的三維建模設(shè)計(jì)軟件,對(duì)于初學(xué)者來說也很難上手,學(xué)生對(duì)于復(fù)雜的設(shè)計(jì)模型沒有相關(guān)的數(shù)據(jù)結(jié)構(gòu)和正確邏輯思路。(3)學(xué)生對(duì)于復(fù)雜模型的構(gòu)建和修改,往往找不到該使用哪一個(gè)參數(shù)進(jìn)行調(diào)整,不知道從哪里下手從而使得結(jié)果偏離更遠(yuǎn)。截止目前,Grasshopper到版本有3000多個(gè)組件,很多教學(xué)都會(huì)挨個(gè)介紹每一個(gè)組件的用法,這其實(shí)是一種很沒有效率的教學(xué)方法。因?yàn)榻?jīng)常使用的組件大概只有100多個(gè),學(xué)習(xí)的關(guān)鍵其實(shí)在于對(duì)其本身數(shù)據(jù)結(jié)構(gòu)的理解,并通過一系列相關(guān)實(shí)際案例熟悉和掌握Grasshopper的使用。
基于以上問題,筆者經(jīng)過分析總結(jié)出了一套適合產(chǎn)品設(shè)計(jì)專業(yè)學(xué)生的教學(xué)方法,主要以Grasshopper進(jìn)行產(chǎn)品造型的參數(shù)化設(shè)計(jì)。
4.2 Grasshopper工作環(huán)境和基本操作教學(xué)
(1)介紹Grasshopper工作環(huán)境,熟悉其界面UI劃分,學(xué)生后期通過菜單欄的功能劃分能快速找到需要的組件。重點(diǎn)介紹快速調(diào)用運(yùn)算器的方法,說明運(yùn)算器連線的相關(guān)操作和多種執(zhí)行方式,加快建模工作效率。(2)介紹Grasshopper與犀牛數(shù)據(jù)間的關(guān)系。Grasshopper中的物體在犀牛中是不存在的,是虛擬動(dòng)態(tài)的隨著參數(shù)和邏輯的變化而改變,需要通過bake操作轉(zhuǎn)換成犀牛中靜態(tài)物體,轉(zhuǎn)換后將不再受Grasshopper的影響,與bake相反的操作叫做internalise data,可以將犀牛的幾何數(shù)據(jù)裝在至GH的電池組里,如果改變犀牛的幾何信息,GH此時(shí)的幾何狀態(tài)并不會(huì)發(fā)生改變,此外internalise data可以切斷程序的數(shù)據(jù)流[3]。
4.3 Grasshopper數(shù)據(jù)基礎(chǔ)教學(xué)
介紹Grasshopper數(shù)據(jù)類型和相關(guān)電池。說明數(shù)據(jù)流匹配過程多個(gè)數(shù)據(jù)流的匹配方式,掌握相關(guān)數(shù)據(jù)匹配的電池,目前一共有4種數(shù)據(jù)匹配方式:(1)一對(duì)一單個(gè)數(shù)據(jù)匹配;(2)一對(duì)多的數(shù)據(jù)流匹配;(3)多對(duì)多相同數(shù)量的多個(gè)數(shù)據(jù)流匹配;(4)不同數(shù)據(jù)量的多個(gè)數(shù)據(jù)流和多個(gè)數(shù)據(jù)流匹配邏輯:多對(duì)多+長列剩余數(shù)據(jù)匹配短列末位數(shù)據(jù)。
4.4 基于Grasshopper的點(diǎn)線面建模教學(xué)
產(chǎn)品造型設(shè)計(jì)中最重要的點(diǎn)線面元素進(jìn)行教學(xué),探討基于參數(shù)化造型的豐富的可能性,幫助學(xué)生找到Grasshopper參數(shù)化產(chǎn)品造型的本質(zhì)。
(1)Grasshopper中生成點(diǎn)的運(yùn)算器實(shí)例教學(xué),包括內(nèi)置的生成點(diǎn),從線生成點(diǎn)、從面生成點(diǎn)、從外界導(dǎo)入點(diǎn)。(2)Grasshopper中生成線的運(yùn)算器實(shí)例教學(xué),包括內(nèi)置的點(diǎn)生成線,從線生成線,從面生成線。(3)Grasshopper中生成面的運(yùn)算器實(shí)例教學(xué),包括內(nèi)置的點(diǎn)生成面,從線生成面,從面生成面。
4.5 基于Grasshopper的產(chǎn)品設(shè)計(jì)實(shí)例教學(xué)
本階段通過基于參數(shù)化的產(chǎn)品設(shè)計(jì)實(shí)例教學(xué),讓學(xué)生熟悉基于Grasshopper的點(diǎn)線面電池組進(jìn)行基本建模的方法,說明參數(shù)化設(shè)計(jì)方法在產(chǎn)品設(shè)計(jì)中的應(yīng)用和流程,闡述一般產(chǎn)品設(shè)計(jì)中遇到的難點(diǎn)問題進(jìn)行數(shù)據(jù)化分析的方法,學(xué)生結(jié)合前面學(xué)習(xí)到的理論和方法進(jìn)行產(chǎn)品設(shè)計(jì)的應(yīng)用拓展。
5 結(jié)語
綜上所述,Grasshopper作為犀牛平臺(tái)下重要的參數(shù)化表現(xiàn)插件,其節(jié)點(diǎn)式可視化編程的工作方式將極大的提高設(shè)計(jì)的質(zhì)量和效率,同步提高設(shè)計(jì)師在產(chǎn)品設(shè)計(jì)中分析問題,解決問題的能力。因此使用Grasshopper開展并應(yīng)用在產(chǎn)品設(shè)計(jì)教學(xué)工作中也是良好選擇。值得注意的是,在參數(shù)化產(chǎn)品設(shè)計(jì)教學(xué)的過程中,作為教師始終應(yīng)該強(qiáng)調(diào)其表現(xiàn)的合理性,畢竟產(chǎn)品設(shè)計(jì)是應(yīng)用性較強(qiáng)的學(xué)科,在應(yīng)用參數(shù)化輔助設(shè)計(jì)的過程中,不能本末倒置的為了參數(shù)化形式而生產(chǎn)出一批奇形怪狀毫無實(shí)用價(jià)值的產(chǎn)品設(shè)計(jì)。
參考文獻(xiàn)
[1] 卞京.產(chǎn)品造型設(shè)計(jì)的參數(shù)化探討[D].北京:中國美術(shù)學(xué)院,2012.
[2] 白云生,高云河,著.Grasshopper參數(shù)化非線性設(shè)計(jì)[M].華中科技大學(xué)出版社,2018.
[3] 姚小龍.參數(shù)化設(shè)計(jì)下建筑形態(tài)生成研究[D].武漢:武漢紡織大學(xué),2017.
Abstract:This paper studies and discusses the teaching method based on Grasshopper parametric product aided design, trying to help students remove learning barriers and master the correct learning methods.
Key words:Grasshopper; parameterization; product design