
自然路径求解.docx
8页自然路径求解1. 过度方向求解用多个微小平面近似曲面,在每个小平面上的测地线都是直线,而当一条测地 线通过2个小三角形间的边缘时,它与边缘保持恒定角度如图所示,vl , v2为 测地线在三角形中的方向向量,法向量nl, n2之间存在夹角,2个三角形不在同 一个平面上,则有v2 • n2 = 0V2 - (n2 X ni) = vi ・(n2 X n】)|v2| = lv2向量就可以根据上式求出2. 自然路径求解分析在曲面STL文件中建立三角形单元关联信息后,可以建立三角形网格上自然 路径的求解算法上图给出了求解的示意过程,过程如下:⑴ 给出起始点P0和起始方向V0 ,在过P0垂直于V0的测地线CO上取半个带 宽w/2 (w为预浸带的宽度)得到左右边界点PLO, PROPRO和PLO所在三角 形的法向量及V0己知,利用过渡方向原理,即可计算PLO点的向前铺设方 向VLO ,同理可求出VROo⑵ 边界点以0, pRO分别沿方向vLO, vRO计算一个步长的距离,得到点夕 LI , R1 o⑶ 由pr L 1 f p' R1计算得到测地线取其中点国pO , pl所在三角形 的法向量及vO己知,依据过渡原理,可计算pl点的向前铺设方向vl。
4) 在曲线上由国点向两边取半个带宽的距离得到左右边界点〃L1 , pRl o vLl , vRl同步骤(1)中vLO , vRO的求解方法相同5) 重复步骤(2)〜(4),就可以得到一系列点X), pl ,伽,把这些点拟 合成曲线就为所求的自然路径在曲面边界处,铺带两边界线不同时到达曲而边界,如图4所示,其中67 + 1 为测地线由QLi沿方向vL [计算,若]<6,与曲面边界相交,则在边界处的轨迹 中心点计算步骤如下:(1) 计算pi沿其方向vi与曲面边界相交的距离d ,若d小于步长<5 ,转到步骤 ⑺,否则转到步骤(2)2) pL i , pKi分别沿方向vL i , v Ri计算]的距离,得到点尸L i + 1 ,p' Ri + 1 o⑶由// L I + 1 , p' Ri + 1计算得到测地线Ci + 1 ,取其中点pi + 1,并由 pi , vi根据过渡方向原理,计算出vi + 1 o(4) 在Ci + 1 曲线上取弧长:pL in = pi+1 qRIT = l/2pi+l p‘ L i+1(5) 由pi + 1 f vi + 1 根据式(1)求出方向vL I + 1 ,v& + 1 o(6) pi + 1 —pi , pLi + 1 -*pLi , pRi + 1 —•/?&vi + 1 f vi , vLi + 1 — vLi , vRi + 1 — vRi转到步骤(1) O(7) 停止计算。
3. 算法实现在三角形网格内求解自然路径涉及到以下两个问题:1. 己知一点及该点方向求解测地线2. 求解网格化曲面上两点间的测地线3. 1已知一点及该点方向求解测地线在三角形中由己知点和该点方向求解测地线,是由己知点和该点方向不断地 向前求解一系列和三角片化网格的边相交的节点,将在同一个三角面片上的节点 连接后得到从己知点出发按特定方向出发的测地线在三角形网格中由己知点和 该点方向求于三角形的一边的相交点有下面两种情况:3.1.1已知点在三角形内如图所示,己知点Q在三角形内部,力点方向为p ,不易判断与哪条边相交因 三角形按影把三角形、己知点力和方向P投影到/严面,如图(a);以夕 点为原点建立 局部坐标,为了标注一致,p'改成p”,如图(b);并绕'点旋转角度a,使p" 与轴重合,如图6(C),此时三角形顶点顺序没有变图(c)三角形中与x'正 轴相交的边即为对应空间三角形内点Q沿方向P相交的边判断方法如下:分别 判断图6(c)三角形3条边的两个端点y值之积是否小于或等于0 ,若成立则此 边必与#轴相交并求出交点;取交点集中x大于0的点,此点所在的边即为所求; 按长度比例关系返回到空间三角形就可以求出交点。
3. 1. 2已知点在三角形边上如下图所示,己知点D在三角形边上,D点方向为p, AB与向量p的夹角为a ,ZB DC=
