您好,登录后才能下订单哦!
本篇内容介绍了“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进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。