(57)【特許請求の範囲】
【請求項１】
光硬化性樹脂に光を照射して形成した光硬化層、或いは薄板を複数層積み重ねて所望の三次元形状を形成する三次元形状装置に用いる三次元光造形用データ作成方法において、三次元形状データを形成段差が目立たないようにスライスして複数の断面輪郭線データを作成する段階と、入力された形状データの不備による断面輪郭線データの不具合を補正する段階と、形成寸法精度向上のために断面輪郭線データを補正する段階とから成り、前記スライスして複数の断面輪郭線データを作成する段階は、不具合の出る座標値で三次元形状データをスライスするのを避けるための座標値補正過程と、形成段差を目立たなくするために、形成段差の目立つ箇所を通常ピッチより細かくスライスする過程とから成ることを特徴とする三次元光造形用データ作成方法。
【請求項２】
上記スライス座標値補正過程は、条件により計算或いは指定されたスライス座標値列の各々の数値に対して、データ作成対象となる三次元形状形成装置の積層方向移動量の最小値単位未満の任意の微小数値を一律に加算或いは減算することにより行うことを特徴とする請求項１記載の三次元光造形用データ作成方法。
【請求項３】
上記スライスする過程は、形状を一定ピッチでスライスするとともに、該スライスにより形成したある二つの層間を補間する層が必要か否かを、この二つの層で挟まれた領域に存在するＳＴＬデータのファセットの法線ベクトル情報から判断して補間層数を決定し、その数値に基づいてスライス位置を決定して２層間を追加スライスすることを特徴とする請求項１の記載の三次元光造形用データ作成方法。
【請求項４】
上記二つの層で挟まれた領域に存在するＳＴＬデータのファセットの法線ベクトルの内、下向きの法線ベクトルを持つデータを判断から外すことを特徴とする請求項３記載の三次元光造形用データ作成方法。
【請求項５】
光硬化性樹脂に光を照射して形成した光硬化層、或いは薄板を複数層積み重ねて所望の三次元形状を形成する三次元形状装置に用いる三次元光造形用データ作成方法において、三次元形状データを形成段差が目立たないようにスライスして複数の断面輪郭線データを作成する段階と、入力された形状データの不備による断面輪郭線データの不具合を補正する段階と、形成寸法精度向上のために断面輪郭線データを補正する段階とから成り、上記断面輪郭線データの不具合を補正する段階は、開ループを閉ループ化する過程と、閉ループの自己交差を分割・削除する過程と、閉ループの重なりを是正する過程と、不要な閉ループを削除する過程と、閉ループの回転方向が正しいかどうが不明確なデータに対して閉ループの回転方向の予め規定した側が形状の内側になるように閉ループの回転方向を是正する過程とから成ることを特徴とする三次元光造形用データ作成方法。
【請求項６】
上記開ループを閉ループ化する段階では、開ループが自己で閉ループ化を試行し、閉ループ化されない場合は、他の開ループとの接続による閉ループ化を試行し、他の開ループと接続できない場合は削除することを特徴とする請求項５記載の三次元光造形用データ作成方法。
【請求項７】
上記開ループの自己での閉ループ化の方法は、開ループに自己交差がある場合又は端点が当該開ループ上にある場合、交点で閉ループ化して残りを削除し、次に端点間の距離が指定値以下であれば、端点間に直線を追加して閉ループ化し、更に該閉ループと端点との距離が指定値以下であれば、当該端点から閉ループの垂線を追加して閉ループ化し、残りを削除することを特徴とする請求項６記載の三次元光造形用データ作成方法。
【請求項８】
上記複数の開ループを接続しての閉ループ化の方法は、ループの方向が既に正しく設定されているとする条件で、或る二つの開ループが交差或いは接点を持つ場合に対して、ループの方向が合うように交点で二つの開ループをつなぎ替え、短い方を削除し、残った開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
終点と他の開ループの始点との距離、或いは始点と他の開ループの終点との距離が指定値以下の場合に対して、複数の該当があれば最短距離のループを対象として端点間に直線を追加することにより接続し、この接続によりできた開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
他の開ループとの間で端点とループとの距離が指定値以下であるという関係の場合に対して、当該端点からループへの垂線を追加し、該垂線とループとの交点からループ方向が合ように接続するとともに接続によって残った部分を削除し、該接続と削除によりできた開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
上記各過程において処理対象となる開ループ以外の開ループのデータを削除する過程とからなり、元から存在している開ループ及び上記過程で二次的に発生した開ループのデータが無くなるまで、上記過程の処理を繰り返すことを特徴する請求項６又は７記載の三次元光造形用データ作成方法。
【請求項９】
上記複数の開ループを接続しての閉ループ化の方法は、ループの方向が不明確な条件で、或る二つの開ループが交差或いは接点を持つ場合に対して、各々のループの、交点若しくは接点で分割された長い方同士を接続するとともにループの方向を二つの内の長い方に合わせ且つ残りを削除し、得られた開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
他の開ループとの間で端点とループとの距離が指定値以下の場合に対して、複数の該当があれば最短距離のループを対象として端点間に直線を追加することにより接続するとともにループの方向を二つの内の長い方に合わせ、得られた開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
他の開ループとの間で端点とループとの距離が指定値以下であるという関係の場合に対して、当該端点からループへの垂線を追加し、該垂線とループとの交点で分割された長い方と接続するとともにループの方向を二つの内の長い方に合わせ且つ残りを削除し、得られた開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
上記各過程において処理対象となる開ループ以外の開ループのデータを削除する過程とからなり、元から存在している開ループ及び上記過程で二次的に発生した開ループのデータが無くなるまで、上記過程の処理を繰り返すことを特徴する請求項６又は７の三次元光造形用データ作成方法。
【請求項１０】
上記自己交差を分割・削除する過程は、自己交差の交点毎に閉ループの切り出しと、残りのループの接続による閉ループ化を行っていくことにより最終的に複数の閉ループを得、該面積最大の閉ループのみ以外を削除することを特徴とする請求項５記載の三次元光造形用データ作成方法。
【請求項１１】
上記閉ループの重なりを是正する過程は、ループの回転方向が既に正しく設定されている場合において、重なった二つの閉ループの回転方向が等しい時に、当該両閉ループの論理和を取って両閉ループを統合し、回転方向が異なる時に、面積大の閉ループから面積小の閉ループを引く形で両閉ループを統合することを特徴とする請求項５記載の三次元光造形用データ作成方法。
【請求項１２】
上記不要な閉ループを削除する過程は、ループの回転方向が既に正しく設定されている場合に、一断面内の全ての閉ループの包含関係を予め求め、この求めた包含関係情報を用いて最上位の閉ループを親ループとし、該親ループと該親ループの一つ下の閉ループの回転方向の相違をチェックして親ループと同じ回転方向を持つ場合には該閉ループを削除し、削除した閉ループに下位の閉ループが包含される場合には包含される閉ループを一段上位に上げ、該閉ループについても親ループとの間で回転方向の相違をチェックし、親ループと同じ回転方向を持つ場合には該閉ループを削除するという操作を親ループから最下位の閉ループまで順番に行うことを特徴とする請求項５記載の三次元光造形用データ作成方法。
【請求項１３】
上記閉ループの回転方向を是正する過程は、一断面内の全ての閉ループの包含関係を求め、この求めた包含関係情報を用いて最上位の閉ループを親ループとして該親ループに対して内側が形状の内側になるような回転方向を与え、以下最下位の閉ループまで順番に夫々親ループと反対のループ回転方向を設定することを特徴とする請求項５記載の三次元光造形用データ作成方法。
【請求項１４】
光硬化性樹脂に光を照射して形成した光硬化層、或いは薄板を複数層積み重ねて所望の三次元形状を形成する三次元形状装置に用いる三次元光造形用データ作成方法において、三次元形状データを形成段差が目立たないようにスライスして複数の断面輪郭線データを作成する段階と、入力された形状データの不備による断面輪郭線データの不具合を補正する段階と、形成寸法精度向上のために断面輪郭線データを補正する段階とから成り、形成寸法精度向上のために断面輪郭線データを補正する段階は、形成後の表面処理方法に応じたループの補正過程と、光硬化樹脂の余剰硬化のためのデータ補正過程と成ることを特徴とする三次元光造形用データ作成方法。
【請求項１５】
上記形成後の表面処理方法に応じたループの補正過程は、形成後に磨きによる表面処理を行う場合に対応して、或る層の断面輪郭線データと該層の一層下の層の断面輪郭線データとの論理和を該層の補正データとし、この補正データを生成する操作を全層に亘って行うことを特徴とする請求項１４記載の三次元光造形用データ作成方法。
【請求項１６】
上記形成後の表面処理方法に応じたループの補正過程は、形成後にコーティングによる表面処理を行う場合に対応して、或る層の断面輪郭線データと該層の一層下の層の断面輪郭線データとの論理積を該層の補正データとし、この補正データを生成する操作を全層に亘って行うことを特徴とする請求項１４記載の三次元光造形用データ作成方法。
【請求項１７】
上記光硬化樹脂の余剰硬化のためのデータ補正過程は、条件によって異なる余剰硬化の寸法偏差を予め条件付けしてデータベースに登録しておき、補正の際に補正対象層における寸法偏差を、該補正対象層及びその上位に存在する層の厚みと層数の条件に応じてデータベースから検索若しくは検索した値を加工して得、この寸法偏差に相当する分下方に存在する層を求め、該層と上記補正対象層との断面輪郭線データの論理積を上記補正対象層の補正データとし、この補正データを得る操作を最上位層以外の全層に亘って行うことを特徴とする請求項１４記載の三次元光造形用データ作成方法。
【請求項１８】
補正を行う層の範囲、補正を行わない層の範囲の纏まりを複数指定可能とし、補正を行う層範囲では一つの層範囲の纏まり毎に独立した形状データとして補正を行うことを特徴とする請求項１７記載の三次元光造形用データ作成方法。
【請求項１９】
上記光硬化樹脂の余剰硬化のためのデータ補正過程は、条件によって異なる余剰硬化の寸法偏差を予め条件付けしてデータベースに登録しておき、補正の際に補正対象層を当該層の上位に存在する複数層の形状によって層数の条件毎に複数の部分に分割し、上位に層が存在しない部分についてはその部分を補正データとし、その他の部分については夫々の部分における寸法偏差を、当該部分及び当該部分の上位に存在する層の厚みと総数の条件に応じてデータベースから検索若しくは検索した値を加工して得、この寸法偏差に相当する分下方に存在する層を求め、該層と上記当該部分との断面輪郭線データの論理積を上記当該部分の補正データとし、この補正データを分割された全ての部分について求めるとともにこれらの補正データを統合することにより補正対象層の補正データとし、この補正データを得る操作を全層に亘って行うことを特徴とする請求項１４記載の三次元光造形用データ作成方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、形成槽内の光硬化性樹脂をレーザー照射により一層毎に硬化させる三次元形状形成装置に用いる三次元光造形用データ作成方法に関するものである。
【０００２】
【従来の技術】
従来、形成槽内の光硬化性樹脂をレーザー照射により一層毎に硬化させる三次元形成装置では、下記のような種々の問題点があった。
例えば、図５６（ａ）に示すデータを元に作成した形状データ（図５６（ｂ））が三次元形状形成装置に与えられて三次元形状の造形物１が図５６（ｃ）に示すように形成されるのであるが、紫外線が既硬化層を貫通してその下の未硬化樹脂を硬化させることにより、造形物１の形状の下向き部分が同図（ｃ）に示すように余剰硬化し、形状精度が大きく低下するという問題があった。図中ΔＨは余剰硬化部分２の寸法を示し、例えば０．４乃至０．６ｍｍとなる。
【０００３】
従来、寸法精度が要求される造形物に対しては、造形後手作業による修正で対応していたが、作業工数の増大となるばかりでなく、形状によって手作業で修正できない箇所もあった。
この点を解決するための方法としては、特開平６−６４０４８号公報に見られるように、三次元ＣＡＤデータの作成段階で、オペレータの操作によって、次の補正をかける方法が提案されている。
【０００４】
つまりこの方法は、図５７（ａ）に示すような元の形状を、複写して同図（ｂ）に示すように補正量（ΔＨ）だけ、Ｚ軸方向にオフセットして配置し、元の形状とオフセットされた形状とをブーリアン演算して、重なり合った部分のみ（同図（ｃ）の黒塗り部分）を補正後の形状として採用する方法であった。
しかしこの方法も、三次元ＣＡＤで指定の操作を行っても、現在市販の三次元ＣＡＤのレベルでは、演算エラーになることが多く、実質的に複雑な形状は処理できないという問題があった。更にオペレータの処理工数がかかるとともに、一連作業の自動化を阻害するという問題があり、しかもブーリアン演算を用いるため、ソリッドモデルのデータにしか適用出来ず、サーフェースモデルのデータや断面輪郭線データには対応できないという問題もあった。
【０００５】
更にそのデータを編集するための三次元ＣＡＤシステムを保有していなければ処理ができないという問題があった。
また更に、形成用の入力データとしては、三次元形状データ及び断面輪郭線（等高断面）データが存在するが、三次元形状データを対象とした補正では、入力データが断面輪郭線の場合には適用できず、そのため断面輪郭線データを対象とした補正を実現する必要があった。
【０００６】
この断面輪郭線データを対象とした補正の方法には、特開平８−３４０６４号公報に見られるように補正値を入力し、積層厚みに基づいて前記補正値に相当する層数を求め、造形時に底面となる層以外の各層において、造形時に光線が入射する方向とは反対側の方向に、前記補正値に相当する以上前記層が重なっている断面部分、或いは前記底面となる層に重なっている断面部分の何れかのみを断面となるように補正する方法が提案されている。
【０００７】
図５８はこの従来の補正方法の流れを示しており、図中（ａ）は補正前のデータを、（ｂ）は補正後のデータを、そして（ｃ）は補正後のデータに基づいて実際に造形加工を行った造形物１を示している。この補正方法によれば同図（ｃ）で示すように余剰硬化部分２’により所望の形状に近い造形物１が得られるのである。
【０００８】
しかし、光硬化性樹脂の余剰硬化現象が、レーザー走査の条件が一定であったとしても、積層する一層の厚み、積層厚さ（積層数）で変わってくるため、単純な補正値入力では正確な補正が実現できず、補正を行うことによって、かえって形状の不具合を引き起こすという問題や、一つの層の補正データを求めるため、補正値に相当する層数分の演算処理を行う必要があり、演算時間が長くなるという問題があった。
【０００９】
図５９は上記の複数の積層ピッチ（一層の厚み）を用いた場合に対応できない問題点を示しており、造形物表面の段差を目立たなくするために、部分的に同図（ａ）に示すように細かいピッチで積層する造形用データを用いる場合があるが、その造形結果は同図（ｂ）に示すようになり、層毎に寸法偏差が異なるため余剰硬化部分２が凸凹となるという問題を示している。
【００１０】
また図６０（ａ）に示すような元のデータに基づいて得られる同図（ｂ）に示す補正前のデータから余剰硬化に対する補正を行った同図（ｃ）に示すデータを生成し、この補正後のデータにより造形を行っても、同図（ｄ）に示すように形状の欠落部分３が発生し、所望の寸法精度が得られず、補正を行うことによって、かえって形状の不具合を引き起こすという問題があった。
【００１１】
更に従来では、三次元の形状データにスライス面の処理を施す際、スライス座標値と形状との関係で、形成時に不具合となるような断面輪郭線データが生成される可能性があった。
例えば図６１（ａ）に示すような断面形状を持つ同図（ｂ）に示す三次元形状の造形物１を形成する場合、同図（ａ）において▲１▼▲２▼▲３▼のようなスライス面における断面輪郭線データを生成した場合、スライスする座標値と形状との関係で、▲２▼のスライス面では図６２の（ｂ）に示すような断面輪郭線データが生成され、造形物形成時の軌跡が図６３（ｂ）の如く二重輪のようになり、不具合となるという問題があった。図６２（ａ）、（ｃ）は▲１▼、▲３▼のスライス面に対応する断面輪郭線データ、図６３（ａ），（ｃ）は▲１▼、▲３▼のスライス面に対応する断面輪郭線データに対応する軌跡を示す。
【００１２】
更にまた積層構造で三次元造形物を形成する場合、積層ピッチを図６４（ａ）に示すように等ピッチ（例えば０．２ｍｍ）とすると、立ち上がりの強い面と比べて水平に近い面の仕上がりが粗くなり、この点に対処して積層ピッチを細かくすると造形時間が増大すという問題があった。そこでこの問題点を解消するために、図６４（ｂ）に示すように部分的に積層ピッチを細かくする不等ピッチスライスの処理方法が提案されているが、装置のオペレータが細かくする座標値の範囲を指定する必要があり、そのためには形状を詳細に確認しなければならなかった。そのため見落としも多くなり、事実上は一度テストで造形し、その結果で決めていたため、工数が多くなるという問題があった。図６４（ｂ）の場合、中央部分が０．１ｍｍのピッチ、その上下両側は０．２ｍｍのピッチとしていた。
【００１３】
更に三次元形状データに不具合があった場合、それをスライスした断面輪郭線データにも不具合が当然発生する。一般に、三次元形状の元データがソリッドモデルの場合は不具合が少ないが、サーフェスモデルの場合は不具合が出易いという問題があった。現状のソリッドモデルは、自由曲面の機能が弱いので、自由曲面を持つ形状の場合、サーフェスモデルを使用することが多い。またサーフェスモデルを不具合のでないように修正すると、手戻りになるため、リードタイム、モデリング工数の増大が問題となった。
【００１４】
また、ＣＡＤデータなしに、直接断面輪郭線データを受け取るような場合は、ＣＡＤによるデータ修正が不可能であるため断面輪郭線データの修正が不可欠である。
更に薄層（薄板）を重ねることによって三次元の造形物を形成する際、データ処理上、形状の上向き部分は所望の形状より内側に、形状の下向き部分は外側になる（データの使い方によっては、これと反対の現象になる）。図６５（ａ）はこの場合の元のデータを示し、同図（ｂ）は造形結果を示しており、本来の輪郭線より形状の上向き部分が所望の形状より内側に、形状の下向き部分が外側になっていることが分かる。この造形物に表面処理を行って仕上げをするとき、磨き処理（同図（ｃ））の場合には上向き部分が、コーテイング処理（同図（ｄ））の場合には下向き部分が、それぞれの所望の形状から更に誤差Ｘが拡大する方向に仕上げられるので、正確な造形物に仕上げるのが難しいという問題があった。
【００１５】
また更に三次元形状をスライスするときに、閉ループの断面輪郭線に与える方向は、三次元形状データに付加されている位相データ（面の表裏の情報）による。元データがソリッドモデルの場合は位相データが正しく付加されているが、サーフェースモデルの場合は元々位相データを持たないため、情報の信頼性がない。
【００１６】
しかし、正確な寸法の造形物を形成するために、断面輪郭線データを補正する場合には、このループの方向が重要となる。形成寸法精度向上のための補正でも必要であるが、一般的に行われているレーザースポット径の補正を行う場合について考えてみると、レーザースポット径の半径分、形状の内側方向にオフセットする必要がある。ループ方向に対して左側を形状の内側と定めた場合全てループの回転方向の左側にオフセットする処理となる。従って図６６（ａ）に示すようにループの方向が正しい場合には、レーザー軌跡データは同図（ｂ）に示すようレーザースポットの半径分のオフセットＯがかかることになって、外形寸法に影響を与えることがないが、図６７（ａ）に示すように回転方向が不具合な場合には、同図（ｂ）に示すようにオフセットが逆方向にかかり、正確な寸法の造形物が得られないという問題があった。
【００１７】
【発明が解決しようとする課題】
本発明は上記各問題点に鑑みて為されたもので、その目的とするところは、光硬化性樹脂を用いて三次元形状の造形物を形成するためのデータ作成工数と造形物の後加工処理を軽減し、しかも造形物を高精度で形成することができる三次元光造形用データ作成方法を提供するにある。
【００１８】
【課題を解決するための手段】
上記目的を達成するために請求項１の発明では、光硬化性樹脂に光を照射して形成した光硬化層、或いは薄板を複数層積み重ねて所望の三次元形状を形成する三次元形状装置に用いる三次元光造形用データ作成方法において、三次元形状データを形成段差が目立たないようにスライスして複数の断面輪郭線データを作成する段階と、入力された形状データの不備による断面輪郭線データの不具合を補正する段階と、形成寸法精度向上のために断面輪郭線データを補正する段階とから成り、前記スライスして複数の断面輪郭線データを作成する段階は、不具合の出る座標値で三次元形状データをスライスするのを避けるための座標値補正過程と、形成段差を目立たなくするために、形成段差の目立つ箇所を通常ピッチより細かくスライスする過程とから成ることを特徴とする。
【００２０】
請求項２の発明では、請求項１の発明において、上記スライス座標値補正過程は、条件により計算或いは指定されたスライス座標値列の各々の数値に対して、データ作成対象となる三次元形状形成装置の積層方向移動量の最小値単位未満の任意の微小数値を一律に加算或いは減算することにより行うことを特徴とする。
請求項３の発明では、請求項１の発明において、上記スライスする過程は、形状を一定ピッチでスライスするとともに、該スライスにより形成したある二つの層間を補間する層が必要か否かを、この二つの層で挟まれた領域に存在するＳＴＬデータのファセットの法線ベクトル情報から判断して補間層数を決定し、その数値に基づいてスライス位置を決定して２層間を追加スライスすることを特徴とする。
【００２１】
請求項４の発明では、請求項３の発明において、上記二つの層で挟まれた領域に存在するＳＴＬデータのファセットの法線ベクトルの内、下向きの法線ベクトルを持つデータを判断から外すことを特徴とする。
請求項５の発明では、光硬化性樹脂に光を照射して形成した光硬化層、或いは薄板を複数層積み重ねて所望の三次元形状を形成する三次元形状装置に用いる三次元光造形用データ作成方法において、三次元形状データを形成段差が目立たないようにスライスして複数の断面輪郭線データを作成する段階と、入力された形状データの不備による断面輪郭線データの不具合を補正する段階と、形成寸法精度向上のために断面輪郭線データを補正する段階とから成り、上記断面輪郭線データの不具合を補正する段階は、開ループを閉ループ化する過程と、閉ループの自己交差を分割・削除する過程と、閉ループの重なりを是正する過程と、不要な閉ループを削除する過程と、閉ループの回転方向が正しいかどうが不明確なデータに対して閉ループの回転方向の予め規定した側が形状の内側になるように閉ループの回転方向を是正する過程とから成ることを特徴とする。
【００２２】
請求項６の発明では、請求項５の発明において、上記開ループを閉ループ化する段階では、開ループが自己で閉ループ化を試行し、閉ループ化されない場合は、他の開ループとの接続による閉ループ化を試行し、他の開ループと接続できない場合は削除することを特徴とする。
請求項７の発明では、請求項６の発明において、上記開ループの自己での閉ループ化の方法は、開ループに自己交差がある場合又は端点が当該開ループ上にある場合、交点で閉ループ化して残りを削除し、次に端点間の距離が指定値以下であれば、端点間に直線を追加して閉ループ化し、更に該閉ループと端点との距離が指定値以下であれば、当該端点から閉ループの垂線を追加して閉ループ化し、残りを削除することを特徴とする。
【００２３】
請求項８の発明では、請求項６又は７の発明において、複数の開ループを接続しての閉ループ化の方法は、ループの方向が既に正しく設定されているとする条件で、或る二つの開ループが交差或いは接点を持つ場合に対して、ループの方向が合うように交点で二つの開ループをつなぎ替え、短い方を削除し、残った開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
終点と他の開ループの始点との距離、或いは始点と他の開ループの終点との距離が指定値以下の場合に対して、複数の該当があれば最短距離のループを対象として端点間に直線を追加することにより接続し、この接続によりできた開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
他の開ループとの間で端点とループとの距離が指定値以下であるという関係の場合に対して、当該端点からループへの垂線を追加し、該垂線とループとの交点からループ方向が合ように接続するとともに接続によって残った部分を削除し、該接続と削除によりできた開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
上記各過程において処理対象となる開ループ以外の開ループのデータを削除する過程とからなり、元から存在している開ループ及び上記過程で二次的に発生した開ループのデータが無くなるまで、上記過程の処理を繰り返すことを特徴する。
【００２４】
請求項９の発明では、請求項６又は７の発明において、上記複数の開ループを接続しての閉ループ化の方法は、ループの方向が不明確な条件で、或る二つの開ループが交差或いは接点を持つ場合に対して、各々のループの、交点若しくは接点で分割された長い方同士を接続するとともにループの方向を二つの内の長い方に合わせ且つ残りを削除し、得られた開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
他の開ループとの間で端点とループとの距離が指定値以下の場合に対して、複数の該当があれば最短距離のループを対象として端点間に直線を追加することにより接続するとともにループの方向を二つの内の長い方に合わせ、得られた開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
他の開ループとの間で端点とループとの距離が指定値以下であるという関係の場合に対して、当該端点からループへの垂線を追加し、該垂線とループとの交点で分割された長い方と接続するとともにループの方向を二つの内の長い方に合わせ且つ残りを削除し、得られた開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
上記各過程において処理対象となる開ループ以外の開ループのデータを削除する過程とからなり、元から存在している開ループ及び上記過程で二次的に発生した開ループのデータが無くなるまで、上記過程の処理を繰り返すことを特徴する。
【００２５】
請求項１０の発明では、請求項５の発明において、上記自己交差を分割・削除する過程は、自己交差の交点毎に閉ループの切り出しと、残りのループの接続による閉ループ化を行っていくことにより最終的に複数の閉ループを得、該面積最大の閉ループのみ以外を削除することを特徴とする。
請求項１１の発明では、請求項５の発明において、上記閉ループの重なりを是正する過程は、ループの回転方向が既に正しく設定されている場合において、重なった二つの閉ループの回転方向が等しい時に、当該両閉ループの論理和を取って両閉ループを統合し、回転方向が異なる時に、面積大の閉ループから面積小の閉ループを引く形で両閉ループを統合することを特徴とする。
【００２６】
請求項１２の発明では、請求項５の発明において、上記不要な閉ループを削除する過程は、ループの回転方向が既に正しく設定されている場合に、一断面内の全ての閉ループの包含関係を予め求め、この求めた包含関係情報を用いて最上位の閉ループを親ループとし、該親ループと該親ループの一つ下の閉ループの回転方向の相違をチェックして親ループと同じ回転方向を持つ場合には該閉ループを削除し、削除した閉ループに下位の閉ループが包含される場合には包含される閉ループを一段上位に上げ、該閉ループについても親ループとの間で回転方向の相違をチェックし、親ループと同じ回転方向を持つ場合には該閉ループを削除するという操作を親ループから最下位の閉ループまで順番に行うことを特徴とする。
【００２７】
請求項１３の発明では、請求項５の発明において、上記閉ループの回転方向を是正する過程は、一断面内の全ての閉ループの包含関係を求め、この求めた包含関係情報を用いて最上位の閉ループを親ループとして該親ループに対して内側が形状の内側になるような回転方向を与え、以下最下位の閉ループまで順番に夫々親ループと反対のループ回転方向を設定することを特徴とする。
【００２８】
請求項１４の発明では、光硬化性樹脂に光を照射して形成した光硬化層、或いは薄板を複数層積み重ねて所望の三次元形状を形成する三次元形状装置に用いる三次元光造形用データ作成方法において、三次元形状データを形成段差が目立たないようにスライスして複数の断面輪郭線データを作成する段階と、入力された形状データの不備による断面輪郭線データの不具合を補正する段階と、形成寸法精度向上のために断面輪郭線データを補正する段階とから成り、形成寸法精度向上のために断面輪郭線データを補正する段階は、形成後の表面処理方法に応じたループの補正過程と、光硬化性樹脂の余剰硬化のためのデータ補正過程と成ることを特徴とする。
請求項１５の発明では、請求項１４の発明において、上記形成後の表面処理方法に応じたループの補正過程は、形成後に磨きによる表面処理を行う場合に対応して、或る層の断面輪郭線データと該層の一層下の層の断面輪郭線データとの論理和を該層の補正データとし、この補正データを生成する操作を全層に亘って行うことを特徴とする。
【００２９】
請求項１６の発明では、請求項１４の発明において、上記形成後の表面処理方法に応じたループの補正過程は、形成後にコーティングによる表面処理を行う場合に対応して、或る層の断面輪郭線データと該層の一層下の層の断面輪郭線データとの論理積を該層の補正データとし、この補正データを生成する操作を全層に亘って行うことを特徴とする。
【００３０】
請求項１７の発明では、請求項１４の発明において、上記光硬化性樹脂の余剰硬化のためのデータ補正過程は、条件によって異なる余剰硬化の寸法偏差を予め条件付けしてデータベースに登録しておき、補正の際に補正対象層における寸法偏差を、該補正対象層及びその上位に存在する層の厚みと層数の条件に応じてデータベースから検索若しくは検索した値を加工して得、この寸法偏差に相当する分下方に存在する層を求め、該層と上記補正対象層との断面輪郭線データの論理積を上記補正対象層の補正データとし、この補正データを得る操作を最上位層以外の全層に亘って行うことを特徴とする。
【００３１】
請求項１８の発明では、請求項１７の発明において、補正を行う層の範囲、補正を行わない層の範囲の纏まりを複数指定可能とし、補正を行う層範囲では一つの層範囲の纏まり毎に独立した形状データとして補正を行うことを特徴とする。
請求項１９の発明では、請求項１４の発明において、上記光硬化性樹脂の余剰硬化のためのデータ補正過程は、条件によって異なる余剰硬化の寸法偏差を予め条件付けしてデータベースに登録しておき、補正の際に補正対象層を当該層の上位に存在する複数層の形状によって層数の条件毎に複数の部分に分割し、上位に層が存在しない部分についてはその部分を補正データとし、その他の部分については夫々の部分における寸法偏差を、当該部分及び当該部分の上位に存在する層の厚みと総数の条件に応じてデータベースから検索若しくは検索した値を加工して得、この寸法偏差に相当する分下方に存在する層を求め、該層と上記当該部分との断面輪郭線データの論理積を上記当該部分の補正データとし、この補正データを分割された全ての部分について求めるとともにこれらの補正データを統合することにより補正対象層の補正データとし、この補正データを得る操作を全層に亘って行うことを特徴とする。
【００３２】
【発明の実施の形態】
以下、本発明を実施形態により説明する。
図６８は本発明に用いる三次元形状形成装置の構成を示しており、この三次元形状形成装置は、光源１０と、光源１０から照射された光をＸＹ平面上に走査する光走査部１１と、光硬化性樹脂液１５を貯留する矩形枠状の樹脂液槽１２と、樹脂液槽１２内に沈められた水平台状をなす成形台１３と、樹脂液槽１２上を水平移動するドクタープレード（掃き取り部材）１４とを備えている。
【００３３】
光源１０は、たとえば、紫外線レーザー光を照射するガスレーザー発振源であり、支持ステージ２０上に取り付けられている。光走査部１１は、光源１０とともに支持ステージ２０に取り付けられている。光走査部１１は、光源１０からのレーザー光を反射する３つの固定ミラー２１，２２，２３と、固定ミラー２３で反射した光をＸ方向に走査するＸ走査ミラー２４と、Ｘ走査ミラー２４でＸ方向に走査されたレーザー光をＹ方向に走査して成形台１３上の樹脂液面に向けて照射するＹ走査ミラー２５とを有している。Ｘ走査ミラー２４およびＹ走査ミラー２５は、それぞれの駆動部２６，２７を有しており、駆動部２６，２７によりその傾斜角度を変更することでそれぞれの方向にレーザー光を走査する。すなわち、光走査部１１では、光源１０から投射されたレーザー光１７を二つの走査ミラー２４，２５でＸ，Ｙの２方向に偏向して成形台１３上に照射する。
【００３４】
樹脂液槽１２の一隅には、直方体形状の凹部１２ａが形成されており、この凹部１２ａには、光源１０から照射されたレーザー光の照射位置を繰出するためのセンサ３０が設けられている。なお、センサ３０は１個ではなく複数個設けてもよい。
センサ３０は、２次元位置検出素子（ＰＳＤ）からなり、センサ３０に照射されたレーザー光の照射位置の所定位置（通常は受光面の中心）からのＸ，Ｙ方向のずれ量を２次元で繰出できる。このセンサ３０は、コンピュータ３１に接続されている。
【００３５】
コンピュータ３１には、Ｘ，Ｙ駆動部２６，２７と光源１０と成形台昇降機構とドクタープレード移動機構とも接続されている。コンピュータ３１は、成形台昇降機構とドクタープレード移動機構との移動を制御するとともに、走査データに基づき光源１０及びＸ，Ｙ駆動部２６，２７を制御する。また、コンピュータ３１は、所定のタイミングでセンサ３０にレーザー光を照射し、センサ３０により照射位置が検出されると、所定位置からのずれ量に基づき駆動部２６，２７を制御し、走査ミラー２４，２５を傾けて照射位置の変動を補正する。
【００３６】
成形台１３は、樹脂液槽１２の外部に設置された昇降機構（図示せず）により、樹脂液１５中で昇降可能となっており、造形された光硬化層１６を支持する。ドクターブレード１４は、樹脂液槽１２の外部に設置された水平移動機構（図示せず）により水平移動可能となっている。ドクターブレード１４は、成形台１３または先に形成された光硬化層１６の上に形成された樹脂液薄膜上を水平移動により掃き取り、樹脂液薄層の厚みを一定にしかつ表面を滑らかにするための部材である。
【００３７】
この装置の動作の一例を図６９に示すフローチャートにより説明する。コンピュータ３１に電源が投入されると、図６９のステップＳｌでは、Ｘ，Ｙ駆動部２６，２７に所定の指令値を送信し、Ｘ，Ｙ走査ミラー２４，２５を傾けてセンサ３０の受光面に向けてレーザー光を照射する。ステップＳ２では、センサ３０のレーザー光や照射位置（Ｘ０，Ｙ０）を読み込む。この照射位置（Ｘ０，Ｙ０）が以降の照射位置の原点となる。ステップＳ３では、光源１０およびＸ・Ｙ駆動部２６，２７に走査データを送信する。ステップＳ４では、レーザー光を樹脂液面のＸＹ方向に走査する。この結果、樹脂液槽１２内の成形台１３上の樹脂液１５の露光部分が一層分所定の形状に硬化し、光硬化層１６が造形される。ステップＳ５では、成形台１３を所定量下降させ、続いて、ドクタープレード１４を動作させる。この結果、造形された光硬化層１６の上に一定厚みの滑らかな樹脂液薄膜が形成される。ステップＳ６では、全ての光硬化層１６の造形が終了したか否かを判断する。全ての光硬化層１６の造形が終了した場合には処理を終了し、造形が終了していない場合にはステップＳ７に移行する。ステップＳ７では、ステップＳｌと同様に所定の指令値をＸ・Ｙ駆動部２６・２７に送信し、Ｘ，Ｙ走査ミラー２４，２５を傾けてセンサ３０の受光面に向けてレーザー光を照射する。ステップＳ８では、センサ３０のレーザー光の照射位置（Ｘｌ・Ｙｌ）を読み込む。ステップＳ９では、今回の照射位置（Ｘｌ・Ｙｌ）と原点（Ｘ０，Ｙ０）との差により補正量（△Ｘ，△Ｙ）を求める．ステップＳ１０では、次の光硬化層１６を造形する際の走査データの補正を行う。具体的にはＸ（補正後の走査データ）＝Ｘ（補正前の走査データ）−△Ｘ、Ｙ（補正後の走査データ）＝Ｙ〈補正前の走査データ） △Ｙでデータの補正を行う。ステップＳｌ０での補正が終了するとステップＳ３に戻り、次の光硬化層１６の走査データを光源１０及びＸ・Ｙ駆動部２６，２７に送信し、以降の動作を造形終了まで繰り返す。
【００３８】
以上のような動作を基本的な動作を行うものであり、本発明はこの三次元形状形成装置のコンピュータ３１に三次元形状の造形物を形成するためのデータを与える３次元ＣＡＤのようなデータ生成装置３２におけるデータ処理方法にかかるものである。
（実施形態）
本実施形態は形成段差が目立たないようなデータ作成する方法にかかるものであり、まず図６８で示すデータ生成装置３２は、図１に示すように不具合を含む三次元形状データが入力されると、不具合の有無に如何に関わらず不具合の出る位置でスライスするのを避けるためにスライス座標値を補正し、その後形成段差が目立たないように三次元形状データをスライスして複数の断面輪郭線を作成する。この形成段差が目立たないように三次元形状データをスライスする方法は、図２に示すフローチャートのような方法が採用される。
【００３９】
上記のスライス座標値の補正は、図３に示すフローチャートに基づいて補正を行う。
即ち、形成する三次元形状の造形物をＺ軸方向（高さ方向）にスライスするものとし、スライス開始Ｚ座標ＳＴＡＲＴＺが指定されると、のスライス開始Ｚ座標ＳＴＡＲＴＺに微小数値αを加えて実際のスライス開始Ｚ座標ＳＴＡＲＴＺとし、この実際のスライス開始Ｚ座標ＳＴＡＲＴＺをスライスするＺ座標Ｚｔｍｐ  とする。
【００４０】
この後、前回のスライスしたＺ座標Ｚｔｍｐ  にスライスピッチＰを加えながら、次回、スライスするＺ座標Ｚｔｍｐ  を決定し、スライス終了座標ＥＮＤＺをＺ座標Ｚｔｍｐ  が越えるまで順次スライスを行うのである。
例えば図４に示すような形状を持つ造形物１を形成する場合、下側の大径部１ａと、上側の小径部１ｂとの境界面までの高さ位置さを３０ｍｍとし、スライスピッチＰを０．１とし、指定されたスライス開始Ｚ座標ＳＴＡＲＴＺを０．０、スライス終了Ｚ座標ＥＮＤＺを５０．０とし、微小数値αを０．０００３３３とした場合、指定スライスＺ座標値と、実際のスライスＺ座標値との間には０．０００３３３のずれが生じ、不具合が出る位置（３０ｍｍの高さ位置）のＺ座標値３０．０に対応する実際のスライスＺ座標値は３０．０００３３３となり、不具合が発生しなくなる。
【００４１】
さて図２においてはスライス座標値を補正してスライスした後、形成段差を目立たなくするために形成段差の目立つ箇所を通常ピッチより細かく追加スライスする。この過程における方法は図５に示すフローチャートによる。
つまり上述と同様にＺ軸方向でスライスするものとし、通常のスライスピッチをＰ、図６に示すように造形物１の許容最大段差をａｍａｘ  スライス開始Ｚ座標を、ＳＴＡＲＴＺ、スライス終了Ｚ座標をＥＮＤＺ、スライスするＺ座標をＺｔｍｐ  とすると、まずこの過程での処理はスライス開始Ｚ座標ＳＴＡＲＴＺとしてＺｔｍｐ  をセットし、９０°をファセットの法線ベクトルとｚ軸との為す角度θｍｉｎ  Ｕにセットし、スライスするＺ座標Ｚｔｍｐ  にスライスピッチＰを順次加えながら、Ｚ座標Ｚｔｍｐ  がスライス終了Ｚ座標ＥＮＤＺを越えるまで以下の処理を行う。
【００４２】
まずＺ座標Ｚｔｍｐ  を横切るファセットのデータを全て読み込み、ファセットの状態と、ファセットの法線ベクトルとｚ軸との為す角度θ（０〜９０°にとる）を調べ、更にスライスするＺ座標Ｚｔｍｐ  のスライスデータ作成を行う。
次いで、全てのθから、図７に示す状態ＩＩ，ＩＶ，ＶＩでの最小角度θｍｉｎ  Ｄをセットする。そして上記のθｍｉｎ  Ｕと、θｍｉｎ  Ｄの小さい方をθｍｉｎ  とする。４はスライスする平面を示す。
【００４３】
次に全てのθから、状態ＩＩ，ＩＩＩ，Ｖでの最小角度θｍｉｎ  Ｕをセットする。
上記のθｍｉｎ  の角度における許容段差ａｍａｘ  の場合の高さＰＰを形成する。ＰＰ＝ａｍａｘ  ・ｔａｎ（θｍｉｎ  ）を計算し、このＰＰがＰＰ≧Ｐの場合、Ｚｔｍｐ  にスライスピッチＰを加えて上記の処理に戻るが、ＰＰがＰＰ≧Ｐでない場合にはＰＰとＰの数値により、下層との間を何分割するかを決定し、スライスするＺ値（Ｚｔｍｐ  １，２，３…）を計算する。この処理が追加スライス位置決定処理である
そしてこのＺｔｍｐ  １，２，３…のスライスデータを作成した後、Ｚｔｍｐ  にスライスピッチＰを加えて上記の処理に戻ることになる。
【００４４】
Ｚｔｍｐ  がＥＮＤＺを越えると、全スライスデータをＺ座標値の小さい順に並べてこの過程を終了する。
ここで上記の追加スライス位置決定処理について説明すると、例えばａｍａｘ  が０．５ｍｍ、θｍｉｎ  が５°、スライスピッチＰが０．１ｍｍであったとすると、上記の高さＰＰは０．０４４となり、ＰＰ＜Ｐが成り立つ。
【００４５】
そして分割数の決定はＰ／ＰＰ＝２．２２８６から、切り上げて分割数＝３とする。また座標値の決定は下層のＺ座標値＝１００．０００３３３とすると、層間（０．１ｍｍ）を３等分した中間の二つのＺ座標値は、
Ｚｔｍｐ  １＝１００．０３３６６６
Ｚｔｍｐ  ２＝１００．０６６９９９
となり、その位置で追加スライスすることになる。
【００４６】
尚上記でθが０°に非常に近くなると、計算上の分割数が増大するが、形成装置の機械的限界も考慮して、例えば最大５分割までというように上限を決めておくようにしたほうが良い。これに関してファセットの法線ベクトルとｚ軸とのなす角度θが０°に非常に近いもの（例えば３°未満）を０°（状態Ｉ）と見做して判断から除外するようにしても良い。
【００４７】
以上のようにして入力データがあると、図２に示すように不具合の出る位置でスライスするのを避けるためにスライス座標値を補正し、この補正後形成段差を目立たなくするために形成段差の目立つ箇所を通常ピッチより細かいスライスするデータを作成後、断面輪郭データを生成するのである。
ところで光硬化性樹脂を使用する三次元形状形成装置にあっては、レーザー光による硬化単位の形状が、上方は平面であるが、下方は図８に示すように球面近似形状のため、造形物１の下向き面は元々段差が目立たない。そこで下向き面については考慮しないことにすれば積層数が削減でき、データ処理時間、形成時間を短縮できる。また、いたずらに積層厚みを細かくすると、光硬化性樹脂の余剰硬化における寸法偏差が増大し、寸法精度が低下するので、これを抑制する意味でも有効となる。その方法として、図５におけるスライスするＺ座標Ｚｔｍｐ  を横切るファセットのデータを全て読み込む段階で、法線ベクトルの下向きのデータを読み飛ばすようにすれば良い。
【００４８】
さて上記図１において形成段差が目立たないように三次元形状データをスライスし、複数の断面輪郭線を作成して得られた断面輪郭線データには、入力された三次元形状データに不具合があった場合、当然その断面輪郭線データにも不具合が発生する。
そこで不具合の無い断面輪郭線データの条件は、次の３点がある。
【００４９】
▲１▼図９（ａ）に示すような開ループ（始点と終点が一致ないループ）でなく、全ての輪郭線は閉じている（閉ループである）点
▲２▼図９（ｂ）に示すような自己交差（８の字部分がある）が無い点。
▲３▼図９（ｃ）に示すようなループの重なりがなく、輪郭線同士が交わらない点
尚ループには始点から終点へという方向があり、この方向によって閉ループの内側が詰まっているのか、穴なのかが決まるものとする。本実施形態では、ループの始点から終点に向けて右側が形状の外側、左側が形状の内側というように決めており、このルールに従って言えば、閉ループが反時計回り（以下ＣＣＷと称する）のときは内側が詰まっている（中実）状態であり、時計回り（以下ＣＷと称する）の時は穴（中空）の状態であると言える。
【００５０】
図１０はデータに含まれる不具合を補正する処理のフロチャートを示しており、このフローチャートでは開ループを閉ループ化する過程と、閉ループの自己交差を分割・削除する過程と、閉ループの重なりを是正する過程とで、上記の条件▲１▼乃至▲３▼を満足させ、更に不要な閉ループを削除する過程と、閉ループの回転方向を是正する過程とを経て、不具合を補正した断面輪郭線データを生成するのである。
【００５１】
ここで、開ループの閉ループ化の過程は図１１に示すフローチャートにより行う。
つまりこの過程では開ループのデータを全て読み込み、自己での閉ループ化処理と、他の開ループとの接続による閉ループ化処理と、接続できない開ループを削除する処理とを行う。
【００５２】
自己での閉ループ化処理は、図１２に示すフローチャートにより行う。つまり、開ループデータを一つずつ順次選択し、選択した閉ループが、図１３（ａ）に示すように始点Ｓと終点Ｅとの間に交点が存在している場合、つまり自己交差がある場合、或いは図１４（ａ）に示すように端点（始点Ｓ或いは終点Ｅ）がループ上に存在している場合、図１３（ｂ）又は図１４（ｂ）に示すように交点で閉ループ化し、図１３（ｃ）又は図１４（ｃ）に示すように削除することにより始点Ｓと、終点Ｅとを一致させる処理を行う。
【００５３】
また図１５（ａ）に示すように端点間（始点Ｓと終点Ｅとの間）の距離Ｇが指定値ΔＧ以下の、開ループが存在している場合、図１５（ｂ）に示すように端点間に直線を追加して図１５（ｃ）に示すように閉ループ化する。
更に図１６（ａ）に示すように端点（始点Ｓ又は終点Ｅ）との間の距離Ｇが指定値ΔＧ以下である場合には、当該端点からループへの垂線を図１６（ｂ）に示すように追加して図１６（ｃ）に示すように閉ループ化を行う。このようにして自己での閉ループ化ができる開ループデータについて閉ループ化処理が終了すれば、自己での閉ループ化処理より抜け出ることになる。
【００５４】
尚閉ループ化により生成したデータは、データ処理装置３２において登録するとともに、閉ループ化された元の閉ループデータを削除する。
上記の自己での閉ループ化かできず、他の開ループとの接続によって閉ループ化する場合には、図１７、図２１に示すフローチャートにより閉ループ化処理を行う。図１７の場合は、ループの方向が既に正しく設定されている場合に用いる。
【００５５】
この場合、開ループデータを一つずつ順次選択し、図１８（ａ）に示すように他の開ループと交差或いは接点を持つ開ループと交差或いは接点を持つ開ループデータを選択した場合には、図１８（ｂ）に示すように方向を合わせて交点で両ループをつなぎ替え、短い方を図１８（ｃ）に示すように削除する処理を行う。また終点Ｅと他の開ループの始点Ｓ、始点Ｓと他の開ループの終点Ｅ間の距離が図１９（ａ）に示すように指定値Ｇ以下の開ループデータを選択した場合には、端点間に直線を図１９（ｂ）に示すように追加して、図１９（ｃ）の示すように両ループを接続する処理を行う。
【００５６】
更に端点と他の開ループとの距離、ループと他の開ループの端点との距離が図２０（ａ）に示すように指定値Ｇ以下の開ループデータを選択した場合には、端点からループへの垂線を図２０（ｂ）に示すように追加して、図２０（ｃ）に示すように垂線との交点で分割された方向の合う方と接続する処理を行う。
上記のようにして複数の開ループを接続して閉ループ化処理を行ったのち、更に上述と同様に自己での閉ループ化処理を行い、最終的に閉ループ化できた場合には、該閉ループ化によって生成された閉ループデータを登録し、閉ループ化された元の二つの開ループデータを削除する。また閉ループ化できなかった場合には接続した両開ループデータを削除するとともに、接続して得られたデータを新開ループデータとして追加する。
【００５７】
そして処理に当たって選択した開ループデータが上記の何れの場合にも該当しない開ループデータであれば当該開ループデータを削除する。
かようにして順次該当開ループデータを順次選択し、全てのデータの選択、処理が終了すると、当該過程より抜け出ることになる。
また複数の開ループを接続する閉ループ化処理に当たって、取り扱う開ループの方向が正しいかどうかが不明確な場合には、図２１のフローチャートにより閉ループ化処理を行う。
【００５８】
この場合も開ループデータを一つずつ順次選択し、図２２（ａ）に示すように他の開ループと交差或いは接点を持つ開ループと交差或いは接点を持つ開ループデータを選択した場合には、図２２（ｂ）に示すように交点で分割された長い方同士を接続するとともにループ方向を長い方に合わせ、残りを図２２（ｃ）に示すように削除する処理を行う。
【００５９】
また終点Ｅと他の開ループの始点Ｓ、始点Ｓと他の開ループの終点Ｅ間の距離が図２３（ａ）に示すように指定値Ｇ以下の開ループデータを選択した場合には、端点間に直線を図２３（ｂ）に示すように追加するとともにループ方向を長い方に合わせ、図２３（ｃ）の示すように両ループを接続する処理を行う。
更に端点と他の開ループとの距離、ループと他の開ループの端点との距離が図２４（ａ）に示すように指定値Ｇ以下の開ループデータを選択した場合には、端点からループへの垂線を図２４（ｂ）に示すように追加して、垂線との交点で分割された長い方向と接続するとともにループ方向を長い方に合わせ、図２４（ｃ）に示すように短いループを削除する処理を行う。
【００６０】
上記のようにして複数の開ループを接続して閉ループ化処理を行ったのち、更に上述と同様に自己での閉ループ化処理を行い、最終的に閉ループ化できた場合には、該閉ループ化によって生成された閉ループデータを登録し、閉ループ化された元の二つの開ループデータを削除する。また閉ループ化できなかった場合には接続した両開ループデータを削除するとともに、接続して得られたデータを新開ループデータとして追加する。
【００６１】
そして処理に当たって選択した開ループデータが上記の何れの場合にも該当しない開ループデータであれば当該開ループデータを削除する。
かようにして順次該当開ループデータを順次選択し、全てのデータの選択、処理が終了すると、当該過程より抜け出ることになる。
さて図１０において、上述のような方法により開ループを閉ループ化する過程を終了した後、閉ループの自己交差を分割・削除する過程を経る分けであるが、この過程では図２５に示すフローチャートによる処理を行う。
【００６２】
つまりこの場合閉ループデータを一つずつ順次選択し、選択した閉ループに自己交差がある場合、交点で閉ループを切り出して二つの閉ループに分割する。
そしてこれら分割は閉ループデータを用いて再度自己交差の有無を判断し、有れば再度交点で閉ループを切り出して二つの閉ループに分割する。このようにして自己交差が無くなるまで分割処理を行い、分割処理により複数の閉ループに分割されている場合に、その内の面積最大の閉ループのみを新たなデータとして登録し、他を削除するとともに、元の閉ループデータを削除する処理を行う。
【００６３】
図２６（ａ）では二つの自己交差がある閉ループを示しており、この閉ループの場合には、分割処理により三つの閉ループに分割され（図２６（ｂ））、その内の最大の閉ループが図２６（ｃ）に示すように選択されることになる。
かようにして順次該当閉ループデータを順次選択し、全てのデータの選択、処理が終了すると、当該過程より抜け出ることになる。
【００６４】
さて閉ループの自己交差の分割・削除処理の過程が終了すると、図１０に示すように閉ループの重なりの是正処理の過程に進むが、この過程では、図２７に示すフローチャートによる処理が為される。但し、ループの回転方向が既に正しく設定されている場合に対応する。
つまりこの場合閉ループデータを一つずつ順次選択し、選択した閉ループに他の閉ループと重なりがあるか否かの判定を行い、ある場合には更にループの回転方向が同じであるか異なるかを判定し、図２８（ａ）に示すようにループの回転方向（位相）が等しい場合には、二つの閉ループの論理和をとることにより、図２８（ｂ）に示すようにループを統合し、図２９（ａ）に示すようにループの回転方向（位相）が異なる場合には、面積大の閉ループから面積小の閉ループを引く形で図２９（ｂ）に示すように統合し、これら統合した新ループデータを追加し、元の両閉ループデータを削除する。
【００６５】
かようにして順次該当閉ループデータを順次選択し、全てのデータの選択、処理が終了すると、当該過程より抜け出ることになる。
この過程を終了すると、図１０に示すように不要な閉ループの削除過程に入ることなるが、この過程では、図３０に示すフローチャートによる処理が為される。但しこの場合ループの回転方向が既に正しく設定されているものとする。
【００６６】
まず、一断面内の全ての閉ループの包含関係を調査してデータ生成装置３２のメモリにセットする。
このセット方法は図３１（ａ）に示すように各ループＬＰ１乃至ＬＰ６がある場合、包含関係のレベルと、そのループの回転方向とを表１に示すようなテーブルに纏めてセットする。
【００６７】
【表１】
0003570138.tif 000002
【００６８】
そして１番目のデータから順次ループ番号、レベル、回転方向のデータを読み込み、その回転方向を作業領域ＷＯＲＫ（レベル０）に格納する。そして当該データのレベルが０であるのか否かを判断する。ここで１番目のデータであるループＬＰ１のレベルは０であるから、親ループと判断され、次の２番目のデータを読み出し、その回転方向を作業領域ＷＯＲＫ（レベル１）に書き込む。
【００６９】
ここで２番目のデータであるループＬＰ２はレベル１であるから、次に回転方向がレベル０の親ループＬＰ１と等しいか判断される。
ここでは異なるから、次に３番目のループＬＰ４のデータを読み出し、その回転方向を作業領域ＷＯＲＫ（レベル２）に書き込み込む。この場合レベルは２であるので、回転方向を、レベル１のループの回転方向と比較する。ここで２番目のループＬＰ２の回転方向とループＬＰ４の回転方向が異なるので、次の４番目のループＬＰ５のデータを読み出し、そのレベル３に対応する作業領域ＷＯＲＫ（レベル３）に回転方向を書き込む。ここでレベル３であるから先のレベル２のループＬＰ４の回転方向と比較する。この場合回転方向が異なるので、５番目のデータであるループＬＰ３のデータを読み出し、そのレベル１に対応する作業領域ＷＯＲＫ（レベル１）に回転方向を書き込む。ここでレベルが１であるので、レベル０のループＬＰ１の回転方向と比較する。この場合両ループＬＰ１、ＬＰ３とも回転方向が同じであるから、５番目のループ番号のデータを削除する。
そして現在呼び出しているループのデータとして親ループのレベル、つまり元をセットし、次に６番目のデータ、つまりループＬＰ６のデータを読み出し、もしこれで全てのデータの読み出しが終了していなければ、次の７番目のデータの読み出しに移るが、図３１（ａ）の場合、終了となるので、ループＬＰ６のレベルと元レベルとを比較し元レベルが等しく若しくは大きい場合にはループＬＰ６のレベル、つまり２から１減じてループＬＰのレベルを１にセットする。
【００７０】
このようにして、不具合のあるデータであってもループの回転方向により不要なループを図３１（ｂ）に示すように判定して削除でき、これに起因する形状不具合の防止や、データ修正工数の削減が図れる。
さて不要な閉ループの削除過程が終了すると、図１０に示すように閉ループの回転方向の是正の過程に移行する。この閉ループの回転方向の是正では、図３２に示すフローチャートによる処理が為される。この場合上述と同様に一断面内の全ての閉ループの包含関係を調査してメモリにループ番号とレベルとをセットする。ここで例として図３１（ａ）の場合を取り上げる。
【００７１】
このセットされたデータからまず１番目のデータを順次読み出し、読み出してデータのレベルが奇数か、偶数かを見て、奇数のレベルのループ番号のデータを回転方向ＣＷに変換し、偶数の場合には回転方向ＣＣＷに変換する。
このようにすることによりループの回転方向に信頼性が無くとも、断面内のループの包含関係により内外を判断し、それに応じて回転方向を是正することにより、これに起因する形成不具合の防止、データ修正工数の削減が図れる。
【００７２】
以上のようにして図１０に示す不具合補正の処理を終了して不具合補正後の断面輪郭線データをデータ生成装置３２は作成し、図１に示すように形成寸法精度向上のために断面輪郭線データを補正する段階に入る。
この段階は、図３３に示すように形成後の表面処理の方法に応じたデータ補正処理と、光硬化性樹脂の余剰硬化を是正するためのデータ補正処理とがあり、形成後の表面処理の方法に応じたデータ補正処理の場合には、形成後に磨きによる表面処理を行う場合の補正方法と、形成後にコーティングによる表面処理を行なう場合の補正方法とがある。
【００７３】
前者の補正方法は図３４に示すフローチャートによる処理が為される。
つまり造成物の総積層数をＮｍａｘ  とし、第ｎ層と、その前の層である第ｎ−１層の論理和を演算して第ｎ層の補正データとする処理を行うのである。但し、第０層のデータは三次元形状の最低Ｚ値でスライスした断面輪郭線データとする。従って補正前のデータが図３５（ａ）の場合、補正後のデータは図３５（ｂ）に示すように上向き部分、下向き部分とも所望の形状の外側に位置した形状データとなる。この補正後の形状データにより造形物を形成した後、外側の部分を研磨処理するだけで、所望の寸法が確保でき、容易な作業で正確な寸法の造形物１が図３５（ｃ）のように得られることになる。
【００７４】
以上のような補正したデータを用いて造形物を形成した後に形成段差を研磨処理するだけで、所望の寸法が確保でき、容易な作業で正確な寸法の造形物１を得ることができる。
後者の補正方法は、図３６に示すフローチャートによる処理が為される。
つまり造成物の総積層数をＮｍａｘ  とし、第ｎ層と、その前の層である第ｎ−１層の論理積を演算して第ｎ層の補正データとする処理を行うのである。但し、第０層のデータは三次元形状の最低Ｚ値でスライスした断面輪郭線データとする。
【００７５】
従って補正前のデータが図３７（ａ）の場合、補正後のデータは図３７（ｂ）に示すように所望の形状の外側に位置していた下向き部分も内側に位置した形状データとなる。この補正後の形状データにより造形物を形成した後、段差部分ををコーティング処理により埋めることで、所望の寸法が確保でき、容易な作業で正確な寸法の形状の造形物１が図３７（ｃ）のように得られることになる。
【００７６】
以上のように研磨若しくはコーティング処理に対応したデータ補正を行った後、光硬化性樹脂の余剰硬化を是正するためのデータ補正処理を行う。
この光硬化性樹脂の余剰硬化を是正するためのデータ補正処理としては、次のような方法がある。
まずその一つは、実験或いは計算機解析により、条件に応じた寸法偏差表をデータベースとして予め登録しておく。表２はこのデータベースの一例を示し、この場合第１層から第五層迄の寸法偏差を示しており、第五層以上は同一の値とする。
【００７７】
【表２】
0003570138.tif 000003
【００７８】
この処理は図３８に示すフローチャートにより為される。
つまり最大積層数に対応した層Ｎｍａｘ  から順次下層へ向けて補正処理を行うのである。つまり第ｎ層の寸法偏差を条件とデータベースの数値により算出し、寸法偏差分下方の層の層番号を求める。但し算出した数値で示される位置がある層の中間を示す場合にはその層の一つ上位の層の層番号を求める。この層番号ｍが０層より大きくなければ、第ｎ層の補正データは空データ（データ無し）とし、また層番号ｍが０層より大きければ、第ｎ層と第ｍ層の論理積演算を行い、第ｎ層の補正データとするのである。
【００７９】
この補正処理を図３９の形状データに基づいて詳説する。図３９の形状データが最大積層数が１００層であり、１００乃至９６層の各層の厚みが０．２ｍｍ、９５層乃至８６層の各層の厚みが０．２ｍｍとする。
（１）最上位の１００層目は最上位層であるため補正は行わない。
（２）９９層目  ０．２ｍｍの２層で、寸法偏差が０．２５ｍｍ、０．２５ｍｍ下方は、９８層目
（３）９８層目  ０．２ｍｍの３層で、寸法偏差が０．３ｍｍ、０．３ｍｍ下方は、９７層目
（４）９７層目  ０．２ｍｍの４層で、寸法偏差が０．３３ｍｍ、０．３３ｍｍ下方は、９５層目
（５）９６層目  ０．２ｍｍの５層で、寸法偏差が０．３５ｍｍ、０．３５ｍｍ下方は、９３層目
（６）９５層目  ０．１ｍｍの１層と０．２ｍｍの５層で、寸法偏差が０．２５ｍｍ＋（０．３５−０．１５）＝０．４５ｍｍで、０．４５ｍｍ下方は、９１層目
（７）９４層目  ０．１ｍｍの２層と０．２ｍｍの５層で、寸法偏差が０．４ｍｍ＋（０．３５−０．２５）＝０．５ｍｍで、０．５ｍｍ下方は、８９層目
（８）９３層目  ０．１ｍｍの３層と０．２ｍｍの５層で、寸法偏差が０．５ｍｍ＋（０．３５−０．３）＝０．５５ｍｍで、０．５５ｍｍ下方は、８８層目
（９）９２層目  ０．１ｍｍの４層と０．２ｍｍの５層で、寸法偏差が０．５３ｍｍ＋（０．３５−０．３３）＝０．５５ｍｍで、０．５５ｍｍ下方は、８７層目
（１０）９１層目  ０．１ｍｍの５層で、寸法偏差が０．５５ｍｍで、０．５５ｍｍ下方は、８６層目
以下の層も同様にして、補正対象の層と求めた下方の層の２層の論理積（重なり部分）演算して補正対象層の補正データとするのである。
【００８０】
データ補正を行って造形物形成を行った場合の流れを示しており、図４０（ａ）に示す形成データから上記の処理により図４０（ｂ）に示す補正したデータを得、この補正後データにより造形物１を形成した場合余剰硬化部分Ｘがあっても所望する形状に近い形状の造成物１が得られることが分かる。
つまり従来では不可能な一層の厚みが部分によって異なる場合であっても光硬化性樹脂の余剰硬化の補正が実現できる。また従来補正を実施することによりかえって不具合となる、最上部が杯状に開いた形状であっても、正確な形状に補正することが可能となる。更に或る層の補正を行う場合に、論理積の演算は１回のみ行えば良いので、処理時間が短縮する。
【００８１】
図３８に示す処理では、図４１（ａ）乃至（ｄ）に示すような形状の場合、下向き面の最上先端部分に形状欠落部分が図４１（ｄ）に示すように発生し補正により寸法精度が低下する恐れがある。尚図４１（ａ）は元の形状データ、（ｂ）は不具合がある補正前の形状データ、（ｃ）は補正後のデータ、（ｄ）はこの補正後のデータにより造形物１を形成した状態を示す。
【００８２】
この点を補うために、補正を行わない層範囲、補正を行う層範囲のまとまりを夫々複数指定可能とするのが図４２に示す処理方法である。つまり補正対象範囲を指定入力し、その処理しようとする層が対象範囲である層なのか否かを判定し、否であれば補正をキャンセルするのである。
これを図４３（ａ）乃至（ｄ）に示す具体例により説明すると、図４３（ａ）の元のデータから得られた不具合を含むデータ（図４３（ｂ））において、補正を行なわない範囲と補正を行う範囲を指定して、データ補正を行い、図４３（ｃ）に示すような形状データを作成し、この補正後の形状データに基づいて造形物１を図４３（ｄ）に示すように形成すると、欠落部分が無くなり、段差のある部分であっても、補正に伴う形状の不具合を抑制し、正確な形状の造形物１を得ることができる。
【００８３】
図４４（ａ）乃至図４４（ｄ）は、別の例を示しており、図４４（ａ）の元のデータから得られた不具合を含むデータ（図４４（ｂ））から補正を行う範囲を二つに分け、夫々に於いて補正を行い、補正後のデータ（図４４（ｃ））により造形物１を図４４（ｄ）に示すように形成すると、上記の場合と同様に欠落部分が無くなり、段差のある部分であっても、補正に伴う形状の不具合を抑制し、正確な形状の造形物１を得ることができる。
【００８４】
上記のように補正を行う層の範囲、行わない層の範囲の纏まりを適切に支持することによって、段差のある形状であっても、補正に伴う形状の不具合を抑制し、正確な形状の造形物１を得ることができる。
ところで、図３８又は図３９に示す余剰硬化の補正処理は、比較的容易な手順・演算により補正を行うことが可能であるが、あらゆる形状に対して正確な補正を保証するものではない。
【００８５】
つまりこれら処理方法においては、ある層に対する補正が、当該層全域に渡って同一の条件で行われるからである。実際の形状では、一つの層においても部分部分でその上に重なる層の条件が異なるために、余剰硬化の寸法偏差が異なってくる場合がある。図４５のような形状の正しい補正を行うことができない。
つまり図４５（ａ）に示すような形状の元のデータを、図４５（ｂ）に示す不具合を持つ補正前のデータに変換し、更に図３８の処理方法によりデータを補正して図４５（ｃ）に示すようなデータを作成し、このデータにより造営物１を形成すると、図４５（ｄ）に示すように欠落部分が発生する。一方、図４２に示す処理方法により図４５（ｅ）に示すように補正範囲を指定してデータ補正を行い、この補正後データで造形物１を図４５（ｆ）に示すように形成した場合には形状過多な部分が発生する。
【００８６】
このような点を考慮してあらゆる形状に対して余剰硬化の補正を行う方法が次に述べる処理である。
つまり本方法では、予めレーザー走査条件毎に、一層の厚み及び積層数によって異なる寸法偏差を実験或いは計算機解析により求めて予めデータベース化しておく。
【００８７】
そして図４６に示すフローチャートの処理を実行するのである。この処理では図に示すように各層の補正を行う際に、補正対象となる層を、その層の上位に存在する複数層の形状によって重なり合う層数の条件毎に分割し、夫々の部分における寸法偏差を当該部分の条件に応じてデータベース（表２と同じ）の数値から算出し、次にその補正値に相当する分、下方の層を求め、更にその層と補正対象となる層の当該部分形状との重なり合う形状を各々求め、それらの形状と統合して補正対象となる層の補正データとするのである。
【００８８】
これを全層に亘って行うことにより求める補正データを得る。但し、最上位となる部分については、補正を行わない。
この補正処理を更に具体的な形状について説明する。
図４７に示す、最上位層が１００層目、段差部分の層が８９層であるような形状データを補正するに際しては、
（１）最上位の１００層目は最上位層であるため補正は行わない。
【００８９】
（２）９９層目  ０．１ｍｍの２層で、寸法偏差が０．４ｍｍ、０．４ｍｍ下方は、９５層目で、論理積をとる。
（３）９８層目  ０．１ｍｍの３層で、寸法偏差が０．５ｍｍ、０．５ｍｍ下方は、９３層目で、論理積をとる。
（４）９７層目  ０．１ｍｍの４層で、寸法偏差が０．５３ｍｍ、０．５３ｍｍ下方は、９２層目で、論理積をとる。
【００９０】
（５）９６層目  ０．１ｍｍの５層で、寸法偏差が０．５５ｍｍ、０．５５ｍｍ下方は、９１層目で、論理積をとる。
（６）９５層目乃至９０層は同様にして９０層乃至８５層目と論理積をとる。
これら１００層乃至９０層までは層善意に亘って条件が同一になるため分割されず、図３８の処理方法と同様に補正対象の層と求めた下方の層の二層の論理積（重なり部分）を演算して補正対象層の補正データとする。
【００９１】
（７）８９層目は図４８（ａ）に示すように部分▲１▼は最上位であるが、部分▲２▼は０．１ｍｍの５層で、寸法偏差０．５５ｍｍとなり、８４層目と論理積を取る。図４８（ｂ）は８９層目の補正結果を示す。
（８）８８層目は図４９（ａ）に示すように部分▲１▼は０．１ｍｍの２層で、寸法偏差０．４ｍｍとなり、８４層目と論理積を取る。また部分▲２▼は０．１ｍｍ５層で、寸法偏差０．５５ｍｍとなり８３層目と論理積をとる。図４９（ｂ）は８８層目の補正結果を示す。
【００９２】
以下同様にして補正を行う。
図５０（ａ）は補正後の形状データを示し、この形状データを用いて造営物１の造形を行った結果が図５０（ｂ）であり、この結果形状の欠落部分や過多な部分がなくなり、正確な形状になる。
尚上記説明で用いた形状は説明のため単純化した形状としているが、任意の形状であっても同様な考え方で処理が可能である。
【００９３】
このように図４６に示す処理方法によれば、部分毎に余剰硬化による寸法偏差の補正が行えるため、如何なる形状であっても正確な補正が実現できる。
尚各層の形状分割は次のような方法で行う。
例えば今上から見た形状が図５１（ａ）に示すような形状で側面から見た形状が図５１（ｂ）に示すような形状の場合、図５２（ａ）に示すように補正対象層Ｌｔと、一層上位層Ｌ１との差の内、上位層にない部分Ａ１を分割する。
【００９４】
つまりＡ１（最上位層として処理する部分）は層Ｌ１が重ならない保証対象層Ｌｔの部分で最上位層として処理される。図中Ｂ１は層Ｌ１が重なる補正対象層Ｌｔの残りの部分を示す。
次に図５２（ｂ）に示すように残りの部分Ｂ１と、二層上位層Ｌ２との差の内、上位層にない部分Ａ２を分割する。図中Ｂ２は層Ｌ２に重なった補正対象層Ｌｔの残りの部分を示す。
【００９５】
以下同様に残りの部分とその更に上位層との差の内、上位層の重ならない部分を切り取る操作を繰り返すことにより分割を行う。
この場合ある程度以上は寸法偏差が一定値になるので、上位３〜４層程度まで行えば十分である。
図５３（ａ）は残りの部分Ｂ２と、三層上位層Ｌ３との差の内、層Ｌ３が重ならない補正対象層Ｌｔの部分Ａ３を分割する状態を示す。図中Ｂ３は層Ｌ３に重なった補正対象層Ｌｔの残りの部分を示す。
【００９６】
図５３（ｂ）は残りの部分Ｂ３と、三層上位層Ｌ４との差の内、層Ｌ４が重ならない補正対象層Ｌｔの部分Ａ４を分割する状態を示す。図中Ｂ４は層Ｌ４に重なった補正対象層Ｌｔの残りの部分を示す。
上記の分割した結果は図５４に示すようになり、これらの部分について夫々の条件に応じて補正を行えば良い。
【００９７】
次にこの例における各部分形状について、Ａ１について補正なし、Ａ２について一層下との論理積、Ａ３について二層下との論理積、Ａ４について三層下との論理積、Ａ５について四層下との論理積というように、補正したところ、図５５（ａ）に示すような部分形状毎の補正結果が得られ、これら部分形状結果を統合すると図５５（ｂ）に示すようになる。尚図５５（ｂ）の（イ）に示す部分が補正後の層形状を、補正前の層形状は長方形全体（ロ）を示す。
【００９８】
【発明の効果】
請求項１の発明は、光硬化性樹脂に光を照射して形成した光硬化層、或いは薄板を複数層積み重ねて所望の三次元形状を形成する三次元形状装置に用いる三次元光造形用データ作成方法において、三次元形状データを形成段差が目立たないようにスライスして複数の断面輪郭線データを作成する段階と、入力された形状データの不備による断面輪郭線データの不具合を補正する段階と、形成寸法精度向上のために断面輪郭線データを補正する段階とから成るので、三次元形状形成用のデータ作成工数と造形物の後加工処理を軽減し、三次元形状形成作業のコスト低減、納期短縮、造形物の高精度化を実現することができるという効果がある。
【００９９】
また、スライスにより断面輪郭線データを作成する段階は、不具合の出る座標値で三次元形状データをスライスするのを避けるための座標値補正過程と、形成段差を目立たなくするために、形成段差の目立つ箇所を通常ピッチより細かくスライスする過程とから成るので、段差の目立たない造形物を得ることができ、そのため造形物の後加工処理を軽減できるという効果がある。
【０１００】
請求項２の発明は、請求項１の発明において、上記スライス座標値補正過程は、条件により計算或いは指定されたスライス座標値列の各々の数値に対して、データ作成対象となる三次元形状形成装置の積層方向移動量の最小値単位未満の任意の微小数値を一律に加算或いは減算することにより行うので、形状データをスライスしてデータ補正を行う際に、不具合のでる位置でのスライスを防ぎ、これに起因する形成不具合の防止、データ修正工数の削減が図れるという効果がある。
【０１０１】
請求項３の発明は、請求項１の発明において、上記スライスする過程は、形状を一定ピッチでスライスするとともに、該スライスにより形成したある二つの層間を補間する層が必要か否かを、この二つの層で挟まれた領域に存在するＳＴＬデータのファセットの法線ベクトル情報から判断して補間層数を決定し、その数値に基づいてスライス位置を決定して２層間を追加スライスするので、細かいピッチでのスライスが必要な箇所を自動的に認識してスライスデータを作成することが可能となり、そのため見落としやテスト形成が必要なくなり、作業工数を増加させることなく段差の目立たない造形物の形成が可能となるという効果がある。
【０１０２】
請求項４の発明は、請求項３の発明において、上記二つの層で挟まれた領域に存在するＳＴＬデータのファセットの法線ベクトルの内、下向きの法線ベクトルを持つデータを判断から外すので、もともと段差が目立たない下向きの面について補正しないため、その分積層数の削減が図れ、データ処理時間、形成時間を短縮することが可能となり、しかも積層厚みを細かくしないため、光硬化性樹脂の余剰硬化によって起きる寸法偏差の増大からの寸法精度の低下を抑制できるという効果がある。
請求項５の発明は、光硬化性樹脂に光を照射して形成した光硬化層、或いは薄板を複数層積み重ねて所望の三次元形状を形成する三次元形状装置に用いる三次元光造形用データ作成方法において、三次元形状データを形成段差が目立たないようにスライスして複数の断面輪郭線データを作成する段階と、入力された形状データの不備による断面輪郭線データの不具合を補正する段階と、形成寸法精度向上のために断面輪郭線データを補正する段階とから成り、上記断面輪郭線データの不具合を補正する段階は、開ループを閉ループ化する過程と、閉ループの自己交差を分割・削除する過程と、閉ループの重なりを是正する過程と、不要な閉ループを削除する過程と、閉ループの回転方向が正しいかどうが不明確なデータに対して閉ループの回転方向の予め規定した側が形状の内側になるように閉ループの回転方向を是正する過程とから成るので、不具合を含んだ断面輪郭線データであっても、自動的に判断して問題のない断面輪郭線データに変換するので、三次元形状形成作業のコスト低減、納期短縮、造形物の高精度化を実現することができる上に、データ修正工数を大幅に削減できるという効果がある。
【０１０３】
請求項６の発明は、請求項５の発明において、上記開ループを閉ループ化する段階は、開ループが自己で閉ループ化を試行し、閉ループ化されない場合は、他の開ループとの接続による閉ループ化を試行し、他の開ループと接続できない場合は削除するので、断面輪郭線データが開ループとなっている不具合を閉ループ化して不具合を無くし、且つ不具合が解消しない断面輪郭線データを削除してその影響を除去することができるという効果がある。
【０１０４】
請求項７の発明は、請求項６の発明において、上記開ループの自己での閉ループ化の方法は、開ループに自己交差がある場合又は端点が当該開ループ上にある場合、交点で閉ループ化して残りを削除し、次に端点間の距離が指定値以下であれば、端点間に直線を追加して閉ループ化し、更に該閉ループと端点との距離が指定値以下であれば、当該端点から閉ループの垂線を追加して閉ループ化し、残りを削除するので、複数の開ループの閉ループ化に対応できるという効果がある。
【０１０５】
請求項８の発明は、請求項６又は７の発明において、上記複数の開ループを接続しての閉ループ化の方法は、ループの方向が既に正しく設定されているとする条件で、或る二つの開ループが交差或いは接点を持つ場合に対して、ループの方向が合うように交点で二つの開ループをつなぎ替え、短い方を削除し、残った開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
終点と他の開ループの始点との距離、或いは始点と他の開ループの終点との距離が指定値以下の場合に対して、複数の該当があれば最短距離のループを対象として端点間に直線を追加することにより接続し、この接続によりできた開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
他の開ループとの間で端点とループとの距離が指定値以下であるという関係の場合に対して、当該端点からループへの垂線を追加し、該垂線とループとの交点からループ方向が合ように接続するとともに接続によって残った部分を削除し、該接続と削除によりできた開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
上記各過程において処理対象となる開ループ以外の開ループのデータを削除する過程とからなり、元から存在している開ループ及び上記過程で二次的に発生した開ループのデータが無くなるまで、上記過程の処理を繰り返すので、ループの方向が既に正しく設定されているとする条件で、複数の開ループの閉ループ化に対応できるという効果がある。
【０１０６】
請求項９の発明は、請求項６又７の発明において、複数の開ループを接続しての閉ループ化の方法は、ループの方向が不明確な条件で、或る二つの開ループが交差或いは接点を持つ場合に対して、各々のループの、交点若しくは接点で分割された長い方同士を接続するとともにループの方向を二つの内の長い方に合わせ且つ残りを削除し、得られた開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
他の開ループとの間で端点とループとの距離が指定値以下の場合に対して、複数の該当があれば最短距離のループを対象として端点間に直線を追加することにより接続するとともにループの方向を二つの内の長い方に合わせ、得られた開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
他の開ループとの間で端点とループとの距離が指定値以下であるという関係の場合に対して、当該端点からループへの垂線を追加し、該垂線とループとの交点で分割された長い方と接続するとともにループの方向を二つの内の長い方に合わせ且つ残りを削除し、得られた開ループについて請求項７の開ループの自己での閉ループ化の方法により閉ループ化を試行し、該試行により閉ループ化されれば該当する両開ループについての処理を終了したとして、次の開ループの処理に移行し、試行で閉ループ化されなければ、当該開ループのデータを処理データの末尾に追加する過程と、
上記各過程において処理対象となる開ループ以外の開ループのデータを削除する過程とからなり、元から存在している開ループ及び上記過程で二次的に発生した開ループのデータが無くなるまで、上記過程の処理を繰り返すので、ループの方向が不明確であっても、複数の開ループの閉ループ化に対応できるという効果があるという効果がある。
【０１０７】
請求項１０の発明は、請求項５の発明において、上記自己交差を分割・削除する過程は、自己交差の交点毎に閉ループの切り出しと、残りのループの接続による閉ループ化を行っていくことにより最終的に複数の閉ループを得、該面積最大の閉ループのみ以外を削除するので、閉ループの自己交差の分割、削除が自動的にできるという効果がある。
【０１０８】
請求項１１の発明は、請求項５の発明において、上記閉ループの重なりを是正する過程は、ループの回転方向が既に正しく設定されている場合において、重なった二つの閉ループの回転方向が等しい時に、当該両閉ループの論理和を取って両閉ループを統合し、回転方向が異なる時に、面積大の閉ループから面積小の閉ループを引く形で両閉ループを統合するので、ループの回転方向が正しく設定されている条件で、閉ループの重なりの是正が自動的にできるという効果がある。
【０１０９】
請求項１２の発明は、請求項５の発明において、上記不要な閉ループを削除する過程は、ループの回転方向が既に正しく設定されている場合に、一断面内の全ての閉ループの包含関係を予め求め、この求めた包含関係情報を用いて最上位の閉ループを親ループとし、該親ループと該親ループの一つ下の閉ループの回転方向の相違をチェックして親ループと同じ回転方向を持つ場合には該閉ループを削除し、削除した閉ループに下位の閉ループが包含される場合には包含される閉ループを一段上位に上げ、該閉ループについても親ループとの間で回転方向の相違をチェックし、親ループと同じ回転方向を持つ場合には該閉ループを削除するという操作を親ループから最下位の閉ループまで順番に行うので、ループの回転方向が正しく設定されている条件で、不要な閉ループを自動的に削除することができるという効果がある。
【０１１０】
請求項１３の発明は、請求項５の発明において、上記閉ループの回転方向を是正する過程は、一断面内の全ての閉ループの包含関係を求め、この求めた包含関係情報を用いて最上位の閉ループを親ループとして該親ループに対して内側が形状の内側になるような回転方向を与え、以下最下位の閉ループまで順番に夫々親ループと反対のループ回転方向を設定するので、ループの回転方向に信頼性が無くとも、断面内のループの包含関係により内・外を判断し、それに応じて回転方向を是正することで、これに起因する形成不具合の防止が図れ、またデータ修正工数の削減が図れるという効果がある。
【０１１１】
請求項１４の発明は、光硬化性樹脂に光を照射して形成した光硬化層、或いは薄板を複数層積み重ねて所望の三次元形状を形成する三次元形状装置に用いる三次元光造形用データ作成方法において、三次元形状データを形成段差が目立たないようにスライスして複数の断面輪郭線データを作成する段階と、入力された形状データの不備による断面輪郭線データの不具合を補正する段階と、形成寸法精度向上のために断面輪郭線データを補正する段階とから成り、形成寸法精度向上のために断面輪郭線データを補正する段階は、形成後の表面処理方法に応じたループの補正過程と、光硬化性樹脂の余剰硬化のためのデータ補正過程と成るので、三次元形状形成作業のコスト低減、納期短縮、造形物の高精度化を実現することができる上に、造形物の形成後に行う表面処理方法に対応して形成寸法精度の向上が図れるデータ補正ができるという効果がある。
【０１１２】
請求項１５の発明は、請求項１４の発明において、上記形成後の表面処理方法に応じたループの補正過程は、形成後に磨きによる表面処理を行う場合に対応して、或る層の断面輪郭線データと該層の一層下の層の断面輪郭線データとの論理和を該層の補正データとし、この補正データを生成する操作を全層に亘って行うので、形成後に形成段差を削り取ることによって、所望の寸法を確保でき、そのため容易な作業で正確な寸法の造形物を得ることができるという効果がある。
【０１１３】
請求項１６の発明は、請求項１４の発明において、上記形成後の表面処理方法に応じたループの補正過程は、形成後にコーティングによる表面処理を行う場合に対応して、或る層の断面輪郭線データと該層の一層下の層の断面輪郭線データとの論理積を該層の補正データとし、この補正データを生成する操作を全層に亘って行うので、形成後に形成段差を埋めるよに表面をコーティングすることによって、所望の寸法を確保でき、そのため容易な作業で正確な寸法の造形物を得ることができるという効果がある。
【０１１４】
請求項１７の発明は、請求項１４の発明において、上記光硬化性樹脂の余剰硬化のためのデータ補正過程は、条件によって異なる余剰硬化の寸法偏差を予め条件付けしてデータベースに登録しておき、補正の際に補正対象層における寸法偏差を、該補正対象層及びその上位に存在する層の厚みと層数の条件に応じてデータベースから検索若しくは検索した値を加工して得、この寸法偏差に相当する分下方に存在する層を求め、該層と上記補正対象層との断面輪郭線データの論理積を上記補正対象層の補正データとし、この補正データを得る操作を最上位層以外の全層に亘って行うので、従来技術では不可能な、一層の厚みが部分によってことなる場合であっても光硬化性樹脂の余剰硬化の補正が実現でき、従来技術では補正を実施することによりかえって不具合となる、最上位部が杯状に開いたような形状であっても、正確な形状に補正することが可能で、また或る層の補正を行う場合に、論理積の演算が一回のみ行えば良いので、処理時間が短縮するという効果がある。
【０１１５】
請求項１８の発明は、請求項１７の発明において、補正を行う層の範囲、補正を行わない層の範囲の纏まりを複数指定可能とし、補正を行う層範囲では一つの層範囲の纏まり毎に独立した形状データとして補正を行うので、段差のある形状であっても、補正に伴う形状の不具合を抑制し、正確な形状の造形物を得ることができるという効果がある。
【０１１６】
請求項１９の発明は、請求項１４の発明において、上記光硬化性樹脂の余剰硬化のためのデータ補正過程は、条件によって異なる余剰硬化の寸法偏差を予め条件付けしてデータベースに登録しておき、補正の際に補正対象層を当該層の上位に存在する複数層の形状によって層数の条件毎に複数の部分に分割し、上位に層が存在しない部分についてはその部分を補正データとし、その他の部分については夫々の部分における寸法偏差を、当該部分及び当該部分の上位に存在する層の厚みと総数の条件に応じてデータベースから検索若しくは検索した値を加工して得、この寸法偏差に相当する分下方に存在する層を求め、該層と上記当該部分との断面輪郭線データの論理積を上記当該部分の補正データとし、この補正データを分割された全ての部分について求めるとともにこれらの補正データを統合することにより補正対象層の補正データとし、この補正データを得る操作を全層に亘って行うので、あらゆる形状に対して余剰硬化の補正を行うことが可能なデータ補正ができるという効果がある。
【図面の簡単な説明】
【図１】本発明の実施形態の全体の処理の流れを示すフローチャートである。
【図２】同上の形成段差が目立たないように三次元形状データをスライスして複数の断面輪郭線を作成する段階のフローチャートである。
【図３】図２の段階におけるスライス座標値の補正過程を示すフローチャートである。
【図４】図２の補正過程を説明するための形状の断面図である。
【図５】図２の段階における段差の目立たないスイラス方法を示すフローチャートである。
【図６】図５のスライス方法を説明するための形状例図である。
【図７】図５におけるファセットの状態の説明図である。
【図８】図２は段階における段差の目立たないスライス方法の別の例を説明するための形状例図である。
【図９】図１に於ける断面輪郭線の不具合を補正する段階を説明するための不具合例図である。
【図１０】図１に於ける断面輪郭線の不具合を補正する段階のフローチャートである。
【図１１】図１０の段階における閉ループを閉ループ化する過程のフローチャートである。
【図１２】図１１における閉ループの自己での閉ループ化処理のフローチャートである。
【図１３】同上の閉ループ化処理の説明図である。
【図１４】同上の別の閉ループ化処理の説明図である。
【図１５】同上の他の閉ループ化処理の説明図である。
【図１６】同上のその他の閉ループ化処理の説明図である。
【図１７】図１１における複数の閉ループを接続しての閉ループ化処理のフローチャートである。
【図１８】同上の閉ループ化処理の説明図である。
【図１９】同上の別の閉ループ化処理の説明図である。
【図２０】同上の他の閉ループ化処理の説明図である。
【図２１】図１１における複数の閉ループを接続しての閉ループ化処理の別の例のフローチャートである。
【図２２】同上の閉ループ化処理の説明図である。
【図２３】同上の別の閉ループ化処理の説明図である。
【図２４】同上の他の閉ループ化処理の説明図である。
【図２５】図１０の段階における閉ループの自己交差を分割・削除する処理のフローチャートである。
【図２６】同上の閉ループの自己交差を分割・削除する処理の説明図である。
【図２７】図１０の段階における閉ループの重なり是正の処理のフローチャートである。
【図２８】同上の閉ループの重なり是正の説明図である。
【図２９】同上の閉ループ化の重なり是正の別の例の説明図である。
【図３０】図１０の段階における不要な閉ループを削除する処理のフローチャートである。
【図３１】同上の処理の説明図である。
【図３２】図１０の段階における閉ループの回転方向を是正する処理のフローチャートである。
【図３３】図１に於ける形成寸法精度向上のために断面輪郭線データの補正過程のフローチャートである。
【図３４】図３３における形成後の表面処理の方法に応じたデータ補正のフローチャートである。
【図３５】同上の処理の説明図である。
【図３６】図３３における形成後の表面処理の方法に応じたデータ補正の別の例のフローチャートである。
【図３７】同上の処理の説明図である。
【図３８】図３３における光硬化性樹脂の余剰硬化を是正するためのデータ補正のフローチャートである。
【図３９】同上の処理の説明図である。
【図４０】同上の処理の説明図である。
【図４１】図３８に示すデータ補正の問題点の説明図である。
【図４２】図３３における光硬化性樹脂の余剰硬化を是正するためのデータ補正の別の例のフローチャートである。
【図４３】同上の処理の説明図である。
【図４４】同上の処理の説明図である。
【図４５】図３８、図４２に示すデータ補正の問題点の説明図である。
【図４６】図３３における光硬化性樹脂の余剰硬化を是正するためのデータ補正の他の例のフローチャートである。
【図４７】同上の処理の説明図である。
【図４８】同上の処理の説明図である。
【図４９】同上の処理の説明図である。
【図５０】同上の処理の説明図である。
【図５１】同上の各層の形状分割方法の説明図である。
【図５２】同上の各層の形状分割方法の説明図である。
【図５３】同上の各層の形状分割方法の説明図である。
【図５４】同上の各層の形状分割方法の説明図である。
【図５５】同上の各層の形状分割方法の説明図である。
【図５６】従来例の説明図である。
【図５７】別の従来例の説明図である。
【図５８】他の従来例の説明図である。
【図５９】従来例の光硬化性樹脂の余剰硬化の補正での問題点の説明図である。
【図６０】従来例の光硬化性樹脂の余剰硬化の補正での問題点の説明図である。
【図６１】（ａ）は従来例のスライス座標値の補正での問題点の説明用の造形物の断面図である。
（ｂ）は従来例のスライス座標値の補正での問題点の説明用の造形物の斜視図である。
【図６２】図６１に示す断面輪郭線データの例図である。
【図６３】図６２の断面輪郭線データによる造形物形成時のレーザー照射の軌跡の説明図である。
【図６４】従来の段差の目立たないスライス方法の説明図である。
【図６５】従来の造形物の表面処理による補正方法の説明図である。
【図６６】従来の断面輪郭線データの閉ループの回転方向の是正方法における問題点の説明図である。
【図６７】同上の断面輪郭線データの閉ループの回転方向の是正方法における問題点の説明図である。
【図６８】本発明に用いる光造形形成装置の構成図である。
【図６９】同上の動作説明用フローチャートである。
【図１】
0003570138.tif 000004
【図２】
0003570138.tif 000005
【図３】
0003570138.tif 000006
【図４】
0003570138.tif 000007
【図５】
0003570138.tif 000008
【図６】
0003570138.tif 000009
【図７】
0003570138.tif 000010
【図８】
0003570138.tif 000011
【図９】
0003570138.tif 000012
【図１０】
0003570138.tif 000013
【図１１】
0003570138.tif 000014
【図１２】
0003570138.tif 000015
【図１３】
0003570138.tif 000016
【図１４】
0003570138.tif 000017
【図１５】
0003570138.tif 000018
【図１６】
0003570138.tif 000019
【図１７】
0003570138.tif 000020
【図１８】
0003570138.tif 000021
【図１９】
0003570138.tif 000022
【図２０】
0003570138.tif 000023
【図２１】
0003570138.tif 000024
【図２２】
0003570138.tif 000025
【図２３】
0003570138.tif 000026
【図２４】
0003570138.tif 000027
【図２５】
0003570138.tif 000028
【図２６】
0003570138.tif 000029
【図２７】
0003570138.tif 000030
【図２８】
0003570138.tif 000031
【図２９】
0003570138.tif 000032
【図３０】
0003570138.tif 000033
【図３１】
0003570138.tif 000034
【図３２】
0003570138.tif 000035
【図３３】
0003570138.tif 000036
【図３４】
0003570138.tif 000037
【図３５】
0003570138.tif 000038
【図３６】
0003570138.tif 000039
【図３７】
0003570138.tif 000040
【図３８】
0003570138.tif 000041
【図３９】
0003570138.tif 000042
【図４０】
0003570138.tif 000043
【図４１】
0003570138.tif 000044
【図４２】
0003570138.tif 000045
【図４３】
0003570138.tif 000046
【図４４】
0003570138.tif 000047
【図４５】
0003570138.tif 000048
【図４６】
0003570138.tif 000049
【図４７】
0003570138.tif 000050
【図４８】
0003570138.tif 000051
【図４９】
0003570138.tif 000052
【図５０】
0003570138.tif 000053
【図５１】
0003570138.tif 000054
【図５２】
0003570138.tif 000055
【図５３】
0003570138.tif 000056
【図５４】
0003570138.tif 000057
【図５５】
0003570138.tif 000058
【図５６】
0003570138.tif 000059
【図５７】
0003570138.tif 000060
【図５８】
0003570138.tif 000061
【図５９】
0003570138.tif 000062
【図６０】
0003570138.tif 000063
【図６１】
0003570138.tif 000064
【図６２】
0003570138.tif 000065
【図６３】
0003570138.tif 000066
【図６４】
0003570138.tif 000067
【図６５】
0003570138.tif 000068
【図６６】
0003570138.tif 000069
【図６７】
0003570138.tif 000070
【図６８】
0003570138.tif 000071
【図６９】
0003570138.tif 000072