丸みを付ける

3Dというか3次元を扱う仕事でもっとも困難な処理の一つに「丸みを付け」がある。

一般にはフィレットとかコーナーRとか言われているが、例えば机の角やふちの部分が鋭く無く角に丸みが付いている「それ」の事だ。
 
困難というと「そう?」と思われるかも知れないが数学的、数値計算処理はそうとう困難だ。
それでもCADとかモデリングソフトを使う側からすると簡単に丸みをつけられるのでその背景にある技術的難しさはあまり感じないかもしれない。
 
なんで難しいかを一言で言うのはそれこそ難しいがその一つに数学的な理屈が「まとも」に定義出来ないからだろう。精密工学会誌 Vol75 No9.2009 p1117では
CAD/CAMシステム開発者や研究者の多大な努力にも関わらず安定したブレンド処理が実現できない」という記載がある。
 
ブレンド処理というのは簡単に言えば各々の稜線を丸み付けしていった時にそれぞれの稜線がぶつかる位置でお互いの丸み付けをどう結ぶかという問題。その他にも凸部と凹部の丸み付けがお互いに干渉したりそれに加えて他の稜線からの合流があったりする部分で問題が起きる。
イメージ 1

こういった問題をブレンド終端問題蓋面(capping face)問題 とか呼んでいるが未だに問題の起きない自動的な丸みつけアルゴリズムは確立されていない。
我こそはという方、是非挑戦してみてはどうだろうか?

※精密工学会誌 Vol75 No9.2009 p1117
頑健なブレンド処理のための境界表現の拡張に関する研究(第2報)
Norio MATSUKI,Yosinori FURUKAWA,Fumihiko KIMURA