(57)【要約】【課題】印刷ジョブキュー上に複数の印刷ジョブが存在している場合、印刷ジョブを効率的に実行する。【解決手段】印刷ジョブ一覧を構成する入力された複数の印刷ジョブの統合可能な組み合わせを抽出する抽出手段と、前記抽出手段により抽出された組み合わせに基づいて、前記入力された複数の印刷ジョブを実行する新たな印刷ジョブ一覧を生成する生成手段と、前記生成手段により複数の印刷ジョブ一覧が生成された場合、実行する印刷ジョブ一覧を選択する選択手段と、前記選択手段により選択された印刷ジョブ一覧に含まれる統合可能な印刷ジョブの組み合わせを新たな１つの印刷ジョブとして統合する統合手段と、を有することによって課題を解決する。【選択図】図７
2015085663.tif 000002
【特許請求の範囲】
【請求項１】
印刷ジョブ一覧を構成する入力された複数の印刷ジョブの統合可能な組み合わせを抽出する抽出手段と、
前記抽出手段により抽出された組み合わせに基づいて、前記入力された複数の印刷ジョブを実行する新たな印刷ジョブ一覧を生成する生成手段と、
前記生成手段により複数の印刷ジョブ一覧が生成された場合、実行する印刷ジョブ一覧を選択する選択手段と、
前記選択手段により選択された印刷ジョブ一覧に含まれる統合可能な印刷ジョブの組み合わせを新たな１つの印刷ジョブとして統合する統合手段と、
を有する立体印刷装置。
【請求項２】
前記抽出手段は、複数の印刷ジョブに係る複数の立体オブジェクトが前記立体印刷装置の造形領域に収まる印刷ジョブの組み合わせを前記統合可能な組み合わせとして抽出する請求項１記載の立体印刷装置。
【請求項３】
前記抽出手段は、複数の印刷ジョブに係る複数の立体オブジェクトが前記立体印刷装置の造形ステージである前記造形領域に収まる印刷ジョブの組み合わせを前記統合可能な組み合わせとして抽出する請求項２記載の立体印刷装置。
【請求項４】
前記抽出手段は、複数の印刷ジョブに係る複数の立体オブジェクトが前記立体印刷装置の造形ステージ上の空間である前記造形領域に収まる印刷ジョブの組み合わせを前記統合可能な組み合わせとして抽出する請求項２記載の立体印刷装置。
【請求項５】
前記生成手段により生成された印刷ジョブ一覧の中で最初に実行する印刷ジョブの組み合わせにおいて立体オブジェクトの造形に要する材料が不足している場合、前記印刷ジョブ一覧から前記組み合わせを削除する削除手段を更に有する請求項１乃至４何れか１項記載の立体印刷装置。
【請求項６】
前記生成手段は、前記抽出手段により抽出された組み合わせのうち、立体オブジェクトの造形に要する材料が不足している組み合わせは組み合わせずに前記新たな印刷ジョブ一覧を生成する請求項１乃至４何れか１項記載の立体印刷装置。
【請求項７】
前記生成手段は、組み合わせていない印刷ジョブのうち造形に要する材料が足りている印刷ジョブが優先して実行されるように予約の順番を並び替えて前記新たな印刷ジョブ一覧を生成する請求項６記載の立体印刷装置。
【請求項８】
前記選択手段は、前記生成手段により複数の印刷ジョブ一覧が生成された場合、立体オブジェクトの造形に要する総造形時間が最短である印刷ジョブ一覧を選択する請求項１乃至７何れか１項記載の立体印刷装置。
【請求項９】
前記選択手段は、前記総造形時間が最短となる印刷ジョブ一覧が複数ある場合、２番目に実行する印刷ジョブの組み合わせにおいて造形領域の空きが最大である印刷ジョブ一覧を選択する請求項８記載の立体印刷装置。
【請求項１０】
前記選択手段は、前記総造形時間が最短となる印刷ジョブ一覧が複数ある場合、２番目に実行する印刷ジョブの組み合わせにおいて造形に要する材料が足りている印刷ジョブ一覧を選択する請求項８記載の立体印刷装置。
【請求項１１】
前記選択手段は、前記生成手段により複数の印刷ジョブ一覧が生成された場合、立体オブジェクトの造形個数が最大となる印刷ジョブ一覧のうち、立体オブジェクトの造形に要する総造形時間が最短となる印刷ジョブ一覧を選択する請求項１乃至７何れか１項記載の立体印刷装置。
【請求項１２】
前記選択手段は、前記生成手段により複数の印刷ジョブ一覧が生成された場合、予め定められた時間内において立体オブジェクトの造形個数が最大となる印刷ジョブ一覧を選択する請求項１乃至７何れか１項記載の立体印刷装置。
【請求項１３】
立体印刷装置が実行する情報処理方法であって、
印刷ジョブ一覧を構成する入力された複数の印刷ジョブの統合可能な組み合わせを抽出する抽出ステップと、
前記抽出ステップにより抽出された組み合わせに基づいて、前記入力された複数の印刷ジョブを実行する新たな印刷ジョブ一覧を生成する生成ステップと、
前記生成ステップにより複数の印刷ジョブ一覧が生成された場合、実行する印刷ジョブ一覧を選択する選択ステップと、
前記選択ステップにより選択された印刷ジョブ一覧に含まれる統合可能な印刷ジョブの組み合わせを新たな１つの印刷ジョブとして統合する統合ステップと、
を含む情報処理方法。
【請求項１４】
コンピュータに、
印刷ジョブ一覧を構成する入力された複数の印刷ジョブの統合可能な組み合わせを抽出する抽出ステップと、
前記抽出ステップにより抽出された組み合わせに基づいて、前記入力された複数の印刷ジョブを実行する新たな印刷ジョブ一覧を生成する生成ステップと、
前記生成ステップにより複数の印刷ジョブ一覧が生成された場合、実行する印刷ジョブ一覧を選択する選択ステップと、
前記選択ステップにより選択された印刷ジョブ一覧に含まれる統合可能な印刷ジョブの組み合わせを新たな１つの印刷ジョブとして統合する統合ステップと、
を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、立体印刷装置、情報処理方法及びプログラムに関する。
【背景技術】
【０００２】
近年、３次元ＣＡＤデータや３次元スキャナで取得した３次元測定データ（以下、総称して３Ｄデータと呼ぶ）を造形する３Ｄプリンタが広く普及してきている。
３Ｄオブジェクトを造形する技術には、積層造形方式と呼ばれる手法が使われている。積層造形方式とは、オブジェクトの３Ｄデータを断面形状にスライスし、紛体や樹脂、鋼板等の造形材料によって積層して造形していく造形方式である。この積層造形方式は、光学造形方式、粉末焼結積層方式、熱溶解積層方式、粉末固着方式、熱溶解積層方式、粉末固着方式、面露光方式、インクジェット方式に分類される。
光学造形方式は、樹脂層装置に入った紫外線硬化型樹脂の液面に紫外線レーザーを照射し、１層ずつ硬化させ、重ね合わせていく方式ある。まず、この方式では、樹脂層装置に入った液状の紫外線硬化型樹脂の液面に、レーザー光線で３Ｄオブジェクトのスライスデータを描くことで、レーザー照射された部分のみを硬化させ、１層分の断面形状を形成する。続いて、この方式では、硬化した層をテーブルごと液面より下に降下させて、硬化した層に接する液状樹脂に新たな層を形成することを繰り返すことで３Ｄオブジェクトを造形する。
【０００３】
粉末焼結積層方式は、粉末素材を装置内のレーザーを使用して焼結・積層する方式である。まず、この方式では、粉末素材の表面にレーザー光線で３Ｄオブジェクトのスライスデータを描くことで、レーザー照射された部分のみを硬化させ、１層分の断面形状を形成する。そして、この方式では、テーブルを１層降下させて、処理を繰り返すことで３Ｄオブジェクトを造形する。また、この方式では、焼結された造形物の周りに、未焼結粉末が充填された状態であるため、サポート材部は不要となる。
熱溶解積層方式（ＦＤＭ：ＦｕｓｅｄＤｅｐｏｓｉｔｉｏｎＭｏｄｅｌｉｎｇ）は、液状樹脂や熱可塑性樹脂等の造形材料を高温で融解し、造形ステージ上に糸状に積層して硬化させることにより、３Ｄオブジェクトを造形する方式である。まず、この方式では、造形材料を噴出する造形ヘッドを主走査方向に往復させつつ、副走査方向に連続的に移動させることにより１層分の断面形状のデータ（以後、スライスデータと呼ぶ）を積層する。続いて、この方式では、造形材料を硬化させた後、造形ステージを鉛直方向に移動させる。この方式では、以上の処理を繰り返してスライスデータを少しずつ積層していくことで、３Ｄオブジェクトを造形することができる。
【０００４】
粉末固着方式は、石膏粉末の薄い層の上をインクジェットヘッドで水溶性接着剤を噴射することより固形化してスライスデータを形成し、積層していく方式である。この方式は、着色が容易であるため、フルカラーでの造形が可能な方式である。また、この方式では、固形化しなかった粉末が造形物の周りに充填された状態になるため、サポート材部は不要となる。
面露光方式は、プロジェクターを用いて可視光硬化性樹脂を硬化して積層する手法である。まず、この方式では、液状の光硬化性樹脂の表面にプロジェクターで光を照射し、硬化させてスライスデータを形成する。その後、この方式では、テーブルを１層降下させて処理を繰り返すことで３Ｄオブジェクトを造形する。この方式では、スライスデータ１層分を一括で硬化させることができるため、他の造形方式に比べて高速で造形することができる。
インクジェット方式は、液状の紫外線硬化樹脂を塗布し、ＵＶランプで硬化させて積層する方式である。この方式では、スライスデータに基づき、インクジェットヘッドで紫外線硬化性樹脂を塗布し、ＵＶランプにより硬化させて、ローラーで不要な樹脂を除去しながら層をならすことで１層分のスライスデータを積層する。その後、この方式では、ステージを１層分降下させて処理を繰り返すことで３Ｄオブジェクトを造形する。
これらの方式にはそれぞれメリット・デメリットが存在しており、どの方式を採用するかは、装置コストや運用コスト、造形精度、後処理の容易さ等の基準から選ばれる。
【０００５】
３Ｄプリンタに共通する課題としては、造形時間が非常に長いことがあげられる。造形時間は３Ｄデータの大きさ（高さ）や造形精度（積層ピッチ）に依存し、数時間から半日程度かかることも少なくない。そこで、造形時間を短縮するための仕組みが必要である。
特許文献１には、印刷ジョブキューに複数のジョブが存在している場合に、印刷ジョブを統合したり、手動で印刷ジョブの順番をスケジューリングしたりすることで印刷ジョブ処理を効率化する技術が開示されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００１−０５８３５７号公報
【発明の概要】
【発明が解決しようとする課題】
【０００７】
特許文献１で開示されている技術は、印刷ジョブキュー上に複数の印刷ジョブが存在している場合、実行する印刷ジョブと、後続の印刷ジョブとを統合して１つの印刷ジョブとして生成して、造形処理を実行する。この技術によれば、複数の印刷ジョブを個別に造形処理するよりも造形時間を短縮することができる。しかしながら、この技術では、実行する印刷ジョブに対してのみ後続の印刷ジョブを結合することしか考慮していないため、全ての印刷ジョブを実行するのに必要な時間を最短化することはできない。即ち、この技術では、印刷ジョブキュー上に複数の印刷ジョブが存在している場合、必ずしも効率的に印刷ジョブを実行することができるとは限らない。
本発明は、印刷ジョブキュー上に複数の印刷ジョブが存在している場合、印刷ジョブを効率的に実行することを目的とする。
【課題を解決するための手段】
【０００８】
そこで、本発明の立体印刷装置は、印刷ジョブ一覧を構成する入力された複数の印刷ジョブの統合可能な組み合わせを抽出する抽出手段と、前記抽出手段により抽出された組み合わせに基づいて、前記入力された複数の印刷ジョブを実行する新たな印刷ジョブ一覧を生成する生成手段と、前記生成手段により複数の印刷ジョブ一覧が生成された場合、実行する印刷ジョブ一覧を選択する選択手段と、前記選択手段により選択された印刷ジョブ一覧に含まれる統合可能な印刷ジョブの組み合わせを新たな１つの印刷ジョブとして統合する統合手段と、を有する。
【発明の効果】
【０００９】
本発明によれば、印刷ジョブキュー上に複数の印刷ジョブが存在している場合、印刷ジョブを効率的に実行することができる。
【図面の簡単な説明】
【００１０】
【図１】システム構成の一例を示す図である。
【図２】３Ｄプリンタのハードウェア構成の一例を示す図である。
【図３】レイアウト変更の一例を示す図である。
【図４】サポート材部の付与の仕方の一例を示す図である。
【図５】スライスデータ生成処理の概要の一例を示す図である。
【図６】３Ｄオブジェクト造形部の一例を示す図である。
【図７】実施形態１のメイン制御部の処理の一例を示すフローチャートである。
【図８】印刷ジョブ組み合わせ生成処理の一例を示すフローチャート（その１）である。
【図９】ジョブ統合リスト等の一例を示す図（その１）である。
【図１０】実行印刷ジョブ生成処理の一例を示すフローチャート（その１）である。
【図１１】実行印刷ジョブ生成処理の一例を示すフローチャート（その２）である。
【図１２】ジョブ統合リスト等の一例を示す図（その２）である。
【図１３】印刷ジョブ組み合わせ生成処理の一例を示すフローチャート（その２）である。
【図１４】ジョブ統合リスト等の一例を示す図（その３）である。
【図１５】実行印刷ジョブ生成処理の一例を示すフローチャート（その３）である。
【図１６】実行印刷ジョブ生成処理の一例を示すフローチャート（その４）である。
【発明を実施するための形態】
【００１１】
以下、本発明を実施するための最良の形態について図面を用いて説明する。
＜実施形態１＞
図１は、本実施形態のシステムのシステム構成の一例を示す図である。
図１に示すように、ネットワーク１０４には、３Ｄ（３Ｄｉｍｅｎｓｉｏｎｓ）プリンタ（立体印刷装置）１０１、ホストコンピュータ１０２及びプリンタ１０３が接続されている。
図１のシステムにおいて、ホストコンピュータ１０２は、ネットワーク１０４を介して３Ｄプリンタ１０１へ３Ｄデータを印刷ジョブとして送信する。そして、３Ｄプリンタ１０１は、受信した印刷ジョブに基づいて立体オブジェクトの３Ｄ造形を行う。また、ホストコンピュータ１０２は、ネットワーク１０４を介してプリンタ１０３に画像情報を印刷ジョブとして送信する。そして、プリンタ１０３は、受信した印刷ジョブに基づいて２Ｄ画像印刷を行う。
なお、ホストコンピュータ１０２は、汎用コンピュータに搭載される標準的な構成要素を有している。例えば、ホストコンピュータ１０２は、ＣＰＵ、ＲＡＭ、ＲＯＭ、ハードディスク、外部記憶装置、ネットワークインタフェース、ディスプレイ、キーボード、マウス等を有している。また、ネットワーク１０４は、典型的にはインターネットやＬＡＮやＷＡＮや電話回線、専用デジタル回線、ＡＴＭやフレームリレー回線、通信衛星回線、ケーブルテレビ回線、データ放送用無線回線等で実現される通信ネットワークである。ネットワーク１０４は、データの送受信ができるものであれば何でも良い。
【００１２】
図２は、３Ｄプリンタ１０１のハードウェア構成の一例を示す図である。
以後の説明では、熱融解積層方式の３Ｄプリンタを利用する場合を例に説明を行うが、その他の方式の３Ｄプリンタを利用してもよい。
図２に示すように、３Ｄプリンタ１０１は、メイン制御部２０１、操作表示部２１０、ネットワーク通信部２２０、データ管理部２３０、印刷ジョブ制御部２４０、３Ｄデータ処理部２５０、３Ｄオブジェクト造形部２６０、造形材料補給部２７０を有する。
メイン制御部２０１は、中央演算装置であり、３Ｄプリンタ１０１全体の動作を制御する。
ネットワーク通信部２２０は、ネットワーク１０４に接続しており、ホストコンピュータ１０２から送信される印刷ジョブを受信したり、ホストコンピュータ１０２に対して印刷状況情報や３Ｄプリンタ１０１の状態情報を送信したりする。メイン制御部２０１は、ネットワーク通信部２０３を介して、ネットワーク１０４上の他の機器（例えばプリンタ１０３）と通信を行うことができる。
【００１３】
データ管理部２３０は、ＲＯＭ、ＲＡＭ、ハードディスク（ＨＤＤ）等のメモリや、外部記憶装置Ｉ／Ｆで構成され、各種メモリへの読み書き等のデータ制御を管理する。ＲＯＭは、システムのブートプログラム等の起動用プログラムを格納する不揮発性のメモリである。ＲＡＭは、メイン制御部２０１が動作するためのシステムワークメモリであり、印刷ジョブを一時記憶するための揮発性メモリである。ＨＤＤは、システム制御ソフトウェアや３Ｄプリンタの各種設定、３Ｄデータ及び印刷ジョブ等を格納するための大容量メモリである。また、外部記憶装置Ｉ／Ｆは、メイン制御部２０１がＵＳＢメモリやＳＤカード、外付けＨＤＤ等の外部記憶装置に対してデータの読み書きを行う際に利用するインターフェースである。
メイン制御部２０１は、電源ＯＮ等の起動の際、データ管理部２３０を介して、ＲＯＭに格納されている起動用プログラムを実行する。メイン制御部２０１は、この起動用プログラムを実行すると、ＨＤＤに格納されている制御用プログラムや３Ｄプリンタ１０１の各種設定を読み出し、ＲＡＭ上に展開する。更に、メイン制御部２０１は、ＲＡＭ上に展開した制御用プログラムを実行し、システム全体の制御を行う。また、メイン制御部２０１は、制御用プログラムによる動作に用いるデータもＲＡＭ上に格納して読み書きを行う。このように、メイン制御部２０１は、データ管理部２３０を介して取得したプログラムを実行することにより、３Ｄプリンタ１０１の機能及び後述するフローチャートに係る処理（情報処理）を実現する。
【００１４】
印刷ジョブ制御部２４０は、３Ｄプリンタ１０１に投入された印刷ジョブを制御する。例えば、印刷ジョブ制御部２４０は、複数の印刷ジョブを統合したり、印刷ジョブの順番を入れ替えたり、印刷ジョブを削除したりする等の処理を行う。そして、印刷ジョブ制御部２４０は、造形処理を実行する印刷ジョブを選択し、３Ｄデータ処理部２５０へ送信する。
３Ｄデータ処理部２５０は、印刷ジョブ制御部２４０から送信された印刷ジョブ中の３Ｄデータを編集し、３Ｄ造形可能なデータに変換する。３Ｄデータ処理部２５０は、後述するレイアウト生成部２５１、サポート材部生成部２５２、スライスデータ生成部２５３を有する。
レイアウト生成部２５１は、受信した印刷ジョブ中の各３Ｄオブジェクトのレイアウトを編集する。
【００１５】
図３は、レイアウト変更の一例を示す図である。
図３の（ａ）には、入力された３Ｄデータレイアウト４０１が示されている。図３の（ｂ）には、３Ｄオブジェクトを横に倒すことで造形高さを低くする場合の例が示されている。図３の（ｃ）には、造形が行われる造形ステージ上で３Ｄオブジェクトを回転及び並進移動させることで造形を行う造形ヘッドの移動量が最適化された場合の例が示されている。レイアウト生成部２５１は、このようなレイアウト編集をすることにより、最適なレイアウトを生成する。なお、ここでいう最適とは、造形ヘッドの移動量を最も小さくすること、即ち、造形時間を最も短くすることをいう。以降の説明においても同様とする。造形ステージ及び造形ヘッドの詳細については、図６等を用いて後述する。
レイアウト生成部２５１は、複数の３Ｄデータをレイアウトする際には、図３の（ｄ）から（ｌ）までに示すような方法でレイアウトを行う。
まず、レイアウト生成部２５１は、図３の（ｄ）に示すように２つのジョブが統合された新たなジョブを生成する。ここで、前記新たなジョブにおける対象には、３Ｄデータ４１１と、３Ｄデータ４１２とが含まれている。レイアウト生成部２５１は、レイアウトを行う際には、図３の（ｅ）に示すように、俯瞰した場合に３Ｄデータ４１１と、３Ｄデータ４１２とが重ならないように所定の距離を離して配置する。図３の（ｆ）は、この際にＹ軸の負の方向から見た側面図の一例を示している。
【００１６】
続いて、レイアウト生成部２５１は、それぞれの３Ｄデータの配置位置や向きを変更することにより、図３の（ｇ）のような最適なレイアウトを決定する。図３の（ｈ）には、この際の俯瞰図が示されている。また、図３の（ｉ）には、この際の側面図が示されている。レイアウト生成部２５１がこのように配置することにより、３Ｄプリンタ１０１は、それぞれのジョブに含まれていた３Ｄデータ同士を個別に造形することができる。
一方、レイアウト生成部２５１は、図３の（ｊ）から（ｌ）までに示すように、３次元空間的に重なりが生じないように配置することもできる。レイアウト生成部２５１がこのような配置にすることで、３Ｄプリンタ１０１は、３Ｄデータ４１２のパーツ上空に３Ｄデータ４１１を造形したり、３Ｄデータ４１１のパーツ上空に３Ｄデータ４１２のパーツを造形したりする必要が出てくる。そのため、３Ｄプリンタ１０１は、２つの３Ｄデータを後述する造形材料によって連結させて造形することになる。更に、レイアウト生成部２５１は、３次元的な空間を使ってこれを立体的に配置することもできる。そこで、ユーザは、操作表示部２１０を介して、複数のジョブを統合する際にどのような配置にするか予め設定しておく必要がある。即ち、３Ｄプリンタ１０１は、前記設定に関する設定情報を予めデータ管理部２３０に記憶しておく。
【００１７】
サポート材部生成部２５２は、３Ｄオブジェクトを造形する際に必要なサポート材部の位置や分量を算出し、３Ｄオブジェクトデータに付与する。上述した積層造形型３Ｄプリンタの多くは、空洞部分や下に支えのない橋構造の部分を造形することができないため、この部分を支えるための土台となるパーツとしてサポート材部が必要となる。
図４は、サポート材部の付与の仕方の一例を示す図である。
図４の（ａ）には、入力された印刷ジョブ中の３Ｄデータ５０１のレイアウトが示されている。図４の（ｂ）には、Ｘ軸の負の方向から３Ｄデータ５０１を見た場合の側面図が示されている。図４の（ｃ）には、Ｙ軸の負の方向から３Ｄデータ５０１を見た場合の側面図が示されている。サポート材部生成部２５２は、サポート材部５０２を付与することで、造形ステージ３０２に接しない部分のパーツを造形することができる。なお、サポート材部の必要な位置や分量はオブジェクトデータの大きさや造形精度、造形材料の成分等によって変わってくるため、サポート材部生成部２５２は、それぞれを個別に計算する。
【００１８】
スライスデータ生成部２５３は、サポート材部生成部２５２でサポート材部が付与された３Ｄデータを、断面形状のスライスデータに分割し、後述の３Ｄオブジェクト造形部２６０に送信する。また、スライスデータ生成部２５３は、造形時間を予想するための造形時間評価値を併せて算出する。
図５を用いてスライスデータ生成処理について説明する。図５は、スライスデータ生成処理の概要の一例を示す図である。
図５の（ａ）には、サポート材部が付与された３Ｄデータ６０１が示されている。そして、スライスデータ生成部２５３は、１層分の積層厚さ（以下、積層ピッチと呼ぶ）に合わせて、この３Ｄデータ６０１をスライスデータとして分割する。スライスデータ生成部２５３は、精度を重視して造形する場合には積層ピッチを小さく設定し（例えば５０μｍ）、スピードを重視する場合には積層ピッチを大きく設定する（例えば２５０μｍ）。
図５の（ｂ）には、スライスデータ生成部２５３が３Ｄデータ６０１を８枚のスライスデータ６１１から６１８までに分割した場合の例が示されている。スライスデータ生成部２５３は、スライスデータ６１１から６１８までを後述する３Ｄオブジェクト造形部２６０に送信する。そして、３Ｄオブジェクト造形部２６０は、１層ずつ積層しながら造形していく。
【００１９】
図５の（ｃ）中に示される式（１）は、３Ｄオブジェクト造形部２６０が３Ｄデータ６０１を造形するのに要する時間を算出するための造形時間評価値Ｖの算出式の一例である。スライスデータ生成部２５３は、式（１）により、図５の（ｄ）から（ｆ）までに示すように、各スライスデータを造形する際の主走査又は副走査方向への造形ヘッド３０１の移動量を計算する。そして、スライスデータ生成部２５３は、図５の（ｇ）に示すように、各スライスデータでの造形ヘッド３０１の移動量を、積層方向への移動量に応じて重み付けしながら加算することで、造形ヘッドの総移動量を算出する。このようにして算出された値が造形時間評価値Ｖであり、値が小さくなるほど造形時間が短くなることを意味している。
なお、スライスデータ生成部２５３は、毎回スライスデータを生成して造形時間評価値Ｖを算出すると処理時間がかかってしまうため、中間処理ではオブジェクトデータを複数の立体図形の組み合わせとして近似し、おおまかな造形時間評価値Ｖを算出してもよい。例えば、スライスデータ生成部２５３は、図５の（ｈ）に示すように、３Ｄデータ６０１を３つの直方体６２１から６２３までの組み合わせとして近似する。あるいは、スライスデータ生成部２５３は、図５の（ｊ）に示すように２つの直方体６３１、６３２と、六角柱６３３との組み合わせとして近似してもよい。
【００２０】
スライスデータ生成部２５３は、図５の（ｉ）、（ｋ）に示すように、高さが異なる部分のスライスデータを用いて積層高さ分の重み付けして乗算する。これにより、スライスデータ生成部２５３は、造形時間評価値Ｖを算出するのに要する計算時間を削減することができる。
スライスデータ生成部２５３は、立体の近似処理を行わない場合には、図５の（ｂ）に示したように８層全てに対しての計算が必要であったが、立体近似処理を行うことにより３層分の計算となるため、処理量を３７．５％に削減することができる。なお、スライスデータ生成部２５３は、３Ｄオブジェクトを実際に造形する際には、例としてあげた８層よりもはるかに多い回数の積層が必要となるため、上述の手法による処理量の削減効果はより大きくなる。
上述したレイアウト生成部２５１は、このように算出された造形時間評価値Ｖの値を利用して最適なレイアウトを決定している。
【００２１】
３Ｄオブジェクト造形部２６０は、造形ヘッド制御部２６１、造形ステージ制御部２６２、紫外線照射制御部２６３を有する。更に、３Ｄオブジェクト造形部２６０は、図６に示すように、造形ヘッド３０１、造形ステージ３０２、紫外線照射部３０３を有する。ここで、造形ヘッド制御部２６１は、造形ヘッド３０１を制御する。造形ステージ制御部２６２は、造形ステージ３０２を制御する。紫外線照射制御部２６３は、紫外線照射部３０３を制御する。
３Ｄオブジェクト造形部２６０は、スライスデータ生成部２５３で生成されたスライスデータを受信すると、スライスデータを１層ずつ積層していくことにより３Ｄオブジェクトを造形する。
造形ヘッド制御部２６１は、造形ヘッド３０１を制御して、後述する造形材料補給部２７０から供給される造形材料３０４を造形ステージ３０２上に積層する。まず、造形ヘッド制御部２６１は、造形ヘッド３０１をＸ軸方向（以後、主走査方向と呼ぶ）に往復させて１ライン分を積層する。造形ヘッド制御部２６１は、造形ヘッド３０１をＹ軸方向（以後、副走査方向と呼ぶ）へ順番に移動させながらこの処理を繰り返すことで、１層分の断面形状を積層する。なお、造形ヘッド制御部２６１は、造形ヘッド３０１を造形ステージ３０２上のスライスデータが存在している範囲内のみで移動させることができるものとする。また、造形ヘッド制御部２６１は、積層後に造形ヘッド３０１を造形ヘッド初期位置（Ｘ＝Ｙ＝０）へ戻すものとする。
【００２２】
紫外線照射制御部２６３は、造形ステージ３０２上への１層分のスライスデータの積層を終了させると、紫外線照射部３０３を介して造形ステージ３０２への紫外線照射制御を行う。これにより、紫外線照射制御部２６３は、積層されたスライスデータを硬化させることができる。
造形ステージ制御部２６２は、スライスデータの硬化処理が終了すると、造形ステージ３０２をＺ軸方向（以後、積層方向と呼ぶ）に１層分降下移動させる。なお、造形ステージ３０２の移動は造形ヘッド３０１の移動に比べて時間がかかったり、紫外線照射等による造形材料硬化の時間が必要となったりすることから、積層高さが高くなるほど造形時間が長くなる。
【００２３】
造形材料補給部２７０は、３Ｄオブジェクトを造形するのに必要な造形材料であるモデル材２７１と、サポート材２７２とを管理する。造形材料補給部２７０は、造形材料の残量を検知してメイン制御部２０１に通知する。そして、メイン制御部２０１は、残量情報を操作表示部２１０に表示したり、ネットワーク通信部２２０を介してホストコンピュータ１０２に通知したりする。また、造形材料補給部２７０は、造形処理の際には造形材料を３Ｄオブジェクト造形部２６０に供給する。
モデル材２７１は、３Ｄオブジェクトを造形するために必要な造形材料である。モデル材２７１には、光硬化型樹脂や熱可塑性樹脂等様々なタイプが存在する。光硬化型樹脂は、液体状の樹脂であり、３Ｄオブジェクト造形部２６０は、これを造形ステージ３０２に噴出し、紫外線等を照射することで少しずつ硬化させ積層していく。また、３Ｄオブジェクト造形部２６０は、造形ヘッド３０１において熱可塑性樹脂を熱で融解させ、少しずつ積層していく。
【００２４】
サポート材２７２は、３Ｄオブジェクトを造形する際に土台となる部分を造形するために必要な造形材料である。このサポート材２７２で造形されたサポート材部は、３Ｄオブジェクト造形後に洗浄除去される必要がある。そのため、サポート材部を区別しやすく、かつ、簡単に外せるようにするため、サポート材２７２はモデル材２７１とは異なる色や材質となっている。
３Ｄプリンタ１０１には、造形途中に造形材料が不足した場合に、材料の補充が可能なデバイスと、不可能なデバイスとが存在する。また、ユーザは、操作表示部２１０を介して、造形材料が不足している場合における３Ｄプリンタ１０１の処理の設定を予め入力しておく必要がある。即ち、３Ｄプリンタ１０１は、前記設定に関する設定情報を予めデータ管理部２３０に記憶しておく。造形材料が不足している場合の前記設定の例としては、「ジョブを実行する前に中断する」、「ジョブを途中まで実行して造形材料が補充されるまで中断する」、「後続のジョブで造形可能なジョブを優先して実行する」といった設定がある。以下の説明では、造形材料が不足した場合には処理を中断する設定の場合を例に説明する。
【００２５】
次に、図７を用いて、本実施形態におけるメイン制御部２０１の処理フローについて説明する。図７は、本実施形態におけるメイン制御部２０１の処理の一例を示すフローチャートである。
Ｓ７０１において、メイン制御部２０１は、データ管理部２３０の印刷ジョブキューで保存されている印刷ジョブから最初に実行する印刷ジョブを設定する。
Ｓ７０２において、メイン制御部２０１は、造形材料補給部２７０より現時点での造形材料の残量情報を取得し、印刷ジョブ中の３Ｄデータを造形するのに造形材料不足であるか否かを判定する。メイン制御部２０１は、造形材料不足でないと判定した場合、処理をＳ７０３へ進め、造形材料不足であると判定した場合、処理をＳ７０７へ進める。
Ｓ７０３において、メイン制御部２０１は、印刷ジョブキューに保存されている複数の印刷ジョブを統合するための全組み合わせを算出する処理（印刷ジョブ組み合わせ生成処理）を実行する。そして、メイン制御部２０１は、ジョブ統合リストを生成する。Ｓ７０３の処理の詳細は、図８等を用いて後述する。
【００２６】
Ｓ７０４において、メイン制御部２０１は、Ｓ７０３で生成したジョブ統合リストの中から、実行する印刷ジョブを決定し、印刷ジョブキューを更新する処理（実行印刷ジョブ生成処理）を実行する。Ｓ７０４の処理の詳細は、図１０等を用いて後述する。
Ｓ７０５において、メイン制御部２０１は、Ｓ７０４で生成した印刷ジョブ中の３Ｄデータを造形し、造形が終了すると処理をＳ７０６に進める。
Ｓ７０６において、メイン制御部２０１は、印刷ジョブキュー上に次の印刷ジョブが存在するか否かを判定し、印刷ジョブが存在すると判定した場合、処理をＳ７０１に戻す。一方、メイン制御部２０１は、印刷ジョブが存在しないと判定した場合、図７の処理を終了し、次の印刷ジョブが入力されるまで待機する。
【００２７】
Ｓ７０７において、メイン制御部２０１は、ユーザのホストコンピュータ１０２に造形材料不足であることを知らせるためのエラー通知を送信する。例えば、メイン制御部２０１は、造形材料が不足している場合の処理に対する予め定められた設定がジョブを中断するという設定の場合、ジョブを中断する旨のエラー通知をホストコンピュータ１０２に送信する。更に、メイン制御部２０１は、後続のジョブを優先して出力するか否かを選択させるような警告を表示させるエラー通知をホストコンピュータ１０２に送信する。なお、メイン制御部２０１は、上述のエラー通知に関する情報を操作表示部２１０に表示してユーザに提示するようにしてもよい。一方、メイン制御部２０１は、前記設定がジョブを途中まで実行する設定や後続のジョブを優先するような設定の場合には、処理をＳ７０６へ進め、後続のジョブのうち造形材料残量内で造形可能なジョブを抽出する。また、メイン制御部２０１は、前記設定が造形材料が補充されるまでジョブを中断するという設定の場合には、造形材料が補充されるまで待機し、造形材料補給部２７０により造形材料の補充が検知されると処理をＳ７０６へ進める。
【００２８】
図８は、Ｓ７０３において印刷ジョブ制御部２４０が実行する印刷ジョブ組み合わせ生成処理の一例を示すフローチャートである。また、図９は、Ｓ７０３において印刷ジョブ制御部２４０が生成するジョブ統合リスト等の一例を示す図である。なお、図９の（ａ）には、図８に示すフローチャートに係る処理が開始したときに、ジョブキュー上に存在する印刷予約ジョブ一覧９００が示されている。印刷予約ジョブ一覧９００は、入力された複数の印刷ジョブにより構成される印刷ジョブ一覧の一例である。
Ｓ８０１において、印刷ジョブ制御部２４０は、ジョブキュー上にある未統合ジョブのリストを生成する。印刷ジョブ制御部２４０は、図９の（ａ）に示すように４つの印刷ジョブ９０１から９０４までが存在するときは、ジョブリストｊｏｂＬｉｓｔ［］＝｛０，１，２，３｝を生成する。
Ｓ８０２において、印刷ジョブ制御部２４０は、統合元ジョブを設定する。ここでは、印刷ジョブ制御部２４０は、統合元ジョブｊｏｂ＝ｊｏｂＬｉｓｔ［０］として設定する。
Ｓ８０３において、印刷ジョブ制御部２４０は、図８の（ｂ）に示すジョブ統合リスト生成処理を実行し、ジョブの統合の全ての組み合わせを算出（抽出）することでジョブ統合リストを生成し、図８の（ａ）の処理を終了する。
【００２９】
印刷ジョブ制御部２４０は、図８の（ｂ）のＳ８１１からＳ８１８までの繰り返し処理において、Ｓ８０２で設定した統合元ジョブに対して、ジョブリスト内のジョブ統合の組み合わせを生成する。なお、ジョブリストは、印刷ジョブ一覧の一例である。
Ｓ８１２において、印刷ジョブ制御部２４０は、統合元ジョブ（ｊｏｂ）に対して、ジョブｉ（ｊｏｂＬｉｓｔ［ｉ］）は未統合であるか否かを判定する。そして、印刷ジョブ制御部２４０は、未統合でない、即ち、統合済みであると判定した場合、処理をＳ８１８へ進め、次のジョブの統合済みチェックを行う。一方、印刷ジョブ制御部２４０は、未統合であると判定した場合、処理をＳ８１３へ進める。
Ｓ８１３において、印刷ジョブ制御部２４０は、統合元ジョブ（ｊｏｂ）と、ジョブｉ（ｊｏｂＬｉｓｔ［ｉ］）とを統合し、統合ジョブ（ｎｅｗＪｏｂ）を生成する。この際、３Ｄデータ処理部２５０は、２つのジョブに含まれる３Ｄデータに対して、再レイアウト処理、サポート材部生成処理、スライスデータ生成処理及び造形時間評価値Ｖの算出処理を行う。なお、ｉ＝０の場合は統合元ジョブを意味するため、印刷ジョブ制御部２４０は、統合元ジョブ単体を統合ジョブとして設定する。
【００３０】
Ｓ８１４において、印刷ジョブ制御部２４０は、Ｓ８１３で生成した統合ジョブが統合可能か否かを判定する。ここでは、印刷ジョブ制御部２４０は、レイアウトした際の造形スペース（造形領域）が造形ステージ３０２に収まるか否か、即ち、レイアウト可能か否かを判定することにより、Ｓ８１３で生成した統合ジョブが統合可能か否かを判定する。
例えばｉ＝１の場合の統合ジョブは、印刷ジョブ９０１と、印刷ジョブ９０２とを統合した統合ジョブであり、印刷ジョブ制御部２４０は、造形ステージ３０２内にレイアウト可能であると判定する。即ち、印刷ジョブ制御部２４０は、Ｓ８１３で生成した統合ジョブは統合可能であると判定して処理をＳ８１５へ進める。
一方、ｉ＝２の場合の統合ジョブは、印刷ジョブ９０１から９０３までを統合した統合ジョブであり、印刷ジョブ制御部２４０は、造形ステージ３０２内にレイアウト可能でないと判定する。即ち、印刷ジョブ制御部２４０は、Ｓ８１３で生成した統合ジョブは統合可能でないと判定して処理をＳ８１６へ進める。
【００３１】
Ｓ８１５において、印刷ジョブ制御部２４０は、ジョブｉ（ｊｏｂＬｉｓｔ［ｉ］）を統合元ジョブに統合可能なジョブとして設定する。そして、印刷ジョブ制御部２４０は、図９の（ｂ）に示すようなジョブ統合リストに、統合するジョブ情報９１１を新規で又は更新して記述する。印刷ジョブ制御部２４０は、ジョブ情報に、結合するジョブと、造形に必要な面積と、造形材料と、造形時間とに関する情報を記述する。更に、印刷ジョブ制御部２４０は、レイアウト後の造形ステージ上の残りの面積と、造形後の造形材料の残量とに関する情報も併せて記述する。印刷ジョブ制御部２４０は、ジョブ情報を記録すると、Ｓ８１８の繰り返し処理に処理を進め、次のジョブの統合確認を行う。
Ｓ８１６において、印刷ジョブ制御部２４０は、ジョブｉ（ｊｏｂＬｉｓｔ［ｉ］）を次に実行される予約ジョブとして設定する。即ち、印刷ジョブ制御部２４０は、以後の処理で統合判定を行った結果を、図９の（ｂ）のジョブ情報９１２に記述するように設定変更する。
【００３２】
Ｓ８１７において、印刷ジョブ制御部２４０は、２番目以降に実行されるジョブとして統合することができる組み合わせを生成する。印刷ジョブ制御部２４０は、Ｓ８１７の処理として図８の（ａ）に示す処理を実行することになるため、全てのジョブに対する統合チェックを終了するまで、再帰的に処理を実行する。
ここで、印刷ジョブ制御部２４０は、ｉ＝２におけるジョブ統合判定を行う。そして、印刷ジョブ制御部２４０は、ｊｏｂＬｉｓｔ［２］と、ｊｏｂＬｉｓｔ［３］とは統合可能であると判定したことを受け、図９の（ｃ）に示すようにジョブ情報９１２に統合情報を記述し、ジョブリスト９１０を生成する。
印刷ジョブ制御部２４０は、以上の処理を繰り返すことで、図９の（ｄ）に示すようなジョブ統合リストを生成する。
【００３３】
図１０は、図７のＳ７０４において印刷ジョブ制御部２４０が実行する実行印刷ジョブ生成処理の一例を示すフローチャートである。
Ｓ１００１において、印刷ジョブ制御部２４０は、ジョブ統合リスト中の最初に実行されるジョブで造形材料が不足する組み合わせがあれば、その組み合わせを削除する。例えば図９の（ｄ）の場合には該当する組み合わせがないため、印刷ジョブ制御部２４０は、処理をスキップする。ここで、印刷ジョブ制御部２４０は、予め定められた設定が造形材料が不足した場合にも処理を実行するという設定の場合には、Ｓ１００１の処理をスキップすることで、造形材料の残量に関わらずにジョブの統合を行うことができる。
Ｓ１００２において、印刷ジョブ制御部２４０は、Ｓ７０３で生成したジョブ統合リストの中から、総造形時間が最小となる組み合わせのジョブリストを抽出（選択）する。印刷ジョブ制御部２４０は、例えば図９の（ｄ）の場合、最小の造形時間であるジョブ統合の組み合わせとしてジョブリスト９２０を抽出する。なお、ここで総造形時間が最小となる組み合わせのジョブリストが複数存在する場合、印刷ジョブ制御部２４０は、２番目に実行するジョブに対する材料が足りているジョブリストを優先して抽出するようにしてもよい。
【００３４】
Ｓ１００３において、印刷ジョブ制御部２４０は、抽出したジョブリストで最初に処理を実行する複数の印刷ジョブを１つの印刷ジョブとして統合する。ここでは、印刷ジョブ制御部２４０は、印刷ジョブと、予約印刷ジョブ２とを１つに統合することで、新たな印刷ジョブとして生成する。３Ｄデータ処理部２５０は、統合された印刷ジョブに対して、レイアウト生成処理、サポート材部生成処理、スライスデータ生成処理といった処理を行う。なお、印刷ジョブ制御部２４０は、図８のＳ８１３で造形時間評価値Ｖを概算した場合には、ここで造形時間評価値Ｖを改めて算出する。そして、メイン制御部２０１は、ユーザのホストコンピュータ１０２に造形時間の目安時間情報を再通知する。また、メイン制御部２０１は、操作表示部２１０に目安時間情報を表示してユーザに提示するようにしてもよい。
以上の処理により、３Ｄプリンタ１０１は、印刷ジョブを実行する際に、印刷ジョブキューに複数の印刷ジョブが保存されていた場合には、全ての印刷ジョブの統合組み合わせを生成した上で、統合するジョブの組み合わせを決定する。これにより、３Ｄプリンタ１０１は、造形時間が最短になるようなジョブ統合を行うことができる。
【００３５】
＜実施形態２＞
実施形態１において、３Ｄプリンタ１０１は、ジョブキュー上に存在する全ての印刷ジョブに対して統合可能な全ての組み合わせを抽出し、総造形時間が最短となるような組み合わせとなるジョブリストを検出した。実施形態２では、総造形時間が最短となるようなジョブリストが複数存在した場合にも、３Ｄプリンタ１０１が最適なジョブリストを検出する処理について説明する。
本実施形態と、実施形態１とでは、図７のＳ７０４で印刷ジョブ制御部２４０が実行する実行印刷ジョブ生成処理が異なる。本実施形態における実行印刷ジョブ生成処理について図１１を用いて説明する。
図１１は、本実施形態において印刷ジョブ制御部２４０が実行する実行印刷ジョブ生成処理の一例を示すフローチャートである。なお、図１１の処理において、実施形態１の図１０と同じ処理については、詳細な説明を省略する。また、図１２は、実施形態１で説明した処理に基づいて印刷ジョブ制御部２４０により生成されたジョブ統合リスト等の一例を示す図である。
【００３６】
Ｓ１００１において、印刷ジョブ制御部２４０は、ジョブ統合リスト中の最初に実行されるジョブで造形材料が不足する組み合わせがあれば、その組み合わせを削除する。図１２の場合には該当する組み合わせがないため、印刷ジョブ制御部２４０は、処理をスキップする。
Ｓ１００２において、印刷ジョブ制御部２４０は、ジョブ統合リストの中から、総造形時間が最短となる組み合わせを抽出する。ここでは、印刷ジョブ制御部２４０は、ジョブリスト１２１０、１２２０、１２３０の３つの候補を最短総造形時間であるとして抽出する。
Ｓ１１０１において、印刷ジョブ制御部２４０は、Ｓ１００２においてジョブリストの候補を１つだけ抽出したか否かを判定し、１つだけ抽出したと判定した場合、処理をＳ１００３に進める。一方、印刷ジョブ制御部２４０は、図１２のように複数の候補を抽出したと判定した場合、処理をＳ１１０２へ進める。
【００３７】
Ｓ１１０２において、印刷ジョブ制御部２４０は、２番目に実行するジョブの空きスペースが最大となる組み合わせを抽出する。図１２の場合、印刷ジョブ制御部２４０は、ジョブリスト１２１０を抽出する。これにより、印刷ジョブ制御部２４０は、メイン制御部２０１により最初のジョブが実行されている間に、新規のジョブが投入された場合、２番目に実行するジョブへ統合させる可能性をより高くすることができる。
Ｓ１００３において、印刷ジョブ制御部２４０は、Ｓ１００２又はＳ１１０２で抽出したジョブの組み合わせに基づき、実行ジョブを生成する。
以上の処理により、３Ｄプリンタ１０１は、総造形時間が最短となる候補が複数検出された場合、２番目に実行するジョブの残り面積が最大となる組み合わせを抽出することで、実行ジョブを決定する。この処理により、３Ｄプリンタ１０１は、総造形時間を短縮するだけではなく、ジョブ実行中に新規にジョブが投入された場合にも、次のジョブとの統合可能性をより高めることができる。
【００３８】
＜実施形態３＞
実施形態１、２において、３Ｄプリンタ１０１は、造形材料の残量を考慮せずにジョブの統合を行っていた。即ち、３Ｄプリンタ１０１がジョブ実行中に残量が不足した場合には、造形材料が補充されることを前提としていた。しかしながら、夜間等人がいなくなるような場合に３Ｄプリンタ１０１が複数のジョブを連続して実行する場合には、造形材料の補充ができなくなる場合もある。そこで、本実施形態では、３Ｄプリンタ１０１が造形材料の残量も考慮してジョブを統合する処理について説明する。
図１３を用いて、本実施形態における印刷ジョブ組み合わせ生成処理について説明する。
図１３は、本実施形態における印刷ジョブ組み合わせ生成処理の一例を示すフローチャートである。なお、実施形態１の図８と同じ処理については、詳細な説明を省略する。
まず、印刷ジョブ制御部２４０は、上述した図８の（ａ）に示す処理を実行する。図８の（ａ）の処理については上述したため、詳細な説明を省略する。
【００３９】
図１３の（ａ）は、図８の（ａ）のＳ８０３におけるジョブ統合リスト生成処理の一例を示すフローチャートである。
図１３の（ａ）に示す繰り返し処理において、印刷ジョブ制御部２４０は、統合元ジョブ（ｊｏｂ）に統合可能な全組み合わせを算出する。Ｓ８１２からＳ８１４までの処理については、上述したため説明を省略する。
Ｓ１３０１において、印刷ジョブ制御部２４０は、ジョブｉ（ｊｏｂＬｉｓｔ［ｉ］）を統合可能オブジェクトとして設定し、ジョブ統合リストを更新する。
Ｓ１３０２において、印刷ジョブ制御部２４０は、予約ジョブリスト生成処理を行う。印刷ジョブ制御部２４０は、ジョブｉ（ｊｏｂＬｉｓｔ［ｉ］）までの統合ジョブを実行ジョブとして設定し、それ以降のジョブは次に統合できるか否かに関わらず、次の予約ジョブとして、それ以降のジョブリストの組み合わせを算出する。なお、予約ジョブリスト生成処理の詳細については、図１３の（ｂ）を用いて後述する。
Ｓ１３０３において、印刷ジョブ制御部２４０は、ジョブｉ（ｊｏｂＬｉｓｔ［ｉ］）を次の予約ジョブとして設定し、それまでの統合ジョブの状態をジョブ統合リストに記述する。
Ｓ１３０４において、印刷ジョブ制御部２４０は、予約ジョブリスト生成処理を実行する。この処理は、Ｓ１３０２の処理と同様の処理である。
【００４０】
図１３の（ｂ）は、図１３の（ａ）のＳ１３０２及びＳ１３０４の予約ジョブリスト生成処理の一例を示すフローチャートである。
図１３の（ｂ）のＳ８０１において、印刷ジョブ制御部２４０は、未統合のジョブリスト（ｎｅｗＪｏｂＬｉｓｔ［］）を生成する。
Ｓ１３１１からＳ１３１４までの繰り返し処理において、印刷ジョブ制御部２４０は、未統合のジョブリストの全てに対してジョブ統合リスト生成処理を行う。
Ｓ１３１２において、印刷ジョブ制御部２４０は、ジョブｉ（ｎｅｗＪｏｂＬｉｓｔ［ｉ］）を統合元ジョブとして設定する。このようにすることで、３Ｄプリンタ１０１は、現在の造形材料の残量でできるだけ多くの３Ｄオブジェクトを造形するために、ジョブキュー上のジョブの順番を入れ替えた場合について考慮することができるようになる。
Ｓ１３１３において、印刷ジョブ制御部２４０は、統合元ジョブに対するジョブ統合リストの生成処理を実行する。この処理は、図１３の（ａ）で説明した処理である。
印刷ジョブ制御部２４０は、以上の処理を実行することにより、本実施形態におけるジョブ統合リストを生成する。
【００４１】
図１４は、本実施形態において印刷ジョブ制御部２４０により生成されたジョブ統合リスト等の一例を示す図である。
実施形態１、２との違いは、総造形時間の欄に全てのジョブの実行が終了するまでの造形時間ではなく、３Ｄプリンタ１０１が現在の造形材料の残量で実行することができるジョブの個数と、総造形時間とが記述されている点である。
図１５は、本実施形態において印刷ジョブ制御部２４０が実行する実行印刷ジョブ生成処理の一例を示すフローチャートである。図１０、１１と同様の処理については、詳細な説明を省略する。
Ｓ１００１において、印刷ジョブ制御部２４０は、ジョブ統合リスト中の最初に実行されるジョブで造形材料が不足する組み合わせがあれば、その組み合わせを削除する。図１４の場合には該当する組み合わせがないため、印刷ジョブ制御部２４０は、処理をスキップする。
Ｓ１５０１において、印刷ジョブ制御部２４０は、ジョブ統合リストの中から造形個数が最大となる組み合わせを抽出する。図１４の場合、印刷ジョブ制御部２４０は、造形個数が３個であるジョブリスト１４３０、１４６０、１４７０、１４９０の４つを抽出する。
【００４２】
Ｓ１５０２において、印刷ジョブ制御部２４０は、抽出した候補が１つであるか否かを判定し、１つであると判定した場合、処理をＳ１００３へ進め、複数であると判定した場合、処理をＳ１００２へ進める。
Ｓ１００２において、印刷ジョブ制御部２４０は、Ｓ１５０１で抽出した組み合わせの中から、総造形時間が最小となる組み合わせを抽出する。ここでは、印刷ジョブ制御部２４０は、総造形時間が７．１時間と最小であるジョブリスト１４３０と、ジョブリスト１４６０とを抽出する。
Ｓ１１０２において、印刷ジョブ制御部２４０は、抽出した候補が１つであるか否かを判定し、１つであると判定した場合、処理をＳ１００３へ進め、複数であると判定した場合、処理をＳ１５０３へ進める。
Ｓ１５０３において、印刷ジョブ制御部２４０は、Ｓ１００２で抽出した組み合わせの中から、造形可能なジョブを全て実行し終えた後の造形材料の残量が最大となる組み合わせを抽出する。ここでは、印刷ジョブ制御部２４０は、残量が２リットルとなるジョブリスト１４３０を抽出する。
【００４３】
Ｓ１５０４において、印刷ジョブ制御部２４０は、抽出した候補が１つであるか否かを判定し、１つであると判定した場合、処理をＳ１００３へ進め、複数であると判定した場合、処理をＳ１５０５へ進める。
Ｓ１５０５において、印刷ジョブ制御部２４０は、Ｓ１５０３で抽出した組み合わせの中から、最初に検出した組み合わせを抽出する。
Ｓ１００３において、印刷ジョブ制御部２４０は、抽出したジョブリストを基に、実行ジョブを生成する。
なお、印刷ジョブ制御部２４０は、Ｓ１５０１、Ｓ１００２、Ｓ１５０３、Ｓ１５０５の抽出（選択）処理を必ずしも全て実行しなければならないわけではない。例えば、印刷ジョブ制御部２４０は、Ｓ１５０１、Ｓ１００２、Ｓ１５０３、Ｓ１５０５の処理のうち、１つ又は任意の複数の組み合わせの処理を実行するようにしてもよい。
以上の処理により、３Ｄプリンタ１０１は、造形材料の残量に応じて、ジョブキュー上のジョブの順番を入れ替えながら全てのジョブ統合の組み合わせを生成する。そして、３Ｄプリンタ１０１は、その中から最短時間で最大個数のジョブを実行できるような組み合わせを抽出する。これにより、３Ｄプリンタ１０１は、夜間等に連続して処理を実行する場合等の造形材料の補充が難しいような場合でも、効率の良い印刷を行うことができる。
【００４４】
＜実施形態４＞
実施形態１から３まででは、短時間で造形個数が最大になるような組み合わせで３Ｄプリンタ１０１がジョブを統合する処理について説明した。本実施形態では、造形可能な時間が指定されている場合に、効率的に造形を行えるように３Ｄプリンタ１０１がジョブを統合する処理について説明する。
図１６は、本実施形態において印刷ジョブ制御部２４０が実行する実行印刷ジョブ生成処理の一例を示すフローチャートである。図１０、１１、１５と同様の処理については、詳細な説明を省略する。また、ここで用いるジョブ統合リストは、上述した図１４に示すジョブ統合リストと同様であるものとして説明する。
Ｓ１００１において、印刷ジョブ制御部２４０は、ジョブ統合リスト中の最初に実行されるジョブで造形材料が不足する組み合わせがあれば、その組み合わせを削除する。ここでは該当する組み合わせがないため、印刷ジョブ制御部２４０は、処理をスキップする。
Ｓ１６０１において、印刷ジョブ制御部２４０は、指定時間内で造形が終了する組み合わせを抽出する。例えば、夜間２３時から明朝６時半までの７．５時間は担当者が不在になるため、この間にできるだけ自動で造形したいという場合がある。この場合、ユーザは、操作表示部２１０を介して予め造形時間の上限を７．５時間と設定しておく必要がある。即ち、３Ｄプリンタ１０１は、予め造形時間の上限が７．５時間であるという設定情報をデータ管理部２３０に記憶しておく。
【００４５】
Ｓ１６０２において、印刷ジョブ制御部２４０は、抽出された候補が１つであるか否かを判定し、１つであると判定した場合、処理をＳ１００３へ進め、複数であると判定した場合、処理をＳ１５０１へ進める。
Ｓ１５０１において、印刷ジョブ制御部２４０は、抽出した候補の中から造形個数が最大となる組み合わせを抽出する。ここでは、印刷ジョブ制御部２４０は、造形個数が３個であるジョブリスト１４３０と、ジョブリスト１４６０との２つを抽出する。
Ｓ１５０２において、印刷ジョブ制御部２４０は、抽出した候補が１つであるか否かを判定し、１つであると判定した場合、処理をＳ１００３へ進め、複数であると判定した場合、処理をＳ１６０３へ進める。
Ｓ１６０３において、印刷ジョブ制御部２４０は、Ｓ１５０１で抽出した候補の中から、造形時間内で造形することができなかったジョブを実行するための時間が最短となる組み合わせを抽出する。ジョブリスト１４３０では４時間、ジョブリスト１４６０では３時間であることから、印刷ジョブ制御部２４０は、ジョブリスト１４６０を抽出する。
Ｓ１６０４において、印刷ジョブ制御部２４０は、抽出した候補が１つであるか否かを判定し、１つであると判定した場合、処理をＳ１００３へ進め、複数であると判定した場合、処理をＳ１６０５へ進める。
【００４６】
Ｓ１６０５において、印刷ジョブ制御部２４０は、Ｓ１６０３で抽出した候補の中から、造形時間内で造形することができなかった先頭のジョブの空きスペースが最大となる組み合わせを抽出する。
Ｓ１６０６において、印刷ジョブ制御部２４０は、抽出した候補が１つであるか否かを判定し、１つであると判定した場合、処理をＳ１００３へ進め、複数であると判定した場合、処理をＳ１５０５へ進める。
Ｓ１５０５において、印刷ジョブ制御部２４０は、Ｓ１６０５で抽出した候補のうち、最初に検出したジョブリストを抽出する。
Ｓ１００３において、印刷ジョブ制御部２４０は、抽出したジョブリストに対して、実行ジョブを生成する。ここでは、印刷ジョブ制御部２４０は、Ｓ１６０４で抽出したジョブリスト１４６０中の先頭ジョブ１４６１を実行ジョブとして生成する。
なお、印刷ジョブ制御部２４０は、Ｓ１６０１、Ｓ１５０１、Ｓ１６０３、Ｓ１６０５、Ｓ１５０５の抽出（選択）処理を必ずしも全て実行しなければならないわけではない。例えば、印刷ジョブ制御部２４０は、Ｓ１６０１、Ｓ１５０１、Ｓ１６０３、Ｓ１６０５、Ｓ１５０５の処理のうち、１つ又は任意の複数の組み合わせの処理を実行するようにしてもよい。
以上の処理により、３Ｄプリンタ１０１は、所定時間内に造形個数が最大となる組み合わせを抽出することができる。また、３Ｄプリンタ１０１は、所定時間経過後にジョブを再開した際にも、ジョブの造形時間を最短にすることができる。
【００４７】
＜実施形態５＞
実施形態１から４まででは、３Ｄプリンタ１０１が造形ステージ３０２上の造形面積を考慮してジョブを統合する処理について説明した。しかし、３Ｄプリンタ１０１は、造形ステージ３０２上に３次元的に３Ｄデータを配置することもできる。そこで、本実施形態では、３Ｄプリンタ１０１がジョブ統合する際に、３次元的にジョブを配置しながら統合する処理について説明する。
実施形態１から３までにおいて、印刷ジョブ制御部２４０は、ジョブ統合リストの各ジョブ情報に造形面積を記述した。そして、３Ｄデータ処理部２５０のレイアウト生成部２５１は、その情報を基に３Ｄデータの再配置を行っていた。しかし、本実施形態において、印刷ジョブ制御部２４０は、各ジョブ情報に造形体積を記述することとする。そして、レイアウト生成部２５１は、その情報を基に３次元空間的にオブジェクトの配置を行う。
以上の処理により、３Ｄプリンタ１０１は、造形ステージ３０２上の空間（造形領域）に３次元的に３Ｄデータを配置することができ、より効率的なレイアウトを行うことができる。
【００４８】
＜その他の実施形態＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（又はＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【００４９】
以上、上述した各実施形態によれば、３Ｄプリンタ１０１は、印刷ジョブキュー上に複数の印刷ジョブが存在している場合、印刷ジョブを効率的に実行することができる。なお、上述した各実施形態は任意に組み合わせ可能である。
【００５０】
以上、本発明の好ましい形態について詳述したが、本実施形態は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形・変更が可能である。
【図１】
2015085663.tif 000003
【図２】
2015085663.tif 000004
【図３】
2015085663.tif 000005
【図４】
2015085663.tif 000006
【図５】
2015085663.tif 000007
【図６】
2015085663.tif 000008
【図７】
2015085663.tif 000009
【図８】
2015085663.tif 000010
【図９】
2015085663.tif 000011
【図１０】
2015085663.tif 000012
【図１１】
2015085663.tif 000013
【図１２】
2015085663.tif 000014
【図１３】
2015085663.tif 000015
【図１４】
2015085663.tif 000016
【図１５】
2015085663.tif 000017
【図１６】
2015085663.tif 000018