自由曲面モデリング(Freeform surface modelling)とは、CAD(コンピュータ支援設計)やCAID(コンピュータ支援工業デザイン)を用いて自由曲面(freeform surface)を制御する技術である。
この技術は、主に2つの分野において使われて来た。一つは「クラスAサーフェス」と呼ばれる高品位なサーフェスの作成で、例えば自動車のボディや消費者向け製品などの外見のフォルムを作成する際に効果を発揮する。もう一つは工学的な精密さを求められる構成部品のサーフェスの作成で、例えばガスタービンのブレードやその他の流体力学的な精密機械の構成部品などである。
CADソフトで自由曲面を生成するに当たっては、主に2つの方法が使用される。一つはスプライン曲線をベースとする方法で、まずスプライン曲線を生成し、それをガイド線として掃引体を生成(「スイープ」、断面を元に押し出す)するか、もしくはスプラインによる2つの断面外形線を連結するようなサーフェスを生成(「ロフト」)する方法である。
もう一つはサーフェスの制御点を操作してサーフェスを直接生成する方法である。
このように最初に作成されたサーフェスをベースとして、元サーフェスからのオフセット曲面を生成、もしくは角度を指定して延長させるなどして、他のサーフェスを生成していく。あるいは、サーフェスのグループの間でブリッジを形成したり、ブレンド曲面を形成したりして、複数のサーフェスを接続することでサーフェスを生成していく。
サーフェス
自由曲面、または自由曲面生成とは、3Dの幾何学的要素の表面を説明するために、CADおよびその他のCGソフトで使用される用語である。自由曲面は、平面、円柱、円錐曲面などの正則曲面とは異なり、半径方向の寸法が固定されていない。自由曲面は、タービンブレード、車体、船体などの形状を表現するために使用される。当初は自動車産業および航空宇宙産業向けに開発されたものだったが、現在はコンシューマ製品から船舶まで、あらゆる工学設計分野で広く使用されている。今日のほとんどのシステムはNURBS(非一様有理Bスプライン)曲面を利用するが[1]、ゴードン曲面やクーンズ曲面など他の手法も存在する。
CADソフトにおいて、自由曲面(および曲線)の形状は多項方程式の形ではなく、制御点・角度・および曲面パッチ(スプライン曲線のセグメント)の数によって保存(あるいは定義)されている。サーフェスの次数はその数学的特性を決定し、次数の累乗の変数をもつ多項式によってサーフェスの形状が表現できると言える。たとえば、次数が1のサーフェスは、フラットな断面のサーフェスとなる。次数が2のサーフェスは一方向に湾曲するだけだが、次数3のサーフェスは曲率を凹から凸に1度だけ変化することができる(必ずしも変化する必要は無いが)。一部のCADシステムでは、「次数」(degree)の代わりに「階数」(order)という用語を使用する。多項式の階数は次数よりも1大きく、「最大の指数」ではなく「係数の数」を示す。
サーフェスの制御点は、その形状を定義する。ナチュラルサーフェス(トリミングされていないサーフェス)のエッジは、最初と最後の制御点の位置によって決定される(サーフェスにはトリミングされた境界がある場合があることに注意されたし)。中間の制御点は、サーフェスをその方向に引っ張る磁石のように機能する。ただし、サーフェスはこれらのポイントを通過しない。2番目と3番目の制御点は、形状を定義するとともに、それぞれ開始角度と接線角度、そして曲率を決定する。単一の曲面パッチ(ベジェ曲面)においては、サーフェスの次数の値より1つ多い制御点がある。複数の曲面パッチは、単一のNURBSサーフェスにマージすることができる。これらの点にはノットラインが存在する。ノットの数によって、両側の制御点の影響度と、トランジションの滑らかさが決まる。パッチ間の滑らかさは「連続性(continuity)」と呼ばれるが、英語ではしばしば「C value」とも呼ばれる。
- C0: 同じ位置で互いに接触している。ただし接線方向と曲率は一致していない可能性がある
- C1: 接線方向が一致する。ただし曲率が突然変化している可能性がある
- C2: パッチは互いに連続した曲率である
さらに重要な点が2つあり、それはUおよびVパラメータである。これらは0〜1の範囲のサーフェス上の値であり、サーフェスの数学的な定義や、トリムされた境界エッジなど、サーフェス上のパスを定義するために使用される。それらは表面に沿って比例的に間隔が空いているわけではないことに注意されたし。定数Uまたは定数Vの曲線は、「isoperimetric curve」またはUライン(Vライン)として知られている。CADシステムにおいては、サーフェスは多くの場合、定数Uまたは定数V値の制御点が線で接続されて表示される。これらは制御ポリゴン(Control Polygon)と呼ばれる。
モデリング
形を定義する際に重要な要素は、サーフェス間の連続性、つまりサーフェス間の接続の滑らかさである。
自由曲面が優れている例の一つは、自動車のボディパネルである。曲率半径が異なるパネルの2つの湾曲した領域をブレンドして、接線の連続性を維持する(ブレンドされた表面が突然方向を変えるのではなく、滑らかにする)だけでは不十分である。2つのセクション間で曲率の変化率を連続的に変化させる必要がある。そうしないと、反射が切断されたように見える。
連続性は次の用語を使用して定義される。
- G0 – 位置(接触)
- G1 – 接線(角度)
- G2 – 曲率(半径)
- G3 – 加速度(曲率の変化率)
高品質のNURBSまたはベジェサーフェスを実現するには、一般的に5以上の次数が使用される。
用語の歴史
ロフトコマンドの「ロフト」という用語は、もともと造船業界から来たもので、木から現尺(実際のサイズ)の竜骨や水密隔壁の形を切り出すために、ロフトマン(現図工、造船の設計図を現尺に引き伸ばす職人)らが「barn loft(納屋の屋根裏)」型の構造の建物(納屋の屋根裏のように天井の構造が丸見えで、がらんどうの非常に広い建物、現図場)で働いていたことに由来する。その後、これは航空機業界に引き継がれ、さらにその後、流線形が求められる自動車産業へと引き継がれた。
「スプライン」という用語も船舶に起源があり、イースト・アングリア地方の方言で「細長い木片」を意味した(おそらく古い英語・ゲルマン語の「splint(添え木)」の意味であろう)。
自由曲面モデリングが利用できるソフトウェア
関連項目
参照