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