下載app免費領(lǐng)取會員
6、曲面的點已經(jīng)通過上一步中的移動復制確定了位置,于是通過節(jié)點NurbsSurface.ByPoints創(chuàng)建一個曲面,輸入端points需要輸入組成曲面的各個點圖元,輸入端uDegree和輸入端vDegree分別表示U方向和V方向的階數(shù),默認是3。
7、節(jié)點AdaptiveComponent.ByPoints能夠自動放置自適應(yīng)構(gòu)件。在此之前,需要確定兩個變量。
7.1 第一個變量是輸入端familyType,即自適應(yīng)構(gòu)件的族類型,該變量可以直接通過節(jié)點Family Types確定。
7.2 第二個變量是輸入端points,即自適應(yīng)構(gòu)件的定位點。定位點比較復雜,需要借助節(jié)點包LunchBox中的節(jié)點LunchBox Quad Grid by Face,該節(jié)點需要三個輸入端,第一個輸入端surface就是曲面,輸入端U和輸入端V分別表示U方向和V方向四邊形的數(shù)量。
7.3 最終的輸出端有三個,第一個是Panel Pts,即四邊形的四個點。第二個是Panel Polys,即四邊形的四條邊。第三個是Panel Faces,即四邊形的面。我們需要的是四邊形的點作為定位點。
8、放置完自適應(yīng)構(gòu)件以后,每個構(gòu)件與太陽光之間都有一個夾角。
8.1 節(jié)點Plane.ByBestFitThroughPoints能夠通過輸入的點創(chuàng)建一個最接近輸入點的平面,節(jié)點Plane.Normal能夠獲取平面的法向量,即得到了每個構(gòu)件所在平面的法向量。
8.2 節(jié)點SunSettings.Current能夠獲取當前文檔中的日光設(shè)置,節(jié)點SunSettings.SunDirection能夠獲取日光設(shè)置中日光的方向。最后用節(jié)點Vector.Dot計算兩種向量之間的點積。
9、將Aperture Ratio的數(shù)值賦予每個自適應(yīng)構(gòu)件。
9.1 在上一步中獲取到向量之間的點積之后,先通過節(jié)點Math.Abs得到這些數(shù)據(jù)的絕對值。
9.2 通過節(jié)點Math.RemapRange重新定義數(shù)據(jù)的范圍并且保留數(shù)據(jù)的分布率。輸入端newMin和輸入端newMax分別定義的是新范圍的最小值與最大值。輸入端numbers輸入需要調(diào)整的數(shù)據(jù)。
9.3 最后通過節(jié)點Element.SetParameterByName將參數(shù)值賦予到參數(shù)Aperture Ratio中。輸入端element輸入之前放置的自適應(yīng)構(gòu)件。輸入端parameterName表示參數(shù)的名稱,即Aperture Ratio。輸入端value輸入?yún)?shù)的具體數(shù)值,即向量點積的絕對值。
本文版權(quán)歸腿腿教學網(wǎng)及原創(chuàng)作者所有,未經(jīng)授權(quán),謝絕轉(zhuǎn)載。
上一篇:DynamoPrimer解析之ARCH-Customizing-BaseFile(上)
推薦專題