今は多角形から曲線(円弧補間(6点))を生成するスクリプトをデバッグ中ですが、条件が良ければ使えます。
上から順にキュービック・スプライン、自然スプライン、円弧補間(4点)、円弧補間(6点)で、頂点数は200〜300です。
右側は曲率のグラフです。円弧補間は曲率のピークが低いことが分かります。曲線を車の軌跡と考えたら、グラフの横軸は走行距離で縦軸はハンドルの回転角を表します。この曲線は半時計回りなので左ハンドルを切っていることになります。
キュービック・スプラインは曲率の変化が激しい。右側の山が際立ってます。
自然スプラインは曲率の変化がスムーズで綺麗です。曲率ゼロから始まって曲率ゼロで終わるという縛りが無ければなあ、と思いますが、これは私の手には負えません。
円弧補間(4点)は曲率の振動が凄い。振動し過ぎてこの中で唯一曲率が逆転しています。円弧補間(6点)の目処が立ったのでゴミ箱行きですね。
円弧補間(6点)も曲率が振動していますが、それほど酷くはありません。振動の振幅は改善出来る可能性があるので後日試してみます。