(57)【要約】【課題】造形物を高精度に造形できる情報処理装置を提供すること。【解決手段】造形対象の断面形状に基づいて材料を積層して前記造形対象を造形する積層造形装置に対し造形のためのデータを提供する情報処理装置であって、前記造形対象の形状に関するデータを用いて、前記造形対象の形状が変化する形状変化座標を検出する形状変化検出手段と、前記形状変化座標を含むように前記造形対象の断面形状が作成される高さを決定する断面形状作成位置決定手段と、前記断面形状作成位置決定手段が作成した前記断面形状が作成される高さで前記断面形状を作成する断面形状作成手段と、を有する。【選択図】図３
2017165012.tif 000002
【特許請求の範囲】
【請求項１】
造形対象の断面形状に基づいて材料を積層して前記造形対象を造形する積層造形装置に対し造形のためのデータを提供する情報処理装置であって、
前記造形対象の形状に関するデータを用いて、前記造形対象の形状が変化する形状変化座標を検出する形状変化検出手段と、
前記形状変化座標を含むように前記造形対象の前記断面形状が作成される高さを決定する断面形状作成位置決定手段と、
前記断面形状作成位置決定手段が作成した前記断面形状が作成される高さで前記断面形状を作成する断面形状作成手段と、を有する情報処理装置。
【請求項２】
前記造形対象の形状に関するデータは、前記造形対象の面の頂点の座標を有しており、
前記形状変化検出手段は、前記面の頂点の高さ方向の座標を前記形状変化座標として検出する請求項１に記載の情報処理装置。
【請求項３】
前記形状変化検出手段は、前記造形対象の形状に関するデータを用いて、前記造形対象の所定の高さごとに前記断面形状を作成し、前記断面形状を画像データに変換し、
隣接した高さの前記画像データが異なっている場合、前記画像データが作成された高さを前記形状変化座標に決定する請求項１に記載の情報処理装置。
【請求項４】
前記断面形状作成位置決定手段は、前記形状変化座標における前記断面形状の輪郭データを生成し、
高さ方向に隣接した２つの前記輪郭データが閾値以上、異なっている場合、隣接した前記形状変化座標の間で１つ以上の前記造形対象の断面形状を作成すると決定する請求項２に記載の情報処理装置。
【請求項５】
前記断面形状作成位置決定手段は、高さ方向に隣接した２つの前記輪郭データが前記閾値以上、異なっている場合、単位高さ当たりの前記輪郭データの変化量を用いて前記閾値の輪郭変化量が生じる高さ情報を算出し、
隣接した２つの前記形状変化座標の間に、前記輪郭変化量が生じる前記高さ情報ごとに前記造形対象の断面形状を作成すると決定する請求項４に記載の情報処理装置。
【請求項６】
前記断面形状作成位置決定手段は、前記造形対象の断面形状が作成される高さに所定の高さを加えると前記形状変化座標を超える場合、
前記形状変化座標を前記造形対象の断面形状が作成される高さに決定する請求項１〜５のいずれか１項に記載の情報処理装置。
【請求項７】
前記断面形状作成位置決定手段は、前記形状変化座標よりも低い高さで決定された前記断面形状が作成される高さと前記形状変化座標の差が、前記積層造形装置の積層厚の下限よりも小さい場合、前記形状変化座標よりも低い高さで決定された前記断面形状が作成される高さを、前記形状変化座標から積層厚の下限を減じた値に変更する請求項１〜６のいずれか１項に記載の情報処理装置。
【請求項８】
前記断面形状作成位置決定手段が決定した前記断面形状が作成される高さに基づいて、前記積層造形装置が材料を積層する積層厚を決定し、前記積層厚に基づいて前記断面形状に材料を積層するための積層データを作成する作成手段を有する請求項１〜７のいずれか１項に記載の情報処理装置。
【請求項９】
造形対象の断面形状に基づいて材料を積層して前記造形対象を造形する積層造形装置と、情報処理装置とを有する造形システムであって、
前記造形対象の形状に関するデータを用いて、前記造形対象の形状が変化する形状変化座標を検出する形状変化検出手段と、
前記形状変化座標を含むように前記造形対象の前記断面形状が作成される高さを決定する断面形状作成位置決定手段と、
前記断面形状作成位置決定手段が作成した前記断面形状が作成される高さで前記断面形状を作成する断面形状作成手段と、を有する造形システム。
【請求項１０】
造形対象の断面形状に基づいて材料を積層して前記造形対象を造形する積層造形装置に対し造形のためのデータを提供する情報処理装置を、
前記造形対象の形状に関するデータを用いて、前記造形対象の形状が変化する高さ方向の形状変化座標を検出する形状変化検出手段と、
前記形状変化座標を含むように前記造形対象の前記断面形状が作成される高さを決定する断面形状作成位置決定手段と、
前記断面形状作成位置決定手段が作成した前記断面形状が作成される高さで前記断面形状を作成する断面形状作成手段、として機能させるためのプログラム。
【請求項１１】
造形対象の断面形状に基づいて材料を積層して前記造形対象を造形する積層造形装置に対し造形のためのデータを提供する情報処理装置が行う情報処理方法であって、
形状変化検出手段が、前記造形対象の形状に関するデータを用いて、前記造形対象の形状が変化する高さ方向の形状変化座標を検出するステップと、
断面形状作成位置決定手段が、前記形状変化座標を含むように前記造形対象の前記断面形状が作成される高さを決定するステップと、
断面形状作成手段が、前記断面形状作成位置決定手段が作成した前記断面形状が作成される高さで前記断面形状を作成するステップと、を有する情報処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、造形システム、プログラム及び情報処理方法に関する。
【背景技術】
【０００２】
３Ｄデータで表された立体的な形状の３Ｄモデルを造形する積層造形装置が知られている。積層造形装置は、試作品や小ロットの部品を低コスト、短納期で製作することが可能である。積層造形装置が造形物を造形するには種々の方式があるが、３Ｄモデルが一層ごとにスライスされたスライスデータ（３Ｄモデルのある高さにおける断面形状）を下から積み上げていくことで３Ｄモデルを造形するという基本的な造形手順は同じである。
【０００３】
積層造形装置は、主に、材料を積層して造形していくプリンタ部であり、積層造形装置に対し材料の造形位置を指示するソフトウェアが使用される。ソフトウェアは情報処理装置で実行されるがこのソフトウェアは一般に、ユーザが用意した立体的な３Ｄモデルを表す３Ｄデータを解釈して、この３Ｄモデルの向きや配置を変更する機能を備えている。また、ソフトウェアは上記のスライスデータを作成する機能を有している。
【０００４】
図１は、スライスデータを説明するための図の一例である。図１（ａ）は３Ｄデータで表される３Ｄモデル５００であり、図１（ｂ）は３Ｄモデル５００が所定の積層厚でスライスされたスライスデータを示す。図１（ｃ）に示すように、積層造形装置は、３Ｄモデル５００の下層に当たるスライスデータから順に造形していく。造形物は下層部から上に積み重ねられていくことで造形されてゆく。
【０００５】
積層厚が小さいほどできあがった造形物の表面が滑らかになるが、造形に時間がかかることが知られている。この点に関し、積層厚を可変とする技術が考案されている（例えば、特許文献１参照。）。特許文献１には、３Ｄモデル５００を一定の積層厚でスライスし、連続したスライス層の輪郭形状を比較し、輪郭形状が一致した場合、スライス層を1つにまとめる（複数層分の積層厚として扱う）積層造形装置が開示されている。造形に利用するスライスデータの数が削減されるので、造形時間を短縮することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、特許文献１に記載された積層造形装置は、連続したスライス層の輪郭形状が一致しない場合に、スライスデータが正しく３Ｄモデル５００を表していないという問題があった。スライスデータが正しく３Ｄモデル５００を表していないと、スライスデータから作成された造形物の造形精度も低下してしまう。
【０００７】
図２を用いて説明する。図２は３Ｄモデル５００ルを正しく表すことができないスライスデータの一例を示す図である。図２（ａ）は３Ｄモデル５００を示し、図２（ｂ）は３Ｄモデル５００に基づいて造形された造形物６００を示す。図２（ａ）の複数の横線はスライス位置を示し、スライス位置のすぐ下の層はこのスライス位置のスライスデータに基づいて造形される。Ｚ＝３と４のスライス位置の間で形状が変化しているが、Ｚ＝４のすぐ下の層はＺ＝４のスライス位置のスライスデータに基づいて造形される。このため、造形物にはＺ＝３とＺ＝４の間の形状の変化が反映されない。Ｚ＝４とＺ＝５の間の層についても同様のことが言える。このため、図２（ｂ）に示すように、造形物６００が３Ｄモデル５００と異なってしまう（窪み３０１の位置が下側にずれてしまっている）。同じことはＺ＝５とＺ＝６の間の形状の変化、Ｚ＝７とＺ＝８の間の形状の変化についても言え、スライス位置とスライス位置の間で形状が変化している場合には、３Ｄモデルの形状と造形物の形状が異なってしまう。
【０００８】
また、３Ｄモデル５００の高さが積層厚で割り切れない場合、端数部分の厚みが造形されず、本来の３Ｄモデル５００の形が造形されない（高さが低くなる）という症状も起こる。すなわち、Ｚ＝１０では断面形状が検出されないので、Ｚ＝９とＺ＝１０の間の３Ｄモデル５００の形状は造形物に反映されない。
【０００９】
このように、スライス位置が等間隔だと連続したスライス層の輪郭形状が一致しない場合に、３Ｄモデルと造形物の形状が異なること、換言すると造形物の造形精度が低下する場合があった。
【００１０】
本発明は、上記課題に鑑み、造形物を高精度に造形できる情報処理装置を提供することを目的とする。
【課題を解決するための手段】
【００１１】
本発明は、造形対象の断面形状に基づいて材料を積層して前記造形対象を造形する積層造形装置に対し造形のためのデータを提供する情報処理装置であって、前記造形対象の形状に関するデータを用いて、前記造形対象の形状が変化する形状変化座標を検出する形状変化検出手段と、前記形状変化座標を含むように前記造形対象の断面形状が作成される高さを決定する断面形状作成位置決定手段と、前記断面形状作成位置決定手段が作成した前記断面形状が作成される高さで前記断面形状を作成する断面形状作成手段と、を有する。
【発明の効果】
【００１２】
造形物を高精度に造形できる情報処理装置を提供することができる。
【図面の簡単な説明】
【００１３】
【図１】スライスデータを説明するための図の一例である。
【図２】３Ｄモデルを正しく表すことができないスライスデータの一例を示す図である。
【図３】特徴面、特徴層及びスライスデータを説明する図の一例である。
【図４】造形システムの構成例を示す図である。
【図５】情報処理装置のハードウェア構成図の一例である。
【図６】積層造形装置のハードウェア構成図の一例である。
【図７】情報処理装置と積層造形装置を含む造形システムの機能構成図の一例である。
【図８】スライスデータの作成と印刷データ（Ｇコード）を説明する図の一例である。
【図９】特徴面の決定方法を説明する図の一例である。
【図１０】特徴面決定部が特徴面を決定するフローチャート図の一例である。
【図１１】スライス位置決定部がスライス位置を決定する手順を示すフローチャート図の一例である。
【図１２】三角錐の一例を説明する図である。
【図１３】特徴面決定部が特徴面を決定する手順を示すフローチャート図の一例である。
【図１４】特徴面の決定手順を説明する図の一例である。
【図１５】積層厚に応じた印刷データを説明する図の一例である。
【発明を実施するための形態】
【００１４】
以下、本発明を実施するための形態について図面を参照しながら説明する。
【００１５】
図３を用いて本実施形態の情報処理装置によるスライス位置の決定方法について説明する。図３は、３Ｄモデル５００の特徴面、特徴層及びスライスデータを説明する図の一例である。図３（ａ）を用いて特徴面と特徴層について説明する。特徴面とは「２つの隣接したスライス位置に挟まれる層で形状が変化する面」である。また、特徴面を含む層が特徴層である。例えば、図３（ａ）では、面２０１、２０２、２０３、２０４，２０５で形状が変化しており、これらの面が特徴面となる。これらの面を含む層が特徴層である。
【００１６】
このような特徴面がある場合、本実施形態の情報処理装置は以下のようにしてスライス位置を調整しスライスデータを作成する。図３（ｂ）は情報処理装置が決定するスライス位置を説明する図の一例である。
(i) 情報処理装置は３Ｄモデルにおいて特徴面が現れるＺ座標を調べる。
(ii) 下から一定の積層厚でスライスしていくが、特徴面が現れた場合、特徴面のＺ座標に一致するように積層厚を部分的に変化させる。
【００１７】
まず、特徴面が得られているものとする。図３（ｂ）ではＺ＝４のスライス位置の次の層が特徴層であるので、情報処理装置は特徴面に一致するＺ＝４´をＺ＝４の次のスライス位置に決定する。また、Ｚ＝４´から一定の積層厚でＺ＝５のスライス位置を決定する。Ｚ＝５の次の層が特徴層なので、情報処理装置は特徴面に一致するＺ＝５´をＺ＝５の次のスライス位置に決定する。
【００１８】
Ｚ＝５´から一定の積層厚でＺ＝６のスライス位置を決定する。次の層が特徴層であるので、情報処理装置は特徴面に一致するＺ＝６´をＺ＝６の次のスライス位置に決定する。Ｚ＝６´から一定の積層厚でＺ＝７のスライス位置を決定する。次の層が特徴層でないので、Ｚ＝７から一定の積層厚のＺ＝８をスライス位置に決定する。Ｚ＝８の次の層が特徴層であるので、情報処理装置は特徴面に一致するＺ＝８´をＺ＝８の次のスライス位置に決定する。
【００１９】
Ｚ＝８´から一定の積層厚でＺ＝９のスライス位置を決定する。Ｚ＝９の次の層は特徴層でないので、Ｚ＝９から一定の積層厚でＺ＝１０のスライス位置を決定する。Ｚ＝１０の次の層が特徴層なので、情報処理装置は特徴面に一致するＺ＝１０´をＺ＝１０の次のスライス位置に決定する。
【００２０】
本実施形態の情報処理装置は、このように特徴面に一致するようにスライス位置を決定するので、積層造形装置は造形物の形状を精度よく造形できる。
【００２１】
＜用語について＞
・造形対象の形状とは、積層造形装置で造形される立体的な形状である。造形対象の形状は何らかのデータで表されている。本実施形態では造形対象の形状又は造形対象を一例として３Ｄモデルという用語で説明する。
・造形のためのデータは、積層造形装置７０が解釈することで動作して３Ｄモデルを造形するための情報である。例えば、命令や制御内容、設定などが含まれる。本実施形態では一例として印刷データという用語で説明する。
・造形対象の形状に関するデータは、立体や三次元の形状を表すデータであればよい。本実施形態では一例として３Ｄデータという用語で説明する。
・積層データは、積層造形装置７０が造形物の造形のために使用するデータである。３Ｄモデルの断面形状の輪郭、又は輪郭に沿って積層造形装置の吐出ノズルが移動する際の軌跡などを含む。本実施形態では一例として印刷データという用語で説明する。
【００２２】
＜構成例＞
図４は、造形システム１の構成例を示す図である。造形システム１はネットワーク２を介して接続された情報処理装置２０と積層造形装置７０を有する。ネットワーク２は主に社内ＬＡＮであるが、ＷＡＮ又はインターネットを含んでいてもよい。また、情報処理装置２０と積層造形装置７０はＵＳＢケーブルなどの専用線を介して接続されていてもよい。ネットワーク２や専用線は全てが有線で構築されていてもよいし、一部又は全てが無線ＬＡＮ、Bluetooth（登録商標）、などの無線にて構築されていてもよい。
【００２３】
情報処理装置２０は、主にＰＣ（Personal Computer）であるが、後述するプログラムが動作する装置であればよい。そのほか、情報処理装置２０としては、例えば、タブレット型端末、スマートフォン、ＰＤＡ（Personal Digital Assistant）、携帯電話、ウェアラブルＰＣ、ゲーム機器、カーナビゲーション端末、電子ホワイトボード、プロジェクタなどでもよい。
【００２４】
情報処理装置２０は３Ｄデータを解析して３Ｄモデル５００を構築し、これを積層厚（積層ピッチ）で等間隔にスライスしてスライスデータを作成する。スライスデータはＧコードという書式の印刷データに変換され、この印刷データが積層造形装置７０に送信される。印刷データは、ＵＳＢメモリやＳＤメモリカードなどの記憶媒体に記憶された状態で積層造形装置７０に提供されてもよい。積層造形装置７０は記憶媒体Ｉ／Ｆに装着された記憶媒体から印刷データを読み込む。したがって、ネットワーク２はなくてもよい。
【００２５】
なお、情報処理装置２０と積層造形装置７０が一体に構成されていてもよい。すなわち、積層造形装置７０が情報処理装置２０の機能を有し、３Ｄデータから印刷データを作成するなどの処理を行う。また、情報処理装置２０がサーバ９０に３Ｄデータを送信しておき、サーバ９０が積層造形装置７０に印刷データを送信する形態も可能である。
【００２６】
積層造形装置７０は、印刷データを元に造形物を造形する。積層造形装置７０の造形方式としては、材料押出堆積法（ＦＤＭ）、マテリアルジェッティング、バインダージェッティング、粉末焼結積層造形（ＳＬＳ）、光造形（ＳＬＡ）などがある。材料押出堆積法（ＦＤＭ）は主に熱で溶かした樹脂をノズルから押し出し、積み上げて造形物を造形する。樹脂の他、金属などの流動体であれば積層造形装置７０の材料となりうる。マテリアルジェッティングはインクジェットヘッドから噴射した樹脂を、紫外線で固めて積層する方式である。バインダージェッティングは、インクジェットヘッドから液体の結合剤を噴射し、石膏や樹脂粉末を一層ずつ固めていく方式である。粉末焼結積層造形（ＳＬＳ）は粉末状の素材にレーザーを照射して焼結させる方式である。光造形（ＳＬＡ）は液体状の光硬化性樹脂を、紫外線レーザーで一層ずつ硬化させて積層していく方式である。本実施形態では説明の便宜上、材料押出堆積法（ＦＤＭ）の積層造形装置７０を例に説明するが、本実施形態のスライス位置の決定方法は造形方式に関わりなく適用できる。
【００２７】
<ハードウェア構成>
以下、図５，６を用いて、情報処理装置２０、積層造形装置７０のハードウェア構成について説明する。
【００２８】
<<情報処理装置のハードウェア構成>>
図５は情報処理装置２０のハードウェア構成図の一例である。情報処理装置２０は、ＣＰＵ５０１、ＲＯＭ５０２、ＲＡＭ５０３、ＨＤＤ(Hard Disk Drive)５０５、ディスプレイ５０８、ネットワークＩ／Ｆ５０９，キーボード５１１、マウス５１２、メディアドライブ５０７、光学ドライブ５１４、ＵＳＢＩ／Ｆ５１５、及び、これらを電気的に接続するためのアドレスバスやデータバス等のバスライン５１０を備えている。
【００２９】
ＣＰＵ５０１は情報処理装置２０全体の動作を制御する。ＲＯＭ５０２はＩＰＬ（Initial Program Loader）等のＣＰＵ５０１の駆動に用いられるプログラムを記憶している。ＲＡＭ５０３はＣＰＵ５０１のワークエリアとして使用される。ＨＤ５０４は、プログラム、ＯＳ（Operating System）及び各種データを記憶する。ＨＤＤ５０５は、ＣＰＵ５０１の制御にしたがってＨＤ５０４に対する各種データの読み出し又は書き込みを制御する。ネットワークＩ／Ｆ５０９はネットワーク２を利用してデータ通信するためのインタフェースである。キーボード５１１は文字、数値、各種指示などをユーザが入力するための複数のキーを備えた装置である。マウス５１２は各種指示の選択や実行、処理対象の選択、カーソルの移動などをユーザが入力するための装置である。メディアドライブ５０７は、フラッシュメモリ等の記録メディア５０６に対するデータの読み出し又は書き込み（記憶）を制御する。光学ドライブ５１４は着脱可能な記録媒体の一例としての光学ディスク(CD-ROM,DVD、Blu-Ray等)５１３に対する各種データの読み出し又は書き込みを制御する。ディスプレイ５０８はカーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示する。ディスプレイ５０８はプロジェクタなどでもよい。ＵＳＢＩ／Ｆ５１５はＵＳＢケーブルやＵＳＢメモリ等を接続するインタフェースである。
【００３０】
<<積層造形装置のハードウェア構成>>
図６（ａ）は、積層造形装置７０の構成を示す説明図の一例である。積層造形装置７０は、本体フレーム１２０の内部にチャンバー１０３を備えている。チャンバー１０３の内部は、造形物を造形するための処理空間となっており、その処理空間内すなわちチャンバー１０３の内部には、載置台としてのステージ１０４が設けられている。このステージ１０４上に造形物が造形される。
【００３１】
チャンバー１０３の内部におけるステージ１０４の上方には、造形手段としての造形ヘッド１１０が設けられている。造形ヘッド１１０は、その下方に造形材料であるフィラメントを吐出する吐出ノズル１１５を有する。本実施形態では、造形ヘッド１１０上に４つの吐出ノズル１１５が設けられているが、吐出ノズル１１５の数は任意である。また、造形ヘッド１１０には、各吐出ノズル１１５に供給されるフィラメントを加熱する発熱手段としての造形材料加熱手段であるヘッド加熱部１１４が設けられている。
【００３２】
フィラメントは、細長いワイヤー形状であり、巻き回された状態で積層造形装置７０にセットされており、フィラメント供給部１０６により造形ヘッド１１０上の各吐出ノズル１１５へそれぞれ供給される。なお、フィラメントは、吐出ノズル１１５ごとに異なるものであってもよいし、同じものであってもよい。本実施形態においては、フィラメント供給部１０６により供給されるフィラメントをヘッド加熱部１１４で加熱溶融し、溶融状態のフィラメントを所定の吐出ノズル１１５から押し出すようにして吐出することにより、ステージ１０４上に層状の造形構造物を順次積層して造形物を造形する。
【００３３】
なお、造形ヘッド１１０上の吐出ノズル１１５には、造形材料のフィラメントではなく、造形物を構成しないサポート材が供給される場合がある。このサポート材は、通常、造形材料のフィラメントとは異なる材料で形成され、最終的にはフィラメントで形成された造形物から除去される。このサポート材も、ヘッド加熱部１１４で加熱溶融され、溶融状態のサポート材が所定の吐出ノズル１１５から押し出されるように吐出されて、層状に順次積層される。
【００３４】
造形ヘッド１１０は、装置左右方向に延びるＸ軸駆動機構１０１に対し、そのＸ軸駆動機構１０１の長手方向（Ｘ軸方向）に沿って移動可能に保持されている。造形ヘッド１１０は、Ｘ軸駆動機構１０１の駆動力により、装置左右方向（Ｘ軸方向）へ移動することができる。Ｘ軸駆動機構１０１の両端は、それぞれ、装置前後方向に延びるＹ軸駆動機構１０２に対し、そのＹ軸駆動機構１０２の長手方向（Ｙ軸方向）に沿ってスライド移動可能に保持されている。Ｘ軸駆動機構１０１がＹ軸駆動機構１０２の駆動力によってＹ軸方向に沿って移動することにより、造形ヘッド１１０はＹ軸方向に沿って移動することができる。
【００３５】
また、本実施形態においては、チャンバー１０３の内部（処理空間）に、チャンバー１０３内を加熱する処理空間加熱手段としてのチャンバー用ヒータ１０７が設けられている。本実施形態においては、熱溶解積層法（ＦＤＭ）で造形物を造形するため、チャンバー１０３内の温度を目標温度に維持した状態で、造形処理を行うことが望ましい。そのため、本実施形態では、造形処理を開始する前に、予めチャンバー１０３内の温度を目標温度まで昇温させる予熱処理を行う。チャンバー用ヒータ１０７は、この予熱処理中には、チャンバー１０３内を目標温度まで昇温させるためにチャンバー１０３内を加熱すると共に、造形処理中には、チャンバー１０３内の温度を目標温度に維持するためにチャンバー１０３内を加熱する。チャンバー用ヒータ１０７の動作は、次述する制御部によって制御される。
【００３６】
図６（ｂ）は、本実施形態の積層造形装置の制御ブロック図である。造形ヘッド１１０のＸ軸方向位置を検知するＸ軸ポジション検知機構１１１が設けられている。Ｘ軸ポジション検知機構１１１の検知結果は、制御部１００に送られる。制御部１００は、その検知結果に基づいてＸ軸駆動機構１０１を制御して、造形ヘッド１１０を目標のＸ軸方向位置へ移動させる。
【００３７】
また、本実施形態においては、Ｘ軸駆動機構１０１のＹ軸方向位置（造形ヘッド１１０のＹ軸方向位置）を検知するＹ軸ポジション検知機構１１２が設けられている。Ｙ軸ポジション検知機構１１２の検知結果は、制御部１００に送られる。制御部１００は、その検知結果に基づいてＹ軸駆動機構１０２を制御することにより、Ｘ軸駆動機構１０１上の造形ヘッド１１０を目標のＹ軸方向位置へ移動させる。
【００３８】
また、本実施形態においては、ステージ１０４のＺ軸方向位置を検知するＺ軸ポジション検知機構１１３が設けられている。Ｚ軸ポジション検知機構１１３の検知結果は、制御部１００に送られる。制御部１００は、その検知結果に基づいてＺ軸駆動機構１２３を制御して、ステージ１０４を目標のＺ軸方向位置へ移動させる。
【００３９】
制御部１００は、このようにして造形ヘッド１１０及びステージ１０４の移動制御を行うことにより、チャンバー１０３内における造形ヘッド１１０とステージ１０４との相対的な三次元位置を、目標の三次元位置に移動させることができる。
【００４０】
＜造形システムの機能構成例＞
図７は、情報処理装置２０と積層造形装置７０を含む造形システム１の機能構成図の一例である。
【００４１】
<<情報処理装置>>
情報処理装置２０ではプログラム２０１０が実行される。このプログラム２０１０を情報処理装置２０が実行することで、以下で説明される主な機能を提供する。
【００４２】
情報処理装置２０は、通信部２１、３Ｄデータ読込部２２、特徴面決定部２３、スライス位置決定部２４、スライス部２５、印刷データ作成部２６、輪郭変化量算出部２７、及び記憶・読出処理部２９を有している。情報処理装置２０が有するこれらの機能は、図５に示されている各構成要素のいずれかが、ＨＤ５０４からＲＡＭ５０３上に展開されたプログラム２０１０に従ったＣＰＵ５０１からの命令によって動作することで実現される機能、又は機能される手段である。
【００４３】
また、情報処理装置２０は、図５に示されているＨＤ５０４によって構築される記憶部２０００を有している。記憶部２０００には、３Ｄデータ記憶部２００１、装置仕様情報ＤＢ２００２、及び、プログラム２０１０が記憶されている。プログラム２０１０は図５の記録メディア５０６やＣＤ−ＲＯＭ５１３に記憶された状態で配布されたり、プログラムを配信するサーバから配信される。プログラム２０１０はプリンタドライバと呼ばれていても、アプリケーションプログラムと呼ばれていてもよい。また、本実施形態で説明されるプログラム２０１０が例えばプリンタドライバとアプリケーションプログラムなどの２つ以上のプログラムを有するものでもよい。
【００４４】
３Ｄデータ記憶部２００１には３Ｄデータが記憶されている。３ＤデータはＵＳＢメモリなどの可搬性の記憶媒体から情報処理装置２０又は積層造形装置７０が読み取ったものでもよいし、ネットワークを介して接続されたサーバなどからダウンロードしたものでもよいし、また、情報処理装置２０で動作した３Ｄアプリが作成したものでもよい。３Ｄアプリは、例えば３ＤＣＡＤや３ＤＣＧなどと呼ばれるソフトウェアである。３Ｄアプリが出力する３ＤデータのデータフォーマットとしてはＳＴＬ（Standard Triangulated Language）が知られているがこれに限られるものではなく、３ＭＦ、ＰＬＹ又はＯＢＪなどでもよい。
【００４５】
【表１】
2017165012.tif 000003
表１は、３Ｄデータの一例を示す。表１はＳＴＬという書式の３Ｄデータである。ＳＴＬは三角形のポリゴンで形状を表す書式である。三次元空間の三角形の頂点と三角形の法線ベクトルが１つの三角形の情報である。
【００４６】
表１のfacetからendfacetまでが１つの三角形の情報を表す。また、normalが三角形の法線ベクトル、３つのvertexがそれぞれ三角形の３つの頂点の座標を表している。この三角形のデータが繰り返されることで、三次元形状を表現している。３Ｄモデル５００の表面はこれらの三角形の各頂点で表現されるため、幾何計算することで特徴面の検出やスライスデータの算出等が可能になる。
【００４７】
なお、上記のように３Ｄデータは、三次元の形状を表現していればどのような書式でもよい。また、立体形状の表面形状が分かっていれば、表面を三角形に分割してＳＴＬに変換することもできる。
【００４８】
【表２】
2017165012.tif 000004
表２は装置仕様情報ＤＢ２００２に記憶されている情報を模式的に示すテーブルである。装置仕様情報ＤＢ２００２は、積層造形装置７０の仕様を記憶している。本実施形態では、積層厚の上限、積層厚の下限、及び、可変単位が記憶されている。この他の積層造形装置７０の仕様が記憶されていてもよいが省略されている。積層厚の上限は一層の材料で積層可能な最大の厚みであり、積層厚の下限は積層造形装置７０が造形可能な最小の厚みであり、可変単位は積層厚を変更できる最小単位である。
【００４９】
（情報処理装置の機能）
情報処理装置２０の通信部２１は、図５に示されているＣＰＵ５０１やＯＳからの命令及びネットワークＩ／Ｆ５０９等によって実現され、積層造形装置７０と通信する。具体的には３Ｄデータから変換された印刷データを積層造形装置７０に送信する。
【００５０】
３Ｄデータ読込部２２は、図５に示されているＣＰＵ５０１からの命令、ＨＤＤ５０４等により実現され、３Ｄデータを３Ｄデータ記憶部２００１から読み込む。
【００５１】
特徴面決定部２３は、図５に示されているＣＰＵ５０１からの命令等により実現され、特徴面及び特徴層を決定する。決定方法については図９，１０などで説明する。特徴面決定部２３は特徴面のＺ座標を後述する特徴面テーブルに登録する。
【００５２】
スライス位置決定部２４は、図５に示されているＣＰＵ５０１からの命令等により実現され、特徴面決定部２３が作成した特徴面テーブルを用いて、特徴面でスライスデータが生成されるように３Ｄモデル全体のスライス位置を決定する。
【００５３】
スライス部２５は、図５に示されているＣＰＵ５０１からの命令等により実現され、３Ｄモデル５００の造形に関する処理を行う。具体的には、スライス部２５は、３Ｄデータにて表された３Ｄモデル５００を積層造形装置７０の仮想空間に配置する。なお、ユーザの操作を受け付けて３Ｄモデル５００の向きを設定してもよい。また、３Ｄモデル５００をＺ軸方向に等間隔（積層厚の間隔で）にスライスし、スライスして得られた各Ｚ座標における３Ｄモデル５００の断面形状を作成する。本実施形態ではスライス位置とスライス位置の間隔（スライス間隔）が可変である。３Ｄデータは例えばポリゴンで表されているため、Ｚ座標が決まるとそのＺ座標のポリゴンのＸ，Ｙ座標が得られる。スライスデータはこのポリゴンの断面のＸ，Ｙ座標の集合である。
【００５４】
印刷データ作成部２６は、図５に示されているＣＰＵ５０１からの命令等により実現され、スライスデータに基づいて印刷データを作成する。印刷データはＧコードで記述されることが多いが、本実施形態では書式は限定されない。積層造形装置７０が解釈可能な書式の印刷データが記述されていればよい。Ｇコードの例については図８（ｂ）にて説明する。
【００５５】
輪郭変化量算出部２７は、図５に示されているＣＰＵ５０１からの命令等により実現され、異なる２つのスライスデータを比較し、輪郭形状の変化量を算出する。
【００５６】
記憶・読出処理部２９は、図５に示されているＣＰＵ５０１からの命令及びＨＤＤ５０５等により実現され、記憶部２０００に各種データを記憶したり、記憶部２０００から各種データを読み出したりする。なお、以下では、情報処理装置２０が記憶部２０００から読み書きする場合でも「記憶・読出部を介して」という記載を省略する場合がある。
【００５７】
＜スライスデータの作成と印刷データ（Ｇコード）について＞
図８（ａ）はスライスデータの作成を説明する図の一例である。説明の便宜上、三次元空間の１つのポリゴンを例に説明する。法線ベクトルｎ（ａ，ｂ，ｃ，）と頂点ＯＰＱの座標がＳＴＬにより与えられている。このポリゴンを含む面の方程式は以下で表される。（Ｘｏ、Ｙｏ、Ｚｏ）はポリゴン上の点でありいずれかの頂点の座標を用いることができる。
【００５８】
ａ（ｘ−Ｘｏ）＋ｂ（ｙ−Ｙｏ）＋ｃ（ｚ−Ｚｏ）＝０
あるＺ座標でポリゴンをスライスするためには、ｚ＝Ｚを代入して、ａｘ＋ｂｙ＝定数という直線ＭＮの式を求める。Ｍは辺ＯＰにおいて高さＺの点であり、Ｎは辺ＯＱにおいて高さＺの点である。直線ＭＮはポリゴン内でしか存在しないので、点Ｍと点Ｎの座標を求めることで直線ＭＮを求めることができる。点Ｍは頂点ＯとＰを通る直線において高さＺの点であり、点Ｎは頂点ＯとＱを通る直線において高さＺの点である。この直線ＭＮがポリゴンがスライスされた場合の断面形状である。
【００５９】
図８（ｂ）は印刷データの一例としてＧコードを説明する図の一例である。１行が印刷データの１命令を表している。１命令の内容は様々であるがここでは吐出ノズル１１５の移動に関する命令を示す。Ｇ１で始まる命令は吐出ノズル１１５の移動及び材料の供給を表している。１行目はＸ=１０,Ｙ=１０の位置に、６００〔mm/minute〕の速度で移動せよという意味である。２行目はＸ=２０, Ｙ=１０の位置に、６００〔mm/minute〕で移動しながら、５〔mm〕の材料を供給せよという意味である。
【００６０】
図８（ｂ）の例では、点ＭからＮまで（又はこの逆）材料を吐出する命令を印刷データ作成部がＧコードにより作成する。
【００６１】
ＧコードはＦＤＭ方式の積層造形装置７０で使用される場合が多い。しかし、吐出ノズル１１５の軌跡（２点の座標の集まり）、移動速度、及び、材料の供給量を表現していれば印刷データはどのような書式でもよい。また、ＦＤＭ方式以外の積層造形装置７０では方式に応じた適切な印刷データが使用される。
【００６２】
＜特徴面の決定＞
以下では、特徴面の決定方法を二通りの方法(i)(ii)で説明する。
(i) ３Ｄデータ（ポリゴンデータ）から特徴面を決定する。
【００６３】
上記のように３Ｄモデル５００は、ポリゴンがメッシュ状に配置されたデータ群によって表現される。ＳＴＬ以外の書式あっても３Ｄデータにはポリゴンに関するデータが必ず含まれる。
【００６４】
図９を用いて特徴面の決定方法を説明する。図９（ａ）は３Ｄモデル５００の一例を示す。この３Ｄモデル５００は、２つの直方体４０１，４０２と１つの円錐４０３を有する。例えば、最下段の直方体４０１は図９（ｂ）に示すように複数の三角形のポリゴン４１１〜４１５等（紙面で死角になる面は省略）が組み合わされて表現されている。直方体４０１の上面はポリゴン４１５を有しているが、ポリゴン４１５は特徴面である。すなわち、ポリゴン４１５は３Ｄモデル５００の形状が変化する面であるが、形状が変化することはポリゴンによる面が存在し、面を表現するための３Ｄデータが存在していることになる。
【００６５】
したがって、本実施形態で特徴面と定義している面では、必ずＺ座標を含む３Ｄデータが存在していることになる。よって、特徴面決定部２３は３Ｄデータの全ポリゴンに含まれる頂点のＺ座標を調べることで、３Ｄモデル５００の形状が変化する面（＝特徴面）のＺ座標を決定できる（全て抽出できる）。例えば、面４１６、４１７の頂点は全てが特徴面のＺ座標を有している。当然ながら、重複するＺ座標は排除されればよい。
【００６６】
また、円錐４０３は複数のポリゴンの頂点が円錐４０３の頂点と一致する状態で、各ポリゴンが円周方向に並ぶように構成されている。しかし、１つのポリゴンは円錐４０３の底面から頂点まで切れ目がない。したがって、円錐４０３の場合もポリゴンのＺ座標は特徴面を含んでいる。
【００６７】
このように、特徴面決定部２３は３Ｄデータから特徴面を検出することができる。次述するように、スライスデータを使用してスライスデータ同士の形状を比較する場合よりも処理の負荷を低減できる。
【００６８】
【表３】
2017165012.tif 000005
表３は、特徴面テーブルの一例を示す。特徴面テーブルは特徴面ＩＤとＺ座標とが対応付けられた構造を有する。特徴面決定部２３は検出した特徴面を特徴面テーブルに登録する。特徴面ＩＤは、特徴面を識別するための識別情報である。識別情報とは、複数の対象からある特定の対象を一意的に区別するために用いられる名称、符号、文字列、数値又はこれらのうち２つ以上の組み合わせをいう。以下のＩＤ又は識別情報についても同じである。特徴面ＩＤは例えば重複しない整数などでよい。また、特徴面テーブルのＺ座標は特徴面のＺ座標である。
【００６９】
(ii) スライスデータの断面形状を画像データに変換して、画像データを比較することで特徴面を決定する。
【００７０】
図８（ａ）にて説明したように、スライスデータは「任意のＺ座標に対して垂直な平面」で３Ｄモデル５００が切断された断面形状である。特徴面決定部２３はこのスライスデータをビットマップイメージなどの画像データ（以下、スライス画像という）に変換する。変換することで、断面形状を画像として扱えるので特徴面の形状の変化の検出が容易になる。
【００７１】
以下、図１０を用いて手順を説明する。図１０は特徴面決定部２３が特徴面を決定するフローチャート図の一例である。
【００７２】
Ｓ１０：特徴面決定部２３は、３Ｄモデル５００の特徴層を欠かさず含むような積層厚をもって３Ｄモデル５００をスライスし、３Ｄモデル５００の全体分のスライス画像を作成する。下の層から順にスライスし、またスライスした順にスライス画像にＩＤを設定する。スライス画像の作成には、例えば３Ｄモデル５００のＸＹ平面における最大値を含むように画像メモリを用意し、断面形状に含まれる直線に対応する画素を黒画素に置き換える（その他は白画素）。これにより、ビットマップで表されたスライス画像が得られる。
【００７３】
なお、積層厚の決め方としては、例えば以下のような方法が考えられる。例えば、積層造形装置７０の積層厚の下限と同じにする。積層厚の下限は装置仕様情報ＤＢ２００２に登録されている。あるいは、３Ｄモデル上で表現されているＺ座標の精度に合わせてもよい。例えば３Ｄモデル全体の３Ｄデータにおいて、Ｚ座標値が最小で1/100mm単位で表現されている場合は、スライス画像の積層厚も1/100mmにする。なお、３Ｄモデル５００の特徴層を欠かさず含む積層厚はこれらに限るものではない。
【００７４】
Ｓ２０：次に、特徴面決定部２３は連続するＩＤのスライス画像を２枚ずつ比較する。すなわち、(1,2)、(2,3)、(3,4)・・・という形で比較していく。
【００７５】
Ｓ３０：比較した２つのスライス画像が完全に一致しているかどうかを判定する。例えばスライス画像がビットマップイメージであれば、画像の任意の位置に対応する画素の内容をそれぞれ取り出し、その値を比較すればよい。この比較を画像の全領域分実行する。
一度も比較結果が「不一致」にならなければ、２つのスライス画像は完全に一致していると言える。なお、この比較方法は一例に過ぎず、３Ｄモデル５００の断面形状の面積、連続する断面形状の外縁の長さなどで比較してもよい。断面形状が完全に一致するか否かを確認できるものであればこれらの手法に限らない。
【００７６】
Ｓ４０：２つのスライス画像が一致していない場合、特徴面決定部２３はＩＤが若い方のスライス画像が作成されたＺ座標を特徴面に決定する。ステップＳ１０で設定された積層厚と特徴面のスライス画像のＩＤの積により特徴面のＺ座標が求まる。特徴面決定部２３はこのＺ座標を特徴面テーブルに登録する。以上の処理により、特徴面が現れる全てのＺ座標を検出することができる。
【００７７】
＜スライス位置の決定＞
続いて、スライス位置の決定について説明する。スライス位置決定部２４は特徴面テーブルを用いて、３Ｄモデル全体のスライス位置を決定する。基本的な手順は以下のとおりである。
(ａ) 最下面（Ｚ＝０）から一定の積層厚で次のスライス位置を決定する。
(ｂ) 次のスライス位置（Ｚ座標）が特徴面テーブルのＺ座標を超える場合、次のスライス位置を特徴面に一致させる。
【００７８】
例えば、一定の積層厚 を２．０〔ｍｍ〕とする。最初のスライス位置は２．０である。次のスライス位置は２．０＋２．０＝４．０〔ｍｍ〕となる。ここで、特徴面テーブルの特徴面ＩＤ＝１のＺ座標を参照すると２．９〔ｍｍ〕なので、スライス位置決定部２４は２．９〔ｍｍ〕でスライスすると判定する。したがって、積層厚は２．９−２．０＝０．９〔ｍｍ〕となる。本実施形態では、調整後積層厚 ＜ 通常積層厚 が常に成り立つため、造形品質の低下を抑制できる。
【００７９】
図１１は、スライス位置決定部２４がスライス位置を決定する手順を示すフローチャート図の一例である。
【００８０】
まず、スライス位置決定部２４は、一定の積層厚で次の仮スライス位置Ｓ'を算出する（Ｓ１０）。例えば、Ｚ座標が０〔ｍｍ〕の状態から一定の積層厚を加えていく。
【００８１】
次に、スライス位置決定部２４は、３Ｄモデル５００の高さが次の仮スライス位置Ｓ'以上であるかどうかを判定する（Ｓ２０）。ステップＳ２０は図１１の処理の終了判定である。ステップＳ２０の判定がＮｏの場合、図１１の処理は終了する。
【００８２】
ステップＳ２０の判定がＹｅｓの場合、スライス位置決定部２４は特徴面テーブルに仮スライス位置Ｓ'未満のＺ座標があるか否かを判定する（Ｓ３０）。すでに、スライス位置に決定された特徴面が対象とならないように、ステップＳ５０に示すように、特徴面テーブルにはスライス位置に決定された特徴面ＩＤなどに対応付けてフラグなどが設定されている。
【００８３】
ステップＳ３０の判定がＹｅｓの場合、特徴面でスライスするため、特徴面テーブルのＺ座標をスライス位置に決定する（Ｓ４０）。スライス位置決定部２４はスライスＩＤ、積層厚及びＺ値合計を表４にて後述するスライス位置テーブルに登録する。「スライスＩＤ」は例えば連番でよく、「Ｚ値合計」は特徴面テーブルのＺ座標であり、「積層厚」は仮スライス位置ＳとスライスＩＤが１つ小さいＺ値合計との差分である。
【００８４】
次に、スライス位置に決定された特徴面テーブルの特徴面ＩＤに対応付けてフラグを設定する（Ｓ５０）。あるいは、特徴面テーブルから特徴面ＩＤとＺ座標を削除してもよい。
【００８５】
ステップＳ３０の判定がＮｏの場合、仮スライス位置Ｓ'までの間に特徴面が含まれないため、仮スライス位置をスライス位置に決定する（Ｓ６０）。スライス位置テーブルの「スライスＩＤ」は例えば連番でよく、「Ｚ値合計」はスライスＩＤが１つ小さいＺ値合計に一定の積層厚を加えた値であり、「積層厚」は一定の積層厚でよい。
【００８６】
ステップＳ５０，Ｓ６０の後、処理はステップＳ１０に進み、ステップＳ２０で終了と判定されるまでスライス位置が決定される。
【００８７】
【表４】
2017165012.tif 000006
表４は、決定されたスライス位置を模式的に示すスライス位置テーブルである。スライス位置テーブルは、スライスＩＤに積層厚とＺ値合計が対応付けて登録されている。スライスＩＤは、スライス位置を識別するための識別情報である。スライスＩＤは、例えば重複しない整数でよい。積層厚はスライスＩＤ＝ｉのスライス位置とｉ+１のスライス位置の高さ方向の間隔である。Ｚ値合計はスライス位置の高さを示す。スライス部２５はこのスライス位置テーブルに登録されているＺ値合計の高さで３Ｄモデル５００をスライスする。
【００８８】
以上のように、本実施形態の情報処理装置２０は、特徴面に一致するようにスライス位置を決定するので、積層造形装置が造形物の形状を精度よく造形できる。
【００８９】
＜特徴面のＺ座標の補正＞
上記のように特徴面を決定した場合、積層造形装置７０の仕様によっては積層造形装置７０が特徴面で積層できない場合がある。
【００９０】
装置仕様情報ＤＢ２００２で説明したように積層造形装置７０の仕様により、積層可能な積層厚の範囲が決まっている場合がある。積層造形装置７０は例えば、0.05〔mm〕〜0.2〔mm〕などの範囲の積層厚でしか積層できない。0.05〔mm〕が積層厚の下限、0.2〔mm〕が積層厚の上限に相当する。例えば、積層厚の下限が0.05〔mm〕である場合に、一定の積層厚として0.12〔mm〕が設定されているものとする。
【００９１】
例えば、特徴面のＺ座標が0.15〔mm〕であるとすると、
・１層目のＺ座標＝0.12
・２層目のＺ座標＝0.12＋0.05＝0.17〔ｍｍ〕
となるため、積層造形装置７０は特徴面である0.15〔mm〕の位置で造形できない。例えば積層厚の下限が0.03〔mm〕であれば、２層目のＺ座標が0.15〔mm〕になるが、この積層造形装置７０では0.12〔mm〕の次は0.17〔ｍｍ〕でしか積層できない。
【００９２】
そこで、スライス位置決定部２４は、積層厚の範囲を超えないようにスライス位置を決定する。特徴面は移動できないため、１層目のＺ座標を以下のように算出する。
１層目のＺ座標＝特徴面のＺ座標−積層厚の下限
すなわち、特徴面よりも低い高さで決定されたスライス位置を、特徴面のＺ座標から積層厚の下限を減じた値に変更する。例えば、積層厚の下限が0.05〔mm〕であり、一定の積層厚として0.12〔mm〕が設定されており、特徴面のＺ座標が0.15〔mm〕であるとする。１層目のＺ座標は0.15〔mm〕−0.05〔mm〕＝0.10〔mm〕と算出される。
【００９３】
したがって、積層造形装置７０の仕様に応じて特徴面のＺ座標で積層できるように、特徴面の手前のスライス位置を適切に調整できる。すなわち、「可能な限り特徴層を再現」して造形することができるようになる。
【００９４】
＜(i)の特徴面の決定方法の補足＞
上記(i)の「３Ｄデータ（ポリゴンデータ）から特徴面を決定する」決定方法では、多数のスライス画像の比較によって特徴面を求める処理と違い、３Ｄデータの比較のみで特徴面を決定できるというメリットがある。しかし、例えば図１２のような三角錐を考えた場合、高さが高いほど断面５５０が徐々に小さくなっていくので、厳密には任意のＺ座標で特徴面が存在する。一方、側面部分のような斜めに傾いた形状の面は、底面から頭頂部までが1つのポリゴンデータで表現されている。図１２の３Ｄモデル５００は４つのポリゴンで構成されている。
【００９５】
したがって、３ＤデータのＺ座標から特徴面を決定すると、三角錐の底面と頂点の２つで特徴面が検出されるのみであり、情報処理装置２０は徐々に小さくなっていく断面５５０を特徴面として認識することはできない。すなわち、斜め向きの面の造形精度は従来の積層造形装置７０と同程度となる。
【００９６】
そこで、本実施形態の情報処理装置２０は、スライスデータの断面形状の変化量を予め定められた閾値と比較し、閾値以上の変化量が確認できる層を特徴面に決定する。造形精度は積層造形装置７０の仕様を超えることはできないが、閾値をユーザが設定することで、ユーザの要求に沿った精度で特徴面を決定して造形することが可能になる。すなわち、特徴面の検出精度を意図的に操作できるようになる。
【００９７】
特徴面決定部２３による閾値を基準とする特徴面の決定は主に以下の処理を含む。
（ａ）特徴面決定部２３は、３Ｄデータから求めた特徴層のうち、輪郭の変化量が閾値未満の特徴面を削除する。なお、この（ａ）の処理はなくてもよい。特徴面を削除すると造形精度が低下するためである。しかし、ユーザが造形精度の低下を許容できる場合は（ａ）の処理により造形に要する時間を短くすることができる。
（ｂ）特徴面決定部２３は、図１２のような３Ｄデータから抽出できない「斜めの面」により閾値以上の輪郭形状変化が発生しているＺ座標を特徴面として追加する。
【００９８】
図１３は、特徴面決定部２３が特徴面を決定する手順を示すフローチャート図の一例である。図１４は、特徴面の決定手順を説明する図の一例である。
【００９９】
まず、特徴面決定部２３は３Ｄデータから特徴面のＺ座標を検出する（Ｓ１０）。
【０１００】
次に、検出したＺ座標を座標値の昇順で整理する。ここでは説明の便宜上、Ａ,Ｂ,Ｃ,Ｄ,Ｅ・・・のＺ座標が得られたものとする。
【０１０１】
次に、整理したＺ座標から、座標の近い２つのペア（最初はＡ、Ｂとなる）を取り出す（Ｓ３０）。ペアが取り出せなかった場合（Ｓ４０のＮｏ）、図１３の処理は終了する。
【０１０２】
ペアが取り出せた場合、特徴面決定部２３はＺ座標Ａ、Ｂでスライスデータを生成する（Ｓ５０）。スライスデータの一例を図１４（ａ）（ｂ）に示す。
【０１０３】
特徴面決定部２３は、スライスデータから輪郭データを生成する（Ｓ６０）。輪郭データの作成のために、スライス画像を利用することが考えられる。スライス画像のような画像データになっていることで輪郭を作成しやすくなる。特徴面決定部２３は、各スライス画像から輪郭形状を表現する座標頂点群を生成する。
【０１０４】
輪郭抽出アルゴリズムとしてフリーマンチェーンコードなどが知られている。フリーマンチェーンコードの概略を説明する。まず、左上からスライス画像に対しラスタスキャンを行い、３Ｄモデル５００の輪郭を探索する。最初に見つかった画素をスタート地点として、反時計回りに輪郭の部分を検出する。スタート地点の左下の部分（ラスタスキャンによりスタート地点の左、左上、上には３Ｄモデルの輪郭がないことが明らかになっている）から反時計回りに３Ｄモデル５００の画素を検索し、画素が見つかったらその画素（次の輪郭）へ移動して同様の検索を繰り返す。スタート地点に戻ったら処理は終了となる。
【０１０５】
したがって、輪郭となる線分の始点、終点、屈曲点を示す頂点の集合が得られる。また、輪郭線が複数ある（例：円形の輪郭の内部に、もう1つ円形の輪郭があるなど）場合、輪郭も別々に検出される。すなわち、1つの頂点集合で表わされるのは、一筆書き可能な輪郭である。
【０１０６】
次に、特徴面決定部２３は、２つの輪郭形状を比較する（Ｓ７０）。輪郭変化量算出部２７は、輪郭の差異が最も大きい箇所を特定する。図１４（ｃ）は輪郭の差異を説明する図の一例である。２つの輪郭を重ねた場合に生じる輪郭形状の差異を算出し、差異が最も大きい箇所で変化量ΔDiffを求める。具体的には、座標Ａの輪郭の座標を取り出し、座標Ａの輪郭を中心に８方向（上、右上、右、右下、下、左下、左、左上）に座標Ｂの輪郭の座標を探索する。探索した座標Ｂの輪郭座標とそれぞれ距離を算出し、８個のうち最も小さい距離を座標Ａの輪郭の座標と座標Ｂの輪郭の座標との距離とする。この処理を座標Ａの輪郭の座標の全てで行い、最も大きい距離を変化量ΔDiffに決定する。
【０１０７】
なお、ここでは最大の変化量に着目しているが、座標Ａの輪郭の座標と座標Ｂの輪郭の座標の距離の合計量や、輪郭線の全長の差異などをΔDiffとしてもよい。
【０１０８】
次に、特徴面決定部２３はΔDiff ＜任意の閾値Ｔか否かを判定する（Ｓ８０）。ステップＳ８０の判定がＹｅｓの場合、輪郭の変化量が小さいので、特徴面決定部２３は座標Ｂを特徴面テーブルから削除する（Ｓ９０）。
【０１０９】
この閾値Ｔを例えばユーザが入力することで、ユーザの任意の精度で造形することができる。また閾値Ｔは情報処理装置２０が予め有していてもよい。閾値Ｔの設定方法はこれらに限られない。
【０１１０】
Ｚ座標の削除が行われた場合、特徴面決定部２３は次のペアを抽出し、ステップＳ３０から処理する（Ｓ１００）。閾値Ｔを超えていないため、ペアの一方は座標Ａのままで、他方のペアが座標Ｃとなる。
【０１１１】
ステップＳ８０の判定がＮｏの場合、輪郭の変化量が大きいので、単位高さ当たりの輪郭変化量ΔContourを求める（Ｓ１１０）。ΔContour＝ΔDiff /（B-A）である。
【０１１２】
次に、ΔContourを用いて、閾値Ｔと一致する輪郭変化量となる積層厚Ｐを算出する（Ｓ１２０）。P＝T/ΔContourである。
【０１１３】
次に、座標Ａ ＜ Ａ+Ｐ＊Ｎ ＜Ｂ （Ｎ=１，２，３・・）を満たす全ての積層厚Ｐを特徴面テーブルに追加する（Ｓ１３０）。つまり、座標Ａ〜Ｂの範囲で、積層厚Ｐずつ大きくして特徴面を作成する。
【０１１４】
次に、特徴面決定部２３は、次のペアを取り出してステップＳ３０から実行する（Ｓ１４０）。閾値Ｔを超えたため、ペアの一方は座標Ｂで、他方のペアが座標Ｃとなる。
【０１１５】
したがって、ステップ１１０〜Ｓ１３０の処理により三角錐のように特徴面が２点（頂点と底面）しか抽出できない場合でも、２つの特徴面の間に閾値Ｔの輪郭変化量ごとに特徴面を設定できる。
【０１１６】
＜積層厚の変更に伴う処理＞
情報処理装置２０は積層時の印刷データを決定するが、この時、各層の積層厚が参照される。すなわち、断面形状の輪郭と輪郭の内部を充填するように、輪郭、輪郭内部の中埋め経路及び材料吐出量を決定するが、これらは積層厚に応じた値となる。
【０１１７】
積層厚が一定の場合、積層厚は固定パラメータとして扱うことができたため、情報処理装置２０がスライスデータごとの積層厚を管理する必要はなかった。しかし、本実施形態のように積層厚が変更される場合、スライスデータによって積層厚が異なり得るため、情報処理装置２０はスライスデータごとに積層厚の情報を管理する必要がある。
【０１１８】
そこで、印刷データ作成部２６は、表４のスライス位置テーブルを参照して積層厚に適切な印刷データを作成する。
【０１１９】
図１５は、積層厚に応じた印刷データを説明する図の一例である。例えば、ＦＤＭ方式の積層造形装置７０の場合、吐出ノズル１１５が断面形状の輪郭と輪郭内を往復しながら材料を吐出して造形物を造形する。図１５（ａ）では１００％の充填率の場合の中埋め経路を示す。図１５（ｂ）は充填率が５０％程度の充填率の中埋め経路を示す。
【０１２０】
積層厚が厚い場合、造形物の強度を維持するため、積層厚が薄い場合よりも充填率が高い方が好ましい。充填率は、吐出ノズル１１５が中埋め経路の方向を１８０度変えて材料を吐出するまでに移動する距離（折り返しピッチＰｔという）により制御される。したがって、印刷データ作成部２６は、積層厚に応じて折り返しピッチＰｔを変更する。
【０１２１】
また、印刷データ作成部２６は折り返しピッチＰｔを一定のまま、材料吐出量を変更してもよい。同様に積層厚が厚い場合、造形物の強度を維持するため、印刷データ作成部２６は積層厚が薄い場合よりも材料吐出量を多くする。また、折り返しピッチＰｔと材料吐出量の両方を変更してもよい。
【０１２２】
輪郭５０ａについては、積層厚に関係なく吐出ノズル１１５の経路は同じでよい。しかし、輪郭５０ａについても、印刷データ作成部２６は積層厚が薄い場合よりも材料吐出量を多くすることができる。
【０１２３】
具体的には、積層厚に対し輪郭と中埋め部それぞれの折り返しピッチＰｔと材料吐出量が対応付けられたテーブルが用意される。印刷データ作成部２６は積層厚に応じてこのテーブルを参照して輪郭と中埋め部それぞれの折り返しピッチＰｔと材料吐出量を決定する。
【０１２４】
このように、本実施形態では、積層厚が可変でも、積層厚に応じて適切な印刷データを作成することができるようになる。
【０１２５】
＜その他の適用例＞
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
【０１２６】
例えば、本実施形態では主に樹脂や金属などの流動体が材料であると説明したが、積層造形装置７０は人、動物、植物などの細胞を吐出して造形することもできる。例えば、細胞で何らかの器官を作成したり、細胞シートを作成したりすることができる。
【０１２７】
また、例えば図７などの構成例は、情報処理装置２０の処理の理解を容易にするために、主な機能に応じて分割したものである。処理単位の分割の仕方や名称によって本願発明が制限されることはない。情報処理装置２０の処理は、処理内容に応じて更に多くの処理単位に分割することもできる。また、１つの処理単位が更に多くの処理を含むように分割することもできる。
【０１２８】
また、例えば、情報処理装置２０の機能の一部を積層造形装置７０が有していてもよい。
【０１２９】
特徴面決定部２３は形状変化検出手段の一例であり、スライス位置決定部２４は断面形状作成位置決定手段の一例であり、スライス部２５は断面形状作成手段の一例であり、印刷データ作成部２６は作成手段の一例であり、特徴面は形状変化座標の一例であり、積層厚は所定の高さの一例である。また、本実施形態で説明した情報処理装置２０が行う処理は情報処理方法の一例である。
【符号の説明】
【０１３０】
１          造形システム
２０        情報処理装置
２３        特徴面決定部
２４        スライス位置決定部
２５        スライス部
２６        印刷データ作成部
２７        輪郭変化量算出部
２８        質量算出部
７０        積層造形装置
２０１０      プログラム
【先行技術文献】
【特許文献】
【０１３１】
【特許文献１】特開平8-156108号公報
【図１】
2017165012.tif 000007
【図２】
2017165012.tif 000008
【図３】
2017165012.tif 000009
【図４】
2017165012.tif 000010
【図５】
2017165012.tif 000011
【図６】
2017165012.tif 000012
【図７】
2017165012.tif 000013
【図８】
2017165012.tif 000014
【図９】
2017165012.tif 000015
【図１０】
2017165012.tif 000016
【図１１】
2017165012.tif 000017
【図１２】
2017165012.tif 000018
【図１３】
2017165012.tif 000019
【図１４】
2017165012.tif 000020
【図１５】
2017165012.tif 000021