説明

図形修正方法

【目的】 複数の線分や円弧などから成る図形要素データにおいて、本来接続しているはずの図形要素どうしが交差したり離れてしまっている場合でも、自動的に図形要素間のズレが修正され、再作図をするのに比べ大幅な時間短縮ができるようにする。
【構成】 複数の線分、円弧等の図形要素から構成される図形において、それら図形要素のトポロジーを認識するトポロジー認識行程S2と、トポロジーを保持しながら、全図形要素について各図形要素を規定する幾何パラメータの変更を行つて、図形要素のズレを修正する幾何パラメータ変更行程S3と、図形要素の伸縮を伴って端点を決定する端点決定行程S4とを備えることを特徴とする。更に、少なくとも図形要素間の結合状態を得るために必要な結合パラメータと図形要素の幾何パラメータの最大変更量との設定を行うパラメータ設定行程S1、あるいは前記幾何パラメータ変更行程で発生したエラー情報を出力するエラー情報出力工程S5を備える。

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、CADシステムなどで作成された図形要素間のズレを自動的に修正することができる図形修正方法に関するものである。
【0002】
【従来の技術】CADシステムなどで作成された図形において、本来接続しているはずの図形要素どうしが、コンピュータの計算誤差や人為的ミスにより離れてしまっているケースでは、閉ループ作成時などにおいて図形要素を自動的にトレースすることができないため、図形要素の再作図が必要である。このようなズレは微小なため、修正すべき箇所を視覚で判断するのが大変困難であり、しかも、修正すべき図形要素はかなりあつて、修正時間が膨大にかかってしまう。
【0003】そのため、離れている図形要素を接続させるための修正機能を持つものもあるが、単に図形要素どうしの交点を求めその位置を接続点とするだけであり、交点計算が不能なケースには対応できない。
【0004】
【発明が解決しようとする課題】本発明は、前記従来の欠点を除去し、図形要素間のズレを自動的に修正する図形修正方法を提供する。
【0005】又、本発明は、修正時のエラー情報を報知して、修正の適正判断あるいはオペレータによる修正も可能とする図形修正方法を提供する。
【0006】
【課題を解決するための手段】この課題を解決するために、本発明の図形修正方法は、複数の線分、円弧等の図形要素から構成される図形において、それら図形要素のトポロジーを認識するトポロジー認識行程と、トポロジーを保持しながら、全図形要素について各図形要素を規定する幾何パラメータの変更を行つて、図形要素のズレを修正する幾何パラメータ変更行程と、図形要素の伸縮を伴って端点を決定する端点決定行程とを備えることを特徴とする。少なくとも図形要素間の結合状態を得るために必要な結合パラメータと図形要素の幾何パラメータの最大変更量との設定を行うパラメータ設定行程を更に備え、前記トポロジー認識行程では、前記結合パラメータを使用してトポロジーを認識し、前記幾何パラメータ変更行程では、前記幾何パラメータの最大変更量内で幾何パラメータの変更を行う。
【0007】また、複数の線分、円弧等の図形要素から構成される図形において、それら図形要素のトポロジーを認識するトポロジー認識行程と、トポロジーを保持しながら、全図形要素について各図形要素を規定する幾何パラメータの変更を行つて、図形要素のズレを修正する幾何パラメータ変更行程と、図形要素の伸縮を伴って端点を決定する端点決定行程と、前記幾何パラメータ変更行程で発生したエラー情報を出力するエラー情報出力工程とを備えることを特徴とする。少なくとも図形要素間の結合状態を得るために必要な結合パラメータと図形要素の幾何パラメータの最大変更量との設定を行うパラメータ設定行程を更に備え、前記トポロジー認識行程では、前記結合パラメータを使用してトポロジーを認識し、前記幾何パラメータ変更行程では、前記幾何パラメータの最大変更量を越える幾何パラメータの変更がある場合に、エラー情報を発生する。
【0008】
【実施例】以下、本発明の実施例を図を用いて説明する。
【0009】図1は、本発明の図形修正方法の第1実施例の処理手順を説明するフローチャートであり、基本的には、誤差パラメータ設定ステップS1、トポロジー認識ステップS2、幾何パラメータ変更ステップS3と、伸縮ステップS4との順から構成される。
【0010】図2は、図1のフローチャートに示す動作手順を実行するハードウェアの概念図であり、計算,判定等を行なう中央処理装置1と、図形要素データ等を表示するCRT等の表示装置2と、マウス,キーボード等の入力装置3と、磁気ディスクやメモリ等の記憶装置4と、データやプログラム等を読み込む磁気テープ装置やネットワーク装置等の情報読み込み装置5とから構成される。尚、データやプログラムの一部は記憶装置4にも予め記憶されている。
【0011】以下、処理手順について詳細に説明する。ここで、ステップS1からステップS4までの計算、判定等の処理は、図2に示す中央処理装置1で行なうものとする。
【0012】(誤差パラメータの設定)ステップS1では、誤差パラメータの設定を行なう。誤差パラメータは、2つの図形要素が本来は結合すると判断する際の基準として用いる結合誤差量εr と、結合する2つの図形要素が接していると判断する際の基準として用いる接合誤差量εt と、図形要素の幾何パラメータを変更する際の上限を定める幾何パラメータ最大変更量とから構成される。ここで、図形要素とは、線分,円弧,楕円などの個々の図形をいう。また、幾何パラメータとは、例えば円弧の場合、それを数学的に定義するために必要な中心座標や半径等が相当する。また、最大変更量とは、円弧の例では、半径を半径±αの範囲で変更できるとした場合、このαを円弧の半径の最大変更量という。
【0013】したがって、幾何パラメータは図形要素の種別(線分,円弧等)毎に一般には複数個存在し、最大変更量もそれら各々に対して設定されることになる。誤差パラメータの設定手段としては、図2に示す入力装置3等を用いて入力する方法や、あらかじめ図2に示す記憶装置4に記憶させておき、それを読み出して設定する方法、あるいは磁気テープ装置やネットワーク装置など図2に示す情報読み込み装置5から読み込む方法等がある。
【0014】(トポロジーの認識)ステップS2では、図2に示す記憶装置4あるいは情報読み込み装置5から、対象となる全ての図形要素データを図2に示す記憶装置4に読み込み、全図形要素のトポロジー情報を図2に示す記憶装置4上に作成する。ここで、トポロジー情報とは、図形要素がどの図形要素とどのように結合しているかを表わす情報をいう。
【0015】どの図形要素と結合しているかの情報を得るには、ある図形要素に着目し、その要素上の任意の点からステップS1で設定した半径εr の円を考え、その円内に存在する他の図形要素はすべて結合すると判断することにより行なう。図3は、円弧31の始点に着目した時、円弧31の始点を中心とする半径εr の円内に、線分32が存在するため、円弧31と線分32は結合すると判断される例である。
【0016】また、どのように結合しているかは、図4にあるような3種類考えられ、■に示すように接する場合、■に示すように交差する場合、■に示すように同一な幾何パラメータを持った図形要素が連続している場合がある。それを判断する方法として、例えば円弧と線分の場合は、図5に示すように、円弧の中心から結合する線分に垂線を下し、円弧の中心から線分までの距離と円弧の半径との差d1を求める。図6のように円弧と円弧の場合は、両円弧の中心間の距離と半径の和との差d2を求める。d1あるいはd2がステップS1で設定したεt 以内の時、2つの図形要素は接していると判断する。逆にdがステップS1で設定したεtより大きいときは、交差していると判断する。
【0017】さて、図7は、2つの円弧と3つの線分から構成される図形である。例えば、円弧71に着目する。円弧71は、始点S71で線分72の終点E72に接し、終点E71で線分73の始点S73に接し、中央C71で円弧74の終点E74と接していると判断する。以下、同様に全図形要素に対しトポロジー情報を得る。図8は、図7に示した例に対し、本ステップSで得られたトポロジー情報の概念図を表わしたものである。図中の71〜75は図7における図形要素の番号を表わし、S71は図形要素71の始点、E71は図形要素71の終点、C71は図形要素71の中央にある点というように、Sn は図形要素番号nの始点側、En は図形要素番号nの終点側、Cn は図形要素番号nの中央側の点を表わしている。図中、“接する”と書いてあるのは、2つの図形要素どうしがその点で接しているということを示している。
【0018】(幾何パラメータの変更)ステップS3では、全図形要素について、ステップS2で得たトポロジー情報に基づき、ステップS1で設定した幾何パラメータ最大変更量内で、図形要素の幾何パラメータの変更を行い、ステップS2で図2の記憶装置4上に読み込まれた図形要素データを修正する。ここでの目的は、ステップS4にて図形要素の端点を求める際、誤差により交点計算が可能となるのを防ぐことにある。
【0019】本ステップの詳細な手順を図7に示した図形要素群を例として以下に説明する。
【0020】図7は3つの線分と2つの円弧から構成されるが、例えば機構部品などを表わす図形の場合には、線分は寸法を規定する基準平面を表わしている可能性がある。一方、円弧で表さわれる円筒面は平面に比べ測定が困難であるため、平面に比べて寸法精度を要求されないことが多い。したがって、最大変更量の範囲で線分の傾きなどの幾何パラメータを変更することが許されていても、線分の幾何パラメータは極力変更しないことが望ましい。このような理由から、ここでは線分以外の図形要素の幾何パラメータ変更を線分の幾何パラメータ変更より優先して行なうものとする。
【0021】さて、本ステップでの処理を制御するため、各図形要素毎に図2の記憶装置4上にフラグを設定する。このフラグは、幾何パラメータの変更が正常に終了したか、正常に終了しなかったか、変更処理がまだされていないかを表わすものとする。ここでは説明の都合上、各々の値を“1”,“−1”,“0”としておく。また、線分以外の図形要素を優先して処理していくため、便宜上全ての線分のフラグは初期状態で“1”としておく。図9は、図8と同様に、図7の図形要素群のトポロジー情報の概念図であるが、図形要素番号に網がけすることにより、その図形要素のフラグが“1”になっていることを表わしている。
【0022】図9により、円弧71は、線分72,73、円弧74に接することが分かるが、円弧74はフラグが“0”であり、その幾何パラメータが今後変更される可能性が高いため、ここでは、既にフラグが“1”となっている線分72を含む直線と、線分73を含む直線とに接するように、円弧71が含まれる円の幾何パラメータを決定すればよいことになる。ここで線分を直線で、円弧を円で考える理由は、線分や円弧はそれらの端点が決定して始めて定義できるものであるが、本実施例では端点の決定はステップS4で行なわれ、本ステップでは未定なためである。
【0023】この例のように、2直線に接する円を求める場合で、かつ2直線が平行でない場合は、それらに接する円の半径は任意の値で求めることができるため、半径を変える必要は特にない。したがって、ここでは半径は円弧71と同じ値としておき、中心座標を計算すればよいことになる。計算結果として、2直線に接する定半径の円は中心座標を異にして複数個求まるが、その中から中心座標が円弧71の中心座標Q71に最も近いものを選択し、その中心座標を円弧71の変更後の幾何パラメータとする。
【0024】図10は、その修正の様子を示したものである。もし、元の中心座標Q71と新しく求めた中心座標との距離が、ステップS1で設定した円弧の中心座標に対する幾何パラメータ最大変更量よりも大きくなってしまった場合には、円弧71は正常に変更できなかったものとし、円弧71に対応するフラグの値を“−1”とする。幾何パラメータ最大変更量以内であった場合は、正常に変更できたものとしてフラグを“1”とし、記憶装置4に読み込んだ図形要素データ内の円弧71の中心座標を新しい中心座標Q71′に更新する。
【0025】次に、図11は円弧71の幾何パラメータが正常に変更された状態のトポロジー概念図である。図1111から、円弧74は円弧71と線分75とに接し、かつ両者ともフラグは“1”となっている。よって円弧71を含む円と線分75を含む直線とに接する円を求めることにより、その中心座標を円弧74の変更後の幾何パラメータとする。この場合も円弧71と同様に半径の変更は特に必要ではないため、半径はそのままとしておく。
【0026】図12にその様子を示した。以下、幾何パラメータ変更のチェックや、フラグや図形要素データの更新については円弧71と同様に行なう。これで円弧74の幾何パラメータも変更したので、図7における全図形要素の幾何パラメータが決定したことになる。なお、円弧74を処理する際、円弧71のフラグが“−1”となっている場合は、円弧74の幾何パラメータもそれにより正常に求めることができなかったとして、円弧74のフラグを“−1”にするか、あるいは円弧71は無視して、円弧74は線分5にだけ接するように求めるか、いずれでも可能である。
【0027】以上説明したように、その図形要素の幾何パラメータを決める他の図形要素のうち、既にフラグが“1”、すなわち幾何パラメータが決定されている図形要素を選び、これに基づいて着目図形要素の幾何パラメータを決定し、この処理をすべての図形要素が終了するまで繰り返す。
【0028】なお、本実施例では、2直線に接する円、直線と円に接する円の2つの例を説明したが、これ以外にも2円に接する円、3直線に接する円、定点を通り2円に接する円など様々なケースがあり、それらは図8等に示したトポロジー概念図を用いて場合分けされる。また、本実施例では、線分以外の図形要素の変更を、線分の変更より優先したが、逆に線分の変更を他より優先することも可能である。また本ステップにおいて、特に幾何パラメータの変更を必要とない例を図13に示す。図1313では、円弧81と線分82とが、ステップS2において、円弧81の始点S81は線分2の終点E82で交差すると判定され、この場合は円弧81の幾何パラメータを変更しなくても、ステップS4で端点の計算が可能である。したがって、本ステップでは、円弧81のフラグは“1”に設定するだけで、その幾何パラメータの変更は行なわない。
【0029】(端点の修正:図形要素の伸縮)ステップS4では、前ステップまでに変更された全図形要素について、結合する図形要素どうしの交点を求めることにより、端点を決定する。図8において、まず円弧71に着目する。始点側S71に結合する図形要素は、線分72の終点側E72であることが分かる。よって、円弧71を含む円と、線分72を含む直線との交点を求め、その点をS71とする。S71が決まると、E72はS71と同じ座標として決定できる。この様子を図14に示す。
【0030】この様に、すべての図形要素について端点を決定し、図2に示す記憶装置4上の図形データを更新する。全図形要素の端点が決定したところで、記憶装置4上の図形データをあらかじめ定められた場所(図2での記憶装置4上、あるいはネットワーク接続装置など情報読み込み装置5を介した他の装置上など)へ出力し、ステップS4が終了する。
【0031】
【他の実施例】図15は第2実施例の処理手順を示すフローチャートである。尚、ステップS1からS4は第1実施例と同様であるのでここでは説明しない。
【0032】(エラー情報の表示)ステップS5では、ステップS3において正常に変更できなかった図形要素、本例ではフラグが“−1”になっている図形要素、のエラー情報を、図2に示す表示装置2あるいは記憶装置4上に出力する。このようにすれば、その情報を利用することにより、エラーとなった図形要素のみを再作図するなどにより、全ての図形要素データの修正を行なうことができる。
【0033】尚、本発明は、複数の機器から構成されるシステムに適用しても、1つの機器から成る装置に適用しても良い。また、本発明はシステム或は装置にプログラムを供給することによって達成される場合にも適用できることは言うまでもない。
【0034】
【発明の効果】本発明により、図形要素間のズレを自動的に修正する図形修正方法を提供できる。又、修正時のエラー情報を報知して、修正の適正判断あるいはオペレータによる修正も可能とする図形修正方法を提供できる。
【0035】すなわち、複数の線分や円弧などから成る図形要素データにおいて、本来接続しているはずの図形要素どうしが交差したり離れてしまっている場合でも、自動的に図形要素間のズレが修正され、再作図をするのに比べ大幅な時間短縮ができる。
【図面の簡単な説明】
【図1】本発明の基本的な処理手順を示すフローチャートである。
【図2】本実施例の処理を行う装置のハードウェアの概念図である。
【図3】本実施例の結合判定を説明する図である。
【図4】本実施例の結合状態の数例を示す図である。
【図5】本実施例の結合状態の判定を説明する図である。
【図6】本実施例の結合状態の判定を説明する図である。
【図7】本実施例で処理する図形例を示す図である。
【図8】図7をトポロジー認識して得られたトポロジー情報の概念図である。
【図9】図8で直線を処理済とした場合の図である。
【図10】図7で円弧71を線分72,73に接するよう修正した図である。
【図11】図10の時点のトポロジー情報の概念図である。
【図12】図10で円弧74を修正された円弧71と線分75に接するよう修正した図である。
【図13】円弧と線分とが交差すると判断される場合を説明する図である。
【図14】端点の修正処理を説明する図である。
【図15】他の実施例の処理手順を示すフローチャートである。

【特許請求の範囲】
【請求項1】 複数の線分、円弧等の図形要素から構成される図形において、それら図形要素のトポロジーを認識するトポロジー認識行程と、トポロジーを保持しながら、全図形要素について各図形要素を規定する幾何パラメータの変更を行つて、図形要素のズレを修正する幾何パラメータ変更行程と、図形要素の伸縮を伴って端点を決定する端点決定行程とを備えることを特徴とする図形修正方法。
【請求項2】 少なくとも図形要素間の結合状態を得るために必要な結合パラメータと図形要素の幾何パラメータの最大変更量との設定を行うパラメータ設定行程を更に備え、前記トポロジー認識行程では、前記結合パラメータを使用してトポロジーを認識し、前記幾何パラメータ変更行程では、前記幾何パラメータの最大変更量内で幾何パラメータの変更を行うことを特徴とする請求項1記載の図形修正方法。
【請求項3】 複数の線分、円弧等の図形要素から構成される図形において、それら図形要素のトポロジーを認識するトポロジー認識行程と、トポロジーを保持しながら、全図形要素について各図形要素を規定する幾何パラメータの変更を行つて、図形要素のズレを修正する幾何パラメータ変更行程と、図形要素の伸縮を伴って端点を決定する端点決定行程と、前記幾何パラメータ変更行程で発生したエラー情報を出力するエラー情報出力工程とを備えることを特徴とする図形修正方式。
【請求項4】 少なくとも図形要素間の結合状態を得るために必要な結合パラメータと図形要素の幾何パラメータの最大変更量との設定を行うパラメータ設定行程を更に備え、前記トポロジー認識行程では、前記結合パラメータを使用してトポロジーを認識し、前記幾何パラメータ変更行程では、前記幾何パラメータの最大変更量を越える幾何パラメータの変更がある場合に、エラー情報を発生することを特徴とする請求項3記載の図形修正方法。

【図1】
image rotate


【図4】
image rotate


【図13】
image rotate


【図2】
image rotate


【図3】
image rotate


【図5】
image rotate


【図6】
image rotate


【図7】
image rotate


【図8】
image rotate


【図9】
image rotate


【図10】
image rotate


【図12】
image rotate


【図14】
image rotate


【図11】
image rotate


【図15】
image rotate


【公開番号】特開平7−21224
【公開日】平成7年(1995)1月24日
【国際特許分類】
【出願番号】特願平5−149461
【出願日】平成5年(1993)6月21日
【出願人】(000001007)キヤノン株式会社 (59,756)