问题描述
||
我有一个定义表面边界的有序3D点列表。关于表面的其他什么都没有。从理论上讲,这些点可以任意复杂,但是在实践中,只有很少的点主要定义带有一些坡道等的平面。给定x和y坐标在边界内的任意点,我想知道边界定义的曲面上的对应点。
解决方法
它取决于点定义表面的方式和点排列的特征:
这些点是否定义了高度图?
这些点是否创建规则的网格?
您想将曲面定义为一组多边形还是等值面?
我试图猜测您有一个常规的高度图。
在这种情况下,您需要:
定义对应点在顶点规则网格的哪个四边形中。
将四边形分成2个三角形
定义相应的点在哪个三角形(三角形的XY投影)中。
找出四边形和向量(x,y,1)的交点,其中(x,y)-对应点
(谷歌“点三角交叉点”)
,将点集合视为一堆平面定义(您可以确定哪些点是对象的一部分吗?)
从给定点定义一条线,该矢量指向“向下”的向量(一条线)。
遍历平面,查看矢量是否与其中任何一个相交。 (x,y)与交点之间的距离为\“ height \”