Bspline,到段的距离,比曲线上的距离更简单?

时间:2014-11-28 14:06:57

标签: geometry interpolation bspline

鉴于


连续贝塞尔曲线的样条曲线。
一点
期望:
找到样条曲线的一条贝塞尔曲线,即最接近该点。

解决方案:
迭代地找到每个贝塞尔曲线上的最近点,并选择具有总体最近点的曲线
问:
如果不需要曲线上的确切点,是否有更简单的方法可以做到这一点? 例如。一个算子,从它们的控制点比较两个贝塞尔曲线到给定点的距离?
我不需要知道到曲线A,B,C的距离......仅我和#34;需要按照相对距离对曲线进行排序。 ( - >找到最近的曲线,而不是最近的点。)

谢谢!

1 个答案:

答案 0 :(得分:0)

您可以找到该点与曲线边界框之间的最小距离和最大距离。这两个距离应该是点和曲线之间实际距离的下限和上限。所以,你有

MinDist(P,Bbox(C1))< = Dist(P,C1)< = MaxDist(P,Bbox(C1))
MinDist(P,Bbox(C2))< = Dist(P,C2)< = MaxDist(P,Bbox(C2))

如果你还能找到MaxDist(P,Bbox(C1))< MinDist(P,Bbox(C2))或MaxDist(P,Bbox(C2))< MinDist(P,Bbox(C1)),那么你可以得出结论哪条曲线C1或C2更接近P点。但是,如果你没有这些条件,那么找出下限/上限对你没有帮助,你会需要计算点和曲线之间的实际距离。