前回FreeCADを使用した変換を書きましたが、この手法だと面方向が指定されない為、3D-CGソフトで変換すると面が反転している場合があります。
3DCGソフト側でも修復できるのですが、変換時に面方向の指定されている拡張子がないかCADのアウトプットを確認しました。
下記の画像は、SolidWorks2016(standard),CATIA V5 R22 (HD2パッケージ)の拡張子になります。
SolidWorks2016(standard) |
,CATIA V5 R22 (HD2パッケージ) |
FrssCADではVRML(wrl)を読み込めないので、今回はMeshLabを使用してobjに変換します。
wrlをCADで出力する前にCADで出力オプションを確認しますと、VRML1.0とVRML97の2種類があります。
SolidWorksのVRMLオプション |
CATIA V5のVRMLオプション |
SolidWorksで100mm立方体を作成し、出力してみます。
VRML1.0と比べるとVRML97では項目が増えております。
ここでVRML97側の22~24行目を見て頂きたいのですが、point(点位置)が0.05になっております。
記載の中には単位がありませんので、このまま使用しますと0.1mm立方体になってしまいます。
もう一度、CADの出力オプションを確認してみますと
単位の欄があります。 VRMLで出力する場合は、実際の寸法ではなく指定した単位で出力されるようです。
※余談ですが、CATIAでは単位を変更しても出力されるデータに変化はありませんでした。こちらに関しては理由が判明し次第、追記致します。
ここから先はMeshLabを使っていきます。
まずMeshLabでVRML1.0を読み込んでみます。
・・・読み込めませんでした。
次にVRML97を読み込んでみます。
無事読み込むことが出来ました。
立方体だと面の情報が少ないので別のデータも読み込んでみます。
問題なく読み込めます。
このデータをobjファイルに変換し、ZBrushで読み込んでみます。
面方向も揃っています。
CATIAの場合は、スケール変更がうまくいかなかったので暫定的な手法としてMeshlabでスケールを変えることによって対応することが出来ます。