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

下載app免費領取會員

NULL

ad.jpg

Dynamo如何沿著曲線旋轉圖元

發(fā)布于:2020-09-28 16:11:02
首頁/技術分享/Revit
收藏
8338

來福

更多

1、之前有一篇類似的技術文章:http://photo.tuituisoft.com/blog/4097.html。該文章只介紹了旋轉圖元的相關節(jié)點,但是沒有考慮旋轉過程中的角度計算。

2、放置圖元。

2.1 通過節(jié)點 Select Model Element 選擇項目文件中的定位線,圖中是選擇了一條弧線。

2.2 通過節(jié)點 Element.Geometry 獲取所拾取對象的幾何圖形。

2.3 通過節(jié)點 Curve.PointAtParameter 獲取指定參數(shù)處的點,參數(shù)的起始值為 0,終止值為 1,間距為 0.02。

2.4 通過節(jié)點 FamilyInstance.ByPoint 將族文件放置在點上,輸入端 familyType 需要輸入族類型,圖中通過節(jié)點 Family Types 選擇一個族類型。輸入端 point 需要輸入定位點,即曲線上的點。

0204_放置圖元.png

3、旋轉圖元

3.1 旋轉的關鍵是如何計算角度。圖中是樣條曲線,因此不能用曲線的切向量和法向量作為基準。而是把曲線上某點位置的平面法向量作為基準。

3.2 通過節(jié)點 Curve.PlaneAtParameter 獲取曲線指定參數(shù)位置的平面,這個參數(shù)與步驟 1.3 中的參數(shù)保持一致。節(jié)點 Plane.Normal 能夠獲取剛剛生成的所有平面的法向量。

3.3 通過節(jié)點 Vector.AngleAboutAxis 獲取兩個向量之間的角度。輸入端 vector 需要第一個向量,即平面的法向量。輸入端 otherVector 需要第二個向量,即世界坐標系的 X 軸正方向。輸入端 rotationAxis 需要第三個向量,即世界坐標系的 Z 軸正方向,作用是當作旋轉軸以確定角度方向。

3.4 通過節(jié)點 FamilyInstance.SetRotation 將圖元旋轉。輸入端 familyInstance 需要輸入即將被旋轉的圖元,輸入端 degree 需要輸入旋轉的角度。

0304_旋轉圖元.png

0305_運行程序.gif

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

未標題-1.jpg

上一篇:Revit族編輯器如何影響族的可見性

下一篇:Revit如何創(chuàng)建屬于自己的樣板文件

60acb4e0ef112.png