Autodesk.Revit.DB.TriangulatedSolidOrShell是Revit API中的一种数据类型,用于表示由平面三角形组成的立体图形或表面。
Solid是TriangulatedSolidOrShell的非必需属性,表示用三角形所组成的立体图形。如果TriangulatedSolidOrShell仅仅表示表面,则该属性可缺省。
Shell是TriangulatedSolidOrShell的非必需属性,表示由三角形组成的表面。如果TriangulatedSolidOrShell仅仅表示立体图形,则该属性可缺省。
Triangles是TriangulatedSolidOrShell的必需属性,表示用于表示立体图形或表面的三角形列表。每个三角形由三个顶点组成。
Autodesk.Revit.DB.TriangulatedSolidOrShell提供以下方法:
以下示例展示如何使用TriangulatedSolidOrShell来创建一个三棱柱的立体图形:
// 创建三棱柱的三角形列表
IList<Polygon> triangles = new List<Polygon>();
triangles.Add(new Polygon(new List<XYZ>(){ new XYZ(-1,-1,0), new XYZ(1,-1,0), new XYZ(0,0,1) }));
triangles.Add(new Polygon(new List<XYZ>(){ new XYZ(1,-1,0), new XYZ(1,1,0), new XYZ(0,0,1) }));
triangles.Add(new Polygon(new List<XYZ>(){ new XYZ(1,1,0), new XYZ(-1,1,0), new XYZ(0,0,1) }));
triangles.Add(new Polygon(new List<XYZ>(){ new XYZ(-1,1,0), new XYZ(-1,-1,0), new XYZ(0,0,1) }));
triangles.Add(new Polygon(new List<XYZ>(){ new XYZ(-1,-1,0), new XYZ(1,-1,0), new XYZ(1,1,0) }));
triangles.Add(new Polygon(new List<XYZ>(){ new XYZ(1,1,0), new XYZ(-1,1,0), new XYZ(-1,-1,0) }));
// 创建TriangulatedSolidOrShell对象
TriangulatedSolidOrShell triangularPrism = TriangulatedSolidOrShell.CreateSolid(triangles);
// 将三棱柱绘制在文档上
Transaction t = new Transaction(doc, "Create Triangular Prism");
t.Start();
doc.Create.NewGeometryObject(triangularPrism);
t.Commit();