给定表示地质单元上表面和下表面的两组线段(xa1..N,ya1..N)和(xb1..N,yb1..N),以及地质单元内的已知点(xc1,yc1),如何找到通过(xc1,yc1)的(xa,ya)和(xb,yb)之间最短距离的线。
发布于 2012-02-18 22:52:25
如果我理解得很好,你正在寻找两条给定多段线之间的中间多段线,通过给定点。
如果两条源折线具有相同的点数,则可以考虑使用0- 1范围内的参数t在相应线段之间进行线性插值。每个新折点由
Xti = (1 - t) Xai + t Xbi
Yti = (1 - t) Yai + t Ybi如果为t=0,则为上曲面,t=1为下曲面和其他t个中间曲面。
现在剩下的就是找到使这条线通过(xc,yc)的t值。每一段都可以用它的参数方程来表示,在点i和i+1 (设j)之间,使用一些参数p。这导致了以下方程:
Xc= (1 - p) Xti + p Xtj
Yc= (1 - p) Yti + p Ytj现在,对于每个i-j段,您有一个包含两个未知数(t和p)的两个方程的系统。您将保持i-j解,使p落在0-1范围内
https://stackoverflow.com/questions/6175594
复制相似问题