「3D プリンタ導入記 タンパク質の模型をプリントする」 2014/10/16 
理化学研究所 情報基盤センター 中田真秀 
1. はじめに 
巷で3D プリンタが流行ってきていますが、実際どのようなものができるか、タ 
ンパク質の模型をプリントする、という形で挑戦したノウハウです。OSX を主 
に用いますが、Windows でもほぼ同様にできます。適宜読み替えてください。 
尚、これは情報基盤センターがサービスを行うということではなく、皆様への 
ご参考までという意味であります。 
2. 3D プリンタとは? 
まず、作りたいもの(オブジェクト)をコンピュータで3DCAD やCG モデラーで 
作成します。オブジェクトはSTL 形式のファイルとして作成します。3D プリ 
ンタは、このファイルから、実際にオブジェクトをプリントする機械です。安 
価なのは、樹脂を熱で融かしながら積層するタイプが主流のようです。 
3. テストした製品 
様々なものが出ていますが、10 万円程度の安価なものである、UP mini 3D プリ 
ンター[1]を選びました。 
扉を閉じた写真
扉を開けた写真 
樹脂。これを融かして集積させる 
4. なぜタンパク質か? 
タンパク質の三次元構造(二次構造、三次構造…)は研究上非常に重要です。これ 
らを手にとって触れてみて感覚をつかむほうが、パソコン上で三次元表示させ 
るより遥かに理解が深まるからです。 
5. タンパク質を実際にプリントする
話の流れは、タンパク質のデータを取得、pymol でVRML2 形式にし、Meshlab 
で面および頂点を減らす処理を行い、STL 形式ファイルとして出力、それをプ 
リンタ出力というふうになっています。 
5. 1 タンパク質の情報の取得 
今回はProtein Data Bank から3EAM というタンパク質を選びました[2]。タ 
ンパク質のデータはPDB 形式で保存します。 
5. 2 pymol でVRML2 形式に直す 
これをpymol[3]で読みこみます 
$ pymol 3EAM.pdb
show surface として見やすくした後、File -> Save Image as -> VRML2 …と 
VRML2 形式でセーブします。 
Pymol だけで全て行うことができればいいのですが、pymol はSTL 形式を直接 
吐くことを現時点ではできないようです。STL 形式には色の情報は入りません 
ので、タンパク質についている色情報は消えてしまいます。 
5.3 Meshlab で処理したあとSTL 形式に直す 
このままだと出来たファイルには頂点および面の数が多すぎて処理が大変長く 
なったり異常終了したりしますので、Meshlab[4]で処理し、
これらの数を二段階で減らした後、STL 形式のファイルとして出力します。 
a. File -> import mesh で VRML2 形式のファイル3EAM.wr をインポートします。
b. 頂点や面を減らす パート1 
Filters -> Resampling, simplification and reconstruction -> Clustering 
decimation 
で、prec on を0.2 とします。この数字が小さいと思う場合は0.3 などと大き 
くしてみます。今回の3EAM.wrl では、 
オリジナルでは 
Vertices: 4,675,346 
Faces : 8,358,486 
が、prec on 0.2 で減らすと 
Verteices: 194,848 
Faces : 465,155 
となり、頂点は4.2%、面は5.6%まで減りました。
prec on を0.3 で減らすと 
Verteices: 154,082 
Faces : 344,101 
と頂点3.3%、面は4.1%まで減りました。Cell のサイズの指定なので、world 
unit を指定する、でも構いません。 
c. 頂点や面を減らすパート2 
Filters -> Resampling, simplification and reconstruction -> Quadratic 
Edge Collapse Decimation
で、Percentage Reduction を0.3 とすると、 
Verteices: 194,848 
Faces : 465,155 
から 
Verteices: 72,557 
Faces: 139,564 
まで減りました。元々のものと比較し、それぞれ1.6%、1.7%となりました。 
なぜこのように二段階の過程を経るかといいますと、Quadratic Edge 
Collapse Decimation は品質が高いが処理時間も非常に長くかかるからです。 
頂点数、面数が多いと途中で止まることさえありました。今回は、まず、 
Clustering decimation でざっくり減らしておいてから、Quadratic Edge 
Collapse Decimation で減らすというのをやっています。 
d. STL へエクスポート 
File -> Export Mesh As で STL を選択し、セーブ。
これでできた、3EAM.stl を3D プリンタ送ります。 
5.4 3D プリンタで出力 
おまちかねの出力です。プリンタを接続したPC にSTL を読み込ませ、プリント 
させます。適宜回転、再配置、倍率をかけたりして、微調整します。
この場合は23 時間程度かかるようです。実際は22 時間程度で打ち出せました。 
打ち出しているところ
5.5 サポートを取る。 
打ち出した直後はこのようになっています。凸な物体ではないのでサポートが 
ついています。ペンチやニッパーを使って取ってゆきます。 
5.6 完成
丁寧にサポートを取るとこのように完成します。お疲れ様でした。 
注意点 
 コツをつかまないとうまくプリントされないことが多く、練習が必要。 
 あまりにも複雑なものはプリントに失敗することがある。 
 印刷には時間がかかる。24 時間程度かかるものもある。 
 樹脂のコストが高い。大きい物体の印刷には樹脂消費量も多い。 
 完成時、「サポート」という印刷時の支えを取らねばならない。 
 小さな物体を1 つ2 つ作成するのには向いている。 
 大きな物体をたくさん作成するのには向いていない。 
 プリントされたオブジェクトには自分で色を塗らねばならない。 
参照URL 
[1] http://www.pp3dp.jp/3d002.html 
[2] http://www.pdb.org/pdb/explore/explore.do?structureId=3EAM 
[3] http://www.pymol.org/ 
[4] http://meshlab.sourceforge.net/ 
ライセンス 
以上

3Dプリンタ導入記 タンパク質の模型をプリントする

  • 1.
    「3D プリンタ導入記 タンパク質の模型をプリントする」2014/10/16 理化学研究所 情報基盤センター 中田真秀 1. はじめに 巷で3D プリンタが流行ってきていますが、実際どのようなものができるか、タ ンパク質の模型をプリントする、という形で挑戦したノウハウです。OSX を主 に用いますが、Windows でもほぼ同様にできます。適宜読み替えてください。 尚、これは情報基盤センターがサービスを行うということではなく、皆様への ご参考までという意味であります。 2. 3D プリンタとは? まず、作りたいもの(オブジェクト)をコンピュータで3DCAD やCG モデラーで 作成します。オブジェクトはSTL 形式のファイルとして作成します。3D プリ ンタは、このファイルから、実際にオブジェクトをプリントする機械です。安 価なのは、樹脂を熱で融かしながら積層するタイプが主流のようです。 3. テストした製品 様々なものが出ていますが、10 万円程度の安価なものである、UP mini 3D プリ ンター[1]を選びました。 扉を閉じた写真
  • 2.
    扉を開けた写真 樹脂。これを融かして集積させる 4.なぜタンパク質か? タンパク質の三次元構造(二次構造、三次構造…)は研究上非常に重要です。これ らを手にとって触れてみて感覚をつかむほうが、パソコン上で三次元表示させ るより遥かに理解が深まるからです。 5. タンパク質を実際にプリントする
  • 3.
    話の流れは、タンパク質のデータを取得、pymol でVRML2 形式にし、Meshlab で面および頂点を減らす処理を行い、STL 形式ファイルとして出力、それをプ リンタ出力というふうになっています。 5. 1 タンパク質の情報の取得 今回はProtein Data Bank から3EAM というタンパク質を選びました[2]。タ ンパク質のデータはPDB 形式で保存します。 5. 2 pymol でVRML2 形式に直す これをpymol[3]で読みこみます $ pymol 3EAM.pdb
  • 4.
    show surface として見やすくした後、File-> Save Image as -> VRML2 …と VRML2 形式でセーブします。 Pymol だけで全て行うことができればいいのですが、pymol はSTL 形式を直接 吐くことを現時点ではできないようです。STL 形式には色の情報は入りません ので、タンパク質についている色情報は消えてしまいます。 5.3 Meshlab で処理したあとSTL 形式に直す このままだと出来たファイルには頂点および面の数が多すぎて処理が大変長く なったり異常終了したりしますので、Meshlab[4]で処理し、
  • 5.
    これらの数を二段階で減らした後、STL 形式のファイルとして出力します。 a.File -> import mesh で VRML2 形式のファイル3EAM.wr をインポートします。
  • 6.
    b. 頂点や面を減らす パート1 Filters -> Resampling, simplification and reconstruction -> Clustering decimation で、prec on を0.2 とします。この数字が小さいと思う場合は0.3 などと大き くしてみます。今回の3EAM.wrl では、 オリジナルでは Vertices: 4,675,346 Faces : 8,358,486 が、prec on 0.2 で減らすと Verteices: 194,848 Faces : 465,155 となり、頂点は4.2%、面は5.6%まで減りました。
  • 7.
    prec on を0.3で減らすと Verteices: 154,082 Faces : 344,101 と頂点3.3%、面は4.1%まで減りました。Cell のサイズの指定なので、world unit を指定する、でも構いません。 c. 頂点や面を減らすパート2 Filters -> Resampling, simplification and reconstruction -> Quadratic Edge Collapse Decimation
  • 8.
    で、Percentage Reduction を0.3とすると、 Verteices: 194,848 Faces : 465,155 から Verteices: 72,557 Faces: 139,564 まで減りました。元々のものと比較し、それぞれ1.6%、1.7%となりました。 なぜこのように二段階の過程を経るかといいますと、Quadratic Edge Collapse Decimation は品質が高いが処理時間も非常に長くかかるからです。 頂点数、面数が多いと途中で止まることさえありました。今回は、まず、 Clustering decimation でざっくり減らしておいてから、Quadratic Edge Collapse Decimation で減らすというのをやっています。 d. STL へエクスポート File -> Export Mesh As で STL を選択し、セーブ。
  • 9.
    これでできた、3EAM.stl を3D プリンタ送ります。 5.4 3D プリンタで出力 おまちかねの出力です。プリンタを接続したPC にSTL を読み込ませ、プリント させます。適宜回転、再配置、倍率をかけたりして、微調整します。
  • 10.
  • 11.
    5.5 サポートを取る。 打ち出した直後はこのようになっています。凸な物体ではないのでサポートが ついています。ペンチやニッパーを使って取ってゆきます。 5.6 完成
  • 12.
    丁寧にサポートを取るとこのように完成します。お疲れ様でした。 注意点 コツをつかまないとうまくプリントされないことが多く、練習が必要。  あまりにも複雑なものはプリントに失敗することがある。  印刷には時間がかかる。24 時間程度かかるものもある。  樹脂のコストが高い。大きい物体の印刷には樹脂消費量も多い。  完成時、「サポート」という印刷時の支えを取らねばならない。  小さな物体を1 つ2 つ作成するのには向いている。  大きな物体をたくさん作成するのには向いていない。  プリントされたオブジェクトには自分で色を塗らねばならない。 参照URL [1] http://www.pp3dp.jp/3d002.html [2] http://www.pdb.org/pdb/explore/explore.do?structureId=3EAM [3] http://www.pymol.org/ [4] http://meshlab.sourceforge.net/ ライセンス 以上