(57)【特許請求の範囲】
【請求項１】
固体自由形状製造法によって物品を製造する方法であって、
ａ）物品のモデルを含むＳＴＬファイルを提供する、
ｂ）物品の少なくとも１つの印刷層について、アプリケーション・プログラミング・インターフェースを用いて第１のビットマップＢＭ１をレンダリングターゲットとして用いるようレンダリングシステムに命令し、
ｉ）ＢＭ１に関連付けられた深度と色のバッファーをクリアする、
ｉｉ）深度テストをイネーブルする、
ｉｉｉ）当該モデルの上方視点又は下方視点の正射影を設定する、
ｉｖ）ＢＭ１の背景色を第１の色Ｃ１に設定する、
ｖ）所望の高さＺｎで水平クリップ面により当該モデルを切り取り、正射影が上方視点であるように設定された場合にはＺｎより上にある物品形状をすべて無視し、正射影が下方視点であるように設定された場合にはＺｎより下にある物品形状をすべて無視する、
ｖｉ）当該モデルの内面を選択除去する、
ｖｉｉ）当該モデルを色Ｃ１でレンダリングする、
ｖｉｉｉ）当該モデルの外面を選択除去する、
ｉｘ）当該モデルを第２の色Ｃ２でレンダリングする、
ｘ）当該モデルのＣ１レンダリングと当該モデルのＣ２レンダリングとをブール代数の排他的論理和演算により結合し、当該結合結果をＢＭ１に格納する、
ｘｉ）少なくとも１つの層を印刷するためにＢＭ１を用いる、
ステップを具備し、
ＢＭ１は所望の印刷領域の物理的サイズを表すようにサイズが決められている、方法。
【請求項２】
ステップ（ｂ）が物品の各印刷層について実施される、請求項１に記載の方法。
【請求項３】
さらに、ＯｐｅｎＧＬをアプリケーション・プログラミング・インターフェースに選ぶステップを含む、請求項１に記載の方法。
【請求項４】
固体自由形状製造法によって物品を製造する方法であって、
ａ）物品のモデルを含むＳＴＬファイルを提供する、
ｂ）物品の少なくとも１つの印刷層に関し、アプリケーション・プログラミング・インターフェースを用いて第１のビットマップＢＭ１をレンダリングターゲットとして用いるようレンダリングシステムに命令して、
ｉ）ＢＭ１に関連付けられた深度と色のバッファーをクリアし、
ｉｉ）深度テストをイネーブルし、
ｉｉｉ）当該モデルの上方視点の正射影を設定し、
ｉｖ）ＢＭ１の背景色を第１の色Ｃ１に設定し、
ｖ）所望の高さＺｎで水平クリップ面により当該モデルを切り取り、Ｚｎより上にあるモデル形状をすべて無視し、
ｖｉ）当該モデルの内面を選択除去し、
ｖｉｉ）当該モデルを色Ｃ１でレンダリングし、
ｖｉｉｉ）当該モデルの外面を選択除去し、
ｉｘ）当該モデルを第２の色Ｃ２でレンダリングし、
ｘ）当該モデルのＣ１レンダリングと当該モデルのＣ２レンダリングとをブール代数の排他的論理和演算により結合し、当該結合結果をＢＭ１に格納し、
ｃ）当該少なくとも１つの層に関し、アプリケーション・プログラミング・インターフェースを用いて第２のビットマップＢＭ２をレンダリングターゲットとして用いるようレンダリングシステムに命令して、
ｉ）ＢＭ２に関連付けられた深度と色のバッファーをクリアし、
ｉｉ）深度テストをイネーブルし、
ｉｉｉ）当該モデルの下方視点の正射影を設定し、
ｉｖ）ＢＭ２の背景色を第１の色Ｃ１に設定し、
ｖ）高さＺｎで水平クリップ面により当該モデルを切り取り、Ｚｎより下にあるモデル形状をすべて無視し、
ｖｉ）当該モデルの内面を選択除去し、
ｖｉｉ）当該モデルを色Ｃ１でレンダリングし、
ｖｉｉｉ）当該モデルの外面を選択除去し、
ｉｘ）当該モデルを第２の色Ｃ２でレンダリングし、
ｘ）当該モデルのＣ１レンダリングと当該モデルのＣ２レンダリングとをブール代数の排他的論理和演算により結合し、当該結合結果をＢＭ２に格納し、
ｄ）当該少なくとも１つの層に関し、ＢＭ１とＢＭ２をピクセルごとに比較し、
ｅ）当該少なくとも１つの層に関し、ステップ（ｄ）での比較結果を、前記層を印刷するために用いる、
ステップを具備し、
ＢＭ１及びＢ２は所望の印刷領域の物理的サイズを表すようにサイズが決められている、方法。
【請求項５】
当該物品の各印刷層についてステップ（ｂ）〜（ｅ）を実施する、請求項４に記載の方法。
【請求項６】
ステップ（ｄ）の比較が、ＢＭ１とＢＭ２をピクセル単位で比較し、ＢＭ１のピクセル（ｘｉ，ｙｊ）の値が対応するＢＭ２のピクセル（ｘｉ，ｙｊ）の値と同じか異なるかを判定することから成り、続いて、
ｉ）２つの値が同じである場合には、ＢＭ１のピクセル（ｘｉ，ｙｊ）の値をステップ（ｅ）で結果の一部として用いられる値として選定し、又は
ｉｉ）２つの値が異なる場合には、ＢＭ１のピクセル（ｘｉ，ｙｊ）の値を隣接する８つのピクセルの値（即ち、ＢＭ１（ｘｉ−１，ｊ＋１），ＢＭ１（ｘｉ，ｙｊ＋１），ＢＭ１（ｘｉ＋１，ｙｊ＋１），ＢＭ１（ｘｉ−１，ｙｊ），ＢＭ１（ｘｉ＋１，ｙｊ），ＢＭ１（ｘｉ−１，ｙｊ−１），ＢＭ１（ｘｉ，ｙｊ−１），ＢＭ１（ｘｉ＋１，ｙｊ−１））と比較し、比較した９個のピクセルの値のうち多数を占める値を決定し、その多数を占める値をステップ（ｅ）で結果の一部として用いられる値として選定する
請求項４に記載の方法。
【請求項７】
ステップ（ｄ）の比較結果を第３のビットマップＢＭ３に保存し、ステップ（ｄ）がＢＭ１とＢＭ２をピクセル単位で比較し、ＢＭ１のピクセル（ｘｉ，ｙｊ）の値が対応するＢＭ２のピクセル（ｘｉ，ｙｊ）の値と同じか異なるかを判定することを含み、
ｉ）２つの値が同じである場合には、ＢＭ３の対応するピクセル（ｘｉ，ｙｊ）の値が当該ＢＭ１のピクセル（ｘｉ，ｙｊ）の値になるよう設定し、又は
ｉｉ）２つの値が異なる場合には、ＢＭ１のピクセル（ｘｉ，ｙｊ）の値を隣接する８つのピクセルの値（即ち、ＢＭ１（ｘｉ−１，ｙｊ＋１），ＢＭ１（ｘｉ，ｙｊ＋１），ＢＭ１（ｘｉ＋１，ｙｊ＋１），ＢＭ１（ｘｉ−１，ｙｊ），ＢＭ１（ｘｉ＋１，ｙｊ），ＢＭ１（ｘｉ−１，ｙｊ−１），ＢＭ１（ｘｉ，ｙｊ−１），ＢＭ１（ｘｉ＋１，ｙｊ−１））と比較し、比較した９個のピクセルの値のうち多数を占める値を決定し、ＢＭ３の対応するピクセル（ｘｉ，ｙｊ）の値がその多数を占める値になるよう設定する
請求項４に記載の方法。
【請求項８】
さらに、ＯｐｅｎＧＬをアプリケーション・プログラミング・インターフェースに選ぶステップを含む、請求項４に記載の方法。
【請求項９】
ステップ（ａ）及びステップ（ｂ）がリアルタイムで実施される、請求項１に記載の方法。
【請求項１０】
ステップ（ａ）〜ステップ（ｄ）がリアルタイムで実施される、請求項４に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、積層造形とも呼ばれる固体自由形状製造の分野に関する。特に、本発明は、固体自由形状製造により生産される物品の３次元数学モデルを含む光造形法（ステレオリソグラフィック）データファイル（拡張子．ｓｔｌ）を、当該物品を一層ずつ製造するための印刷機構への命令に迅速に変換する方法に関する。
【背景技術】
【０００２】
近年、物品をその電子的表現から直接生産するために固体自由形状製造法（積層造形法とも呼ばれている）が開発されてきた。本明細書内で用いられる「固体自由形状製造法」（ＳＦＦＦ）という用語は、３次元の物品を生み出すべく、物品の電子的表現から当該物品の形状を一度に１層ずつ形成することを順次行うステップを含む方法を指す。固体自由形状製造法は、当技術分野では、「積層製造法」とも呼ばれている。固体自由形状製造法は、当技術分野では、特定の物品を少数製造するために積層製造法が用いられる場合には「ラピッドプロトタイピングプロセス」とも呼ばれている。固体自由形状製造法は、物品の物理的及び／又は機械的特性を強化する１つ以上の成形後操作を含んでもよい。固体自由形状製造法の例には、３次元印刷（３ＤＰ）法と選択的レーザー焼結（ＳＬＳ）法が含まれる。３ＤＰ法の例は、２０００年３月１４日に発行されたＳａｃｈｓの米国特許第６，０３６，７７７号に記載されている。ＳＬＳ法の例は、１９９１年１２月３１日に発行されたＢｏｕｒｅｌｌらの米国特許第５，０７６，８６９号に記載されている。本発明に基づく固体自由形状製造法は、金属、ポリマー、セラミックス、複合材料等の材料から成る物品を生産するために用いることができる。固体自由形状製造法が開発されたため、従来必要であった費用と時間のかかる中間段階を省くことにより、概念から製造後の物品までにかかる時間と費用を飛躍的に減少することができた。
【０００３】
多くの固体自由形状製造法は、（１）垂直方向にインデキシング可能な造形ステージに例えば粉末などの造形材料の最初の層を塗布し、平滑にする、（２）印刷機構により造形材料の層をスキャンして、製造される物品の関連する２次元層のイメージを当該層に付与する、（３）造形材料の別の層を受け入れるために造形ステージを下げる、及び（４）当該物品が完成するまで（１）から（３）までのステップを繰り返す、といった基本ステップから成る。１層ごとに造形することにより、所望の物品が形成される。造形された物品の物理的性質を強化するために後続の処理が用いられることが多い。
【０００４】
本明細書で使用される用語「印刷機構」は、（１）物品が造形されるステージの上にある製造材料に対して、製造されている当該物品の関連する２次元層のイメージを物理的に付与する、及び／又は（２）当該ステージ若しくは前の層の上に上記の２次元層のイメージの形で造形材料の層を堆積させる固体自由形状製造システムの構成要素を総称する。例えば、３ＤＰ法の場合、印刷機構は、物品の関連する２次元層のイメージを形成するために粉末層の上に結合剤の液滴を吹き付ける、１個以上の印刷ノズルと付属するスキャン制御機構から構成される印刷ヘッドである。ＳＬＳ法の場合、印刷機構は、粉末層全体に渡りレーザービームをスキャンして物品の関連する２次元層のイメージの形で粉末を当該層において融合させる、レーザーと付属するスキャン制御機構である。
【０００５】
固体自由形状製造によって製造される物品は、まず３次元モデルとして電子的に表現される。通常、この３次元モデルは、ステレオリソグラフィックファイル（．ＳＴＬファイル）のフォーマットで保存される。このフォーマットのファイルを本明細書では「ＳＴＬファイル」と呼ぶ。ＳＴＬファイルは通常、物品の外面及び内面を大まかに描く三角形の集まりから成る。これらの三角形には、三角形のどの面が物品の外側を向いているのかを示すために、表面法線（即ち、三角形の面から垂直に外側を指す短い線）などの特徴が付随している。外側に向いている表面は「外」面又は「前」面と呼ばれる場合があり、内側に向いている表面は「内」面又は「背」面と呼ばれる場合がある。
【０００６】
従来、固体自由形状製造の分野では、ＳＴＬファイルは、本明細書内で「スライシングプログラム」と呼ばれるプログラムによって処理されている。スライシングプログラムは、ＳＴＬファイルフォーマットで表されたモデルを互いに直交する３つの軸のうちの１つ（例えばＸ−Ｙ−Ｚ軸のＺ軸）に沿って薄く切り、所定の厚さの多数の２次元層（即ち、切片（スライス））を作り出す。それぞれの切片の内部では、当該モデルの関連箇所が一連の閉じた２次元ポリゴンにより表される。
【０００７】
スライシングプログラムは普通、別個のプログラムである（例えば、ベルギーのルーフェン市にあるマテリアライズＮＶ社から入手できるマジックスＲＰプログラム）。ただし、スライシングプログラムは、物品を製造するためにＳＴＬファイル又は機能的に類似したファイルを処理して固体自由形状製造機械用の命令に変換するより大規模なプログラムの一部とすることもできる。どちらの場合でも、スライシングプログラムを使うことにより、各２次元層が一連の閉じた２次元ポリゴンにより表される２次元切片のスタックから成るバイナリファイルが生成される。このようなバイナリファイルを、本明細書では「切片スタックファイル」と呼ぶ。
【０００８】
従来、固体自由形状製造機械の制御用ソフトウェアは、物品を１層ごとに作るために切片スタックファイルを用いている。普通、固体自由形状製造機械の制御用ソフトウェアは、切片スタックファイルで表されるモデルの各層を、物品の対応する物理層の作成時に印刷機構を制御するための一連の命令に変換する。これらの命令は、造形材料をどこで（１）結合させるべきか（例えば、レーザー若しくは電子ビーム発生装置によるエネルギーを与えること、又はジェット印刷ヘッドから結合材を噴出することにより）、及び／又は（２）堆積させるべきかを印刷機構に伝える。本明細書では、実際に使用される印刷機構の種類にかかわらず、印刷機構のこの動作を「印刷」と総称し、これらの命令を「印刷命令」と総称する。
【０００９】
図１は、固体自由形状製造によって物品を作り出すための従来の方法のフローチャートを示している。例示する従来法１０では、製造すべき物品のモデルに関するＳＴＬファイルデータ１２がスライシングプログラム１４に入力される。スライシングプログラム１４へのもう一つの入力は、モデル全体に適用される層間隔選択値１６である。スライシングプログラム１４は、この入力を用いて切片スタックファイル１８を作り出す。平面状の各切片は、層間隔選択値１６の分だけ次の切片と離れている。切片スタックファイル１８のデータは次に記憶装置２０に入力される。その後、切片スタックファイル１８のデータは、記憶装置２０から出力されて固体自由形状製造機械の制御ソフトウェア２２に入力される。制御ソフトウェア２２は、切片スタックファイル１８を処理し、物品３０が完成するまで印刷機構２６に各層２８を印刷させるための印刷命令２４を作り出す。
【００１０】
従来法にはいくつかの短所がある。これらの短所の中には、スライシングプログラムを利用する必要があることによって生じるコストがある。このようなコストには、スライシングプログラムを購入若しくは開発する、実装する、及び／又は維持するコストなどがある。また、スライシングプログラムと発生する切片スタックファイルの運用及び保存に割り当てなければならないハードウェアのコストもそれらのコストに含まれる。さらに、スライシングプログラムを利用し、その後切片スタックファイルを利用するための計算コストも含まれる。また、切片スタックファイルを生成するためにスライシングプログラムを用いるのに必要な時間のコストもある。
【００１１】
別の短所は、物品の元の３次元モデルから詳細情報やその他の情報が失われることである。モデルを表すデータセットが変換されるごとに、当該モデルに関する詳細情報やその他の情報が一部失われる。スライシングプログラムは、処理しているモデルを表すことを、特定の切断（スライス）面について、試みる。したがって、元のモデルにあった、切断面と切断面の間に存在する詳細についての情報のすべてがスライシングプログラムによって確保されるわけではないため、一部は失われてしまう。これは、表示、移動、拡大縮小、またはその他の操作に関し、切片スタックファイルから元のモデルを得ることはできないことを意味している。また、この切片スタックファイルは、同ファイルを生成する際に選択された特定のスライス厚さを使用でき、かつ同じ印刷装置インデキシングステップ等のパラメータを使用できる固体自由形状製造機械でしか利用できないことも意味している。このことは、切片スタックファイルをある固体自由形状製造機械から別の機械に移植することを制限する。
【００１２】
数年前、本発明の発明者の１人は、米国特許出願公開公報ＵＳ ２０１０／０１６８８９０  Ａ１で、物品を層ごとに製造するために、スライシングプログラムを使わずにＳＴＬファイルを印刷機構への命令に変換するためにレイキャスティングを用いる手法を開示した。それらの手法は従来の他のＳＴＬ変換手法より多くの点で優れていたが、大量の計算を必要としたので、解像度が一部失われる可能性があった。
【発明の概要】
【００１３】
本発明は、ＳＦＦＦによって製造すべき１個以上の物品を表現するＳＴＬファイルを従来のスライシングプログラムを使わずに迅速かつ（計算資源の観点から見て）効率的に変換する手法を提供することにより、先行技術に伴う上記の問題のうち少なくとも一部を克服する。これを達成するために、本発明は、印刷すべき物品の各層に対応するビットマップを物品のＳＴＬファイルから直接生成するためにアプリケーションプログラムインターフェース（ＡＰＩ）を用いる。この変換は特定の層が印刷される直前に実質的にリアルタイムで行われるのが好ましい。ただし、１個以上の層、又はすべての層の変換の結果を後で使用するために保存することも本発明の範囲内である。ビットマップは一度生成されれば、後でそれを用いて特定の層を印刷するための印刷機構への印刷命令を構成することができる。ラスタライジングする印刷機構を使用するＳＦＦＦ法（例えば、インクジェット型印刷ヘッド、スキャニング用放射線源、又は選択的に遮へいされた放射線被ばく源）の場合、ビットマップは印刷される画素の場所を直接示すために用いることができる。（例えば、ＳＬＳ法、電子ビーム法、又は熱溶解積層法の場合のように）ベクトル化した命令に依拠するＳＦＦＦ法の場合、ビットマップは印刷時に用いられるベクトルの作成に用いることができる。
【図面の簡単な説明】
【００１４】
本発明の特徴及び利点の重要性は、添付図を参照することにより理解が深まる。ただし、添付図は説明目的だけで作成されており、本発明の範囲を定義するものではないことが理解されるべきである。
【００１５】
【図１】固体自由形状製造によって物品を製造する従来技法のフローチャート。
【００１６】
【図２】印刷ボックス内に縦長に置かれたトーラスの概略透視図。
【００１７】
【図３】ビューワーの方を向いた側でのＳＴＬファイルのモザイク状の三角格子模様を示している図２のトーラスの一部の概略透視図。
【００１８】
【図４】図１のトーラスの下半分の概略透視図。
【００１９】
【図５】図４のトーラスの上方視点の正射影概略図。
【００２０】
【図６】内面を選択除去した後に図５の射影図をレンダリングした結果の概略図。
【００２１】
【図７】外面を選択除去した後に図５の射影図をレンダリングした結果の概略図。
【００２２】
【図８】図６と図７に示された描写を排他的論理和により組み合わせたシーン最終処理後の造形層の概略上面図。
【発明を実施するための形態】
【００２３】
本発明の好ましい実施態様をいくつか、当業者が本発明を不要な実験をすることなく実施できるよう十分詳しく説明する。ただし、本明細書に好ましい実施態様が限られた数しか記載されていないことは特許請求の範囲に記載された本発明の範囲を限定するものでは全くないことを理解されたい。本明細書又は特許請求に値の範囲が記載される場合は常に、当該範囲には、両端点とその間にあるすべての点が、それらすべての点が明示的に記載されているかの如く含まれることが理解されるべきである。他に明記しない限り、本明細書及び特許請求の範囲で用いられる用語「約」は、その「約」という用語が修飾する値に関連する通常の計測及び／又は製造限度を意味するものとして解釈されるべきである。他に明記されない限り、「実施態様」という用語は、本明細書では本発明の実施態様を意味するために用いられる。
【００２４】
ＳＦＦＦ（固体自由形状製造）装置がバッチ処理、又は連続処理、どちらの用途向けに構成されている場合でも、物品がそこで製造されるＳＦＦＦ装置のボリューム部分を、本明細書では「印刷ボックス」と呼ぶ。生産効率のために、ＳＦＦＦ装置の各造形サイクルで、複数の物品、又は１つの物品の複数の複製物を製造することにより、印刷ボックスのボリュームをできるだけ多く利用することが一般的である。実施態様において、ＳＦＦＦ法によって製造される１個以上の物品はそれぞれ、まずＳＴＬファイルによって表現される。ＳＴＬファイルは、対応する物品の形状を記述するのに必要な情報を内蔵している。便宜上、まず単一の物品が製造される実施態様に用いられる一般的方法を以下に記載する。
【００２５】
実施態様では、物品のＳＴＬファイルを個々のビットマップ（それぞれのビットマップは当該物品を製造するためのＳＦＦＦ法印刷層の１層に対応する）に変換するためにＡＰＩ（アプリケーションプログラムインターフェース）が用いられる。本明細書では、「変換」という用語とその様々な変化形は、発明方法が個々の印刷層のビットマップを作り出すにあたっての出発点としてＳＴＬファイルが用いられることを意味するために用いられることが理解されるべきである。ＳＴＬファイルそれ自体は発明方法によって何か別のものに変えられるわけではなく、再利用のために元のままである。
【００２６】
変換は、印刷層の各々について、当該層が印刷される直前に実質的にリアルタイムで行われるのが好ましい。ただし、１個以上の層（すべての層の場合も含む）の変換結果を後で使用するために保存することも本発明の範囲内である。
【００２７】
いくつかの実施態様において、３次元的に印刷される物品の少なくとも１つの層（及び好ましくはすべての層）に関して、ＡＰＩを用いることにより、物品の幾何学的表現（即ち、モデル）を包含するＳＴＬファイルを用いて以下のことを行う。
１．（ａ）所望の印刷領域の物理的サイズを表すように、且つ（ｂ）当該プリンターの分解能に従って、サイズが決められる第１のビットマップＢＭ１を作成することにより、各画素を表すビットサイズとビット数に関するレンダリングコンテクストを構成する。
２．ＢＭ１をレンダリングターゲットとして用いるようレンダリングシステムに命令する。
３．以下のことを行うようレンダリングシステムに命令する。
ａ）深度と色のバッファーをクリアする。
ｂ）深度テストをイネーブルする。
ｃ）上方（下方）視点の正射影を設定する。
ｄ）背景色を第１の色Ｃ１に設定する。
ｅ）所望の高さＺｎで水平クリップ面により物品のＳＴＬファイルを切り取り（クリップし）、Ｚｎより上にある（又は正射影が下方視点であるように設定された場合には高さＺｎより下にある）モデル形状をすべて無視する。
ｆ）当該モデルの内（背）面を選択除去（カリング）する。
ｇ）当該モデルを色Ｃ１でレンダリングする。
ｈ）当該モデルの外（前）面を選択除去する。
ｉ）当該モデルを第２の色Ｃ２（Ｃ１とは異なる）でレンダリングする。
ｊ）ＢＭ１に向けてのシーン最終処理、即ち、シーンをターゲットビットマップＢＭ１に仕上げる。
４．当該層を印刷するためにＢＭ１を使用する。
【００２８】
層を印刷するために作成されたビットマップを用いる段階では、ＳＦＦＦの印刷機構に対する印刷命令を生成するために当該ビットマップへのアクセスが行われる。例えば、印刷機構がインクジェットのような印刷ヘッドを有する場合、ビットマップは、印刷ボックスのその時の表面層上のどこに結合剤液を堆積させるべきかを厳密に、又は所望のオフセットを考慮に入れたことを受けてこの種の堆積を相対的にどこで行うかを当該印刷ヘッドに命令するために用いることができる。他の例として、例えばＳＬＳ法、電子ビーム法、又は熱溶解積層法の場合のようにベクトル化された印刷命令に依拠するＳＦＦＦ法では、ビットマップは印刷時に用いられるベクトルを生成する際に用いられることがある。
【００２９】
図２〜８は、ＳＦＦＦ法により中実トーラス（物品１００）の単独インスタンスを製造するための上記方法の概要を描写している。ここでは、ＳＦＦＦ法のステップ３（ｃ）において、上方視点の正射影を用いる。図２を参照すると、方向マーカー１０２は、本説明のために、物品１００は中心軸１０４が印刷ボックスのＸ方向に平行な状態でＳＦＦＦ装置の印刷ボックスにおいて縦長に置かれていることを示している。物品１００を製造するための最初の造形層は、印刷ボックスのＸ−Ｙ平面と交差する。ＳＦＦＦ装置において物品１００を製造するために用いられる他の造形層はそれぞれ、印刷ボックスのＸ−Ｙ平面に平行である。
【００３０】
図３は、物品１００のビューワーの方を向いた面上の三角格子模様を示すことにより、ＳＴＬファイルの三角格子で以て描画した場合に物品１００の一部１０６がどのように見えるかを示している。この描写に物品１００のビューワーの方を向いた面を含めることにより、ＳＴＬファイルモデルの強化されていない描画で起きるような、ビューワーの方を向いた面とその反対側の面の両方に三角格子模様が同時に見える場合に生じる混乱を避ける。
【００３１】
説明のために、物品１００のＺ軸の高さの中間まで上がったところのＺ０．５において造形層が選択されるものとする。図４は、物品１００の底部からこの造形層までの透視図であり、実質的には物品１００のＳＴＬファイルモデルがこの高さＺ０．５において水平面で切り取られたときの物品１００の残余部分である。この造形層高さにおいて、物品１００は同一の断面を２つ持つ（１０８ａと１０８ｂ）。図５は、この造形層高さにおける物品１００の上方視点の正射影を示しており、２つの断面１０８ａと１０８ｂは明確化のため本図の中で右に傾斜したハッチングで示されている。
【００３２】
図６は、当該モデルの内（背）面を選択除去した後のレンダリングステップ３（ｇ）の結果（第１のイメージ１１０）を示している。右上がりの斜めのハッチングは色Ｃ１を表すために用いられている。
【００３３】
図７は、当該モデルの外（前）面を選択除去した後のレンダリングステップ３（ｉ）の結果（第２のイメージ１１２）を示している。垂直のハッチングは色Ｃ２を表すために用いられている。
【００３４】
図８は、ステップ３（ｊ）のシーン最終処理後ビットマップＢＭ１で表されるであろう造形層を示している。シーン最終処理では、「排他的論理和」により第１イメージ１１０と第２イメージ１１２を効果的に組み合わせる。２つの区域（１１４ａと１１４ｂ）は、印刷層のためにＳＦＦＦ装置で印刷される画素より構成される。これら２つの層（１１４ａと１１４ｂ）は、図５の２つの断面（１０８ａと１０８ｂ）に対応する。
【００３５】
一部の好ましい実施態様においては、上記のプロセスは、ＳＴＬファイルの三角形のレンダリングから発生し得る浮動小数点の不正確さによって生じる可能性があるビットマップ中の漂遊又は欠落画素の影響を小さくするよう変更されている。これらの実施態様においては、ビットマップＢＭ１に加えて第２のビットマップＢＭ２が作成される。そして、これら２種類のビットマップを比較して第３のビットマップＢＭ３が作成され、当該層を印刷するために用いられる。ビットマップＢＭ２は、当該物品のＳＴＬモデルの、ビットマップＢＭ１を作成して適宜クリッピングを調整するために用いられた視点とは反対側の視点の正射影を用いて作成される。よって、ＢＭ１が上方視点の正射影を用いて、且つ高さＺｎより上方にあるモデル形状をすべて無視するクリッピングによって作成される場合、ＢＭ２は、下方視点の正射影を用いて、且つ高さＺｎより下方にあるモデル形状をすべて無視するクリッピングによって作成される。この変更を含めるように、物品の少なくとも１つの印刷層に関して、以下にプロセスを再言する。
１．（ａ）所望の印刷領域の物理的サイズを表すように、且つ（ｂ）当該プリンターの分解能に従って、サイズが決められる第１のビットマップＢＭ１、第２のビットマップＢＭ２、及び第３のビットマップＢＭ３を作成することにより、各画素を表すビットサイズとビット数に関するレンダリングコンテクストを構成する。
２．ＢＭ１を第１のレンダリングターゲットとして用いるようレンダリングシステムに命令する。
３．以下のことを行うようレンダリングシステムに命令する。
ａ）深度と色のバッファーをクリアする。
ｂ）深度テストをイネーブルする。
ｃ）上方視点の正射影を設定する。
ｄ）背景色を第１の色Ｃ１に設定する。
ｅ）所望の高さＺｎで水平クリップ面により当該モデルを切り取り、Ｚｎより上にあるモデル形状をすべて無視する。
ｆ）当該モデルの内（背）面を選択除去する。
ｇ）当該モデルを色Ｃ１でレンダリングする。
ｈ）当該モデルの外（前）面を選択除去する。
ｉ）当該モデルを第２の色Ｃ２（Ｃ１とは異なる）でレンダリングする。
ｊ）ＢＭ１に向けてシーン最終処理を行う。
４．ＢＭ２を第２のレンダリングターゲットとして用いるようレンダリングシステムに命令する。
５．以下のことを行うようレンダリングシステムに命令する。
ａ）深度と色のバッファーをクリアする。
ｂ）深度テストをイネーブルする。
ｃ）下方視点の正射影を設定する。
ｄ）背景色を第１の色Ｃ１に設定する。
ｅ）所望の高さＺｎで水平クリップ面により当該モデルを切り取り、Ｚｎより下にあるモデル形状をすべて無視する。
ｆ）当該モデルの内（背）面を選択除去する。
ｇ）当該モデルを色Ｃ１でレンダリングする。
ｈ）当該モデルの外（前）面を選択除去する。
ｉ）当該モデルをＣ２でレンダリングする。
ｊ）ＢＭ２に向けてシーン最終処理を行う。
６．ＢＭ２を水平方向に転置する。
７．ＢＭ１とＢＭ２をピクセル単位で比較し、ＢＭ１のピクセル（ｘｉ，  ｙｊ）の値が対応するＢＭ２のピクセル（ｘｉ，  ｙｊ）の値と同じか異なるかを判定する。続いて、
ａ）２つの値が同じである場合には、ＢＭ１のピクセル（ｘｉ，ｙｊ）の値がＢＭ３の対応するピクセルの値になるよう設定する。又は
ｂ）２つの値が異なる場合には、ＢＭ１のピクセル（ｘｉ，ｙｊ）の値を隣接する８つのピクセルの値（即ち、ＢＭ１（ｘｉ−１，ｙｊ＋１），ＢＭ１（ｘｉ，ｙｊ＋１），ＢＭ１（ｘｉ＋１，ｙｊ＋１），ＢＭ１（ｘｉ−１，ｙｊ），ＢＭ１（ｘｉ＋１，ｙｊ），ＢＭ１（ｘｉ−１，ｙｊ−１），ＢＭ１（ｘｉ，ｙｊ−１），ＢＭ１（ｘｉ＋１，ｙｊ−１））と比較し、比較した９個のピクセルの値のうち多数を占める値を決定し、その多数を占める値をＢＭ３の対応するピクセルの値として設定する。
８．ＢＭ３を用いて当該層を印刷する。
【００３６】
変更プロセスのステップ１は便宜上３つのビットマップをすべて同時に作成すると述べているだけであって、それぞれのビットマップはいつでも所望のときに作成できることが理解されるべきである。また、ＢＭ１とＢＭ２はピクセルごとに比較できるよう同じ大きさでなければならないことも理解されるべきである。ＢＭ３は、他の２つのビットマップと同じ大きさにするか、例えば、印刷用オフセットに適合するようにより大きくしてもよい。
【００３７】
ステップ７（ｂ）においてピクセルにどんな値を与えるかを決定する方法は、比較のために周囲のピクセルをより多く又は少なく用いるように変更してもよいことも理解されるべきである。例えば、上記の比較は、調べるピクセルに隣接し、１本の対角線、行、又は列の上にあるピクセルとだけ実施してよい。
【００３８】
ステップ６におけるビットマップＢＭ２の転置は、ビットマップＢＭ２のピクセルによって表される場所がビットマップＢＭ１によって表される場所と正確に一致するように実施されることも理解されるべきである。この相関関係に到達するために他の方法を用いることもできる。例えば、ビットマップＢＭ１とＢＭ２のピクセルを選定する方向が両ビットマップは実質的に互いの鏡像であることを考慮するように選ばれる場合には、ステップ７において行われる比較は転置しないビットマップＢＭ２を用いて行うことができる。別の例として、ビットマップＢＭ２（又はビットマップＢＭ１）のポピュレーティングは、同様に、ビットマップＢＭ２（又はビットマップＢＭ１）の転置ステップを別に行う必要性を避けるように実施できる。
【００３９】
ビットマップＢＭ１とＢＭ２の比較結果が１つのビットマップに保存される限り、同比較結果を保存するために第３のビットマップ（例えばＢＭ３）を用いるのは好ましいことだが、必須ではないということも理解されるべきである。例えば、ＢＭ１とＢＭ２の両方、又はいずれかを比較結果を以てポピュレーティングすることによって、その結果を含む１つ以上のビットマップは上記ステップ８におけるＢＭ３の代わりに使用できるものとなる。
【００４０】
上記の発明方法は、ＳＦＦＦ装置の１回の造形サイクルの間に複数の物品、及び／又は１つの物品の複数の複製物を製造するのに適用できる。形状が異なる物品が同じ印刷ベッドで製造されるような場合、選択された発明方法がそれぞれの物品のＳＴＬファイルに適用され、それらの結果が１つのビットマップに結合されてから当該層を印刷するために用いられる。同じ印刷ベッドで同じ物品の複製物が複数製造され、しかもこれらの複製物が印刷ベッド内で異なる方向を向く、及び／又は印刷ベッド内で異なる高さにある場合も同じことが行われる。同じ物品の複数の複製物が製造される場合、当該物品のＳＴＬファイル及び保存された結果に対して選択された発明方法を適用する必要があるのは一度だけであり、その際、当該層を印刷するために用いられるビットマップは、当該層における所望の間隔で、保存された結果の複数の複製物を以てポピュレーティングされる。
【００４１】
実施態様は、３次元ベクトル・グラフィックスをレンダリングできる任意のＡＰＩを用いて実施されるものであってよい。この種のＡＰＩの例には、クロノス・グループのＯｐｅｎＧＬやマイクロソフト社のＤｉｒｅｃｔ３Ｄなどがある。発明方法は、通常のコンピューター処理ハードウェアを用いて使用できるか、又は計算速度をさらに高めるために専用のグラフィックスハードウエアと併せて使用できることに留意すること。
【００４２】
ＳＦＦＦ装置がバッチ処理、連続処理のどちらのために構成されていようと、発明方法はＳＦＦＦ装置の印刷ボックスで物品の１つ以上の層を作ることに用いられる場合があることが理解されるべきである。
【００４３】
本発明のごく少数の実施態様のみを示し、説明してきたが、当業者にとっては、以下の特許請求範囲に記載される発明の精神と範囲から逸脱せずに同発明に多くの変更と修正を行えることは明らかである。本明細書で特定される米国のすべての特許及び特許出願、並びに米国外のすべての特許及び特許出願等の文書は、法の下で認められる最大限の範囲で、本明細書内に省略せずに記載されているかの如く、参照により本明細書に組み込まれる。
【図１】
0006573335.tif 000002
【図２】
0006573335.tif 000003
【図３】
0006573335.tif 000004
【図４】
0006573335.tif 000005
【図５】
0006573335.tif 000006
【図６】
0006573335.tif 000007
【図７】
0006573335.tif 000008
【図８】
0006573335.tif 000009