下載app免費(fèi)領(lǐng)取會(huì)員
DynamoPrimer解析之Building Blocks of Programs - Logic
1、通過節(jié)點(diǎn)Point.ByCoordinates能夠生成指定坐標(biāo)位置的點(diǎn)。其中,X分量為正弦函數(shù)的X值通過節(jié)點(diǎn)Math.DegreesToRadius將角度轉(zhuǎn)換為弧度單位。Y值等于正弦函數(shù)的結(jié)果乘以一個(gè)數(shù)值,該數(shù)值相當(dāng)于振幅,圖中的數(shù)值為0.62。在節(jié)點(diǎn)Math.Sin輸入角度值之前,該角度值被乘以一個(gè)系數(shù),該系數(shù)相當(dāng)于頻率,圖中的數(shù)值為4。
2、通過節(jié)點(diǎn)PolyCurve.ByPoints生成一條多重曲線,該多重曲線取決于輸入端points中各個(gè)點(diǎn)的位置,輸入端connectLastToFirst決定著多重曲線是否閉合,默認(rèn)為不閉合。
3、節(jié)點(diǎn)Sequence可以生成一個(gè)列表,該列表的起始值為0,數(shù)量為100,數(shù)據(jù)之間的間距為1。最終需要通過這個(gè)列表控制圖元的形狀。
3.1 現(xiàn)在要對(duì)該列表執(zhí)行兩個(gè)操作,第一個(gè)操作是通過節(jié)點(diǎn)%求數(shù)據(jù)除以2之后的余數(shù),如果余數(shù)等于0,則結(jié)果為true,如果余數(shù)不等于0,則結(jié)果為false,因此在節(jié)點(diǎn)==中獲取由true和false交替出現(xiàn)的列表。
3.2 第二個(gè)操作是通過節(jié)點(diǎn)Math.RemapRange重新設(shè)置數(shù)據(jù)的范圍,同時(shí)保持分布率不變。新的范圍為區(qū)間[0, 1]。然后用節(jié)點(diǎn)Curve.PointAtParameter獲取第二步中曲線指定參數(shù)處的點(diǎn),區(qū)間內(nèi)有100個(gè)參數(shù),因此獲取到100個(gè)點(diǎn)。
3.3 節(jié)點(diǎn)List.FilterByBoolMask可以根據(jù)true和false過濾從輸入端list輸入的數(shù)據(jù)。此時(shí),true和false所組成的列表為有100個(gè)對(duì)象,并且true和false交替出現(xiàn)。所過濾的對(duì)象為步驟3.2中獲取的100個(gè)點(diǎn)。因此,輸出端in為所有與true對(duì)應(yīng)的點(diǎn),輸出端out為所有與false對(duì)應(yīng)的點(diǎn)。
4、最后,通過節(jié)點(diǎn)Cuboid.ByLengths生成兩種立方體,一種是豎直的,兩一種是扁平的。參照最終立方體的布置規(guī)律可以知道上一步中最終過濾出來的點(diǎn)具體的位置,立方體是交替出現(xiàn)的,表示提取點(diǎn)的時(shí)候也是交替提取的。
DynamoPrimer解析之Building Blocks of Programs - Logic
本文版權(quán)歸腿腿教學(xué)網(wǎng)及原創(chuàng)作者所有,未經(jīng)授權(quán),謝絕轉(zhuǎn)載。
下一篇:DynamoPrimer解析之Building Blocks of Programs - Math
推薦專題