您好,登錄后才能下訂單哦!
本篇內容介紹了“Revit怎么創建樓板”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
創建樓板的第一種方法:NewFloor(CurveArray profile, bool structural)這個方法比較簡單就不說了,我們來說第二種方法:NewFloor(CurveArray profile, floorType, level, bool structural)和前幾期類似,我們需要去把這四個條件集齊這樣就可以創建出我們想要的樓板了:
1.CurveArray profile。這是曲線的一個組合,和墻的集合有所不同要用Append來添加而不是add了,具體如下:
CurveArray cu = new CurveArray();
cu.Append(Line.CreateBound(new XYZ(0, 0, 0), new XYZ(100, 0, 0)));
cu.Append(Line.CreateBound(new XYZ(100, 0, 0), new XYZ(0, 100,0)));
cu.Append(Line.CreateBound(new XYZ(0, 100, 0), new XYZ(0, 0, 0)));
2.floorType。我們需要創建樓板的類型:
if (wa.GetParameters("默認的厚度")[0].AsValueString()=="225")//找到板厚為225的板
{
fl = wa;
}
3.level。要創建樓板所在的標高,和墻一樣小編在這就不重復了。
4. bool structural。是否是結構,這回我們選個true,也和墻類似小伙伴可以去看前面幾期哦。
我們來組合比較一下和創建墻的方法不同(1)在于創建墻時我們需要的是墻類型和標高的ID而樓板則要的不是ID而是類型,本質上是一樣的;(2)創建軸線、標高、墻create一下就好而板則需要doc.create。下邊上代碼:
FilteredElementCollector fil = new FilteredElementCollector(doc);
fil.OfClass(typeof(Level));
FilteredElementCollector fill = new FilteredElementCollector(doc);
fill.OfClass(typeof(FloorType));
FloorType fl = null;
Level le= null;
foreach (FloorType wa in fill)//查找板的類型
{
if (wa.GetParameters("默認的厚度")[0].AsValueString() == "225")//找到板厚為225的板
{
fl= wa;
}
}
CurveArray cu = new CurveArray();
cu.Append(Line.CreateBound(new XYZ(0, 0, 0), new XYZ(100, 0, 0)));//線條
cu.Append(Line.CreateBound(new XYZ(100, 0, 0), new XYZ(0, 100, 0)));
cu.Append(Line.CreateBound(new XYZ(0, 100, 0), new XYZ(0, 0, 0)));
foreach (Level ll in fil)//找標高
{
if (ll.Name.Contains("一層"))//找到一層標高
{
le = ll;
}
}
Floor fll = doc.Create.NewFloor(cu, fl, le, true);
效果:
“Revit怎么創建樓板”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。