gvf_circle.py API 参考

二维圆轨迹隐式函数、梯度、切向量与归一化导航向量场。

  • 源码路径:single_demo/scripts/gvf_lib/gvf_circle.py
  • 本页函数/方法数:6
  • 行号对应本文档生成时采用的源码版本;源码调整后应重新生成本页。

阅读方式

本页用于快速检索签名与调用关系。核心控制和算法推导请先阅读“开发指南”中的对应章节。

circle.__init__

__init__(self, center=np.array([0.0, 0.0]), r=10, k=1)
  • 源码位置:第 6 行
  • 类别:初始化
  • 作用:初始化 circle 的参数、状态缓存以及所需的通信或算法对象。
  • 主要调用float, np.array
  • 写入状态self.center, self.k, self.k_init, self.r

circle.update_phi

update_phi(self, pos)
  • 源码位置:第 12 行
  • 类别:内部计算/辅助
  • 作用:更新当前位置到目标圆的有符号径向距离。
  • 主要调用np.array, np.sum
  • 写入状态self.phi

circle.update_error

update_error(self, pos)
  • 源码位置:第 16 行
  • 类别:内部计算/辅助
  • 作用:更新并保存圆轨迹误差。
  • 主要调用np.array, self.update_phi
  • 写入状态self.error

circle.get_grad

get_grad(self, pos)
  • 源码位置:第 22 行
  • 类别:算法查询/计算
  • 作用:计算圆心到当前位置方向的单位梯度;圆心处返回零向量。
  • 主要调用np.array, np.linalg.norm
  • 写入状态self.grad

circle.get_tau

get_tau(self, pos, rotate='cw')
  • 源码位置:第 32 行
  • 类别:算法查询/计算
  • 作用:把单位径向梯度旋转 90°,得到顺时针或逆时针切向量。
  • 主要调用np.array, np.dot, self.get_grad
  • 写入状态self.tau

circle.get_omega

get_omega(self, pos)
  • 源码位置:第 42 行
  • 类别:算法查询/计算
  • 作用:计算圆轨迹的切向项减去径向误差收敛项,并归一化。
  • 主要调用np.array, np.linalg.norm, self.get_grad, self.get_tau, self.update_error
  • 写入状态:不直接写入对象属性