小编Vla*_*sov的帖子

回旋曲线的参数化函数

我正在为道路网络编写渲染器,它基于RoadXML格式。

\n\n

这种格式的道路曲线有四种类型:

\n\n
    \n
  • 部分,
  • \n
  • 圆弧,
  • \n
  • 多段线,
  • \n
  • 布托弧。
  • \n
\n\n

我对最后一个有问题。

\n\n

回旋线与欧拉螺旋、Cornu 螺旋相同。在 RoadXML 中,布料弧由三个参数给出:

\n\n
    \n
  • 开始曲率,
  • \n
  • 末端曲率,
  • \n
  • 长度。
  • \n
\n\n

对于弧三角测量,我需要一个像 foo(t) 这样的函数,它返回 t = 0..length 的 (x, y) 坐标。我为圆弧创建了类似的方法,没有出现任何问题,但我不能为布料弧执行此操作。

\n\n

部分问题是我不完全理解如何在标准回旋曲线公式中应用开始和结束曲率参数。

\n\n

例如,RoadXML 道路示例。\n RoadXML 示例 http://img560.imageshack.us/img560/8172/bigroandabout.png

\n\n

这是红色椭圆中的布料曲线项。其参数:

\n\n
    \n
  • 起始曲率 = 0,
  • \n
  • 末端曲率 = -0.0165407,
  • \n
  • 长度 = 45.185。
  • \n
\n\n

我不知道如何实现这些参数,因为从 0 到 -0.0165 的回旋曲线曲率非常直。

\n\n

如果您给我这个函数的代码(C++、C#、Java、Python 或伪代码)或只是一个我可以编码的公式,我会很高兴。

\n\n

这是我的方程:

\n\n
x(t) \xe2\x89\x88 …
Run Code Online (Sandbox Code Playgroud)

math 3d geometry computational-geometry

5
推荐指数
1
解决办法
8917
查看次数

标签 统计

3d ×1

computational-geometry ×1

geometry ×1

math ×1