[Houdini] 一些寻找最近几何体功能的概述
寻找点附近的点
1 nearpoint和nearpoints
nearpoint 寻找指定范围内最近的一个点

nearpoints 寻找指定范围内最近的多个点

2 point cloud系列函数。point cloud,指的是包含数据的点的集合。在帮助文档里,ptcloud函数单独分成一个类,有37个相关的函数。


pcfind pcfind函数和nearpoints函数基本一样。pcfind在文件file里找,nearpoints在几何体geometry里找,两者处理几何体得到的结果都一样,区别可能就是pcfind属于point cloud概念的相关函数,P位置属性作为通道存在,在函数里需要指定P位置的名称,而nearpoints是操作几何体的相关函数,P不需要指定。如果你在操作几何体,可能nearpoints更正统一点。

pcopen pcopen也是在指定范围内寻找点,它返回的不是点组,而是一个整数值,也叫handle。point cloud系列的一些其他函数需要这个整数handle来接收找到的这些点,然后做一些处理,比如pcfilter的加权平均。相比较nearpoints函数,它的好处是point cloud是一系列函数,有写好的现成的功能。

pcfilter pcfilter对找到的最近的点上的指定属性进行加权平均得到该属性的平均值。也就是说找到的点距离原始点越近,该点上的属性值贡献的比例越大。

寻找距离点最近的面
1 xyzdist和primuv。
xyzdist xyzdist函数可以求出点到几何体的最近距离,也可以找到距离最近的面的编号和最近位置的面上的uv,注意这个uv是这个面独有的uv,属于内置属性,用来指定面上的某个位置而不是存在于vertices上的用来贴图的uv,用到vertices上uv的是uvsample函数。
primuv primuv函数可以用这个面编号和面uv求在该位置的点上的属性,这个点大概率实际不存在,得到的属性值也是平均值。



2 如果只想要点到几何体最近的位置,minpos函数更直接。
minpos 寻找点距离几何体最近的位置
