2016-11-11 40 views
0

我不知道如何处理: 我需要“弯曲”一段长度为1的单元方向。 弯曲强度在线段长度上为1/y。 需要为段上的每个点定义变换,并且应该保留长度。 下面我心目中: enter image description here通过弯曲到方向来转换段

+0

[贝塞尔曲线(https://en.wikipedia.org/wiki/B%C3% A9zier_curve),也许?尝试[在线](http://math.hws.edu/eck/cs424/notes2013/canvas/bezier.html)。 – hidefromkgb

+1

方向矢量如何与弯曲相关?这应该是弯曲段末端的切线方向吗? – BDL

+0

是的,它的垂直分量也是有限的:y> = 0 – Teris

回答

1

我假设你要弯曲段,以便它具有恒定的曲率K,这是它的将是一个半径为1的圆的长度为1的圆弧/ K。然后,该分段映射到该点的点(0,T):

(1 - cos(kt))/k , sin(kt)/k 

对于(即当曲率是微小的,该段是接近直线),以防止被零除k的小值事故,则通过下面的公式将其映射(它是上述接近K = 0的泰勒展开式):

k t^2/2  ,  t - k^2 t^3/6 

编辑:以下的评论:

假设你的方向矢量是( x,y),那么corr的值esponding曲率,这将使在圆弧的端部即切线向量(T = 1)由下式给出:

k = atan2(x, y) 
+0

thx,尝试一下。这正是我的想法,但无法弄清细节。 – Teris