Revit二次开发之 PolymeshTopology
PolymeshTopology 表示多边形网格拓扑的类,用于描述多边形的的图形信息。多边形网格的拓扑结构由多个点和由这些点形成的三角形面组成。每个方面由点阵列的三个索引来确定。多边形网格可以指定UV坐标,并且始终至少关联一个法线。非平面多边形网格可能有一个以上的法线可用;多边形网格中可能存在与面或点一样多的法线。DistributionOfNormals属性指示法线如何沿多边形网格分布。
一、属性
1、属性DistributionOfNormals
一个枚举,包含如何沿多边形网格的曲面指定和分布法线向量的选项。平面通常只关联法线向量,但曲面可以为镶嵌多边形网格的每个面(三角形)或每个点具有不同的法线。
AtEachPoint | 将一个法向量指定给多边形网格的每个顶点。 |
OnePerFace | 只有一个公共法线向量指定给面/多边形网格 |
OnEachFacet | 多边形网格的每个面都有一个法线向量。 |
2、属性IsValidObject:
指定是否。net对象表示一个有效的revit实体。
3、属性NumberOfFacets
与多边形网格关联的法线数
4、属性NumberOfNormals
与多边形网格关联的法线数。
5、属性NumberOfPoints
多边形网格中的点数
6、属性NumberOfUVs
可用于多边形网格的UV坐标数。
二、方法
1、GetFacet、GetFacets
public PolymeshFacet GetFacet( int idx )
public IList<PolymeshFacet> GetFacets()
返回一个面的定义,通过面的索引
2、GetNormal()、GetNormals()
返回一个指定的法线和所有法线
3、GetPoint、GetPoints();
返回指定的点和所有的点
4、 GetUV、GetUVs
返回指定的UV和所有的UV信息