こんにちは。この連載を始めてはや3回目になりました。

ここまでで「3D CADってそもそも何?」というところまでは理解いただけたかと思いますので、今回はその3D CADで使われているファイルの種類についてお話ししていきます。

3D CADを使うようになると、いろんな種類のファイルに出会うことになります。それはなぜでしょう?

第2回でお話ししたように、3D CADは複数のベンダーが各社で製品を開発して販売しています。そのCADごとにオリジナルのフォーマット(形式)でファイルが作られるからです。

CADごとに異なっているファイルフォーマット

ファイルの「フォーマット」とは、「ファイルの保存形式で、コンピュータで扱う文書、音声、画像、動画などのさまざまなメディアのファイルを特定の利用方法やアプリケーションソフトウェアで共通に扱うための形式や規格のこと」です。(Wikipediaより)

Windows PCでさまざまなソフトウェアを使用してデータを作成し、それを保存する際には "<ファイル名>.xxx"といったように、任意に設定した名称の後ろに"."(ドット)と 3つ以上のアルファベットが並んだ名称になっていることはご存知かと思います。このドットの後ろのアルファベットを「拡張子」と呼び、そのファイルがPCにインストールされているどのソフトウェアと関連づいているのかを識別する役割をしています。

例えば、多くの方が使用しているであろうMicrosoft Excelの拡張子は".xlsx"です。この文字列でWindows OSは「これはExcelのファイルフォーマットである」と認識しています。CADのファイルも同様ということです。

以下に、主要なCADで使用されているファイルフォーマットを一覧にしています。(フォーマットは拡張子で表現)

製品名 ファイルフォーマットの種類
CATIA V5 .CATProduct(アセンブリ)、CATPart(部品)
NX .prt(アセンブリ、部品とも)
Creo .asm(アセンブリ)、.prt(部品)
SOLIDWORKS .sldasm(アセンブリ)、.sldprt(部品)
Solid Edge .asm(アセンブリ)、.par(部品)
Inventor .iam(アセンブリ)、.ipt(部品)
iCAD SX .icd(アセンブリ、部品とも)
Fusion 360 .f3d(アセンブリ、部品とも)

※「アセンブリ」=組立状態のファイル、「部品」=部品単品状態のファイル

このように、CAD製品ごとにオリジナルのフォーマットを採用していることがわかります。なお、CADによってアセンブリと部品のファイルフォーマットが分かれているものと別れていないものがあります。これは各CADが各々オリジナルのファイル構造を持っているからです。

CAD間でデータをやり取りするために開発された中間ファイルフォーマット

CAD製品ごとにファイルフォーマットが異なっているということは、異なるCADで作成したファイルは基本的には、直接開こうとしても開けないということです。例えば取引先が使用しているCADと自社が使用しているCADが異なる場合、取引先で作成したデータを受け取って自社のCADで開こうと思っても開けないので、仕事が進められないというケースが多々発生するということです。これでは困りますね。

そこで開発されたのが中間ファイルと呼ばれるフォーマットです。どのCADにも依存せずに3Dの立体を表現するためのファイルです。ほとんどのCAD製品は、この中間ファイルと呼ばれるフォーマットでファイルを保存したり、開いたりする機能を持っています。 なお、このオリジナルではない形式でファイルを保存することを「エクスポート」、開くことを「インポート」と呼ぶことが一般的です。

主要な中間ファイルフォーマットは以下のとおりです。

ファイルフォーマット 特徴、主な用途
IGES (拡張子:.iges, .igs, .ige) 図形の情報をASCII(特殊な文字列)で表現したデータ。サーフェス データをやり取りする場合によく使用される。中間ファイルとしては最も歴史が古く、以前はデファクト スタンダードとして頻繁に用いられた。
STEP (拡張子:.step, .stp, .ste) 国際標準化機構(ISO)により標準規格とされている。ソリッド データをやり取りする場合によく使用される。
JT (拡張子:.jt) シーメンスPLMソフトウェア社が開発した、自社CAD製品であるNXのデータをやり取りするための中間ファイル。

例:InventorでSTEP形式にエクスポートし、SOLIDWORKSでインポートする

CADのモデリング テクノロジーの元となっている「カーネル」

中間ファイルと同じように認識されているものに「カーネル」というものもあります。これは、3D CADのベースとなるテクノロジーのことで、パソコンで言うOSにあたります。各CAD製品は、このカーネルをベースにして、モデリングのためのコマンドやユーザー インタフェースを開発してソフトウェアとして販売しています。

CATIAとCreoは、このカーネルを自社開発のオリジナルを使用していますが、NXやミッドレンジCADはいわゆる市販のカーネルを使用しています。この方が開発にコストがかからないため、CAD製品の価格を安く抑えることができるからです。ちなみに、ハイエンドCADであるNXがParasolidである理由は、そもそもParasolidはNXの前身であるUnigraphicsというCADの開発元であるUGS社が作ったものだからです。

第2回で紹介している主要なCAD製品は、ParasolidやACIS形式でエクスポートおよびインポートすることができるようになっています。

第2回で紹介したミッドレンジCADが採用しているカーネルは以下の通りです。

ACIS(拡張子:.sat) ※このためSATファイルと呼ばれることが多い Inventor
Parasolid(拡張子:.x_b, .x_t) SOLIDWORKS、Solid Edge、iCAD SX

中間ファイルでもカーネルでも、エクスポートする際には異なるフォーマットにファイルを変換しているので、他のCADでインポートした時に形状が100%再現されるとは限りません。他社CAD間でデータをやり取りする際にはこの点を心得ておく必要があります。したがって、渡す相手が使用しているCADを確認し、そのCADが受け取れるファイル形式で渡すことが基本ですが、受け取る相手がどのような形式で受け取るのがよいか、確認するのが一番確実です。なお、IGESは主にサーフェス データをやり取りする場合によく使用されますが、ソリッド データをやり取りする際にはあまり使用しません。

各CAD製品がどのフォーマットのファイルをインポート/エクスポートできるのか、に関しては各社ホームページに掲載されてるので参照してみてください。

最近は、他社製CADのデータを直接受け取れるCADも登場

ここまでお話ししたように、CADはソフトウェアごとにファイルフォーマットを持っているため、従来はどうしてもファイルのやり取りにはフォーマットを変える手間が必要でした。また、その際にはファイルを異なるフォーマットに変えるので、その後オリジナルのファイルを編集して更新しても、その情報は伝わらないという不便もありました。

しかし最近は、他社製CADデータを直接インポートできる製品が増えてきました。さらに、Inventorは昨年リリースのバージョン2016から、SOLIDWORKSは今年リリースのバージョン2017から、他社製CADのデータを直接読み込むだけでなく、インポートした他社CADのデータをある程度編集できるほか、そのファイルが更新されると通知される機能もあり、従来の不便が大きく解消されています。

それ以外の用途の中間ファイルフォーマット

CADで作成したデータを異なるフォーマットにエクスポートするという意味で、データのやり取りではない用途で使用するフォーマットもあります。代表的なものは、3Dプリンタです。ほとんどの3D プリンタは、STLまたはOBJというフォーマットのファイルを受け取ってプリントすることができます。

なお、STLはCADで、OBJはCG用ソフトウェアでよく用いられるファイルフォーマットなので、OBJでエクスポートできるCADはまだ多くはありません。どちらの形式でエクスポートすればよいのかわからない場合は、受け取る3Dプリンタの仕様に従ってください。

この図は一例として、MakerBot社のReplicatorという3Dプリンタ用アプリケーションでファイルを開こうとしているところです。このプリンタの場合はSTL、OBJの両方のフォーマットを使用できます。

3DプリンタはこのようにエクスポートされたSTLやOBJファイルを受け取ってプリントの前準備をします。(位置やスケールの調整など)

その他の、よく目にするファイルフォーマット

ここまで、3D CADを使用する上で最低限知っておくと便利なファイルフォーマットについてお話してきました。最後に、CADのデータについてネットで検索をしているとよく目にすると思われるファイルフォーマットについて簡単にまとめておきます。

DWG     2D CADのデファクトスタンダードであるAutoCADのファイルフォーマット。メインは2Dデータだが、3DのDWGもある。
DXF    
DWGの中間ファイル フォーマット。主に2Dデータをやり取りする場合に使用される。
IDF    
電子基板CADのデータを機械設計CADで受け取る際の中間ファイルフォーマット。基板は通常、専用のCADで設計するので、最終的に機械製品の設計データ内に組み込む必要がある。
PTS    
点群のファイル形式。3Dスキャナーで撮影したデータ。これを受け取れるソフトウェアに渡すことで、スキャンしたデータをPC内で立体的に表示できる。
VRML    
Webブラウザ上で利用することを前提にした3Dを表現するためのファイル形式。ただし現在は後継である"X3D"が用いられている。

今回はファイルフォーマットについていろいろとお話してきました。いろんな種類のファイルがあって最初は混乱するかもしれませんが、まずはご自身が使用しているCADで使われているファイルを理解し、それを誰かに渡すことになった時に「あれ?ファイルはこのまま渡していいんだっけ?」とちょっと考えていただき、この記事を思い出していただけるとうれしいです。

次回は、「知っておきたい頻出CAD用語」として、CADで使われる用語についていろいろとご紹介しようと思います。CADのことを調べていると「よく出てくる言葉だけどよく意味がわかってない」というものがあると思います。ちゃんと説明しようとすると難しいというような言葉について解説していこうと思います。お楽しみに!

著者紹介

草野多恵
CADテクニカルアドバイザー。某製造業企業の設計部に約6年間所属。その後、3D CAD業界に転身し、ベンダーの立場からCADの普及活動を行う。現在は独立し、ユーザーの目線に立ち、効果的なCAD導入を支援している。