给定三维折线P = {(x1, y1, t1), ..., (xn, yn, tn)}
和另一条折线Q = {(x1, y1, t1), ..., (xm, ym, tm)}
(m不一定等于n,因此折线可能具有不同的长度),当移动物体的轨迹出现时,会发生空间和时间的重合P和Q,有一些共同的定时和定位(点A,如示例图中所示是重合点原因(xa, ya, ta)==(xb, yb, tb)
显然重合点可能是初始点集之外的点)
这个概念非常简单,视觉角度很容易识别托管发生的位置。最难的部分是如何实现一种有效计算重合并返回计算的算法(记住:点可以在给定的点集之外)x,y coords和colocation发生的时间t!这个算法将在Matlab中开发,所以我有必要快速工作。
祝你好运
答案 0 :(得分:1)
假设x,y,z是每条折线的所有段的t的函数,这里是一个暴力开始。 4维:P有段p1 from (x_start(t), y_start(t), z_start(t), t) to (x_end(t), y_end(t), z_end(t), t)
,类似Q
for each segment p of P
for each segment q of Q
if p intersects q (in 4 dimensions)
output intersection point
交叉口条件是:
alpha
中存在beta
和[0,1]
alpha * px_start(t) + (1 - alpha) * (px_end(t) - px_start(t)) = beta * qx_start(t) + (1 - beta) * (qx_end(t) - qx_start(t))
,y和z还有2个类似的条件
交叉条件的可解性取决于函数x(t),y(t),z(t) - 线性?多项式?等