CTから3DSlicerで作成した右上腕骨と右橈尺骨の3Dモデルを使って、肘関節の解剖について学んでみたいと思います。
肘関節は、一番好きな関節です。上腕骨に滑車といわれる円柱状の関節面がありますが、これと合わさっているのが橈骨関節面と、尺骨の滑車切痕です。上腕骨の円柱を受けるカップが、2つの骨から組み合わさってできているその形は、まさに芸術です。
CADソフトを使えば、骨の干渉を考慮できます。どういうことかというと、通常3Dモデルは、2つのモデルがぶつかっても通り抜けてしまいます。しかしFusion360のアセンブリ機能を使うと、2つのモデルはぶつかったら止まるようにシュミレーションできます。当たり判定といわれるものと同じ原理です。
以下方法を記しておきます。
1.CTから3DSlicerでSTLファイルを作成
まず、CTから右の上腕骨と橈骨・尺骨のモデルを取り出します。3DSlicerを使ってセグメンテーションを行い、別々のSTLファイルとして書き出します。うちの犬のCTデータです。今回は、橈骨と尺骨は1つのモデルとして書き出しました。
CT-MRI等のDICOMビューア3D Slicer(無料)の使い方 | 獣医 x プログラミング (jpn.org)
2.MeshMixerでソリッドモデル化
ソリッドモデル化して穴埋めしないと、Fusion360でソリッドモデルとして扱えず、接触判定ができません。
オーダーメイドプレートをCT3Dから作成 | 獣医 x プログラミング (jpn.org)
3.FUSION 360で研究
メッシュタブからメッシュを挿入したいですが、メッシュタブが見つかりません。その場合は、左のブラウザの一番上を右クリックすると、デザイン履歴をキャプチャしないという項目がでてきます。そこを押します。

するとメッシュタブがでてきました。メッシュタブがでてきたら、メッシュの挿入で、上腕骨と橈尺骨のモデルを選択してください。

挿入したモデルの座標は、とんでもないところにあります。ビューを縮小して遠くから眺めて、真ん中に持ってきてください。下のメモリを見るとわかるように、中心から離れて出現しました。(注:元の位置から移動させてSTL出力すると、元の座標からずれてしまいます。そのため、オーダーメイドプレートを作ってSTL出力する際には、CTから取り出したモデルは移動させてはいけません。3DslicerでCTのボリュームレンダリングと重ねることはできなくなります。)

右上腕の外側面。

頭側面。

内側面。

後面。カップの後ろ側(尺骨の肘突起)が、腕を伸ばしたときに上腕骨のくぼみにしっかりと収まります。これで腕を引っ張られても、尺骨が上腕骨にフックのように引っかかってるので安心ですね。

橈骨と尺骨を、上腕骨から離してみます。
内側面です。上腕骨の下に、橈骨と尺骨からなる見事なカップが見えますね。なぜ2つの骨で、1つのカップになったのでしょうか。私だったら1つ骨で作りたい。


後面。

外側面。

頭側面。

観察が終わったので、メッシュモデルをBRepにします。最終的には、アセンブリ解析をするためにコンポーネントというものに変更したいのですが、メッシュモデルから直接コンポーネントに変換できません。そのため、1回BRepにする必要があるのです。
〇 メッシュモデル → BRep → コンポーネント
× メッシュモデル → ×コンポーネント
ちなみに、MeshMixerでソリッド化する意義は、メッシュモデルをBRepにするためです。
〇 CT → STL → ソリッドモデル化STL → メッシュモデル → Brep(ソリッドモデル) → コンポーネント
× CT → STL → メッシュモデル → ×BRep(注:Brepだけどソリッドモデルではなくサーフェスモデルになる)
BRepにするにあたって、メッシュ数が多すぎるとエラーが出てしまいます。そのため、メッシュタブの下の削減をおしてメッシュを減らします。後々分かったのですが、ここでスムースもしておいた方がいいです。骨の表面が凸凹して、接触判定が厳しく関節面が滑るように動かなくなります。

ブラウザから、メッシュボディを選択し右クリック。メッシュからBRepを選択。

再度、右クリックでボディからコンポーネントを作成を押す。コンポーネントにしないと、アセンブリ解析できません。

ここで大事なのが、デザイン履歴キャプチャをオンにすることです。オンにしないと、物体が通り抜けてしまいます。コンポーネントにすると左クリックのドラッグだけでコンポーネントを移動できるようになります。しかし、デザイン履歴キャプチャをオフのままにしておくと、コンポーネントをドラッグしても動きません。通常の移動方法しかできません。

アセンブリの下の「接触セットを有効化」を押してください。この操作で、接触解析をアクティブになります。

「すべての接触を有効にする」を押します。

上腕骨を固定します。ブラウザで、上腕骨を選んで、右クリック。そして、固定を選んでください。固定したものに、橈骨尺骨をぶつけるというイメージです。

すると、橈骨尺骨を左クリックのドラッグだけで動かせるようになります。骨と骨がぶつかってそれ以上進めなくなります。接触解析をすることによって、上腕骨と、橈尺骨がカポッとはまる感じが分かります。カポッとはまる感覚は、実際の骨を触ったときに分かりますが、そういう経験ができない場合には、3Dの接触解析にしかできない体験ではないでしょうか。3Dを動かすことで関節にうまくはめるコツ(骨)さえつかみました。はめるコツは、カップ後ろ側の突起(尺骨の肘突起)を後ろから上腕骨にひっかけてから、カップ前側の突起(橈骨頭)を前側から関節にはめるという感じです。実際の骨はどうだったでしょうか。解剖学の授業で触ったはずですが、忘れてしまいました。それにしても、ほんとうに芸術的な関節ですね。
メモ:メッシュの段階でスムースを実施しないと、骨同士がひっかかかってほんとにうまくはまりません。
通常の移動の方法(Mボタンを押してアイコンをドラッグするやり方)だと接触判定がうまくいきません。また、高速で動かしても通り抜けたりしてしまいます。
関節をレンダリングしました。



