メッシュ

メッシュ

メッシュは三角形の境界の集合であり、これらがまとまって 3D 形状を形成します。通常、Revit 要素を特定の読み込み操作から作成し、TopographySurface などの一部のネイティブの Revit 要素内で使用する場合、メッシュは Revit 要素ジオメトリの内側に検出されます。また、任意の Revit 面に Face.Triangulate()を呼び出した結果としてメッシュを取得することもできます。

トーラスを表すメッシュ

次のコード サンプルは、Revit 面のジオメトリをメッシュとして取得する方法を説明しています。

コード領域: メッシュのジオメトリを抽出

private void GetTrianglesFromFace(Face face)

{

        // Get mesh

        Mesh mesh = face.Triangulate();

        for (int i = 0; i < mesh.NumTriangles; i++)

        {

               MeshTriangle triangle = mesh.get_Triangle(i);

               XYZ vertex1 = triangle.get_Vertex(0);

               XYZ vertex2 = triangle.get_Vertex(1);

               XYZ vertex3 = triangle.get_Vertex(2);

        }

}
注: Revit の表示目的に使用される近似の許容差は、メッシュの作成時に Triangulate()メソッド(上で使用)のパラメータなしのオーバーロードで使用される点に注意してください。double をとる Triangulate()のオーバーロードを使用すると詳細のレベルを 0 (より粗い)から 1 (より詳細)に設定できます。