Revit开发之内建模型
2016-09-22 20:29
169 查看
重Revit2015开始,API里提供了一些
内建模型的API,但是功能还比较简单
Revit2017里提供了比较强大的一些API
有兴趣的可以去研究下,它可以画一些曲面什么的
这里介绍下简单版的。
内建模型可以指定Category,也可以指定材料
也可以将内建模型做成TYpe 然后用Type来创建
等等。。
下面是一个简单的例子
创建了一个属于墙的内建模型
Transaction trans = new Transaction(doc, "trans");
trans.Start();
XYZ p1 = new XYZ(5, 0, 0);
XYZ p2 = new XYZ(-5, 0, 0);
XYZ p3 = new XYZ(0, 5, 0);
Arc arc = Arc.Create(p1, p2, p3);
Line line = Line.CreateBound(p2, p1);
CurveLoop cl = new CurveLoop();
cl.Append(arc);
cl.Append(line);
IList<CurveLoop> cls = new List<CurveLoop>();
cls.Add(cl);
Solid solid = GeometryCreationUtilities.CreateExtrusionGeometry(cls, new XYZ(0, 0, 1), 5);
DirectShape ds = DirectShape.CreateElement(doc, cateId, Guid.NewGuid().ToString(), Guid.NewGuid().ToString());
ds.AppendShape(new List<GeometryObject>() { solid });
trans.Commit();
博主会经常更新一些技术文章,请大家多多关注,
源码下载请加qq群480950299
内建模型的API,但是功能还比较简单
Revit2017里提供了比较强大的一些API
有兴趣的可以去研究下,它可以画一些曲面什么的
这里介绍下简单版的。
内建模型可以指定Category,也可以指定材料
也可以将内建模型做成TYpe 然后用Type来创建
等等。。
下面是一个简单的例子
创建了一个属于墙的内建模型
Transaction trans = new Transaction(doc, "trans");
trans.Start();
XYZ p1 = new XYZ(5, 0, 0);
XYZ p2 = new XYZ(-5, 0, 0);
XYZ p3 = new XYZ(0, 5, 0);
Arc arc = Arc.Create(p1, p2, p3);
Line line = Line.CreateBound(p2, p1);
CurveLoop cl = new CurveLoop();
cl.Append(arc);
cl.Append(line);
IList<CurveLoop> cls = new List<CurveLoop>();
cls.Add(cl);
Solid solid = GeometryCreationUtilities.CreateExtrusionGeometry(cls, new XYZ(0, 0, 1), 5);
DirectShape ds = DirectShape.CreateElement(doc, cateId, Guid.NewGuid().ToString(), Guid.NewGuid().ToString());
ds.AppendShape(new List<GeometryObject>() { solid });
trans.Commit();
博主会经常更新一些技术文章,请大家多多关注,
源码下载请加qq群480950299
相关文章推荐
- Revit开发之选择链接模型中的构件
- Revit开发设置模型线颜色
- Revit二次开发高级专题讲座:访问Revit模型中的几何数据以及对象间关系判断方法(点击下载)
- Revit开发之批量高效创建模型线
- Revit开发在链接模型中使用ISelectionFilter
- Revit API 开发 (7): 创建模型线
- Revit二次开发(3):Revit动态模型更新(DMU: Dynamic Model Update)功能
- Revit开发如何创建模型线
- 软件开发生命周期模型
- 模型驱动开发框架3
- 微软开发阶段模型备注
- [开发总结]Cad系统架构及数据模型----OLE容器及嵌入篇(三)
- [开发总结]Cad系统架构及数据模型----哈空调项目二次开发篇(七)
- 用 Eclipse Modeling Framework 实现模型驱动开发,第 1 部分
- [开发总结]Cad系统架构及数据模型----上线和导航篇(四)
- 模型驱动开发框架
- 软件开发风险管理的EIVO模型(Entry, Input, Verify, Output)
- [开发总结]系统架构及数据模型----OpenGL模式显示及临时显示篇(二)
- VS.NET2003 开发环境 生成样式表 和 自动书写HTML对象模型
- “MDD”--模型驱动开发 选择自 oosky 的 Blog