(57)【特許請求の範囲】
【請求項１】
図形の重複・連続要素の判定のための判定量を設定する判定量設定手段と、
表示画面上に、重複・連続を判定する複数の図形要素を表示する表示制御手段と、
図形要素の要素種別を判定する要素種別判定手段と、
表示画面上に表示された図形要素に対して、前記設定手段によって設定された判定量以内であって、かつ同じ要素種別であるかどうかを判定する判定手段と、
前記設定手段によって設定された判定量以内であって、かつ同じ要素種別であると判定された複数の図形要素を重複・連続する要素として取り出す取出手段と、
前記取り出し手段によって取り出された要素のグループ化を行うグループ化手段と、
グループ化された要素に対する重複・連続処理を実行する処理手段と、
前記重複・連続処理された要素を記憶する記憶手段とを有することを特徴とする図形処理装置。
【請求項２】
３次元図形を表示手段に表示する表示制御手段と、
表示された３次元図形を２次元図形に投影する投影手段と、
誤差量を設定する設定手段と、
前記投影手段によって投影された２次元図形から、設定された誤差量に基づき、微小要素を除去する除去手段と、
前記除去手段により微小要素が除去された２次元図形から重複・連続する要素を判定する判定手段と、
重複・連続する要素として判定された複数の要素を取り出す取出手段と、
取り出した要素をグループ化するグループ化手段と、
グループ化された要素を重複・連続処理する処理手段と、
重複・連続処理された要素を記憶する記憶手段と、
記憶手段に記憶された要素に基づく図形を前記表示手段に表示する図形表示手段とを有することを特徴とする図形処理装置。
【請求項３】
処理ユニットおよび読み書き可能なメモリを有する図形処理装置の図形処理方法であって、
図形の重複・連続要素の判定のための判定量を前記メモリに設定し、
表示画面上に、重複・連続を判定する図形要素を表示し、
図形要素の要素種別を判定し、表示画面上に表示された図形要素に対して、前記設定された判定量以内であって、かつ同じ要素種別であるかどうかを前記処理ユニットによって判定し、
さらに、前記処理ユニットによって前記設定された判定量以内であって、かつ同じ要素種別であると判定された複数の図形要素を重複・連続する要素として取り出し、前記取り出された要素のグループ化を行い、グループ化された要素を重複・連続処理し、
前記重複・連続処理された要素を前記メモリに記憶することを特徴とする図形処理装置の図形処理方法。
【請求項４】
処理ユニットおよび読み書き可能なメモリを有する図形処理装置の図形処理方法であって、
表示手段に表示された所望の３次元図形を２次元図形に投影し、投影された２次元図形から、設定された誤差量に基づき、微小要素を除去し、微小要素が除去された２次元図形から重複・連続する要素を前記処理ユニットによって判定し、
さらに、前記処理ユニットによって重複・連続すると判定された複数の要素を取り出し、取り出した要素をグループ化し、グループ化された要素を重複・連続処理し、
前記合成された要素を前記メモリ記憶手段に記憶し、
記憶手段に記憶された要素に基づく図形を前記表示手段に表示することを特徴とする図形処理装置の図形処理方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本願発明は図形処理装置及び方法に関し、例えば３次元図形の処理を行う図形処理装置及び方法に関する。
【０００２】
【従来の技術】
従来のＣＡＤ等の図形処理装置では、図面等に表現された図形を３次元化する場合、要素単位での指示による形状定義を行っていた。
【０００３】
また、３次元図形を２次元図形へ投影する図形処理装置おいては、投影面の指示は、投影面の法線方向ベクトルと投影面のＸ軸方向ベクトルとを数値入力し、行っていた。
【０００４】
また、ＣＡＤ等の図形処理装置では、図形オペレーション時の不注意や、複雑な操作の繰り返しの結果発生する表示装置上では、細かくて表示されず分からない重複した要素及び連続した要素全てを処理の対象としていた。
【０００５】
また、投影処理によって計算された結果を表示・登録する場合、結果要素に微小要素、重複要素、連続要素のデータが存在しても全ての要素に対し表示・登録を行っていた。
【０００６】
【発明が解決しようとする課題】
上述のように、図面等に表現された図形を直接３次元化面（サーフェイス）モデル化する方法がなく、独立した３次元システムに向かって、図面を見ながら形状を再入力していたので非常に手間がかかり、また、細かな作業がミスの原因にもなっていた。
【０００７】
また、投影面の法線方向ベクトルとＸ軸方向ベクトルの数値による入力が求められるため、オペレーターは投影したい平面の法線方向ベクトルとＸ軸方向ベクトルとをあらかじめ計算で求めておかなければならなかった。
【０００８】
また、サーフェイスは、表示上では図３４に示すように隣合ったサーフェイス（ｆ１とｆ２とｆ３）の境界は１つのエッジ（ｅ１，ｅ２，ｅ３）で構成されているように見えるが、実際は図３５に示すように各サーフェイス（ｆ１，ｆ２，ｆ３）が独立してエッジ（ｅ１−１，ｅ１−２，ｅ２−１，ｅ２−２，ｅ３−１，ｅ３−２）を持っているため、投影処理によって計算された二次元形状の結果は、図３６に示すように２重の二次元要素を持つことになる。また、図３７に示す図形を、三次元形状の投影方向によって隠面処理した結果を投影すると図３８に示すように微小な要素が発生する場合がある。このように投影処理によって重複・連続要素、微小要素を含む二次元形状を表示・登録する場合、全ての要素に対して表示・登録を行っているため、要素数の増加による記憶域の圧迫や要素の表示・登録が高速に行えなかった。
【０００９】
本願発明の目的は、不要な要素数を減少させることにより、記憶領域の圧迫を防ぐ図形処理装置及び方法を提供することにある。
【００１０】
また、本願発明の目的は、図形要素の減少によってデータ量を少なくすることにより、要素の表示・登録を高速に行う図形処理装置及び方法を提供することにある。
【００１１】
【課題を解決するための手段】
上記課題を解決するために、本願発明の図形処理装置は、図形の重複・連続要素の判定のための判定量を設定する判定量設定手段と、表示画面上に、重複・連続を判定する複数の図形要素を表示する表示制御手段と、図形要素の要素種別を判定する要素種別判定手段と、表示画面上に表示された図形要素に対して、前記設定手段によって設定された判定量以内であって、かつ同じ要素種別であるかどうかを判定する判定手段と、前記設定手段によって設定された判定量以内であって、かつ同じ要素種別であると判定された複数の図形要素を重複・連続する要素として取り出す取出手段と、前記取り出し手段によって取り出された要素のグループ化を行うグループ化手段と、グループ化された要素に対する重複・連続処理を実行する処理手段と、前記重複・連続処理された要素を記憶する記憶手段とを有する。
【００１２】
また、本願発明の図形処理装置は、３次元図形を表示手段に表示する表示制御手段と、表示された３次元図形を２次元図形に投影する投影手段と、誤差量を設定する設定手段と、前記投影手段によって投影された２次元図形から、設定された誤差量に基づき、微小要素を除去する除去手段と、前記除去手段により微小要素が除去された２次元図形から重複・連続する要素を判定する判定手段と、重複・連続する要素として判定された複数の要素を取り出す取出手段と、取り出した要素をグループ化するグループ化手段と、グループ化された要素を重複・連続処理する処理手段と、重複・連続処理された要素を記憶する記憶手段と、記憶手段に記憶された要素に基づく図形を前記表示手段に表示する図形表示手段とを有する。
【００１３】
さらに、本願発明の図形処理方法は、処理ユニットおよび読み書き可能なメモリを有する図形処理装置の図形処理方法であって、図形の重複・連続要素の判定のための判定量を前記メモリに設定し、表示画面上に、重複・連続を判定する図形要素を表示し、図形要素の要素種別を判定し、表示画面上に表示された図形要素に対して、前記設定された判定量以内であって、かつ同じ要素種別であるかどうかを前記処理ユニットによって判定し、さらに、前記処理ユニットによって前記設定された判定量以内であって、かつ同じ要素種別であると判定された複数の図形要素を重複・連続する要素として取り出し、前記取り出された要素のグループ化を行い、グループ化された要素を重複・連続処理し、前記重複・連続処理された要素を前記メモリに記憶する。
【００１４】
さらに、本願発明の図形処理方法は、処理ユニットおよび読み書き可能なメモリを有する図形処理装置の図形処理方法であって、表示手段に表示された所望の３次元図形を２次元図形に投影し、投影された２次元図形から、設定された誤差量に基づき、微小要素を除去し、微小要素が除去された２次元図形から重複・連続する要素を前記処理ユニットによって判定し、さらに、前記処理ユニットによって重複・連続すると判定された複数の要素を取り出し、取り出した要素をグループ化し、グループ化された要素を重複・連続処理し、前記合成された要素を前記メモリ記憶手段に記憶し、記憶手段に記憶された要素に基づく図形を前記表示手段に表示する。
【００１５】
【発明の実施の形態】
以下、本願発明の一実施の形態を、図面を用いて詳細に説明する。
【００１６】
（第１の実施の形態）
図１は、本願発明の一実施の形態に係る図形処理装置のブロック図である。
【００１７】
図において、１１は装置全体の制御を司るＣＰＵ、１３はＣＰＵ１１において実行されるプログラム等が格納されるＲＯＭと、この実行の際のワークエリアとして用いられるＲＡＭを含むメインメモリ、１４は各種文字等のキャラクタ情報、制御情報等を入力するためのキーボード、１５はポインティングデバイスとしてのマウス、１６はキーボード１４及びマウス１５と本装置との間で信号接続を行うためのキーインターフェースである。１７はＬＡＮ（ローカルエリアネットワーク）１８と本装置とを接続するＬＡＮインターフェース、１９はＲＯＭ、ＳＲＡＭ、ＲＳ２３２Ｃ方式インターフェース等を有した入出力装置（以下Ｉ／Ｏという）である。Ｉ／Ｏ１９には各種外部機器を接続可能である。２０および２１は外部記憶装置としてのそれぞれハードディスク装置及びフロッピーディスク装置、２２はハードディスク装置２０やフロッピーディスク装置２１と本装置との間で信号接続を行うためのディスクインターフェースである。２３はインクジェットプリンタ、レーザービームプリンタ等によって構成することができるプリンタ、２４はプリンタ２３と本装置との間で信号接続を行うためのプリンタインターフェースである。２５は表示装置で有り、２６は表示装置２５と本装置との間で信号接続を行うための表示インターフェースである。１２は、上記各器機間を信号接続するためのデータバス、コントロールバス、アドレスバスからなるシステムバスである。
【００１８】
以上説明した各機器等を接続してなる本装置では、一般にユーザは、表示装置２５の表示画面に表示される各種情報に対応しながら操作を行う。すなわち、ＬＡＮ１８、Ｉ／Ｏ１９に接続される外部機器、キーボード１４、マウス１５、ハードディスク装置２０、フロッピーディスク装置２１から供給される文字、画像情報等、また、メインメモリ１３に格納されユーザの操作にかかる操作情報等が表示装置２５の表示画面に表示され、ユーザはこの表示を見ながら情報の編集、装置に対する指示操作を行う。
【００１９】
図２は、本願発明の第１の実施の形態の処理動作示すフローチャートである。
【００２０】
まず、ＣＰＵ１１は、予め作成されハードディスク装置２０に格納されたデータ（図面）を読み出し、メインメモリ１３に格納する（ステップ１）。そして、そのデータの全部または一部が表示装置２５の表示画面３０に表示される。
【００２１】
次に、表示画面３０に表示された図面中の図形の線分、円弧等の図形要素の隣接関係、接続状態等を調べながら図形を閉領域化し、メインメモリ１３に格納する。閉領域とは、図３に示すように、例えば実線により閉じたループで構成された領域のことであり、外周ループを必ず１つ持ち、内周ループを０個以上持つ領域のことである。閉領域の指定は、例えば、マウス１５の移動指示により、表示画面３０上のマウスカーソル３１１を移動させ、所望の点を指示する。図４におけるマウスカーソル３１１の位置で指示を行うと、マウスカーソル３１１が属する領域（斜線部３１）が判断され、閉領域化される（ステップ２）。以後、同様にして、全図形の閉領域化を行う。
【００２２】
次に、閉領域化された図形のうち、面形状を定義する任意の閉領域をマウスカーソル３１１により指示する（ステップ３）。図５に示すように、メッセージ３２の指示に従い、マウスカーソル３１１により各閉領域に含まれる任意の一点の位置を指示する。一点を指示すると、各閉領域と指示した点の内外関係の判定を行い、指示した点を内部に含む閉領域が、指示した閉領域であると認識される（ステップ４）。
【００２３】
次に、指示した閉領域の面形状の定義を指示する。面形状の指示は、面形状定義指示メニュー３３をキーボード１４からの指示により表示画面３０上に表示し、マウスカーソル３１１により指示することにより行う。面形状の定義には、その閉領域が３次元空間でどのような面として表現されるかによって、平面定義（ＰＬＡＮＥ）、断面定義（ＳＥＣＴＩＯＮ）、回転面定義（ＲＯＴ）等がある。図６は、マウスカーソル３１１で指示した領域を、メッセージ３２に従い、面形状定義指示メニュー３３の中のＰＬＡＮＥ３４を指示した状態の表示画面３０上の表示を示している（ステップ４）。
【００２４】
次に、指示した閉領域の面形状を定義する要素を指示する（ステップ５）。まず、閉領域の面形状定義を指示すると、指示した各面形状の定義に従い、メッセージ３２が表示画面３０上に表示され、面形状を定義する要素の指示が促される。そこで、例えば図７に示したような正面図内の平面や断面の面形状は、側面図内の対応する要素によって定まる数学式によって表すことができるので、表示されたメッセージの指示に従い、表示画面３０に表示された側面図内の対応する要素をマウスカーソル３１１により指示する。図においては、マウスカーソル３１１−１で指示された領域がマウスカーソル３１１−２で指示された要素と対応づけられている。同様に、図８に示したような回転面となる正面図内の閉領域の面形状は、その閉領域内の回転中心３０１と、側面図内の対応する回転要素によって定まる数学式によって表すことができるので、メッセージ３２の指示に従い、表示画面３０に表示された閉領域（マウスカーソルの指示位置３１１−３に対応する）内の回転中心３０１と、側面図内の対応する回転要素（マウスカーソルの指示位置３１１−４に対応する）を、マウスカーソル３１１により指示する。以上の面形状の定義と面形状を定義する要素の指示を全領域実施する。
【００２５】
ここまでの処理で面形状定義の対象となる閉領域と、その面形状の定義と、その面形状を定義する要素が確定したので、これらにより面形状を表す数学式を導き、対象閉領域の面形状として定義し、メインメモリ１３に格納する（ステップ６）。
【００２６】
以上の処理によりメインメモリ１３に定義された閉領域の面形状と、閉領域を用い、キーボード１４からの表示指示に基づき３次元化の処理を行い、３次元面（サーフェイス）モデルを生成し、表示画面３０上に表示した例を図９に示す。
【００２７】
なお、表示画面３０上に表示された閉領域と図形要素をマウス１５とキーボード１４で指示したが、予め図面中の閉領域の内部、およびその面形状を表す要素上に、各々対になる図形属性（たとえば記号や文字、色など）をキーボード１４により指示して、メインメモリ１３に記憶しておき、さらに、予めこの図形属性ごとの面形状の定義を記憶しておけば、表示、入力指示等の対話処理を行うことなしに、バッチ処理にて面形状の定義を行ってもよい。
【００２８】
以上説明した様に本実施の形態によれば、対象となる閉領域を指示し、対象閉領域の面形状の定義を指示し、対象閉領域の面形状を定義する要素を指示し、対象閉領域の面形状を定義することにより、２次元図面等として表現された図形の３次元化面（サーフェイス）モデル化を実現し、３次元形状入力の手間と精度を大幅に向上することができる。
【００２９】
（第２の実施の形態）
次に本願発明の第２の実施の形態について詳細に説明する。
【００３０】
図１０は、本願発明の第２の実施の形態の処理動作を示すフローチャートである。
【００３１】
投影の対象となる３次元図形は、第１の実施の形態等により予め作成されハードディスク装置２０に格納されている。
【００３２】
まず、ステップ１１において、あらかじめハードディスク装置２０に記憶されている投影面の方向を表すＸ軸、Ｙ軸、Ｚ軸それぞれを表示画面３０に表示する。あらかじめハードディスク装置２０に記憶されている投影面は、その面を一意に表すｉｄと、各軸の方向ベクトルからなるデータで構成されている。ここで表示される投影面の方向を表すＸ軸、Ｙ軸、Ｚ軸の数は、ハードディスク装置２０に記憶されている投影面の数と一致する。図１１に示す例では、ハードディスク装置２０に、３つの投影面が記憶されていることを示している。
【００３３】
オペレーターは、これを見て投影面を決定し、マウスカーソル３１１により、投影面を表すＸ軸、Ｙ軸、Ｚ軸のうちいずれかをクリックするか、もしくは投影面を一意に表すｉｄをキーボード１４より入力する。
【００３４】
次に、ステップ１２において、指示された投影面のＸ軸、Ｙ軸、Ｚ軸を矩形３９で囲んだのち、カラー表示（他の投影面を表わすＸ軸、Ｙ軸、Ｚ軸と異なる色とする）を行い、その投影面のデータのうちＸ軸方向ベクトル、Ｙ軸方向ベクトル、Ｚ軸方向ベクトルをハードディスク装置２０から読み出し、メインメモリ１３に格納する。図１２に、この状態の表示画面３０上の表示を示す。
【００３５】
ステップ１３では、メインメモリ１３に格納されている３次元図形を、ステップ１２で抽出した投影面の各軸方向ベクトルに基づき２次元図形への投影変換を行う。変換処理は、各軸方向ベクトルから４ｘ４マトリックスを作成し、メインメモリ１３に格納されている３次元図形の各要素定義点（線分ならば始終点、円弧ならば中心点および始終点、円ならば中心点など）とそのマトリックスとの積により座標変換を行い、Ｚ方向の値を無視することで行う。円・円弧についてはさらに径および方向を考慮、円弧は回り向きを考慮し、２次元図形へ変換する。またメインメモリ１３に格納されている３次元図形が面情報を保持しているならば、隠線処理も同時に行う。
【００３６】
変換処理が終了すると、ステップ１４において、投影図の表示画面３０上への表示指示に基づいて表示行う。同時に投影図をメインメモリ１３に格納する。図１３に、このとき表示画面３０上の表示を示す。図において、３Ｄエリア３７と２Ｄエリアに表示画面３０が分割され、それぞれのエリアに３次元図形と投影面を選択され、変換処理された投影図が表示されている。
【００３７】
以上説明したように本実施の形態によれば、あらかじめ登録された投影面を表示し、指示された投影面を参照し、指示された投影面へ投影変換し、変換後の投影図を表示することにより、オペレーターはあらかじめ計算で投影面の法線方向ベクトルとＸ軸方向ベクトルを求めておくといった作業の必要がなくなり、容易に投影面の作成ができるという効果がある。
【００３８】
（第３の実施の形態）
次に、本願発明の第３の実施の形態について、詳細に説明する。
【００３９】
本第３の実施の形態において、重複・連続要素の判定のために必要な判定量は、キーボード１４から入力される。ハードディスク装置２０には、二次元要素に対応するデータ（二次元線分の場合は始点・終点の座標、二次元円弧の場合は、始点・終点・中心の座標と回り方向、二次元円の場合は、中心の座標と半径、二次元楕円弧の場合は、始点・終点・中心の座標と長径・短径・長径のＸ軸からの角度と回り方向、二次元楕円の場合は、始点・中心の座標と長径・短径・長径のＸ軸からの角度と回り方向などの図形要素を決定するのに十分な幾何情報）や重複・連続要素合成結果等や二次元要素データが格納されている。これらのデータ等は、必要によりハードディスク装置２０から、メインメモリ１３に読み込まれ、また、表示装置２５に表示される。
【００４０】
図１４は、本願発明の第３の実施の形態の処理動作を示すフローチャートである。
【００４１】
ステップ２１で、キーボード１４から重複・連続要素を判定する判定量を入力するか、あるいはメインメモリ１３にあらかじめ設定し、格納してある値を読み込む。判定量とは、２点が同一点と判定される距離の一致判定量（εｄ）である。
【００４２】
ステップ２２では、メインメモリ１３に格納されている二次元要素データに対し、ＣＰＵ１１により図１５乃至図１７に示すように一致判定量（εｄ）以内で同一直線上、同一円又は同一楕円上にあり、一致判定量（εｄ）の半径で、端点６１を中心とする円６３と交点を持つ要素を重複・連続要素と判定する計算を行い、重複・連続要素と判定された要素をメインメモリ１３に格納されている各要素の合成可能要素列テーブルにセットする。図１５乃至図１７は、表示画面３０上に表示された図形の一部を示すものである。図において、要素６２が重複・連続要素と判定された要素である。例えば、図１８において、要素（ｅ１，ｅ２，ｅ３，ｅ４，ｅ５，ｅ６）に対して、要素ｅ１と他の要素（ｅ２〜ｅ６）との組み合わせで線分と線分、円弧と円弧等のように同じ要素種別の場合、一致判定量（εｄ）以内で同一直線上、同一円上、同一楕円弧上であり、どちらかの要素の始点・終点が他の要素の要素上にある要素、例えば要素ｅ５を要素ｅ１の合成可能要素列（Ｍ１＝｛ｅ５｝）として取り出す計算を行う。この計算を、メインャｃ鰍Ｐ３に格納されている他の全ての要素（ｅ２〜ｅ６）についても同様に行い合成可能要素列を求め、図１９に示すようなメインメモリ１３の合成可能要素列テーブル７０に格納する。
【００４３】
ステップ２３では、ＣＰＵ１１においてステップ２で重複・連続要素と判定され合成可能要素列テーブル７０にセットされた要素から、合成可能要素列テーブル７０の他の要素と結合した合成要素列を求め、メインメモリ１３の所定の領域に格納する。例えば、図２０において、要素（ｅ１，ｅ２，ｅ３，ｅ４，ｅ５）に対しステップ２２によって求められた合成可能要素列テーブル７０をもとに、図２１に示すように、まずｅ１の合成可能要素列（Ｍ１）とｅ１をｅ１の合成要素（Ｇ１＝｛ｅ１，ｅ２，ｅ３｝）とし、合成要素（Ｇ１）内の要素ｅ２，ｅ３の合成可能要素列（Ｍ２，Ｍ３）を結合して、合成要素列（Ｇ１＝｛ｅ１，ｅ２，ｅ３，ｅ４，｝）を求める。次に新たに加わった要素ｅ４の合成可能要素列（Ｍ４）を結合する。このように、合成可能要素列テーブル７０に基づき、合成要素列から合成可能要素列を結合し、全ての合成可能要素列についても同様に行いの合成要素列を求め、最終的に求められた合成要素列をメインメモリ１３の所定の領域に格納する。
【００４４】
ステップ２４では、メインメモリ１３に格納された合成要素列を基に要素データの合成を中央処理装置５において行う、例えば、ステップ２３での結合で求められた合成要素列の要素データの合成は、図２２に示すように、要素ｅ１と要素ｅ２において要素ｅ１の始点３と終点４の要素ｅ２上の判定と要素ｅ２の始点５と終点６の要素ｅ１上の判定を行い、それぞれの要素上にない始点３と終点４を始点・終点とする要素ｍ７を求める。同様に図２３に示すように求めた要素ｍ７とｅ３の合成で要素ｍ８を求める。以下同様に図２４、図２５に示すように、要素ｅ５を合成するまで繰り返し、ｅ１〜ｅ５の要素データを合成し、メインメモリ１３に格納されている合成前ｅ１〜ｅ５の要素データをメインメモリ１３から消去し、合成した要素データをメインメモリ１３に格納し、データの更新をすると共に表示画面３０上に結果を表示する。円弧、楕円弧の合成の場合は合成された要素が円又は楕円になった時点で以降のデータを合成する必要はないため処理を終了し、合成前の要素データをメインメモリ１３から消去し、円又は楕円としてメインメモリ１３に要素データを格納することにより、データを更新する。
【００４５】
以上説明したように本実施の形態によれば、重複・連続要素の判定のための判定量を設定し、線分や円弧などの要素データの集合から重複・連続する要素を判定し、各要素の合成可能な要素列を取り出し、重複・連続要素であると判定された合成可能要素列のグループ化を行い、合成要素列の要素を合成することにより、要素数を少なくし、記憶域の圧迫を防ぎ、処理効率を上げることができるという効果がある。
【００４６】
（第４の実施の形態）
次に、本願発明の第４の実施の形態について詳細に説明する。
【００４７】
なお、本第４の実施の形態は、第３の実施の形態と同様に各データは予めハードディスク装置２０に格納されており、必要に応じてメインメモリ１３に読み込まれるものである。
【００４８】
図２６は、本第４の実施の形態の処理動作を示すフローチャートである。
【００４９】
ステップ３１で、ハードディスク装置２０にあらかじめ設定されている誤差量を読み込むか、あるいはキーボード１４から入力を行う。誤差量は要素の始点・終点間の距離が微小要素であるとみなす微小要素長さ（εｇ）と２点が同一点と判定する距離の一致判定量（εｊ）を読み込む。
【００５０】
ステップ３２では、三次元形状データをハードディスク装置２０より読み込み、キーボード１４より投影処理に必要な視線方向の入力を、例えば第２の実施の形態の如く行う。そして、図２７に示す如く表示画面３０に表示し、ハードディスク装置２０より読み込んだ三次元形状データをもとにＣＰＵ１１において、指定された視線方向に投影処理を行い、二次元形状データを求める。またこのときに隠面処理の指定がされた場合は隠面処理と投影処理を行い、二次元形状データを求める。
【００５１】
ステップ３３では、ステップ３２で求められた二次元要素をメインメモリ１３上のテーブル（以後、処理テーブル７１と呼ぶ）に格納する際に、ＣＰＵ１１において線分、円弧などの要素種別毎にステップ３１で読み込んだ誤差量（微小要素長さ（εｇ）、一致判定量（εｊ））との比較の計算を行い、微小要素長さ以下の要素等は処理テーブルへのセットから除く。
【００５２】
例えば、ステップ３２で計算された結果を処理テーブル７１にセットする際に、要素と設定誤差量との比較で図２８の（ａ）〜（Ｋ）に示すような比較条件に１つでもあてはまる要素は微小要素と判定し、処理テーブルへのセットを行わないことによって微小要素の除去となる。除去となる場合は、例えば、次の通りである。
【００５３】
・線分の場合：（ａ）線分の始点１と終点２の距離ｄａが微小要素長さ（εｇ）以下。
【００５４】
・円弧の場合：
（ｂ）円弧の始点１と中心２の距離ｄｂが微小要素長さ（εｇ）以下。
【００５５】
（ｃ）円弧の始点１と中心２の距離ｄ３と終点４と中心２の距離ｄ５の差ｄｃが一致判定量（εｊ）より大きい。
【００５６】
（ｄ）円弧の始点１と終点２の距離ｄｄが微小要素長さ（εｇ）以下。
【００５７】
（ｅ）円弧の始点１と終点２の距離ｄｅが一致判定量（εｊ）以下。
【００５８】
・円の場合：
（ｆ）円の始点１と中心２の距離ｄｆが微小要素長さ（εｇ）以下。
【００５９】
（ｇ）円の始点１と中心２の距離ｄ３が一致判定量（εｊ）以下又は、始点１と終点４の距離ｄ５が一致判定量（εｊ）より大きい。
【００６０】
・楕円弧の場合
（ｈ）長軸１と楕円弧２との交点３と中心４との距離ｄ５又は、短軸６と楕円弧２との交点７と中心４との距離ｄ８が微小要素長さ（εｇ）以下。
（ｉ）楕円弧の始点１と終点２の距離ｄｉが微小要素長さ（εｇ）以下。
【００６１】
・楕円の場合
（ｊ）長軸１と楕円弧２との交点３と中心４との距離ｄ５又は、短軸６と楕円弧２との交点７と中心４との距離ｄ８が微小要素長さ（εｇ）以下。
【００６２】
（ｋ）楕円の始点１と終点２の距離ｄｋが一致判定量（εｊ）より大きい。
【００６３】
ステップ３４では、第３の実施の形態の如くハードディスク装置２０に格納されている二次元要素データに対し、ＣＰＵ１１において、図２９乃至図３１に示すように一致判定量以内（εｊ）で同一直線上、同一円又は同一楕円上にあり、一致判定量（εｊ）の半径で、端点を中心とする円と交点を持つ要素を重複・連続要素と判定する計算を行い、重複・連続要素と判定された要素を各要素の合成可能要素列テーブル７０にセットする。そして、図３２に示すように、第３の実施の形態と同様にして、合成可能要素列を求め、メインメモリ１３の合成可能要素列テーブル７０に格納する。
【００６４】
ステップ３５では、第３の実施の形態と同様にして、合成要素列Ｇ１を求め、求められた合成要素列Ｇ１をメインメモリ１３の所定の領域に格納する。
【００６５】
ステップ３６では、第３の実施の形態と同様にして、メインメモリ１３に格納された合成要素列を基に要素データの合成をＣＰＵ１１において行う。
【００６６】
ステップ３７では、ステップ３６で求められた結果に基づいて、図形を表示画面３０に表示（図３３）するとともに、メインメモリ１３の所定の領域に二次元要素データの保存を行う。
【００６７】
以上説明したように本実施の形態によれば、重複・連続要素の判定のための判定量を設定し、線分や円弧などの要素データの集合から重複・連続する要素を判定し、各要素の合成可能な要素列を取り出し、重複・連続要素であると判定された合成可能要素列のグループ化を行い、合成要素列を求め、合成要素列の要素を合成する、要素数を少なくし、記憶域の圧迫を防ぎ、要素の表示・登録を高速に行える。
【００６８】
【発明の効果】
以上説明のように本願発明によれば、重複・連続要素であるか否かを要素種別毎に判定し、判定の結果に基づいて、図形の要素の合成を行うことにより、要素数を少なくし、処理効率を上げることができる。
【００６９】
また、本願発明によれば、図形要素から微小要素を除去し、重複・連続要素であるか否かを判定し、判定の結果に基づいて、図形の要素の合成を行うことにより、要素数を少なくし、処理効率を上げることができる。
【図面の簡単な説明】
【図１】本願発明の一実施の形態のブロック図
【図２】本願発明の第１の実施の形態の処理動作を示すフローチャート
【図３】第１の実施の形態における閉領域を説明する図
【図４】第１の実施の形態における閉領域の指示を説明する図
【図５】第１の実施の形態における表示画面３０上の表示を示す図
【図６】第１の実施の形態における表示画面３０上の表示を示す図
【図７】第１の実施の形態における表示画面３０上の表示を示す図
【図８】第１の実施の形態における表示画面３０上の表示を示す図
【図９】第１の実施の形態における表示画面３０上の表示を示す図
【図１０】本願発明の第２の実施の形態の処理動作を示すフローチャート
【図１１】第２の実施の形態における表示画面３０上の表示を示す図
【図１２】第２の実施の形態における表示画面３０上の表示を示す図
【図１３】第２の実施の形態における表示画面３０上の表示を示す図
【図１４】本願発明の第３の実施の形態の処理動作を示すフローチャート
【図１５】第３の実施の形態における同一点の判定を示す概念図
【図１６】第３の実施の形態における同一点の判定を示す概念図
【図１７】第３の実施の形態における同一点の判定を示す概念図
【図１８】第３の実施の形態における同一の要素を示す概念図
【図１９】第３の実施の形態における合成可能要素列テーブルの概念図
【図２０】第３の実施の形態における要素の合成を示す概念図
【図２１】第３の実施の形態における要素の合成を示す概念図
【図２２】第３の実施の形態における要素の合成を示す概念図
【図２３】第３の実施の形態における要素の合成を示す概念図
【図２４】第３の実施の形態における要素の合成を示す概念図
【図２５】第３の実施の形態における要素の合成を示す概念図
【図２６】本願発明の実勢例４の処理動作を示すフローチャート
【図２７】第３の実施の形態における表示画面の表示を示す図
【図２８】第４の実施の形態における要素と微小要素長さとの関係を示す図
【図２９】第３の実施の形態における同一点の判定を示す概念図
【図３０】第３の実施の形態における同一点の判定を示す概念図
【図３１】第３の実施の形態における同一点の判定を示す概念図
【図３２】第３の実施の形態における同一の要素を示す概念図
【図３３】第４の実施の形態における表示画面の表示を示す図
【図３４】表示画面上における重複要素を示す図
【図３５】表示画面上における重複要素を示す図
【図３６】表示画面上における重複要素を示す図
【図３７】陰影処理を行う前の３次元形状図形
【図３８】陰影処理後の３次元形状図形
【符号の説明】
１１  ＣＰＵ
１２  システムバス
１３  メインメモリ
１４  キーボード
１５  マウス
１６  キーインターフェース
１７  ＬＡＮインターフェース
１８  ＬＡＮ
１９  Ｉ／Ｏインターフェース
２０  ハードディスク装置
２１  フロッピーディスク装置
２２  ディスクインターフェース
２３  プリンタ
２４  プリンタインターフェース
２５  表示装置
２６  表示インターフェース
【図１】
0003619182.tif 000002
【図２】
0003619182.tif 000003
【図３】
0003619182.tif 000004
【図４】
0003619182.tif 000005
【図５】
0003619182.tif 000006
【図６】
0003619182.tif 000007
【図７】
0003619182.tif 000008
【図８】
0003619182.tif 000009
【図９】
0003619182.tif 000010
【図１０】
0003619182.tif 000011
【図１１】
0003619182.tif 000012
【図１２】
0003619182.tif 000013
【図１３】
0003619182.tif 000014
【図１４】
0003619182.tif 000015
【図１５】
0003619182.tif 000016
【図１６】
0003619182.tif 000017
【図１７】
0003619182.tif 000018
【図１８】
0003619182.tif 000019
【図１９】
0003619182.tif 000020
【図２０】
0003619182.tif 000021
【図２１】
0003619182.tif 000022
【図２２】
0003619182.tif 000023
【図２３】
0003619182.tif 000024
【図２４】
0003619182.tif 000025
【図２５】
0003619182.tif 000026
【図２６】
0003619182.tif 000027
【図２７】
0003619182.tif 000028
【図２８】
0003619182.tif 000029
【図２９】
0003619182.tif 000030
【図３０】
0003619182.tif 000031
【図３１】
0003619182.tif 000032
【図３２】
0003619182.tif 000033
【図３３】
0003619182.tif 000034
【図３４】
0003619182.tif 000035
【図３５】
0003619182.tif 000036
【図３６】
0003619182.tif 000037
【図３７】
0003619182.tif 000038
【図３８】
0003619182.tif 000039