回旋线的计算

1. 什么是回旋线

在计算机图形学和数学中,回旋线是一种特殊的曲线,它以一种螺旋状的方式向外扩展或向内收缩。回旋线可以通过极坐标方程或参数方程来描述,常见的回旋线包括阿基米德螺线和对数螺线。在计算机图形学中,回旋线常常用于创建艺术效果或动画效果。

2. 特性

kappa 连续

3. 回旋线的参数 

typedef struct rbp_Tag_tpcClothoid_st

  {

    rbp_Type_Point_st End_st; /** Clothoid end point   [1/2^10 m] */

    SInt16 Phi_s16;      /** Clothoid end point tangent angle   [1/2^12 rad] */

    UInt16 Kappa_u16;    /** curvature in end point (= curvature of clothoid circle) [1/2^15 m] */

    UInt16 LengthF10_u16;  /** clothoid length [1/2^10 m] */

    SInt16 Xm_s16;       /** clothoid circle center [1/2^10 m] */

    SInt16 Ym_s16;       /** clothoid circle center [1/2^10 m]. The "Tangentenabrueckung" can be easily calculated: deltaR = Ym - clothoid inner circle radius. The "extended circle radius" is: Rext                                         = sqrt(X_m^2 + Y_m^2). Since these values are not always needed, they should be calculated on demand. */

  } rbp_Type_tpcClothoid_st;

4. 计算原理

  1. 回旋线的所有参数的计算按照下面的步骤进行

    1. 获取回旋线结束点出圆半径的曲率: k = 1/R
    2. 计算回旋线的长度:L_clo = K * A2
    3. 计算回旋线的End point信息
    4. 计算回旋线内圆心坐标
  2. End point 的计算:

    1. 计算EndPoint处的切角:𝑝𝑠𝑖=𝐿22∗𝐴2。切角的范围在(0~0.5rad,对应0到28.65°)
    2. 如果A<2.7或L_clo<2m,使用近似方法来计算End point的位置(X,Y)。(因为误差分析表明,如果如果A<2.7或L_clo<2m则对于回旋线的所有点,近似值都精确到0.5mm, 比LUP更精确)计算方法: 
      1. EPX≈ L*(1-β^2/10)
      2. EPY≈ L*(β/3)
    3. 否则根据终点的切角β来查表并进行线性插值
  3. 计算回旋线内圆心坐标:

                Mpx = Endpoint_x -  R*sinβ

                Mpy = Endpoint_y + R*cosβ

5. Detail 解释

  1. 回旋曲线的本质特征:

𝑑𝑘𝑑𝑙 = ±1𝐴2

即曲率k随弧长l线性变化&#x

  • 19
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值