(57)【特許請求の範囲】
【請求項１】
入力手段と、
形状設定手段と、
メッシュ点検出手段と、
距離算出手段と、
Ｚ座標値設定手段と
を有する３次元形状データの生成処理装置における３次元形状データの生成方法において、
前記形状設定手段が、前記入力手段により入力された３次元形状における底面と直交する方向における所望の断面形状を設定する第１のステップと、
前記メッシュ点検出手段が、ＸＹ座標系の２次元線画図形データの示す２次元線画図形とＸＹＺ座標系におけるＸＹＺ座標値を有する複数のメッシュ点から構成される３次元メッシュとをＸＹ平面において対応させて、前記３次元メッシュを構成する複数のメッシュ点のうち前記２次元線画図形データの示す２次元線画図形の輪郭の内側の領域に位置するメッシュ点を検出する第２のステップと、
前記距離算出手段が、前記第２のステップにおいて検出された前記３次元メッシュを構成する複数のメッシュ点のうちの前記２次元線画図形の輪郭の内側の領域に位置するメッシュ点のそれぞれと前記２次元線画図形データの示す２次元線画図形の輪郭を構成する複数の辺のうちの最も近い辺との距離を算出する第３のステップと、
前記Ｚ座標値設定手段が、前記第３のステップにおいて算出された前記３次元メッシュを構成する複数のメッシュ点のうちの前記２次元線画図形の輪郭の内側の領域に位置するメッシュ点のそれぞれと前記２次元線画図形データの示す２次元線画図形の輪郭を構成する複数の辺のうちの最も近い辺との距離を、前記第１のステップにおいて設定された前記３次元形状の断面形状に応じた関数で変換し、該変換された値を前記３次元メッシュを構成する複数のメッシュ点のうちの前記２次元線画図形の輪郭の内側の領域に位置するメッシュ点のそれぞれのＺ座標値とする第４のステップと
を有することを特徴とする３次元形状データの生成方法。
【請求項２】
請求項１に記載の３次元形状データの生成方法において、さらに、
前記第１のステップにおいて、前記形状設定手段が、前記入力手段により３次元形状のタイプとして入力されたドーム形状タイプまたはアーチ形状タイプを設定し、
前記第１のステップにおいて前記３次元形状のタイプとして前記ドーム形状タイプが設定された場合には、前記第３のステップにおいて、前記距離算出手段が、前記第２のステップにおいて検出された前記３次元メッシュを構成する複数のメッシュ点のうちの前記２次元線画図形の輪郭の内側の領域に位置するメッシュ点のそれぞれと前記２次元線画図形データの示す２次元線画図形の輪郭を構成する複数の辺のうちの全ての辺のなかから最も近い辺との距離を算出し、
前記第１のステップにおいて前記３次元形状のタイプとして前記アーチ形状タイプが設定された場合には、前記第３のステップにおいて、前記距離算出手段が、前記第２のステップにおいて検出された前記３次元メッシュを構成する複数のメッシュ点のうちの前記２次元線画図形の輪郭の内側の領域に位置するメッシュ点のそれぞれと前記２次元線画図形データの示す２次元線画図形の輪郭を構成する複数の辺のうちの所定の方向に位置する辺のなかから最も近い辺との距離を算出する
ことを特徴とする３次元形状データの生成方法。
【請求項３】
請求項１または請求項２のいずれか１項に記載の３次元形状データの生成方法において、さらに、
平滑化手段を備え、
前記平滑化手段が、前記第４のステップが行われた３次元メッシュの全体を平滑化する第５のステップと
を有することを特徴とする３次元形状データの生成方法。
【請求項４】
請求項１または請求項２のいずれか１項に記載の３次元形状データの生成方法を、コンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、３次元形状データの生成方法に関し、さらに詳細には、２次元形状を示す２次元形状データから３次元形状を示す３次元形状データを自動的に生成する３次元形状データの生成方法に関し、特に、ＣＡＤシステムなどに用いて好適な３次元形状データの生成方法に関する。
【０００２】
【従来の技術】
従来より、２次元形状を示す２次元形状データを用い、所定のプログラムに従ったマイクロ・コンピューターの制御によって、当該２次元形状の示す２次元形状データから自動的に３次元形状を示す３次元形状データを生成する方法が知られている。
【０００３】
例えば、２次元形状の示す２次元形状データとして、グレー・スケールの２次元画像の濃淡を示す濃淡のデータを用い、当該濃淡のデータを３次元形状の高さに対応させて３次元形状データを生成する方法が知られている（図１（ａ）（ｂ）参照）。
【０００４】
しかしながら、こうした従来のグレー・スケールの２次元画像の濃淡のデータを用いる方法においては、２次元画像（図１（ａ）参照）にディザなどの特有の処理が施されていることや、２次元画像（図１（ａ）参照）の高さの分解能が８ビットと粗いことなどに起因して、生成された３次元形状データの示す３次元形状の表面がガタついてしまうという問題点があった（図１（ｂ）参照）。
【０００５】
さらにまた、従来のグレー・スケールの２次元画像の濃淡のデータを用いる方法においては、当然のことながら２次元形状を示す２次元形状データとして２次元画像の濃淡データしか用いることができず、その他の２次元形状を示す２次元形状データから３次元形状データを生成することができないという問題点があった。
【０００６】
即ち、図２（ａ）に示すような図形を例にとって説明すると、当該図形（図２（ａ）参照）は、図２（ｂ）に示すような外郭線によって構成される図形たる２次元線画図形として扱われて処理されるものである。
【０００７】
このような２次元線画図形（図２（ｂ）参照）を示す２次元線画図形データは、２次元形状を示す２次元形状データではあるが、従来のグレー・スケールの２次元画像の濃淡のデータを備えておらず、従来のグレー・スケールの２次元画像の濃淡のデータを用いる方法で、当該２次元線画図形（図２（ｂ）参照）を示す２次元線画図形データから３次元形状データを生成することができないという問題点があった。
【０００８】
【発明が解決しようとする課題】
本発明は、上記したような従来の技術の有する問題点に鑑みてなされたものであり、その目的とするところは、２次元線画図形を示す２次元線画図形データから３次元形状を示す３次元形状データを生成することを可能とし、しかも、当該生成された３次元形状データの示す３次元形状の表面を滑らかにすることができるようにした３次元形状データの生成方法を提供しようとするものである。
【０００９】
【課題を解決するための手段】
上記目的を達成するために、本発明のうち請求項１に記載の発明は、入力手段と、形状設定手段と、メッシュ点検出手段と、距離算出手段と、Ｚ座標値設定手段とを有する３次元形状データの生成処理装置における３次元形状データの生成方法において、上記形状設定手段が、上記入力手段により入力された３次元形状における底面と直交する方向における所望の断面形状を設定する第１のステップと、上記メッシュ点検出手段が、ＸＹ座標系の２次元線画図形データの示す２次元線画図形とＸＹＺ座標系におけるＸＹＺ座標値を有する複数のメッシュ点から構成される３次元メッシュとをＸＹ平面において対応させて、上記３次元メッシュを構成する複数のメッシュ点のうち上記２次元線画図形データの示す２次元線画図形の輪郭の内側の領域に位置するメッシュ点を検出する第２のステップと、上記距離算出手段が、上記第２のステップにおいて検出された上記３次元メッシュを構成する複数のメッシュ点のうちの上記２次元線画図形の輪郭の内側の領域に位置するメッシュ点のそれぞれと上記２次元線画図形データの示す２次元線画図形の輪郭を構成する複数の辺のうちの最も近い辺との距離を算出する第３のステップと、上記Ｚ座標値設定手段が、上記第３のステップにおいて算出された上記３次元メッシュを構成する複数のメッシュ点のうちの上記２次元線画図形の輪郭の内側の領域に位置するメッシュ点のそれぞれと上記２次元線画図形データの示す２次元線画図形の輪郭を構成する複数の辺のうちの最も近い辺との距離を、上記第１のステップにおいて設定された上記３次元形状の断面形状に応じた関数で変換し、該変換された値を上記３次元メッシュを構成する複数のメッシュ点のうちの上記２次元線画図形の輪郭の内側の領域に位置するメッシュ点のそれぞれのＺ座標値とする第４のステップとを有するようにしたものである。
【００１０】
従って、本発明のうち請求項１に記載の発明によれば、第３のステップによって、第２のステップにおいて検出された上記３次元メッシュを構成する複数のメッシュ点のうちの２次元線画図形の輪郭の内側の領域に位置するメッシュ点それぞれと２次元線画図形データの示す２次元線画図形の輪郭を構成する複数の辺のうちの最も近い辺との距離が算出され、第４のステップによって、当該算出された３次元メッシュを構成する複数のメッシュ点のうちの２次元線画図形の輪郭の内側の領域に位置するメッシュ点それぞれと２次元線画図形データの示す２次元線画図形の輪郭を構成する複数の辺のうちの最も近い辺との距離が、第１のステップにおいて設定された３次元形状の断面形状に応じた関数で変換されて、当該変換された値が３次元メッシュを構成する複数のメッシュ点のうちの２次元線画図形の輪郭の内側の領域に位置するメッシュ点それぞれのＺ座標値とされるので、２次元線画図形を示す２次元線画図形データから生成された３次元形状データの示す３次元形状の表面がガタつくことがなくなり、当該３次元形状の表面を確実に平滑にできるとともに、当該３次元形状を所望の断面形状とすることができる。
【００１１】
また、本発明のうち請求項２に記載の発明は、請求項１に記載の発明において、さらに、上記第１のステップにおいて、上記形状設定手段が、上記入力手段により３次元形状のタイプとして入力されたドーム形状タイプまたはアーチ形状タイプを設定し、上記第１のステップにおいて上記３次元形状のタイプとして上記ドーム形状タイプが設定された場合には、上記第３のステップにおいて、上記距離算出手段が、上記第２のステップにおいて検出された上記３次元メッシュを構成する複数のメッシュ点のうちの上記２次元線画図形の輪郭の内側の領域に位置するメッシュ点のそれぞれと上記２次元線画図形データの示す２次元線画図形の輪郭を構成する複数の辺のうちの全ての辺のなかから最も近い辺との距離を算出し、上記第１のステップにおいて上記３次元形状のタイプとして上記アーチ形状タイプが設定された場合には、上記第３のステップにおいて、上記距離算出手段が、上記第２のステップにおいて検出された上記３次元メッシュを構成する複数のメッシュ点のうちの上記２次元線画図形の輪郭の内側の領域に位置するメッシュ点のそれぞれと前記２次元線画図形データの示す２次元線画図形の輪郭を構成する複数の辺のうちの所定の方向に位置する辺のなかから最も近い辺との距離を算出するようにしたものである。
【００１２】
従って、本発明のうち請求項２に記載の発明によれば、第３のステップよって、３次元形状データの示す３次元形状のタイプがドーム形状タイプに設定された場合には全ての方向に位置する辺を対象として、一方、３次元形状データの示す３次元形状のタイプがアーチ形状タイプに設定された場合には所定の方向に位置する辺を対象として、３次元メッシュを構成する複数のメッシュ点のうちの２次元線画図形の輪郭の内側の領域に位置するメッシュ点それぞれに対して、２次元線画図形の輪郭を構成する複数の辺うちの最も近い辺との距離が算出されるとともに、アーチ形状タイプの３次元形状やあるいはドーム形状タイプの３次元形状を示す３次元形状データを生成することができる。
【００１３】
また、本発明のうち請求項３に記載の発明は、請求項１または請求項２のいずれか１項に記載の３次元形状データの生成方法において、さらに、平滑化手段を備え、上記平滑化手段が、上記第４のステップが行われた３次元メッシュの全体を平滑化する第５のステップとを有するようにしたものである。
【００１４】
従って、本発明のうち請求項３に記載の発明によれば、第５のステップによって３次元メッシュの全体が平滑化されるので、２次元線画図形を示す２次元線画図形データから生成された３次元形状データの示す３次元形状の表面を一層確実に平滑にできる。
【００１５】
また、本発明のうち請求項４に記載の発明は、請求項１または請求項２のいずれか１項に記載の３次元形状データの生成方法を、コンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体としたものである。
【００２０】
【発明の実施の形態】
以下、添付の図面に基づいて、本発明による３次元形状データの生成方法の実施の形態の一例を詳細に説明するものとする。
【００２１】
図３には、本発明による３次元形状データの生成方法の実施の形態の一例を実施した切削装置のブロック図が示されている。
【００２２】
この切削装置は、制御装置１０によって全体の動作が制御されており、制御装置１０は、後述するリード・オンリ・メモリ（ＲＯＭ）１０ｂに格納されたプログラムに従った処理を実行する中央処理装置（ＣＰＵ）１０ａと、ＣＰＵ１０ａが実行するプログラムなどを格納したＲＯＭ１０ｂと、ＣＰＵ１０ａの制御によって後述する文字や図形を示す２次元線画図形データを記憶する２次元線画図形データ記憶部１０ｃ−１や本発明による３次元形状データの生成処理によって生成される３次元形状データを記憶する３次元形状データ記憶部１０ｃ−２やＣＰＵ１０ａの制御によって本発明による３次元形状データの生成の処理が行われる際のワーキング・エリアとしての領域などが設定されたランダム・アクセス・メモリ（ＲＡＭ）１０ｃとを有して構成されている。
【００２３】
ここで、ＣＰＵ１０ａは、後述する本発明による３次元形状データの生成処理を示すフローチャートの処理を実現するプログラムを実行する形状設定処理、図形展開処理、標高算出処理、形状変換処理ならびに形状平滑化処理を行うものである。
【００２４】
そして、制御装置１０には、入力装置１２と、表示装置１４と、ＣＰＵ１０ａの制御によって後述するカッター１８を２次元方向に移動する駆動装置１６とが接続されている。
【００２５】
駆動装置１６には、本発明による３次元形状データの生成処理によって生成されて３次元形状データ記憶部１０ｃ−２に記憶される３次元形状データに基づく切削データが出力され、当該３次元形状データに基づいて後述するカッター１８を駆動するものである。
【００２６】
さらに、駆動装置１６には、熱可塑性樹脂材料や軽金属材料などの被切削物を切削するカッター１８が接続されており、当該カッター１８は、ＣＰＵ１０ａにより制御される駆動装置１６によって駆動されて、被切削物を文字や図形の形状に切削するものである。
【００２７】
図４には、表示装置１４の構成の一例が示されており、この表示装置１４は、例えば、液晶表示装置（ＬＣＤ）により構成されており、表示装置１４の画面上の設定エリア１４ａにおいては、本発明による３次元形状データの生成処理によって生成される３次元形状データの示す３次元形状の底面の高さを「ｍｍ」単位で選択して設定する「３次元形状の底面の高さｈ１」の欄と、本発明による３次元形状データの生成処理によって生成される３次元形状データの示す３次元形状の形状の高さを「ｍｍ」単位で選択して設定する「３次元形状の形状の高さｈ２」の欄と、本発明による３次元形状データの生成処理によって生成される３次元形状データの示す３次元形状の斜面の仰角を「度」単位で選択して設定する「３次元形状の斜面の仰角α」の欄と、本発明による３次元形状データの生成処理によって生成される３次元形状データの示す３次元形状の尾根の方向を「度」単位で選択して設定する「３次元形状の尾根の方向β」の欄と、本発明による３次元形状データの生成処理に用いられる３次元メッシュのＸ軸方向におけるサイズを「ｍｍ」単位で選択して設定する「３次元メッシュのＸ軸方向におけるサイズＲｘ」の欄と、本発明による３次元形状データの生成処理に用いられる３次元メッシュのＹ軸方向におけるサイズを「ｍｍ」単位で選択して設定する「３次元メッシュのＹ軸方向におけるサイズＲｙ」の欄と、本発明による３次元形状データの生成処理に用いられる３次元メッシュの分解能を「ｍｍ」単位で選択して設定する「３次元メッシュの分解能ｄ」の欄と、本発明による３次元形状データの生成処理において後述する平滑化処理を行うか否かを選択して設定する「スムージング」の欄とが表示されるものである。
【００２８】
また、表示装置１４の画面上の断面形状エリア１４ｂにおいては、「矩形状の断面形状」の欄１４ｂ−１と、「三角形状の断面形状」の欄１４ｂ−２と、「台形状の断面形状」の欄１４ｂ−３と、「略半円形状の断面形状」の欄１４ｂ−４と、「角丸矩形状の断面形状」の欄１４ｂ−５との５つの欄が表示されるものであり、当該５つの欄に示される断面形状のサンプルは、本発明による３次元形状データの生成処理によって生成される３次元形状データの示す３次元形状の断面形状が所望の断面形状となるように選択して設定するために用いるものである。
【００２９】
また、表示装置１４の画面上の形状タイプエリア１４ｃにおいては、「ドーム型タイプ」の欄１４ｃ−１と、「アーチ型タイプ」の欄１４ｃ−２との２つの欄が表示されるものであり、当該２つの欄に表示される形状タイプのサンプルは、本発明による３次元形状データの生成処理によって生成される３次元形状データの示す３次元形状の形状タイプが所望の形状タイプとなるように選択して設定するために用いるものである。
【００３０】
なお、上記した３次元形状の底面の高さｈ１、３次元形状の形状の高さｈ２、３次元形状の斜面の仰角α、３次元形状の尾根の方向β、３次元メッシュのＸ軸方向におけるサイズＲｘ、３次元メッシュのＹ軸方向におけるサイズＲｙ、３次元メッシュの分解能ｄ、３次元形状の断面形状ならびに形状タイプの詳細については後述することとする。
【００３１】
入力装置１２は、例えば、キーボードやマウスなどの各種操作子により構成されており、表示装置１４の画面の設定エリア１４ａの「３次元形状の底面の高さｈ１」の欄、「３次元形状の形状の高さｈ２」の欄、「３次元形状の斜面の仰角α」の欄ならびに「３次元形状の尾根の方向β」の欄に所望の数値を選択して設定したり、「スムージング」の欄を選択するか否かして設定したり、表示装置１４の断面形状エリア１４ｂに表示されている「矩形状の断面形状」の欄１４ｂ−１と「三角形状の断面形状」の欄１４ｂ−２と「台形状の断面形状」の欄１４ｂ−３と「略半円形状の断面形状」の欄１４ｂ−４と「角丸矩形状の断面形状」の欄１４ｂ−５との５つ断面形状のサンプルのうちの所望の断面形状を選択して設定したり、形状タイプエリア１４ｃに表示されている「ドーム型タイプ」の欄１４ｃ−１と「アーチ型タイプ」の欄１４ｃ−２との２つの形状タイプのうちの所望の形状タイプを選択して設定したりすることにより、作業者が２次元線画図形データから生成したい３次元形状データの示す３次元形状の断面形状や、形状タイプ、表面の状態などを選択して「３次元形状の設定」を行ったり、表示装置１４の画面の設定エリア１４ａの「３次元メッシュのＸ軸方向におけるサイズＲｘ」の欄、「３次元メッシュのＹ軸方向におけるサイズＲｙ」の欄ならびに「３次元メッシュの分解能ｄ」の欄に所望の数値を選択して設定することにより、作業者が本発明による３次元形状データの生成処理に用いられる３次元メッシュを初期化する「３次元メッシュの初期設定」を行ったりするためのものであり、入力装置１２の操作により行われた「３次元形状の設定」ならびに「３次元メッシュの初期設定」の内容はＣＰＵ１０ａにより処理されて、本発明による３次元形状データの生成処理に用いられる情報としてＲＡＭ１０ｃの所定のエリアに記憶される。
【００３２】
以上の構成において、ＣＰＵ１０ａの制御に基づいて、切削装置の外部から入力された文字や図形を示す２次元線画図形データは２次元線画図形データ記憶部１０ｃ−１に記憶される。
【００３３】
そして、２次元線画図形データ記憶部１０ｃ−１に記憶されている２次元線画図形データは、ＣＰＵ１０ａの制御によって本発明による３次元形状データの生成の処理が行われることになり、この処理によって生成された３次元形状データに基づく切削データに従って駆動装置１６が駆動され、この駆動装置１６の駆動に応じてカッター１８が２次元方向に移動されて、被切削物に上記３次元形状データの示す３次元形状たる文字や図形の形状が切削されることになる。
【００３４】
次に、本発明による３次元形状データの生成処理についての理解を容易にするために、まず、本発明による３次元形状データの生成処理に用いられる２次元線画図形データについて説明することとする。
【００３５】
ＸＹ座標系の２次元線画図形データは文字や図形などの２次元線画図形（図５参照）を示すものであり、当該２次元線画図形は複数の頂点を有し、当該頂点を連結してできる多角形が、当該２次元線画図形の外郭線たる輪郭を構成することになる。
【００３６】
ここで、この２次元線画図形の輪郭の２つの頂点間を結ぶ辺の総数をＭ（「Ｍ」は「３」以上の正の整数である。）個とし、当該複数の辺のそれぞれには、所定の辺をｋ番目とし輪郭に沿った所定の方向において順次０番目、１番目、・・・ｋ番目、・・・Ｍ−１番目となる所定の順位が設定されているものである。
【００３７】
このような２次元線画図形を示す２次元線画図形データは、例えば、フロッピ・ディスク・ドライブ（ＦＤＤ）などの切削装置の外部から入力され、ＣＰＵ１０ａの制御によって２次元線画図形データ記憶部１０ｃ−１に記憶されることになる。
【００３８】
さて、上記したような２次元線画図形を示す２次元線画図形データを用いて行われる、本発明による３次元形状データの生成処理の概略を、図６乃至図１２を用いて説明することとする。
【００３９】
本発明による３次元形状データの生成処理においては、形状設定処理、図形展開処理、標高算出処理、形状変換処理ならびに形状平滑化処理の５つの処理が順次行われて、２次元線画図形データから３次元形状データが生成されるものであり、以下、当該５つの処理のそれぞれについて詳細に説明することとする。
【００４０】
（１）形状設定処理
この形状設定処理においては、作業者が表示装置１４の画面（図４参照）を参照しながら入力装置１２により「３次元形状の設定」ならびに「３次元メッシュの初期設定」を行い、当該「３次元形状の設定」ならびに「３次元メッシュの初期設定」の内容がＣＰＵ１０ａにより処理されて、本発明による３次元形状データの生成処理に用いられる情報としてＲＡＭ１０ｃの所定のエリアに記憶される。
【００４１】
具体的には、「３次元形状の設定」により、作業者が２次元線画図形データから生成したい所望の３次元形状データの示す３次元形状の断面形状や、形状タイプ、表面の状態などが選択されて設定される。
【００４２】
３次元形状の底面と直交する方向における所望の断面形状として設定されるのは、表示装置１４の断面形状エリア１４ｂに表示される「矩形状の断面形状」の欄１４ｂ−１と、「三角形状の断面形状」の欄１４ｂ−２と、「台形状の断面形状」の欄１４ｂ−３と、「略半円形状の断面形状」の欄１４ｂ−４と、「角丸矩形状の断面形状」の欄１４ｂ−５との５つ断面形状のサンプルのうち、作業者によって選択されたいずれかである。
【００４３】
図６（ａ）乃至図６（ｅ）には、３次元形状の５つの断面形状タイプを示す説明図が示されており、表示装置１４の断面形状エリア１４ｂの「矩形状の断面形状の」欄１４ｂ−１が選択されて設定される３次元形状の断面形状は、高さｈ２を有する矩形状であり（図６（ａ）参照）、表示装置１４の断面形状エリア１４ｂの「三角形状の断面形状」の欄１４ｂ−２が選択されて設定される３次元形状の断面形状は、高さｈ１に位置する底辺から高さｈ２有する三角形状であり（図６（ｂ）参照）、表示装置１４の断面形状エリア１４ｂの「台形状の断面形状」の欄１４ｂ−３が選択されて設定される３次元形状の断面形状は、高さｈ１に位置する底辺から高さｈ２を有し仰角αの台形状であり（図６（ｃ）参照）、表示装置１４の断面形状エリア１４ｂの「略半円形状の断面形状」の欄１４ｂ−４が選択されて設定される３次元形状の断面形状は、高さｈ１に位置する底辺から高さｈ２の頂点を有する半円形であり（図６（ｄ）参照）、表示装置１４の断面形状エリア１４ｂの「角丸矩形状の断面形状」の欄１４ｂ−５が選択されて設定される３次元形状の断面形状は、高さｈ１に位置する底辺上に高さｈ２の正方形と当該正方形の両側に半径ｈ２の１／４円が位置した形状である。
【００４４】
さらに、上記した３次元形状の断面形状の底面の高さｈ１、形状の高さｈ２ならびに斜面の仰角αは、表示装置１４の設定エリア１４ａの「３次元形状の底面の高さｈ１」の欄、「３次元形状の形状の高さｈ２」の欄ならびに「３次元形状の斜面の仰角α」の欄に設定された所望の数値と対応するものである。
【００４５】
また、所望の３次元形状の形状タイプとして設定されるのは、表示装置１４の形状タイプエリア１４ｃに表示される「ドーム型タイプ」の欄１４ｃ−１と、「アーチ型タイプ」の欄１４ｃ−２との２つ形状タイプのサンプルのうち、作業者によって選択されたいずれかである。
【００４６】
図７（ａ）（ｂ）には、３次元形状の２つの形状タイプの一例を示す説明図が示されており、表示装置１４の形状タイプエリア１４ｃの「ドーム型タイプ」の欄１４ｃ−１が選択されて設定される３次元形状の形状は、１つの頂点に向かって全方向から面を丸めていったような形状であり、例えば、３次元形状の底面が矩形状の場合には、当該矩形状の底面を構成する４つの辺のそれぞれに直交する方向における投影図が全て半円形となるような立体形状である（図７（ａ）参照）。
【００４７】
一方、表示装置１４の形状タイプエリア１４ｃの「アーチ型タイプ」の欄１４ｃ−２が選択されて設定される３次元形状の形状は、所定の方向（後述する尾根の方向と一致する。）に対して２方向から面を丸めていったような形状であり、例えば、３次元形状の底面が矩形状の場合には、矩形状の底面を構成する２組の対向する辺のうち、一方の対向する辺の組のそれぞれの辺に直交する方向における投影図が半円形となり、他方の対向する辺の組のそれぞれの辺に直交する方向における投影図は矩形状となるような立体形状である（図７（ｂ−１）参照）。
【００４８】
なお、図７（ｂ−２）には、図７（ｂ−１）におけるＡ矢視図が示されており、３次元形状の形状がアーチ型タイプの場合には、投影図が矩形状となる底面の対向する辺の延長方向を尾根の方向とし、当該尾根の方向がＸ軸方向となす角βは、表示装置１４の設定エリア１４ａの「３次元形状の尾根の方向β」の欄に設定された所望の数値と対応するものである。
【００４９】
そして、所望の３次元形状の表面の状態として設定されるのは、表示装置１４の設定エリア１４ａに表示される「スムージング」の欄が作業者によって選択されるか否かにより、当該「スムージング」の欄が選択された場合（図４に示す状態）には、生成された３次元形状データの示す３次元形状の表面は後述する平滑化処理が行なわれた状態となり、当該「スムージング」の欄が選択されない場合には、生成された３次元形状データの示す３次元形状の表面は後述する平滑化処理が行なわれていない状態となるものである。
【００５０】
一方、「３次元メッシュの初期設定」により、本発明による３次元形状データの生成処理に用いられる３次元メッシュが初期化され、図８には、当該「３次元メッシュの初期設定」により初期化された３次元メッシュを示す説明図が示されている。
【００５１】
作業者が表示装置１４の設定エリア１４ａの「３次元メッシュのＸ軸方向におけるサイズＲｘ」の欄、「３次元メッシュのＹ軸方向におけるサイズＲｙ」の欄ならびに「３次元メッシュの分解能ｄ」の欄に所望の数値を選択して設定すると、当該設定された数値に応じて、ＸＹＺ座標系におけるＸＹＺ座標値を有する複数のメッシュ点から構成される３次元メッシュが初期化される。
【００５２】
なお、この３次元メッシュのメッシュの交点たるメッシュ点それぞれには座標値、即ち、位置情報たる「Ｘ座標値」ならびに「Ｙ座標値」と高さ情報たる「Ｚ座標値」とが設定されているものであり、また、
当該初期化された３次元メッシュのＸ軸方向におけるサイズＳｘは、
３次元メッシュのＸ軸方向におけるサイズＲｘ×３次元メッシュの分解能ｄの積であり、
当該初期化された３次元メッシュのＹ軸方向におけるサイズＳｙは、
３次元メッシュのＸ軸方向におけるサイズＲｙ×３次元メッシュの分解能ｄの積である（図８参照）。
【００５３】
また、当該３次元メッシュを構成するメッシュ点には、所定のメッシュ点をｉ番目としＸ軸方向の所定の方向において順次０番目、１番目、・・・ｉ番目、・・・Ｓｘ−１番目となる所定の番号が設定されているものであり、また、所定のメッシュ点をｊ番目としＹ軸方向の所定の方向において順次０番目、１番目、・・・ｊ番目、・・・Ｓｙ−１番目となる所定の番号が設定されているものである。
【００５４】
（２）図形展開処理
この図形展開処理においては、形状設定処理の「３次元メッシュの初期設定」によって初期化された３次元メッシュ（図８参照）を、２次元線画図形データの示す２次元線画図形（図５参照）に対応させて、当該３次元メッシュ（図８参照）に２次元線画図形（図５参照）を展開する、所謂、ラスタフィルによる処理が行われる。
【００５５】
より詳細には、まず、初期化された３次元メッシュと２次元線画図形データの示す２次元線画図形とを対応させ、３次元メッシュのＹ軸方向のｊ番目の走査線ｙと２次元線画図形の輪郭との交点Ｐを検出する（図９（ａ）参照）。
【００５６】
この際、初期化された３次元メッシュに２次元線画図形データの示す２次元線画図形の全体が対応していないような場合には、ｊ番目の走査線ｙと３次元メッシュの端部との交点や、ｊ番目の走査線ｙと３次元メッシュが対応していない２次元線画図形の輪郭との交点も交点Ｐとして検出する（図９（ｃ）参照）。
【００５７】
そして、検出された交点ＰをＸ座標値の小さい順に並べ換え、Ｘ昇順の順位ｒの交点Ｐｒと順位ｒ＋１の交点Ｐｒ＋１、順位ｒ＋２の交点Ｐｒ＋２と順位ｒ＋３の交点Ｐｒ＋３というように、例えば、順位０の交点Ｐ０と順位１の交点Ｐ１、順位２の交点Ｐ２と順位３の交点Ｐ３というようにして、順位が連続する交点を２つずつ順次取り出す。
【００５８】
こうして取り出された連続する順位を有する２つの交点間のｊ番目の走査線ｙ上に位置する３次元メッシュのメッシュ点（図９（ａ）（ｂ）（ｃ）白抜きのメッシュ点参照）を、２次元線画図形の輪郭の内側の領域に位置するメッシュ点として検出し、当該検出されたメッシュ点の高さ情報たる「Ｚ座標値（Ｚ）」を「Ｚ≠０」とするとともに、当該検出されたメッシュ点以外の３次元メッシュのメッシュ点（図９（ａ）（ｂ）（ｃ）黒塗りのメッシュ点参照）の高さ情報たる「Ｚ座標値（Ｚ）」を「Ｚ＝０」とする。
【００５９】
なお、本明細書においては、当該「３次元メッシュを構成するメッシュ点のうち２次元線画図形の輪郭の内側の領域に位置するメッシュ点」（図９（ａ）（ｂ）（ｃ）白抜きのメッシュ点参照）を、単に「２次元線画図形の輪郭の内側のメッシュ点」と適宜称することとする。
【００６０】
その結果、初期化された３次元メッシュを構成する複数のメッシュ点のうち、「３次元メッシュの初期設定」によって設定された「３次元メッシュの分解能ｄ」に応じて抽出された２次元線画図形の輪郭の内側のメッシュ点（図９（ａ）（ｂ）（ｃ）白抜きのメッシュ点参照）のみが、当該メッシュ点のＺ座標値（Ｚ）を「Ｚ≠０」とされて、当該３次元メッシュに２次元線画図形が展開されたことになる。
【００６１】
（３）標高算出処理
この標高算出処理においては、３次元メッシュを構成するメッシュ点のうち２次元線画図形の輪郭の内側の領域に位置するメッシュ点、即ち、図形展開処理によりＺ座標値（Ｚ）が「Ｚ≠０」を有するメッシュ点と、２次元線画図形を構成する輪郭との距離を算出し、当該算出された値を当該メッシュ点の標高として保持する処理が行なわれる。
【００６２】
より詳細には、２次元線画図形の輪郭は上記したように総数Ｍ個の辺から構成されており（図５参照）、２次元線画図形の輪郭の内側のメッシュ点（図１０（ａ）（ｂ）の白抜きのメッシュ点参照）のそれぞれについて、図１０（ｂ）に示すようにして当該輪郭を構成する複数の辺うちの最も近い辺との距離を算出する。
【００６３】
この際、２次元線画図形の輪郭を構成する複数の辺うち、２次元線画図形の輪郭の内側のメッシュ点（図１０（ａ）（ｂ）の白抜きのメッシュ点参照）との距離を算出する対象とされる辺は、上記した形状設定処理の「３次元形状の設定」において設定された３次元形状の形状タイプが、「ドーム型タイプ」の場合と「アーチ型タイプ」の場合とでは異なるものである。
【００６４】
具体的には、設定された３次元形状の形状タイプが「ドーム型タイプ」の場合には（図７（ａ）参照）、２次元線画図形の輪郭の内側のメッシュ点（図１０（ａ）（ｂ）の白抜きのメッシュ点参照）のうちの所定のメッシュ点Ｇ（ｉ，ｊ）と、当該所定のメッシュ点Ｇ（ｉ，ｊ）に対して全ての方向に位置する辺を対象として、つまり、当該所定のメッシュ点Ｇ（ｉ，ｊ）と２次元線画図形の輪郭を構成する複数の辺の全ての辺のうちの最も近い辺と距離が算出される。
【００６５】
一方、設定された３次元形状の形状タイプが「アーチ型タイプ」の場合には（図７（ｂ）参照）、２次元線画図形の輪郭の内側のメッシュ点（図１０（ａ）（ｂ）の白抜きのメッシュ点参照）のうちの所定のメッシュ点Ｇ（ｉ，ｊ）と、尾根の方向と直交する方向に位置する辺を対象として、つまり、当該所定のメッシュ点Ｇ（ｉ，ｊ）と、２次元線画図形の輪郭を構成する複数の辺のなかで、尾根の方向と直交する方向に位置する辺のうちの最も近い辺との距離が算出される。
【００６６】
そして、図１０（ａ）（ｂ）に示すようにして算出されたメッシュ点と２次元線画図形の輪郭を構成する複数の辺うちの最も近い辺との距離は、当該メッシュ点の標高として保持されるので、同じ標高を有するメッシュ点を連結すると、図１０（ｃ）に示すような等高線様の図形が形成されるものである。
【００６７】
当該等高線様の図形（図１０（ｃ）参照）の一番外側の輪に位置するメッシュ点の標高は、当該メッシュ点が２次元線画図形の輪郭に対応するので最も低く、当該一番外側の輪により内側の輪に位置するメッシュ点の標高は、当該メッシュ点と輪郭の辺との距離が長くなるのに従って順次高くなるものである。
【００６８】
（４）形状変換処理
この形状変換処理は、３次元メッシュを構成するメッシュ点のうち２次元線画図形の輪郭の内側の領域に位置するメッシュ点（即ち、Ｚ座標値（Ｚ）が「Ｚ≠０」を有するメッシュ点）のそれぞれについて、当該メッシュ点が有する標高算出処理によって算出され保持された標高が、所定の関数により３次元形状の高さに変換される。
【００６９】
既に、形状設定処理の「３次元形状の設定」において、本発明による３次元形状データの生成処理によって生成される３次元形状データの示す３次元形状の断面形状は選択して設定されているものであり、当該設定された断面形状に応じて関数が切り換えられて、２次元線画図形の輪郭の内側のメッシュ点の標高が３次元形状の高さに変換され、当該メッシュ点のＺ座標値は３次元形状の高さに対応するＺ座標値に更新されるものである（図１１（ａ）乃至図１１（ｆ）参照）。
【００７０】
より詳細には、形状設定処理において表示装置１４の設定エリア１４ａの「３次元形状の底面の高さｈ１」の欄に設定された値を「ｈ１」の値とし、「３次元形状の形状の高さｈ２」の欄に設定された値を「ｈ２」の値とし、「３次元形状の斜面の仰角α」の欄に設定された値を「α」の値とし、「３次元メッシュの分解能ｄ」の欄に設定された値を「ｄ」の値とし、また、標高算出処理において算出された２次元線画図形の輪郭の内側のメッシュ点それぞれの標高の値を「ｌｉｊ」の値とし、標高算出処理において算出された２次元線画図形の輪郭の内側のメッシュ点それぞれの標高のうちの最も高い標高の値を「ｌｍａｘ」の値とし、以下に示す数式１乃至数式５のそれぞれ関数によって２次元線画図形の輪郭の内側のメッシュ点の有する標高が変換されて、当該メッシュ点の形状の高さＺｉｊが算出される（図１１（ｂ）乃至（ｆ）参照）。
【００７１】
つまり、形状設定処理の「３次元形状の設定処理」において、表示装置１４の断面形状エリア１４ｂの「矩形状の断面形状」欄１４ｂ−１が選択され設定されている場合には、
【数１】
0003844634.tif 000002
・・・数式１
により（図１１（ｂ）参照）、
表示装置１４の断面形状エリア１４ｂの「三角形状の断面形状」の欄１４ｂ−２が選択され設定されている場合には、
【数２】
0003844634.tif 000003
・・・数式２
により（図１１（ｃ）参照）、
表示装置１４の断面形状エリア１４ｂの「台形状の断面形状」の欄１４ｂ−３が選択され設定されている場合には、
【数３】
0003844634.tif 000004
・・・数式３
により（図１１（ｄ）参照）、
表示装置１４の断面形状エリア１４ｂの「略半円形状の断面形状」の欄１４ｂ−４が選択され設定されている場合には、
【数４】
0003844634.tif 000005
・・・数式４
により（図１１（ｅ）参照）、
表示装置１４の断面形状エリア１４ｂの「角丸矩形状の断面形状」の欄１４ｂ−５が選択され設定されている場合には、
【数５】
0003844634.tif 000006
・・・数式５
により（図１１（ｆ）参照）、２次元線画図形の輪郭の内側のメッシュ点の有する標高が変換されて、当該メッシュ点の形状の高さＺｉｊが算出される。
【００７２】
なお、図１１（ｂ）乃至図１１（ｆ）においては、このようにして算出されたメッシュ点の形状の高さＺｉｊがそれぞれの３次元形状の断面形状において対応する部分を太線で示している。
【００７３】
（５）形状平滑化処理
この形状平滑化処理においては、形状変換処理によって２次元線画図形の輪郭の内側のメッシュ点のそれぞれが３次元形状の高さに対応するＺ座標値を有する３次元メッシュ全体を平滑化する処理が行なわれる。
【００７４】
こうした平滑化の処理としては、例えば、移動平均法による処理がある。この移動平均法による処理は、より詳細には、２次元線画図形の輪郭の内側のメッシュ点のうち、３次元メッシュのＹ軸方向のｊ番目の走査線ｙ上の連続する３つのメッシュ点Ｇ（ｉ，ｊ）、Ｇ（ｉ＋１，ｊ）、Ｇ（ｉ＋２，ｊ）に着目する。
【００７５】
そして、当該３つのメッシュ点メッシュ点Ｇ（ｉ，ｊ）、Ｇ（ｉ＋１，ｊ）、Ｇ（ｉ＋２，ｊ）のうちの中央のメッシュ点Ｇ（ｉ＋１，ｊ）の高さ（即ち、Ｚ座標値）を、当該３つのメッシュ点Ｇ（ｉ，ｊ）、Ｇ（ｉ＋１，ｊ）、Ｇ（ｉ＋２，ｊ）の高さの平均値（即ち、当該３つのメッシュ点（ｉ，ｊ）、Ｇ（ｉ＋１，ｊ）、Ｇ（ｉ＋２，ｊ）それぞれのＺ座標値の和を３で除算した商）に置き換える。
【００７６】
こうして着目するＹ軸方向のｊ番目の走査線ｙ上３つのメッシュ点を１つずつずらし、また、３次元メッシュのＸ軸方向のｉ番目の走査線ｘ上においても同様にして、３次元メッシュの全体が平滑化されるものである。
【００７７】
次に、図１３乃至図１７に示されている本発明による３次元形状データの生成処理のルーチンのフローチャートを参照しながら、上記切削装置により実行される本発明による３次元形状データの生成処理について説明する。
【００７８】
なお、以下の説明においては、本発明の実施に関連する３次元形状データの生成の処理に関してのみ詳細に説明することとし、従来より公知の処理、例えば、切削装置の外部から入力された２次元線画図形データを２次元線画図形データ記憶部１０ｃ−１に記憶する処理や、あるいは生成された３次元形状データに従って駆動装置１６を駆動する処理などについては、その詳細な説明は省略するものとする。
【００７９】
以下、本発明の実施に関連する３次元形状データの生成処理について説明するが、図１３には本発明による３次元形状データの生成処理ルーチンのフローチャートが示されている。
【００８０】
なお、図１３に示す本発明による３次元形状データの生成処理ルーチンのフローチャートは、文字や図形などの２次元線画図形を示す２次元線画図形データを処理対象として起動されて実行されるものである。
【００８１】
この図１３に示す本発明による３次元形状データの生成処理ルーチンは、当該本発明による３次元形状データの生成処理のメイン・ルーチンであり、形状設定処理ルーチン（ステップＳ１３０２）と、図形展開処理ルーチン（ステップＳ１３０４）と、標高算出処理ルーチン（ステップＳ１３０６）と、形状変換処理ルーチン（ステップＳ１３０８）と、形状平滑化処理ルーチン（ステップＳ１３１０）との５つのサブ・ルーチンの処理によって構成されているものである。
【００８２】
この本発明による３次元形状データの生成処理ルーチンを詳細に説明すると、まず、形状設定処理のルーチンを行う（ステップＳ１３０２）。即ち、このステップＳ１３０２のルーチンの処理においては、作業者によって上記した「３次元形状の設定」ならびに「３次元メッシュの初期設定」とが行われ、本発明よる３次元形状データの生成処理によって２次元線画図形データから生成される３次元形状データの示す３次元形状の断面形状や、形状タイプ、表面の状態などが選択されて設定されるととも、本発明よる３次元形状データの生成処理に用いられる３次元メッシュの初期化が行われることになる。
【００８３】
上記したステップＳ１３０２の処理を終了すると、ステップＳ１３０４の処理に進み、後述する図形展開処理ルーチンを行う。このステップＳ１３０４のサブ・ルーチンの処理によって、ステップＳ１３０２の処理おいて初期化された３次元メッシュに２次元線画図形データの示す２次元線画図形が展開されることになる。
【００８４】
そして、ステップＳ１３０４の処理に続いて、標高算出処理のルーチンを行う（ステップＳ１３０６）。このステップＳ１３０６のサブ・ルーチンの処理によって、上記ステップＳ１３０４の処理において、２次元線画図形の輪郭の内側のメッシュ点と２次元線画図形の輪郭との距離が算出されて、当該算出された距離が当該メッシュ点の標高として保持されることになる。
【００８５】
次に、２次元線画図形の輪郭の内側のメッシュ点の有する標高が３次元形状の高さに変換される形状変換処理のルーチンを行う（ステップＳ１３０８）。このステップＳ１３０８のサブ・ルーチンの処理によって、上記ステップＳ１３０６の処理において算出されて保持された２次元線画図形の輪郭の内側のメッシュ点の有する標高が、ステップＳ１３０２の処理において設定された断面形状に応じた関数によって３次元形状の高さに変換され、当該メッシュ点のＺ座標値は３次元形状の高さに対応するＺ座標値に更新されることになる。
【００８６】
ステップＳ１３０８を終了すると形状平滑化処理のルーチンを行う（ステップＳ１３１０）。このステップＳ１３１０のサブ・ルーチンの処理によって、上記ステップＳ１３０８の処理において２次元線画図形の輪郭の内側のメッシュ点のそれぞれが３次元形状の高さに対応するＺ座標値を有するような３次元メッシュの全体がを平滑化されることになる。
【００８７】
このように上記した本発明による３次元形状データの生成処理ルーチンを構成する５つのサブ・ルーチンの処理によって、２次元線画図形データから３次元メッシュを表す３次元形状データが生成され、当該生成された３次元形状データの示す３次元形状の表面がガタつくことがなくなり、当該３次元形状の表面を平滑にすることができるようになる（図１８（ａ）（ｂ）参照）。
【００８８】
以下、図１４乃至図１７を参照しながら、本発明による３次元形状データの生成の処理ルーチンを構成する５つのサブ・ルーチン処理の各々について詳細に説明する。
【００８９】
まず、形状設定処理ルーチン（ステップＳ１３０２）における処理の詳細については、上記した（１）形状設定処理において説明した「３次元形状の設定」ならびに「３次元メッシュの初期設定」の詳細の通りであるので、上記した説明を援用することとする（図６乃至図８参照）。
【００９０】
次に、図１４に示す図形展開処理ルーチン（ステップＳ１３０４）のフローチャートが起動されると、まず、ステップＳ１４０２において、形状設定処理ルーチン（ステップＳ１３０２）の「３次元メッシュの初期設定」によって初期化された３次元メッシュ（図８参照）を構成する全てのメッシュ点の高さ、即ち、当該メッシュ点のＺ座標値を「０」に初期化する。
【００９１】
ステップＳ１４０２の処理が終了すると、ステップＳ１４０４の処理に進み、変数ｊの値を「０」に初期化して、ステップＳ１４０６の処理に進む。なお、この図形展開の処理ルーチンにおいて変数ｊは、Ｙ軸方向の走査線のメッシュ点の番号を示すものである。
【００９２】
ステップＳ１４０６においては、変数ｊの値に比べて３次元メッシュのＹ軸方向におけるサイズＳｙの値が大きいか否かを判断し、変数ｊの値に比べて３次元メッシュのＹ軸方向におけるサイズＳｙの値が大きいと判断された場合には、ステップＳ１４０８の処理に進み、変数ｊの値に比べて３次元メッシュのＹ軸方向におけるサイズＳｙの値が等しいあるいは小さいと判断された場合には、この図形展開処理ルーチンを終了して、本発明による３次元形状データの生成処理のメイン・ルーチンにリターンする。
【００９３】
ステップＳ１４０８においては、３次元メッシュのＹ軸方向のｊ番目の走査線ｙと２次元線画図形の輪郭との交点Ｐを検出し、当該検出された交点ＰをＸ座標値の小さい順に並べ換える（図９（ａ）参照）。
【００９４】
ステップＳ１４０８の処理を終了すると、ステップＳ１４１０の処理に進み、変数ｒの値を「０」に初期化して、ステップＳ１４１２の処理に進む。なお、この図形展開の処理ルーチンにおいて変数ｒは、ステップＳ１４０８の処理において検出された交点ＰのＸ昇順の順位を示すものである。
【００９５】
ステップＳ１４１２においては、変数ｒの値に比べてステップＳ１４０８において検出された交点Ｐの総数Ｎの値が大きいか否かを判断し、変数ｒの値に比べてステップＳ１４０８において検出された交点Ｐの総数Ｎの値が大きいと判断された場合には、ステップＳ１４１４の処理に進み、変数ｒの値に比べてステップＳ１４０８において検出された交点Ｐの総数Ｎの値が等しいあるいは小さいと判断された場合には、ステップＳ１４２０の処理に進む。
【００９６】
ステップＳ１４１４においては、順位ｒの交点ＰｒのＸ座標値を変数Ｘ１に設定し、順位ｒ＋１の交点Ｐｒ＋１のＸ座標値を変数Ｘ２に設定して、ステップＳ１４１６に進む。
【００９７】
ステップＳ１４１６においては、変数Ｘ１の値以上かつ変数Ｘ２の値以下の値のＸ座標値を有する３次元メッシュのＹ軸方向のｊ番目の走査線ｙ上のメッシュ点のＺ座標値を「１」に設定する。
【００９８】
即ち、当該ステップＳ１４１６の処理によって、図９（ａ）（ｂ）に示すようにして、２次元線画図形の輪郭の内側のメッシュ点が検出され、当該メッシュ点のＺ座標値が「１」に設定される。
【００９９】
ステップＳ１４１６の処理が終了すると、ステップＳ１４１８の処理に進んで、変数ｒの値を２だけインクリメントして、ステップＳ１４１２の処理に戻り、ステップＳ１４１２乃至ステップＳ１４１６の処理を繰り返す。
【０１００】
従って、交点ＰのＸ昇順の順位を示す変数ｒの値が、Ｓ１４０８において検出された交点Ｐの総数Ｎの値に比べて小さい限りは、ステップＳ１４０８において検出された全ての交点Ｐに対して、ステップＳ１４１２乃至ステップＳ１４１８の処理が行われて、Ｙ軸方向におけるｊ番目の走査線ｙ上に位置するメッシュ点のうちの２次元線画図形の輪郭の内側のメッシュ点のＺ座標値が「１」に設定される（図９（ａ）（ｂ）参照）。
【０１０１】
一方、ステップＳ１４２０においては、変数ｊの値を１だけインクリメントして、ステップＳ１４０６の処理に戻り、ステップＳ１４０６乃至ステップＳ１４１８の処理を繰り返す。
【０１０２】
従って、Ｙ軸方向の走査線のメッシュ点の番号を示す変数ｊの値が、３次元メッシュのＹ軸方向におけるサイズＳｙの値に比べて小さい限りは、３次元メッシュのＹ軸方向における全てのメッシュ点に対して、ステップＳ１４０６乃至ステップＳ１４２０の処理が行われて、３次元メッシュを構成する全てのメッシュ点のうちの２次元線画図形の輪郭の内側のメッシュ点のＺ座標値が「１」に設定されて、２次元線画図形が当該３次元メッシュに展開される（図９（ａ）参照）。
【０１０３】
次に、図１５に示す標高算出処理ルーチン（ステップＳ１３０６）のフローチャートが起動されると、まず、ステップＳ１５０２において、変数ｉ、変数ｊならびに変数Ｌｍａｘの値を「０」に初期化する。なお、この標高算出処理ルーチンにおいて変数ｉは３次元メッシュを構成するメッシュ点のＸ軸方向における番号を示すものであり、変数ｊは３次元メッシュを構成するメッシュ点のＹ軸方向における番号を示すものである（図８参照）。
【０１０４】
ステップＳ１５０２の処理が終了すると、ステップＳ１５０４の処理に進み、変数ｊの値に比べて３次元メッシュのＹ軸方向におけるサイズＳｙの値が大きいか否かを判断し、変数ｊの値に比べて３次元メッシュのＹ軸方向におけるサイズＳｙの値が大きいと判断された場合には、ステップＳ１５０６の処理に進み、変数ｊの値に比べて３次元メッシュのＹ軸方向におけるサイズＳｙの値が等しいあるいは小さいと判断された場合には、この標高算出処理ルーチンを終了して、本発明による３次元形状データの生成処理のメイン・ルーチンにリターンする。
【０１０５】
ステップＳ１５０６においては、変数ｉの値に比べて３次元メッシュのＸ軸方向におけるサイズＳｘの値が大きいか否かを判断し、変数ｉの値に比べて３次元メッシュのＸ軸方向におけるサイズＳｘの値が大きいと判断された場合には、ステップＳ１５０８の処理に進み、変数ｉの値に比べて３次元メッシュのＸ軸方向におけるサイズＳｘの値が等しいあるいは小さいと判断された場合には、ステップＳ１５３０の処理に進む。
【０１０６】
そして、ステップＳ１５０８の処理においては、変数ｉと変数ｊに位置するメッシュ点をメッシュ点Ｇとして設定し、当該メッシュ点Ｇ（ｉ，ｊ）のＺ座標値を変数Ｌｉｊに設定する（図１０（ａ）（ｂ）参照）。
【０１０７】
ステップＳ１５０８の処理が終了すると、ステップＳ１５１０の処理に進み、変数Ｌｉｊの値が「０」であるか否か、即ち、ステップＳ１５０８におけるメッシュ点Ｇ（ｉ，ｊ）が２次元線画図形の輪郭の内側のメッシュ点であるか否かを判断し、変数Ｌｉｊの値が「０」であると判断された場合、即ち、ステップＳ１５０８におけるメッシュ点Ｇ（ｉ，ｊ）が２次元線画図形の輪郭の内側のメッシュ点ではないと判断された場合には、ステップＳ１５２８に進み、変数Ｌｉｊの値が「０」ではないと判断された場合、即ち、ステップＳ１５０８におけるメッシュ点Ｇ（ｉ，ｊ）が２次元線画図形の輪郭の内側のメッシュ点であると判断された場合には、ステップＳ１５１２に進む。
【０１０８】
ステップＳ１５１２においては、変数Ｌｉｊの値、即ち、ステップＳ１５０８におけるメッシュ点Ｇ（ｉ，ｊ）であり２次元線画図形の輪郭の内側のメッシュ点のＺ座標値を「＋∞」に初期化し、変数ｋの値を「０」に初期化する。なお、この標高算出処理ルーチンにおいて変数ｋは、２次元形状データの示す２次元線画図形の輪郭を構成する辺の順位を示すものである（図５参照）。
【０１０９】
ステップＳ１５１２の処理を終了すると、ステップＳ１５１４の処理に進み、変数ｋの値に比べて２次元形状データの示す２次元線画図形の輪郭を構成する辺の総数Ｍの値が大きいか否かを判断し、変数ｋの値に比べて２次元形状データの示す２次元線画図形の輪郭を構成する辺の総数Ｍの値が大きいと判断された場合には、ステップＳ１５１６の処理に進み、変数ｋの値に比べて２次元形状データの示す２次元線画図形の輪郭を構成する辺の総数Ｍの値が等しいあるいは小さいと判断された場合には、ステップＳ１５２４の処理に進む。
【０１１０】
ステップＳ１５１６においては、ステップＳ１５０８におけるメッシュ点Ｇ（ｉ，ｊ）、即ち、２次元線画図形の輪郭の内側のメッシュ点と２次元形状データの示す２次元線画図形の輪郭を構成する辺のうちのｋ番目の辺との距離を算出し、当該算出された値を変数Ｌに設定する。
【０１１１】
ステップＳ１５１６の処理を終了すると、ステップＳ１５１８の処理に進み、変数Ｌの値に比べて変数Ｌｉｊの値が大きいか否かを判断し、変数Ｌの値に比べて変数Ｌｉｊの値が大きいと判断された場合には、ステップＳ１５２０の処理に進み、変数Ｌの値に比べて変数Ｌｉｊの値が小さいと判断された場合には、ステップＳ１５２２の処理に進む。
【０１１２】
ステップＳ１５２０の処理においては、変数Ｌの値を変数Ｌｉｊの値に設定して、変数Ｌｉｊの値が更新されて、２次元線画図形の輪郭の内側のメッシュ点と２次元形状データの示す２次元線画図形の輪郭を構成する複数の辺のうちの最も近い辺との距離が、当該メッシュ点の標高として保持される（図１０（ａ）（ｂ）（ｃ）参照）。
【０１１３】
ステップＳ１５２０の処理が終了すると、ステップＳ１５２２の処理に進み、変数ｋの値を１だけインクリメントして、ステップＳ１５１４の処理に戻り、ステップＳ１５１４乃至ステップＳ１５２０の処理を繰り返す。
【０１１４】
従って、２次元形状データの示す２次元線画図形の輪郭を構成する辺の順位を示変数ｋの値が、２次元形状データの示す２次元線画図形の輪郭を構成する辺の総数Ｍの値に比べて小さい限りは、２次元形状データの示す２次元線画図形の輪郭を構成する辺に対して、ステップＳ１５１４乃至ステップＳ１５２２の処理が行われて、形状設定処理ルーチン（ステップＳ１３０２）の「３次元形状の設定」において設定された「ドーム型タイプ」または「アーチ型タイプ」のいずれかに応じて（図７（ａ）（ｂ）参照）、ステップＳ１５０８におけるメッシュ点Ｇ（ｉ，ｊ）、即ち、２次元線画図形の輪郭の内側のメッシュ点のうちの所定のメッシュ点と最も近い辺との距離が算出され、当該メッシュ点の標高として保持される。
【０１１５】
なお、当該ステップＳ１５２０において当該メッシュ点の標高として保持される変数Ｌｉｊの値は、後述する形状変換処理ルーチン（ステップＳ１３０８）のステップＳ１６１２の処理において用いられるものである。
【０１１６】
一方、ステップＳ１５２４においては、変数Ｌｉｊの値に比べて変数Ｌｍａｘの値が小さいか否かを判断し、変数Ｌｉｊの値に比べて変数Ｌｍａｘの値が小さいと判断された場合には、ステップＳ１５２６の処理に進み、変数Ｌｉｊの値に比べて変数Ｌｍａｘの値が等しいあるいは大きいと判断された場合には、ステップＳ１５２６の処理に進む。
【０１１７】
ステップＳ１５２６の処理においては、変数Ｌｉｊの値を変数Ｌｍａｘの値に設定して、変数Ｌｍａｘの値が更新されて、２次元線画図形の輪郭の内側のメッシュ点と２次元形状データの示す２次元線画図形の輪郭を構成する辺との距離の最大値が保持される。
【０１１８】
なお、当該ステップＳ１５２６において当該距離の最大値として保持される変数Ｌｍａｘの値は、後述する形状変換処理ルーチン（ステップＳ１３０８）のステップＳ１６１２の処理において用いられるものである。
【０１１９】
ステップＳ１５２６の処理が終了すると、ステップＳ１５２８の処理に進み、変数ｉの値を１だけインクリメントして、ステップＳ１５０６の処理に戻り、ステップＳ１５０６乃至ステップＳ１５２６の処理を繰り返す。
【０１２０】
一方、ステップＳ１５３０の処理においては、変数ｊの値を１だけインクリメントして、ステップＳ１５０４の処理に戻り、ステップＳ１５０４乃至ステップＳ１５２８の処理を繰り返す。
【０１２１】
従って、Ｘ軸方向の走査線のメッシュ点の番号を示す変数ｉの値が、３次元メッシュのＸ軸方向におけるサイズＳｘの値に比べて小さい限りは、また、Ｙ軸方向の走査線のメッシュ点の番号を示す変数ｊの値が、３次元メッシュのＹ軸方向におけるサイズＳｙの値に比べて小さい限りは、３次元メッシュを構成する全てのメッシュ点に対して、ステップＳ１５０４乃至ステップＳ１５３０の処理が行われて、３次元メッシュを構成する全てのメッシュ点のうちの２次元線画図形の輪郭の内側のメッシュ点の標高が保持される（図１０（ｃ）参照）
次に、図１６に示す形状変換処理ルーチン（ステップＳ１３０８）のフローチャートが起動されると、まず、ステップＳ１６０２において、変数ｉならびに変数ｊの値を「０」に初期化する。なお、この形状変換処理ルーチンにおいて変数ｉは３次元メッシュを構成するメッシュ点のＸ軸方向における番号を示すものであり、変数ｊは３次元メッシュを構成するメッシュ点のＹ軸方向における番号を示すものである（図８参照）。
【０１２２】
ステップＳ１６０２の処理が終了すると、ステップＳ１６０４の処理に進み、変数ｊの値に比べて３次元メッシュのＹ軸方向におけるサイズＳｙの値が大きいか否かを判断し、変数ｊの値に比べて３次元メッシュのＹ軸方向におけるサイズＳｙの値が大きいと判断された場合には、ステップＳ１６０６の処理に進み、変数ｊの値に比べて３次元メッシュのＹ軸方向におけるサイズＳｙの値が等しいあるいは小さいと判断された場合には、この形状変換処理ルーチンを終了して、本発明による３次元形状データの生成処理のメイン・ルーチンにリターンする。
【０１２３】
ステップＳ１６０６においては、変数ｉの値に比べて３次元メッシュのＸ軸方向におけるサイズＳｘの値が大きいか否かを判断し、変数ｉの値に比べて３次元メッシュのＸ軸方向におけるサイズＳｘの値が大きいと判断された場合には、ステップＳ１６０８の処理に進み、変数ｉの値に比べて３次元メッシュのＸ軸方向におけるサイズＳｘの値が等しいあるいは小さいと判断された場合には、ステップＳ１６１６の処理に進む。
【０１２４】
ステップＳ１６０８の処理においては、変数ｉと変数ｊに位置するメッシュ点をメッシュ点Ｇとして設定し、当該メッシュ点Ｇ（ｉ，ｊ）の標高を変数Ｌｉｊに設定する。
【０１２５】
ステップＳ１６０８の処理が終了すると、ステップＳ１６１０の処理に進み、変数Ｌｉｊの値が「０」であるか否か、即ち、ステップＳ１６０８におけるメッシュ点Ｇ（ｉ，ｊ）が２次元線画図形の輪郭の内側のメッシュ点であるか否かを判断し、変数Ｌｉｊの値が「０」であると判断された場合、即ち、ステップＳ１６０８におけるメッシュ点Ｇ（ｉ，ｊ）が２次元線画図形の輪郭の内側のメッシュ点ではないと判断された場合には、ステップＳ１６１４に進み、変数Ｌｉｊの値が「０」ではないと判断された場合、即ち、ステップＳ１６０８におけるメッシュ点Ｇ（ｉ，ｊ）が２次元線画図形の輪郭の内側のメッシュ点であると判断された場合には、ステップＳ１６１２に進む。
【０１２６】
ステップＳ１６１２においては、形状設定処理（ステップＳ１３０２）の「３次元形状の設定」において設定された３次元形状の断面形状に応じた関数（図１１（ｂ）乃至図１１（ｆ））を用いて変数Ｌｉｊの値、即ち、ステップＳ１６０８におけるメッシュ点Ｇ（ｉ，ｊ）でありかつ２次元線画図形の輪郭の内側のメッシュ点の標高を３次元形状の高さに変換して、当該変換された３次元形状の高さに対応するＺ座標値を変数Ｚｉｊに設定する（図１１（ａ）乃至図１１（ｆ）参照）。
【０１２７】
なお、当該ステップＳ１６１２の処理に際しては、上記した標高算出処理ルーチンのステップＳ１５２０における変数Ｌｉｊの値ならびにステップＳ１５２６における変数Ｌｍａｘの値が用いられるものである。
【０１２８】
ステップＳ１６１２の処理を終了すると、ステップＳ１６１４の処理に進み、変数ｉの値を１だけインクリメントして、ステップＳ１６０６の処理に戻り、ステップＳ１６０６乃至ステップＳ１６１２の処理を繰り返す。
【０１２９】
一方、ステップＳ１６１６の処理においては、変数ｊの値を１だけインクリメントして、ステップＳ１６０４の処理に戻り、ステップＳ１６０４乃至ステップＳ１６１４の処理を繰り返す。
【０１３０】
従って、Ｘ軸方向の走査線のメッシュ点の番号を示す変数ｉの値が、３次元メッシュのＸ軸方向におけるサイズＳｘの値に比べて小さい限りは、また、Ｙ軸方向の走査線のメッシュ点の番号を示す変数ｊの値が、３次元メッシュのＹ軸方向におけるサイズＳｙの値に比べて小さい限りは、３次元メッシュを構成する全てのメッシュ点に対して、ステップＳ１６０４乃至ステップＳ１６１６の処理が行われて、３次元メッシュを構成する全てのメッシュ点のうちの２次元線画図形の輪郭の内側のメッシュ点の有するＺ座標値が３次元形状の高さに対応する値に更新される（図１１（ａ）乃至図１１（ｆ）参照）。
【０１３１】
次に、図１７に示す形状平滑化処理ルーチン（ステップＳ１３１０）のフローチャートが起動されると、まず、ステップＳ１７０２において、変数ｉならびに変数ｊの値を「０」に初期化する。なお、この形状平滑化処理ルーチンにおいて変数ｉは３次元メッシュを構成するメッシュ点のＸ軸方向における番号を示すものであり、変数ｊは３次元メッシュを構成するメッシュ点のＹ軸方向における番号を示すものである（図８参照）。
【０１３２】
ステップＳ１７０２の処理が終了すると、ステップＳ１７０４の処理に進み、変数ｊの値に比べて３次元メッシュのＹ軸方向におけるサイズＳｙの値が大きいか否かを判断し、変数ｊの値に比べて３次元メッシュのＹ軸方向におけるサイズＳｙの値が大きいと判断された場合には、ステップＳ１７０６の処理に進み、変数ｊの値に比べて３次元メッシュのＹ軸方向におけるサイズＳｙの値が等しいあるいは小さいと判断された場合には、ステップＳ１７１６の処理に進む。
【０１３３】
ステップＳ１７０６においては、変数ｉの値に比べて３次元メッシュのＸ軸方向におけるサイズＳｘの値から２を引いた差が大きいか否かを判断し、変数ｉの値に比べて３次元メッシュのＸ軸方向におけるサイズＳｘの値から２を引いた差が大きいと判断された場合には、ステップＳ１７０８の処理に進み、変数ｉの値に比べて３次元メッシュのＸ軸方向におけるサイズＳｘの値から２を引いた差が等しいあるいは小さいと判断された場合には、ステップＳ１７１４の処理に進む。
【０１３４】
一方、ステップＳ１７０８においては、メッシュ点Ｇ（ｉ，ｊ）の高さ、即ち、メッシュ点Ｇ（ｉ，ｊ）のＺ座標値を変数Ｚ１に設定し、メッシュ点Ｇ（ｉ＋１，ｊ）の高さ、即ち、メッシュ点Ｇ（ｉ＋１，ｊ）のＺ座標値を変数Ｚ２に設定し、メッシュ点Ｇ（ｉ＋２，ｊ）の高さ、即ち、メッシュ点Ｇ（ｉ＋２，ｊ）のＺ座標値を変数Ｚ３に設定して、３次元メッシュのＹ軸方向のｊ番目の走査線ｙ上の連続する３つのメッシュ点の高さを検出する（図１２参照）。
【０１３５】
ステップＳ１７０８の処理を終了すると、ステップＳ１７１０の処理に進んで、変数Ｚ１の値と変数Ｚ２の値と変数Ｚ３の値との和を３で除算した商を、メッシュ点Ｇ（ｉ＋１，ｊ）のＺ座標値に設定して、３つのメッシュ点の高さの平均値で連続する３つのメッシュ点のうちの中央のメッシュ点の高さを更新する。
【０１３６】
ステップＳ１７１０の処理に続いて、ステップＳ１７１２においては、変数ｉの値を１だけインクリメントして、ステップＳ１７０６の処理に戻り、ステップＳ１７０６乃至ステップＳ１７１０の処理を繰り返す。
【０１３７】
一方、ステップＳ１７１４の処理においては、変数ｊの値を１だけインクリメントして、ステップＳ１７０４の処理に戻り、ステップＳ１７０４乃至ステップＳ１７１２の処理を繰り返す。
【０１３８】
従って、Ｘ軸方向の走査線のメッシュ点の番号を示す変数ｉの値が、３次元メッシュのＸ軸方向におけるサイズＳｘの値に比べて小さい限りは、また、Ｙ軸方向の走査線のメッシュ点の番号を示す変数ｊの値が、３次元メッシュのＹ軸方向におけるサイズＳｙの値に比べて小さい限りは、３次元メッシュを構成する全てのメッシュ点に対して、ステップＳ１７０４乃至ステップＳ１７１４の処理が行われて、３次元メッシュのＸ軸方向における平滑化の処理が行われる（図１２参照）。
【０１３９】
一方、ステップＳ１７１６においては、変数ｉならびに変数ｊの値を「０」に初期化する。
【０１４０】
ステップＳ１７１６の処理が終了すると、ステップＳ１７１８の処理に進み、変数ｉの値に比べて３次元メッシュのＸ軸方向におけるサイズＳｘの値が大きいか否かを判断し、変数ｉの値に比べて３次元メッシュのＸ軸方向におけるサイズＳｘの値が大きいと判断された場合には、ステップＳ１７２０の処理に進み、変数ｉの値に比べて３次元メッシュのＸ軸方向におけるサイズＳｘの値が等しいあるいは小さいと判断された場合には、この形状平滑化処理ルーチンを終了して、本発明による３次元形状データの生成処理のメイン・ルーチンにリターンする。
【０１４１】
ステップＳ１７２０においては、変数ｊの値に比べて３次元メッシュのＹ軸方向におけるサイズＳｙの値から２を引いた差が大きいか否かを判断し、変数ｊの値に比べて３次元メッシュのＹ軸方向におけるサイズＳｙの値から２を引いた差が大きいと判断された場合には、ステップＳ１７２２の処理に進み、変数ｊの値に比べて３次元メッシュのＹ軸方向におけるサイズＳｙの値から２を引いた差が等しいあるいは小さいと判断された場合には、ステップＳ１７２８の処理に進む。
【０１４２】
一方、ステップＳ１７２２においては、メッシュ点Ｇ（ｉ，ｊ）の高さ、即ち、メッシュ点Ｇ（ｉ，ｊ）のＺ座標値を変数Ｚ１に設定し、メッシュ点Ｇ（ｉ，ｊ＋１）の高さ、即ち、メッシュ点Ｇ（ｉ，ｊ＋１）のＺ座標値を変数Ｚ２に設定し、メッシュ点Ｇ（ｉ，ｊ＋２）の高さ、即ち、メッシュ点Ｇ（ｉ，ｊ＋２）のＺ座標値を変数Ｚ３に設定して、３次元メッシュのＸ軸方向のｉ番目の走査線ｘ上の連続する３つのメッシュ点の高さを検出する（図１２参照）。
【０１４３】
ステップＳ１７２２の処理を終了すると、ステップＳ１７２４の処理に進んで、変数Ｚ１の値と変数Ｚ２の値と変数Ｚ３の値との和を３で除算した商を、メッシュ点Ｇ（ｉ，ｊ＋１）のＺ座標値に設定して、３つのメッシュ点の高さの平均値で連続する３つのメッシュ点のうちの中央のメッシュ点の高さを更新する。
【０１４４】
ステップＳ１７２４の処理に続いて、ステップＳ１７２６においては、変数ｊの値を１だけインクリメントして、ステップＳ１７２０の処理に戻り、ステップＳ１７２０乃至ステップＳ１７２４の処理を繰り返す。
【０１４５】
一方、ステップＳ１７２８の処理においては、変数ｉの値を１だけインクリメントして、ステップＳ１７１８の処理に戻り、ステップＳ１７１８乃至ステップＳ１７２６の処理を繰り返す。
【０１４６】
従って、Ｘ軸方向の走査線のメッシュ点の番号を示す変数ｉの値が、３次元メッシュのＸ軸方向におけるサイズＳｘの値に比べて小さい限りは、また、Ｙ軸方向の走査線のメッシュ点の番号を示す変数ｊの値が、３次元メッシュのＹ軸方向におけるサイズＳｙの値に比べて小さい限りは、３次元メッシュを構成する全てのメッシュ点に対して、ステップＳ１７１８乃至ステップＳ１７２８の処理が行われて、３次元メッシュのＹ軸方向における平滑化の処理が行われる（図１２参照）。
【０１４７】
上記したようにして、本発明による３次元形状データの生成方法は、本発明による３次元形状データの生成処理ルーチンを構成する５つのサブ・ルーチンの処理によって、２次元線画図形を示す２次元線画図形データを用い、所望の３次元形状データの示す３次元形状が予め設定され（ステップＳ１３０２）、当該２次元線画図形データの示す２次元線画図形の輪郭の内側のメッシュ点が検出されて（ステップＳ１４１６）当該２次元線画図形が３次元メッシュに展開され、２次元線画図形の輪郭の内側のメッシュ点の標高を算出され（ステップＳ１５２０）、当該算出された標高により当該メッシュ点のＺ座標値が設定された３次元形状の高さに対応するＺ座標値に更新されて（ステップＳ１６１２）、さらに、３次元メッシュの形状平滑化処理（ステップＳ１３１０）が行われるので、２次元線画図形を示す２次元線画図形データから生成された３次元形状データの示す３次元形状の表面がガタつくことがなくなり、当該３次元形状の表面を確実に平滑にできる（図１８（ａ）（ｂ）参照）。
【０１４８】
さらに、本発明による３次元形状データの生成方法によれば、３次元メッシュの分解能ｄを所定の範囲で細かく設定することが可能であるとともに、３次元メッシュに対して３２ビットの分解能を有しているので、通常、形状平滑化処理（ステップＳ１３１０）が行われる以前の３次元形状データの示す３次元形状の表面が平滑になることは多く、こうした３次元形状を示す３次元形状データに対して、設定エリア１４ａの「スムージング」の欄が選択されて形状平滑化処理（ステップＳ１３１０）が行われるようにしているので、当該３次元形状の表面を一層確実に平滑にできるものである（図１８（ａ）（ｂ）参照）。
【０１４９】
さらにまた、本発明による３次元形状データの生成方法は、形状設定処理において作業者が２次元線画図形データから生成したい所望の３次元形状データの示す３次元形状の断面形状や、形状タイプ、表面の状態などを選択して「３次元形状の設定」が行われるので、２次元線画図形を示す２次元線画図形データから生成された３次元形状データの示す３次元形状を所望の断面形状や、形状タイプ、表面の状態とすることができる。
【０１５０】
なお、本発明による３次元形状データの生成方法においては、本発明による３次元形状データの生成方法により生成されて３次元形状データ記憶部１０ｃ−２に記憶された３次元形状データが、駆動装置１６に出力されるようにしたが、これに限られるものではないことは勿論であり、本発明による３次元形状データの生成方法により生成された３次元形状データを、フロッピ・ディスク・ドライブ（ＦＤＤ）などの切削装置の外部の記憶手段に記憶するようにしてもよく、当該記憶手段に記憶された３次元データをＣＡＤシステムなどで用いるようにしてもよい。
【０１５１】
また、本発明による３次元形状データの生成方法においては、２次元線画図形（図５ならびに図１８（ａ）参照）を示す２次元線画図形データから３次元形状データを生成するようにしたが、これに限られるものではないことは勿論であり、例えば、グレー・スケールの２次元画像（図１（ａ）参照）を用いて、当該２次元画像から輪郭を抽出して２次元線画図形データを生成し、当該２次元画像から生成された２次元線画図形データを用いて３次元形状データを生成することもできる。
【０１５２】
さらにまた、本発明による３次元形状データの生成方法においては、本発明による３次元形状データの生成方法により生成された３次元形状データが示す３次元形状は３次元メッシュのみならず、ポリゴンやあるいは曲面に適用することもできる。
【０１５３】
より詳細には、ポリゴンに適用する際に（図１９（ａ）（ｂ）（ｃ）参照）、３次元メッシュをポリゴンに変換する場合には（図１９（ａ）（ｂ）参照）、本発明による３次元形状データの生成方法により生成された３次元形状データの示す３次元メッシュのメッシュ点と２次元線画図形の輪郭を表す頂点とを所定の間隔で予め間引いておき（図１９（ａ）参照）、それから、当該メッシュ点間（あるいは当該頂点間）を稜線となる線で連結して三角形または四角形のポリゴンを生成する（図１９（ｂ）参照）。
【０１５４】
また、等高線上にポリゴンを貼り付ける場合には（図１９（ｃ）参照）、まず、２次元線画図形を構成する輪郭の内側に当該２次元線画図形をオフセットさせた輪郭を生成して等高線図形を得る。そして、当該等高線図形の等高線の高さ情報たるＺ座標値を形状変換処理により算出し、等高線上に所定の間隔で頂点を位置させて、隣接する等高線のそれぞれに位置する頂点間を稜線となる線で連結して三角形または四角形のポリゴンを生成する。
【０１５５】
一方、曲面に適用する際に（図２０（ａ）（ｂ）参照）、３次元メッシュを曲面に変換する場合には（図２０（ａ）参照）、本発明による３次元形状データの生成方法により生成された３次元形状データの示す３次元メッシュのメッシュ点を所定の間隔で予め間引いておき、それから、残った３次元メッシュのメッシュ点を制御点として各走査線（ＸＹ軸方向）を表す３次元曲線（スプライン曲線）を求める。
【０１５６】
そして、この求められた３次元曲線（スプライン曲線）から曲面（スプライン曲面）を生成して、当該生成された曲面（スプライン曲面）の外周を２次元線画図形の輪郭で切り取る（トリムする）。
【０１５７】
また、「掛け合わせ面」（図２０（ｂ）参照）を生成することも可能であり、３次元形状の底面と直交する方向における断面形状と２次元線画図形の外寸からＸＹ軸方向の断面形状を表す曲面を求め、この曲面から「掛け合わせ面」を生成して、当該生成された曲面の外周を２次元線画図形の輪郭で切り取る（トリムする）。
【０１５８】
【発明の効果】
本発明は、以上説明したように構成されているので、２次元線画図形を示す２次元線画図形データから３次元形状を示す３次元形状データを生成することが可能とされ、しかも、当該生成された３次元形状データの示す３次元形状の表面を滑らかにできるという優れた効果を奏する。
【図面の簡単な説明】
【図１】（ａ）は、グレー・スケールの２次元画像を示す説明図であり、（ｂ）は、（ａ）を用いた従来の方法により生成された３次元形状データの示す３次元形状を示す説明図である。
【図２】（ａ）は例として用いる図形を示す説明図であり、（ｂ）は（ａ）の２次元線画図形を示す説明図である。
【図３】本発明の一実施例による３次元形状データの生成方法を実現するための処理システムを示すブロック構成図である。
【図４】本発明による表示装置の構成の一例を示す説明図である。
【図５】本発明による３次元形状データの生成方法において用いられる２次元線画図形データの示す２次元線画図形を示す説明図である。
【図６】本発明による３次元形状データの生成方法において用いられる３次元形状の５つの断面形状タイプを示す説明図であり、（ａ）は、矩形状の断面形状を示す説明図であり、（ｂ）は、三角形状の断面形状を示す説明図であり、（ｃ）は、台形状の断面形状を示す説明図であり、（ｄ）は、略半円形状の断面形状を示す説明図であり、（ｅ）は、角丸矩形状の断面形状を示す説明図である。
【図７】本発明による３次元形状データの生成方法において用いられる３次元形状の２つの形状タイプの一例を示す説明図であり、（ａ）は、ドーム型タイプを示す説明図であり、（ｂ−１）は、アーチ型タイプを示す説明図であり、（ｂ−２）は、（ｂ−１）におけるＡ矢視図である。
【図８】本発明による３次元形状データの生成方法の「３次元メッシュの初期設定」により初期化された３次元メッシュを示す説明図である。
【図９】本発明による３次元形状データの生成方法の図形展開処理を概念的に示す説明図であり、（ａ）は、３次元メッシュへの２次元線画図形の展開を概念的に示す説明図であり、（ｂ）は、２次元線画図形の輪郭の内側のメッシュ点のＺ座標値を示す説明図であり、（ｃ）は、初期化された３次元メッシュに２次元線画図形データの示す２次元線画図形の全体が対応していないような場合を示す説明図である。
【図１０】本発明による３次元形状データの生成方法の標高算出処理を概念的に示す説明図であり、（ａ）は、２次元線画図形の輪郭の内側のメッシュ点と２次元線画図形の輪郭を構成する辺との距離を概念的に示す説明図であり、（ｂ）は、２次元線画図形の輪郭の内側のメッシュ点と２次元線画図形の輪郭を構成する辺との距離の算出方法を概念的に示す説明図であり、（ｃ）は、同じ標高を有するメッシュ点を連結して形成される等高線様の図形を示す説明図である。
【図１１】本発明による３次元形状データの生成方法の標高算出処理を概念的に示す説明図であり、（ａ）は、標高算出処理による２次元線画図形の輪郭の内側のメッシュ点のＺ座標値を示す説明図であり、（ｂ）は、矩形状の断面形状において用いられる関数を示す説明図であり、（ｃ）は、三角形状の断面形状において用いられる関数を示す説明図であり、（ｄ）は、台形状の断面形状において用いられる関数を示す説明図であり、（ｅ）は、略半円形状の断面形状において用いられる関数を示す説明図であり、（ｆ）は、角丸矩形状の断面形状において用いられる関数を示す説明図である。
【図１２】本発明による３次元形状データの生成方法の形状平滑化処理を概念的に示す説明図である。
【図１３】本発明による３次元形状データの生成方法の一実施例を示すフローチャートである。
【図１４】図形展開に関する処理のサブ・ルーチンを示すフローチャートである。
【図１５】標高算出に関する処理のサブ・ルーチンを示すフローチャートである。
【図１６】形状変換に関する処理のサブ・ルーチンを示すフローチャートである。
【図１７】形状平滑化に関する処理のサブ・ルーチンを示すフローチャートである。
【図１８】（ａ）は、２次元線画図形データの示す２次元線画図形を示す説明図であり、（ｂ）は、（ａ）を用い本発明による３次元形状データの生成方法により生成された３次元形状データの示す３次元形状を示す説明図である。
【図１９】本発明による３次元形状データの生成方法により生成された３次元形状データが示す３次元形状をポリゴンに適用する場合を示す説明図であり、（ａ）は、３次元形状データの示す３次元メッシュのメッシュ点と２次元線画図形の輪郭を表す頂点とが所定の間隔で間引かれた状態を示す説明図であり、（ｂ）は、３次元メッシュをポリゴンに変換して生成されたポリゴンを示す説明図であり、（ｃ）は、等高線上にポリゴンを貼り付けて生成されたポリゴンを示す説明図である。
【図２０】（ａ）は、本発明による３次元形状データの生成方法により生成された３次元形状データ示す３次元形状を曲面に適用する場合を示す説明図であり、（ｂ）は、「掛け合わせ面」の生成を概念的に示す説明図である。
【符号の説明】
１０          制御装置
１０ａ        中央制御装置（ＣＰＵ）
１０ｂ        リード・オンリ・メモリ（ＲＯＭ）
１０ｃ        ランダム・アクセス・メモリ（ＲＡＭ）
１０ｃ−１    ２次元線画図形データ記憶部
１０ｃ−２    ３次元形状データ記憶部
１２          入力装置
１４          表示装置
１４ａ        設定エリア
１４ｂ        断面形状エリア
１４ｂ−１    「矩形状の断面形状」の欄
１４ｂ−２    「三角形状の断面形状」の欄
１４ｂ−３    「台形状の断面形状」の欄
１４ｂ−４    「略半円形状の断面形状」の欄
１４ｂ−５    「角丸矩形状の断面形状」の欄
１４ｃ        形状タイプエリア
１４ｃ−１    「ドーム型タイプ」の欄
１４ｃ−２    「アーチ型タイプ」の欄
１６          駆動装置
１８          カッター
【図１】
0003844634.tif 000007
【図２】
0003844634.tif 000008
【図３】
0003844634.tif 000009
【図４】
0003844634.tif 000010
【図５】
0003844634.tif 000011
【図６】
0003844634.tif 000012
【図７】
0003844634.tif 000013
【図８】
0003844634.tif 000014
【図９】
0003844634.tif 000015
【図１０】
0003844634.tif 000016
【図１１】
0003844634.tif 000017
【図１２】
0003844634.tif 000018
【図１３】
0003844634.tif 000019
【図１４】
0003844634.tif 000020
【図１５】
0003844634.tif 000021
【図１６】
0003844634.tif 000022
【図１７】
0003844634.tif 000023
【図１８】
0003844634.tif 000024
【図１９】
0003844634.tif 000025
【図２０】
0003844634.tif 000026