2.5 モデル相互の木構造指定と変換

次のページ

 幾つかの機械部品のパーツを、まとめて一つのアッセンブリとするように、2つ以上の幾何モデルを、まとめて一体として扱いたいことがあります。このときの考え方に2通りあります。全部を足し合わせて1体としてしまう(PUNIのコマンドなど)のと、個々のモデルに論理的な接続関係をつけて一まとめで扱うようにすること(LMTREE)です。ここでは後者の方法を説明します。個々の幾何モデルの間に、「…親・子・孫・曾孫…」のような家系図の関連を付けることにします。判りやすくするために家系図の用語を使いますが、「幹・大枝・小枝・葉」のように枝分かれを考えた樹木構造(tree structure)の方が構造的に正確です。と言うのも、家系図では両親のどちらかに注目しないと、木構造のようなすっきりした関連にならないからです。幾何モデル相互に関連をつけるコマンドには LMTREE, LDTREE の二つが用意されています。コマンド LMTREE は、一つの親となる幾何モデルに、複数の子モデルを縁組みさせます。コマンド LDTREE は、ある木構造に組み込まれている幾何モデルで、自分のと親と縁を切って自分が家長になるか、さらには子とも縁を切って独立するか、の選択ができます。この二つのコマンドで、任意に木構造を組み立てることができます。

 いま、複数の幾何モデルを木構造で関連付けておきます。あるモデルを代表で指名すると、そのモデルを家長とする全構成モデルが一括して対象となるようにできます。平行移動・回転・変形を扱うコマンド PG***には、パラメータとして itreeが選択できるようになっています。
itree = 0 指定された幾何モデル単体だけを変換の対象にします。
itree = 1 指定された幾何モデルを含み、そのモデルを家長として繋がった全部の幾何モデルが、同じ変換の対象になります。

 人体の骨格モデルを考えると、胴体から腕・肘・手首・指の順に木構造を考えることができます。腕を動かせば、腕から指の先までの全体が一体として動きます。手首から先だけを動かすとき、腕と肘とは動かさなくて済みます。もし左右の腕を動かすとき、両手を繋いでいると、一意的に動きが決まりません。これは、モデルの関連付けにループ構造ができる場合に相当します。機械部品の連結にループ構造や網目構造が構成されていると、部分部分の変形を考えたり、拘束条件を満たすようにしないと運動を正しく表わすことができません。この問題は、GEOMAPでは扱っていません。


次のページ