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()

 

public XYZ GetNormal(
    int idx
)
public IList<XYZ> GetNormals()

 

返回一个指定的法线和所有法线

3、GetPoint、GetPoints();

 

public XYZ GetPoint(
    int idx
)
public IList<XYZ> GetPoints()

 

返回指定的点和所有的点
4、 GetUV、GetUVs
public UV GetUV(
    int idx
)
public IList<UV> GetUVs()
返回指定的UV和所有的UV信息


 

posted @ 2023-07-24 10:12  Min.Xiaoshuang  阅读(78)  评论(0编辑  收藏  举报