完善主體資料,免費贈送VIP會員!
* 主體類型
* 企業(yè)名稱
* 信用代碼
* 所在行業(yè)
* 企業(yè)規(guī)模
* 所在職位
* 姓名
* 所在行業(yè)
* 學(xué)歷
* 工作性質(zhì)
請先選擇行業(yè)
您還可以選擇以下福利:
行業(yè)福利,領(lǐng)完即止!

下載app免費領(lǐng)取會員

NULL

5cdd2dc095060.jpg

Dynamo入門基礎(chǔ)知識(二)單位轉(zhuǎn)換

發(fā)布于:2015-04-18 00:51:56

Dynamo和Revit結(jié)合地很好,除了。。。內(nèi)部單位悲摧地不一致。

簡單地說,所有在Dynamo里不帶單位的數(shù)值(最常見的就是坐標(biāo)點),Dynamo都會把它們認(rèn)為是以“米”為單位。所以,如果你想創(chuàng)建兩根距離10英尺的軸網(wǎng),這樣做是不行的:

無論在項目模板中“單位”設(shè)置是英制還是公制,是“厘米”還是“毫米”,所創(chuàng)建的兩個軸網(wǎng)之間的間距永遠(yuǎn)是10米。

那么,怎樣才能得到正確的數(shù)值呢,沒有捷徑,只能通過手動轉(zhuǎn)換,讓我們來看看,如何進行有效地轉(zhuǎn)換:Dynamo提供了一些結(jié)點用于單位轉(zhuǎn)換,比如若想把10英尺轉(zhuǎn)換成米制單位,可以這樣做:

其中“3.048”就是一個可以直接輸入Revit結(jié)點的米制數(shù)值了。這里L(fēng)ength.FromFeet表示把一個無單位的數(shù)值轉(zhuǎn)換成英尺單位的數(shù)值。而SIUnit.Value可以把任何一個有單位的數(shù)值轉(zhuǎn)換成以米為單位的值,然后把單位抹掉。

所以真正可以創(chuàng)建間距10英尺軸網(wǎng)的Dynamo程序是這樣子的:

我們再用一個Revit中更為實際的例子來說明這個轉(zhuǎn)換過程:

首先我們可以用Element.GetParameterValueByName, 取到一面墻的長度:

請注意這個長度是帶單位的。Watch窗口里顯示的單位可以在Dynamo菜單欄“Setting”>“Length Display Unit”里選擇。然后,我們想以這個墻的長度為Y值創(chuàng)建一個點:

我們發(fā)現(xiàn),Dynamo出現(xiàn)錯誤提示。(結(jié)點顯示黃色,表明程序編寫出錯)主要原因是,點作為Dynamo里的元素,定義在Dynamo的世界坐標(biāo)系下,而這個坐標(biāo)系是沒有單位的(雖然轉(zhuǎn)化成其它單位時會默認(rèn)為米)。要想做到這一點,必須中間再加個SIUnit.Value轉(zhuǎn)換:

當(dāng)我們完成了這個步驟之后,才能得到正確的結(jié)果。

本文版權(quán)歸腿腿教學(xué)網(wǎng)及原創(chuàng)作者所有,未經(jīng)授權(quán),謝絕轉(zhuǎn)載。

未標(biāo)題-1.jpg

上一篇:Dynamo入門基礎(chǔ)知識(一)Lacing

下一篇:Dynamo入門基礎(chǔ)知識“初識Dynamo”