top of page

第85回: 曲線のフィッティング

  • 7月17日
  • 読了時間: 2分

曲線を取り扱っているときに、1つの曲線のように見えるが、実は細かな曲線(線分)の集合だった、などということはないでしょうか?


このような要素は、他で作成した要素を取り込んだときなどに生じることがあります。そのままでは困るので、多くの場合は一本化して作業すると思います。



しかしこのような曲線群を一本化すると、できた曲線は 内部の連続性が0 の曲線になってしまいます。


前々回 第83回 の「連続性0:折れたセグメント」で解説しましたが、セグメント間の連続性0の要素はあまり好ましくないですよね。何とか改善したいところです。


第83回では、曲線を尖点で分割する手順をお知らせしました。しかし今回の例では、折角一本化したのに、また分割するわけにもいきません。このような場合は、曲線フィッティング コマンドを使用して、曲線をフィッティング(=近似して高品質化)します。


曲線フィッティング コマンドでは、次数連続性セグメント数 を指定してフィッティング曲線を作成します。


通常は 次数3連続性2 程度からスタートします。また、選択リストから クオリティチェック を展開すると、元の曲線との差(最大距離)を確認することができます。


セグメント数 を調整すると、最大距離の値が変化するので、許容できる値になるパラメーターでコマンドを実行します。


なお、最大距離が小さければ小さいほど良いかというと、そういうわけではありません。セグメント数をどんどん増やして最大距離を小さくしていくと、曲線の形状は元の折れ線にどんどん近づいていきますが、その結果、振動するような形状になることがあります。これはこれであまり好ましくありません。


次の例は、一番下が折れ線を一本化した元の曲線、上の3つが曲線フィッティングで近似したものです。下に行くほどセグメント数を増やして最大距離を小さく、つまり、元の曲線に近く作成しています。元の曲線に最も近い一番下は、かなり振動しています。


この例からも分かるように、近似曲線は元の曲線からある程度離した方が曲線全体はスムーズになります。


どの程度までの差違が許容されるかはケースバイケースなので、作成しているモデルの大きさなどからご判断ください。

thinknews vol.892(2026年6月12日配信)

 
 
 

コメント


bottom of page