CADの内部処理についてトレランスという用語は,図形要素(点や線)の座標値の精度を表す(製図用語ではトレランスは公差のことだが,ここでは触れない)。コンピュータ内では数値は有限の桁内におさめて表現しなければならず,このため演算誤差がどうしても発生する(例えば安価な電卓で10を3で割ってから3をかけても9.9999…にしかならない)ため,ある程度の許容誤差を認める必要がある。

 コンピュータ内部では,座標は浮動小数点形式の64ビット幅のもので表現することが多い。浮動小数点形式は小数点の位置を示す情報(指数)と有効数字(仮数)を組みにして保持するもの。単純に2進数で整数を表すのに比べて,非常に大きい数や,ゼロに近い数を扱える。1985年に決まったIEEE754規格(符号1ビット,指数部11ビット,仮数部52ビットの合計64ビット)の形式が多く使われている。

 浮動小数点データが同じかどうか(同じとみなすかどうか)を判定するには,内部では二つの数を引き算して,結果がゼロに十分近いかどうかを見る。演算誤差があるため,ゼロかどうかでは判定できない。この許容誤差をCADの場合はトレランスと呼んでいる。

 CADでは複数種類のトレランスを用いているが,そのうち大事なのは「マージトレランス」「微小要素トレランス」「折れトレランス」の三つ(エリジオンによる)。マージトレランスは,隣接する2面に対して,どの程度まですき間を許容するかを規定するもの。

 微小要素トレランスは,そのCADで作成可能な最小要素の長さを規定する。複数の点が一致しているかどうかもこのトレランスで判定する。要素の大きさに下限を設ける代わりに,この下限値より小さな位置のずれを許容することにしたもので,言ってみればCADの分解能に相当する。

 折れトレランスは,一つの数式で表現される曲線や曲面において,折れの有無を見極めるためのもの。通常,曲線(または曲面)の接線2本(または接平面2枚)のなす角度の許容値として規定する。折れ部は法線方向が定まらないため,内部処理としては曲面のなめらかな部分とは区別して扱う必要があり,その判定のため折れトレランスが必要になる。

 トレランスは厳しい方が良いとは一概には言えない。厳しくすると,その分だけ曲面や曲線の表現も精緻にしなければならなくなったり,交線や交点を求める計算が複雑になったりと,メモリーや処理時間を消費することになるためだ。用途と内部処理の兼ね合いでトレランスは決まる。一般にサーフェスのみを扱うCADより,ソリッドモデルを扱うCADの方がトレランスは厳しい。

 ユーザーは1種類のCADを使っている限り,トレランスをそれほど気にする必要はない。トレランスの存在を意識しなければならなくなるのは,異なった種類のCADへデータを変換して読み込ませるとき。同一の線や点かどうかの判定基準が変わることで,形状が成立しなくなることがあるからだ。 トレランスの設定はCADの初期設定ファイルなどで変えられる。複数のCADを使う場合にはあらかじめ同一の値に設定しておくことでデータ交換時の問題発生の減少を期待できる。ただしモデリングの途中に設定を変えても,有害なだけで意味はない。

過去の日経ものづくりにみる関連記事
  • モールドフロー,樹脂流動解析ソフトの最新版を発表(2004年8月27日)
  • テクノスター,大規模モデルに対応したプリポストの新版(2004年7月14日)
  • エリジオン,CAD Doctorの新版で形状簡略化機能を追加(2003年7月15日)