JP3274905B2 - Cadデータの処理方法 - Google Patents
Cadデータの処理方法Info
- Publication number
- JP3274905B2 JP3274905B2 JP10293793A JP10293793A JP3274905B2 JP 3274905 B2 JP3274905 B2 JP 3274905B2 JP 10293793 A JP10293793 A JP 10293793A JP 10293793 A JP10293793 A JP 10293793A JP 3274905 B2 JP3274905 B2 JP 3274905B2
- Authority
- JP
- Japan
- Prior art keywords
- vector
- coordinates
- intersection
- cad data
- processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Landscapes
- Numerical Control (AREA)
Description
【0001】
【産業上の利用分野】本発明は、板金CAD/CAMシ
ステムにおいてCAMに渡されるCADデータを作成す
るCADデータの処理方法に関し、特に線素の重複する
部分を取り除き、隣合う線素の交点が端点でない場合、
該交点から先を取り除き、最小限の線素数からなる完全
な一筆書き図形を作成するCADデータの処理方法に関
する。
ステムにおいてCAMに渡されるCADデータを作成す
るCADデータの処理方法に関し、特に線素の重複する
部分を取り除き、隣合う線素の交点が端点でない場合、
該交点から先を取り除き、最小限の線素数からなる完全
な一筆書き図形を作成するCADデータの処理方法に関
する。
【0002】
【従来の技術】従来、コンピュータの支援による設計
(CAD:Computer-Aided Design)を行い、該設計結
果をもとにコンピュータを利用して製造(CAM:Comp
uter-Aided Manufacturing)を行うCAD/CAMシス
テムが知られている。
(CAD:Computer-Aided Design)を行い、該設計結
果をもとにコンピュータを利用して製造(CAM:Comp
uter-Aided Manufacturing)を行うCAD/CAMシス
テムが知られている。
【0003】すなわち、CADは、コンピュータの支援
のもとにディスプレイ上で図面データ(CADデータ)
を作成し、該作成したCADデータを記憶装置等に出力
する。そして、CAMがCADに連動して、CADで出
力されたCADデータをもとに数値制御(NC)工作機
械で自動加工するためのNCテープを作成したり、直接
加工データを加工機械に送り、直接製造を行う。このC
ADは、手書きで図面を起こすのに比べて修正が簡単で
あり、作成したCADデータを記憶装置に蓄積すること
ができるため、随時取り出して使え、過去の資産を有効
に活用することができるとともに、手作業に比べて作図
用の器具に習熟する必要がないため、短期間に作業者を
養成することができる利点を有する。
のもとにディスプレイ上で図面データ(CADデータ)
を作成し、該作成したCADデータを記憶装置等に出力
する。そして、CAMがCADに連動して、CADで出
力されたCADデータをもとに数値制御(NC)工作機
械で自動加工するためのNCテープを作成したり、直接
加工データを加工機械に送り、直接製造を行う。このC
ADは、手書きで図面を起こすのに比べて修正が簡単で
あり、作成したCADデータを記憶装置に蓄積すること
ができるため、随時取り出して使え、過去の資産を有効
に活用することができるとともに、手作業に比べて作図
用の器具に習熟する必要がないため、短期間に作業者を
養成することができる利点を有する。
【0004】ところで、CADにより作成されたCAD
データをもとにCAMが処理を行う場合、CADデータ
をそのまま処理すると正しい加工データが作成されなか
ったり、CAMがCADデータを受け取ることができな
い場合が生じる。
データをもとにCAMが処理を行う場合、CADデータ
をそのまま処理すると正しい加工データが作成されなか
ったり、CAMがCADデータを受け取ることができな
い場合が生じる。
【0005】すなわち、実際に作成されるCADデータ
には、重複する線や、はみ出した線が存在したCADデ
ータである場合が頻繁に生じ、該CADデータをもとに
CAMが処理する場合、上述したように正しい加工デー
タが作成されず、あるいはCADデータを受け取ること
ができなかった。
には、重複する線や、はみ出した線が存在したCADデ
ータである場合が頻繁に生じ、該CADデータをもとに
CAMが処理する場合、上述したように正しい加工デー
タが作成されず、あるいはCADデータを受け取ること
ができなかった。
【0006】特に、板金CAD/CAMシステムにおけ
るCADデータは、CADデータの線に沿って加工がな
されるという性質上、外側を打ち抜き加工する線群(一
筆書き)や内側を打ち抜き加工する閉じた線群によって
構成されなければならず、これらの閉じた線群すなわち
一筆書きの確認はオペレータの確認によって行われてい
た。
るCADデータは、CADデータの線に沿って加工がな
されるという性質上、外側を打ち抜き加工する線群(一
筆書き)や内側を打ち抜き加工する閉じた線群によって
構成されなければならず、これらの閉じた線群すなわち
一筆書きの確認はオペレータの確認によって行われてい
た。
【0007】なお、上述した一筆書きのデータに関する
技術として例えば、特開昭64−82283号公報に
は、画像データを構成する各セグメントの端点の接続関
係に基づいて各セグメントに対する接続状態表現データ
を生成し、これに基づいて端点補正を行う画像データ変
換装置が記載されている。
技術として例えば、特開昭64−82283号公報に
は、画像データを構成する各セグメントの端点の接続関
係に基づいて各セグメントに対する接続状態表現データ
を生成し、これに基づいて端点補正を行う画像データ変
換装置が記載されている。
【0008】また、特開平1−209573号公報に
は、図形データとして作図対象物の形状に近似した概略
外形形状のスケッチを一筆書きで入力し、そのスケッチ
のパターン認識およびデータ解析を行い、必要最小限の
寸法値を入力することにより正規寸法に対応した複数の
座標点を決定して、該座標点に基づいてスケッチを正寸
法に自動修正して作図するCADスケッチ入力作図方法
が記載されている。
は、図形データとして作図対象物の形状に近似した概略
外形形状のスケッチを一筆書きで入力し、そのスケッチ
のパターン認識およびデータ解析を行い、必要最小限の
寸法値を入力することにより正規寸法に対応した複数の
座標点を決定して、該座標点に基づいてスケッチを正寸
法に自動修正して作図するCADスケッチ入力作図方法
が記載されている。
【0009】また、特開平2−230291号公報に
は、予め多種類の文字ドットデータを格納している記憶
装置を用いることにより、任意の文字列よりなるメッセ
ージを入力すると、自動的に文字列あるいはメッセージ
ドットデータが合成され、即座にレーザビーム走査によ
りメッセージが視覚的に再生されるレーザメッセージ表
示装置が記載されている。
は、予め多種類の文字ドットデータを格納している記憶
装置を用いることにより、任意の文字列よりなるメッセ
ージを入力すると、自動的に文字列あるいはメッセージ
ドットデータが合成され、即座にレーザビーム走査によ
りメッセージが視覚的に再生されるレーザメッセージ表
示装置が記載されている。
【0010】また、特開平1−134675号公報、特
開平3−138767号公報、および特開平3−167
671号公報には、配線基板上で搭載部品ピン間の接続
順を決定する一筆書き接続決定処理方法が記載されてい
る。
開平3−138767号公報、および特開平3−167
671号公報には、配線基板上で搭載部品ピン間の接続
順を決定する一筆書き接続決定処理方法が記載されてい
る。
【0011】さらに、CADデータの修正に関するもの
として例えば、特開平2−59865号公報には、CA
Dデータに基づいて抜き形状を抽出表示する際の図形修
正方法に関し、無秩序に稜線の延長をしたり、稜線の傾
きを変えて図形を修正することなく、該稜線の寸法線情
報を利用して、高精度に図形を修正するものが記載され
ている。
として例えば、特開平2−59865号公報には、CA
Dデータに基づいて抜き形状を抽出表示する際の図形修
正方法に関し、無秩序に稜線の延長をしたり、稜線の傾
きを変えて図形を修正することなく、該稜線の寸法線情
報を利用して、高精度に図形を修正するものが記載され
ている。
【0012】また、特開昭60−160476号公報に
は、単位の加工形状データをもとにして複写モジュール
や各種演算モジュールなどを使って、曲げを含んだスト
リップ・レイアウト図を自動作成する順送り金型設計に
おけるストリップ・レイアウト図作成方式が記載されて
いる。
は、単位の加工形状データをもとにして複写モジュール
や各種演算モジュールなどを使って、曲げを含んだスト
リップ・レイアウト図を自動作成する順送り金型設計に
おけるストリップ・レイアウト図作成方式が記載されて
いる。
【0013】また、特開昭63−250706号公報に
は、領域指示処理手段により同一加工角または同一加工
方向を1つの領域として指示し、要素分類処理手段で領
域内の要素を両端点要素と片端点要素と端点なし要素と
に分類し、交点演算処理手段で各要素の組合せに従っ
て、交点座標値を求め、不用要素削除処理手段で不用の
線を削除することにより加工形状図を作成する加工形状
図作成装置が記載されている。
は、領域指示処理手段により同一加工角または同一加工
方向を1つの領域として指示し、要素分類処理手段で領
域内の要素を両端点要素と片端点要素と端点なし要素と
に分類し、交点演算処理手段で各要素の組合せに従っ
て、交点座標値を求め、不用要素削除処理手段で不用の
線を削除することにより加工形状図を作成する加工形状
図作成装置が記載されている。
【0014】
【発明が解決しようとする課題】前述したように、CA
Dにより作成されたCADデータに、重複する線や、は
み出した線が含まれる場合、このCADデータをそのま
まCAMが処理を行うと、正しい加工データが作成され
なかったり、CAMがCADデータを受け取ることがで
きない場合が生じるという問題点があった。
Dにより作成されたCADデータに、重複する線や、は
み出した線が含まれる場合、このCADデータをそのま
まCAMが処理を行うと、正しい加工データが作成され
なかったり、CAMがCADデータを受け取ることがで
きない場合が生じるという問題点があった。
【0015】特に、板金CAD/CAMシステムにおけ
るCADデータは、CADデータの線に沿って加工がな
されるという性質上、外側を打ち抜き加工する一筆書き
や内側を打ち抜き加工する一筆書きによって構成されな
ければならず、これらの一筆書きの確認はオペレータの
確認によって行われ、不良箇所の見逃しを生じる可能性
があり、また確認のために多大な時間と労力を必要と
し、本来のCAD/CAMシステムの効率性を阻害する
という問題点があった。
るCADデータは、CADデータの線に沿って加工がな
されるという性質上、外側を打ち抜き加工する一筆書き
や内側を打ち抜き加工する一筆書きによって構成されな
ければならず、これらの一筆書きの確認はオペレータの
確認によって行われ、不良箇所の見逃しを生じる可能性
があり、また確認のために多大な時間と労力を必要と
し、本来のCAD/CAMシステムの効率性を阻害する
という問題点があった。
【0016】そこで、本発明は、上記問題点を除去し、
正確なCADデータでCAMが受け取ることができる確
実なCADデータを作成するCADデータの処理方法を
提供することを目的とする。
正確なCADデータでCAMが受け取ることができる確
実なCADデータを作成するCADデータの処理方法を
提供することを目的とする。
【0017】
【課題を解決するための手段】CAD/CAMシステム
で概略作成された第1のベクトル線素群からなるCAD
データをCAMに引き渡すことができるCADデータに
処理するCADデータの処理方法において、前記第1の
ベクトル線素群のうち重複する複数のベクトル線素を1
つのベクトル線素に結合された第2のベクトル線素群に
修正して各ベクトル線素の始点座標と終点座標をメモリ
に格納する第1ステップと、前記第2のベクトル線素群
のうち最外郭で閉合可能なベクトル線素から所定回りで
閉合するように始点座標および/または終点座標から交
点座標への置き換え、およびベクトル線素情報の並び替
えを行ってメモリに格納することにより、第3のベクト
ル線素群からなる外図形を抽出する第2ステップと、前
記外図形の内側で閉合可能なベクトル線素が存在する場
合、前記所定回りと逆回りで閉合するように始点座標お
よび/または終点座標から交点座標への置き換え、およ
びベクトル線素情報の並び替えを行ってメモリに格納す
ることにより、第4のベクトル線素群からなる内図形を
抽出する第3ステップとを具備したことを特徴とする。
で概略作成された第1のベクトル線素群からなるCAD
データをCAMに引き渡すことができるCADデータに
処理するCADデータの処理方法において、前記第1の
ベクトル線素群のうち重複する複数のベクトル線素を1
つのベクトル線素に結合された第2のベクトル線素群に
修正して各ベクトル線素の始点座標と終点座標をメモリ
に格納する第1ステップと、前記第2のベクトル線素群
のうち最外郭で閉合可能なベクトル線素から所定回りで
閉合するように始点座標および/または終点座標から交
点座標への置き換え、およびベクトル線素情報の並び替
えを行ってメモリに格納することにより、第3のベクト
ル線素群からなる外図形を抽出する第2ステップと、前
記外図形の内側で閉合可能なベクトル線素が存在する場
合、前記所定回りと逆回りで閉合するように始点座標お
よび/または終点座標から交点座標への置き換え、およ
びベクトル線素情報の並び替えを行ってメモリに格納す
ることにより、第4のベクトル線素群からなる内図形を
抽出する第3ステップとを具備したことを特徴とする。
【0018】
【作用】本発明は、CAD/CAMシステムで概略作成
された第1のベクトル線素群からなるCADデータを処
理する際、前記第1のベクトル線素群のうち重複する複
数のベクトル線素を1つのベクトル線素に結合された第
2のベクトル線素群に修正し、この修正された第2のベ
クトル線素群のうち最外郭で閉合可能なベクトル線素か
ら所定回りで閉合する第3のベクトル線素群からなる外
図形を抽出する。また、この抽出された外図形の内側で
閉合可能なベクトル線素が存在する場合、前記所定回り
と逆回りで閉合する第4のベクトル線素群からなる内図
形を抽出するようにしている。このため、もとのベクト
ル線素のうちの余分な部分が削除され、所定回りの閉合
する外図形および所定回りとは逆回りの内図形を抽出す
ることができるので、CAMが受け取ることができ、か
つ所望の正確なCADデータを作成することができる。
された第1のベクトル線素群からなるCADデータを処
理する際、前記第1のベクトル線素群のうち重複する複
数のベクトル線素を1つのベクトル線素に結合された第
2のベクトル線素群に修正し、この修正された第2のベ
クトル線素群のうち最外郭で閉合可能なベクトル線素か
ら所定回りで閉合する第3のベクトル線素群からなる外
図形を抽出する。また、この抽出された外図形の内側で
閉合可能なベクトル線素が存在する場合、前記所定回り
と逆回りで閉合する第4のベクトル線素群からなる内図
形を抽出するようにしている。このため、もとのベクト
ル線素のうちの余分な部分が削除され、所定回りの閉合
する外図形および所定回りとは逆回りの内図形を抽出す
ることができるので、CAMが受け取ることができ、か
つ所望の正確なCADデータを作成することができる。
【0019】
【実施例】以下、図面を参照して本発明の一実施例につ
いて説明する。
いて説明する。
【0020】図2は、本発明の一実施例である板金CA
D/CAMシステムの構成を示す図である。
D/CAMシステムの構成を示す図である。
【0021】図2において、板金CAD/CAMシステ
ムは、全体の制御を行うCPU1、メモリ2、表示部
3、キーボード4、マウス5、フロッピーディスク装置
6、ハードディスク装置7から構成される。
ムは、全体の制御を行うCPU1、メモリ2、表示部
3、キーボード4、マウス5、フロッピーディスク装置
6、ハードディスク装置7から構成される。
【0022】そして、板金CAD/CAM処理を行う場
合は、キーボード4あるいはマウス5からの所定の入力
指示により、ハードディスク装置7に記憶されている板
金CAD/CAM処理のためのアプリケーションがメモ
リ2に読み込まれ、CPU1の制御のもと、このアプリ
ケーションが表示部3に表示され、この表示されたアプ
リケーションに対してユーザがキーボード4あるいはマ
ウス5からの指示入力により、処理が実行されることに
なる。そして、CADデータの処理が終了すると、ハー
ドディスク装置7に処理結果が出力され記憶される。そ
の後、このCADデータをもとにCAM処理が実行さ
れ、加工データが作成され、フロッピーディスク装置6
のフロッピーディスクに作成された加工データが記憶さ
れることになる。
合は、キーボード4あるいはマウス5からの所定の入力
指示により、ハードディスク装置7に記憶されている板
金CAD/CAM処理のためのアプリケーションがメモ
リ2に読み込まれ、CPU1の制御のもと、このアプリ
ケーションが表示部3に表示され、この表示されたアプ
リケーションに対してユーザがキーボード4あるいはマ
ウス5からの指示入力により、処理が実行されることに
なる。そして、CADデータの処理が終了すると、ハー
ドディスク装置7に処理結果が出力され記憶される。そ
の後、このCADデータをもとにCAM処理が実行さ
れ、加工データが作成され、フロッピーディスク装置6
のフロッピーディスクに作成された加工データが記憶さ
れることになる。
【0023】さて、このような板金CAD/CAMシス
テムにおいて、CADデータの作成処理は、まず1つの
平面のCADデータを作成する面作成処理を行い、この
作成した複数の平面のCADデータを3次元にする面合
成処理を行い、最後に合成したCADデータを2次元に
展開する展開処理を行って、最終的なCADデータを出
力することになる。
テムにおいて、CADデータの作成処理は、まず1つの
平面のCADデータを作成する面作成処理を行い、この
作成した複数の平面のCADデータを3次元にする面合
成処理を行い、最後に合成したCADデータを2次元に
展開する展開処理を行って、最終的なCADデータを出
力することになる。
【0024】そして、本発明は、上述した面作成処理に
関するものである。
関するものである。
【0025】なお、CADデータの作成処理は、CPU
1がメモリ2に記憶されているアプリケーションをもと
に作成制御を行い、その処理途中における作業データは
逐次、メモリ2あるいはハードディスク装置7に一時格
納されるものである。
1がメモリ2に記憶されているアプリケーションをもと
に作成制御を行い、その処理途中における作業データは
逐次、メモリ2あるいはハードディスク装置7に一時格
納されるものである。
【0026】以下、上述した面作成処理における本発明
の一実施例であるCADデータの処理方法をフローチャ
ートに基づいて説明する。
の一実施例であるCADデータの処理方法をフローチャ
ートに基づいて説明する。
【0027】図1は、本発明の一実施例であるCADデ
ータの処理手順を示す全体フローチャートである。
ータの処理手順を示す全体フローチャートである。
【0028】図1において、まず概略作成された複数の
ベクトル線素に対して、適当な順序でこの複数のベクト
ル線素をチェーンにする(ステップ101)。次に、同
一直線上で重複する複数の直線のベクトル線素を1つの
ベクトル線素に結合する(ステップ102)。さらに、
同一円周上で重複する複数の円弧のベクトル線素を1つ
のベクトル線素に結合する(ステップ103)。
ベクトル線素に対して、適当な順序でこの複数のベクト
ル線素をチェーンにする(ステップ101)。次に、同
一直線上で重複する複数の直線のベクトル線素を1つの
ベクトル線素に結合する(ステップ102)。さらに、
同一円周上で重複する複数の円弧のベクトル線素を1つ
のベクトル線素に結合する(ステップ103)。
【0029】次に、複数のベクトル線素を包含する最小
の長方形を算出し(ステップ104)、この最小の長方
形に接するベクトル線素を求め、このベクトル線素をチ
ェーンの先頭に移動させる(ステップ105)。そし
て、最も外側にある閉合する外図形を抽出する処理を行
う(ステップ106)。
の長方形を算出し(ステップ104)、この最小の長方
形に接するベクトル線素を求め、このベクトル線素をチ
ェーンの先頭に移動させる(ステップ105)。そし
て、最も外側にある閉合する外図形を抽出する処理を行
う(ステップ106)。
【0030】次に、残りのベクトル線素が存在するか否
かを判断し(ステップ107)、存在する場合は、外図
形の内側に存在し、閉合する内図形を抽出する処理を行
い(ステップ108)、ステップ107に移行する。一
方、ステップ107において残りのベクトル線素が存在
しない場合は、ステップ109に移行し、抽出した外図
形と内図形との包含チェックを行い、本処理を終了す
る。
かを判断し(ステップ107)、存在する場合は、外図
形の内側に存在し、閉合する内図形を抽出する処理を行
い(ステップ108)、ステップ107に移行する。一
方、ステップ107において残りのベクトル線素が存在
しない場合は、ステップ109に移行し、抽出した外図
形と内図形との包含チェックを行い、本処理を終了す
る。
【0031】次に、図1のステップ105までのCAD
データの処理手順を具体例をもとに詳細に説明する。
データの処理手順を具体例をもとに詳細に説明する。
【0032】図3は、処理対象のCADデータの具体例
を示す図であり、この処理対象のCADデータは、11
個のベクトル線素E1〜E11から構成される。
を示す図であり、この処理対象のCADデータは、11
個のベクトル線素E1〜E11から構成される。
【0033】図4は、最初のチェーンの状態を示す図で
あり、図3のCADデータに対して図1のステップ10
1により処理されたチェーンの状態を示している。この
チェーンの順序は、どのような順序に設定してもよい。
図4においては、図3の符号の順序(ベクトル線素E1
→E2→E3→E4→E5→E6→E7→E8→E9→
E10→E11の順)で順次、チェーンC1〜C11を
作成したものである。
あり、図3のCADデータに対して図1のステップ10
1により処理されたチェーンの状態を示している。この
チェーンの順序は、どのような順序に設定してもよい。
図4においては、図3の符号の順序(ベクトル線素E1
→E2→E3→E4→E5→E6→E7→E8→E9→
E10→E11の順)で順次、チェーンC1〜C11を
作成したものである。
【0034】次に図5は、図1のステップ102による
直線のベクトル線素の結合処理後のCADデータおよび
チェーンの状態を示す図である。
直線のベクトル線素の結合処理後のCADデータおよび
チェーンの状態を示す図である。
【0035】図5(a)は、直線のベクトル線素の結合
処理後のCADデータを示し、図3のベクトル線素E
4,E5は、同一直線上にあり、重複している部分があ
るため、1つの直線のベクトル線素EE4に結合され
る。同様に直線のベクトル線素E8,E9も、1つの直
線のベクトル線素EE8に結合される。
処理後のCADデータを示し、図3のベクトル線素E
4,E5は、同一直線上にあり、重複している部分があ
るため、1つの直線のベクトル線素EE4に結合され
る。同様に直線のベクトル線素E8,E9も、1つの直
線のベクトル線素EE8に結合される。
【0036】図5(b)は、このときのチェーンの状態
を示したものであり、図4のチェーンC4,C5に替わ
ってチェーンCC4がベクトル線素EE4を接続し、チ
ェーンC8,C9に替わってチェーンCC8がベクトル
線素EE8を接続している。
を示したものであり、図4のチェーンC4,C5に替わ
ってチェーンCC4がベクトル線素EE4を接続し、チ
ェーンC8,C9に替わってチェーンCC8がベクトル
線素EE8を接続している。
【0037】次に図6は、図1のステップ103による
円弧のベクトル線素の結合処理後のCADデータおよび
チェーンの状態を示す図である。
円弧のベクトル線素の結合処理後のCADデータおよび
チェーンの状態を示す図である。
【0038】図6(a)は、円弧のベクトル線素の結合
処理後のCADデータを示し、図5(a)のベクトル線
素E10,E11は、同一円弧上にあり重複している部
分があるため、1つの円弧のベクトル線素EE10に結
合される。
処理後のCADデータを示し、図5(a)のベクトル線
素E10,E11は、同一円弧上にあり重複している部
分があるため、1つの円弧のベクトル線素EE10に結
合される。
【0039】図6(b)は、このときのチェーンの状態
を示したものであり、図5(b)のチェーンC10,C
11に替わってチェーンCC10がベクトル線素EE1
0を接続する。
を示したものであり、図5(b)のチェーンC10,C
11に替わってチェーンCC10がベクトル線素EE1
0を接続する。
【0040】次に図7は、図1のステップ104により
算出された最小長方形を示す図である。
算出された最小長方形を示す図である。
【0041】図7において、ステップ104では、ステ
ップ104までに処理されたCADデータE1〜E3,
EE4,E6,E7,EE8,EE10を包含する、す
なわち外接する最小長方形Lを求める。
ップ104までに処理されたCADデータE1〜E3,
EE4,E6,E7,EE8,EE10を包含する、す
なわち外接する最小長方形Lを求める。
【0042】そして、ステップ105でこの最小長方形
Lに接するベクトル線素を求めてチェーンの先頭に移動
させる。図7で示すCADデータの場合、ベクトル線素
E1が最小長方形Lに接しているため、チェーンの順序
は変更がなく移動することもない。すなわち、図6
(b)で示すチェーンの状態のままとなる。
Lに接するベクトル線素を求めてチェーンの先頭に移動
させる。図7で示すCADデータの場合、ベクトル線素
E1が最小長方形Lに接しているため、チェーンの順序
は変更がなく移動することもない。すなわち、図6
(b)で示すチェーンの状態のままとなる。
【0043】次に、図1のステップ106による外図形
の抽出処理について図8から図12を参照し、具体例を
交えて説明する。
の抽出処理について図8から図12を参照し、具体例を
交えて説明する。
【0044】まず図8は、ステップ106による外図形
の抽出処理手順を示すフローチャートであり、図9は、
図8のステップ201による閉図形の抽出処理手順を示
すフローチャートであり、図10は、図9のステップ3
03による交点情報の記憶処理手順を示すフローチャー
トである。
の抽出処理手順を示すフローチャートであり、図9は、
図8のステップ201による閉図形の抽出処理手順を示
すフローチャートであり、図10は、図9のステップ3
03による交点情報の記憶処理手順を示すフローチャー
トである。
【0045】また、図11は、図1のステップ105ま
でに処理されたCADデータを示す図である。そして、
図12は、メモリ2に記憶される交点情報の記憶状態の
変遷例を示す図である。
でに処理されたCADデータを示す図である。そして、
図12は、メモリ2に記憶される交点情報の記憶状態の
変遷例を示す図である。
【0046】まず、図8において、外図形の閉図形の抽
出を行う(ステップ201)。例えば図11のベクトル
線素E1,E3,EE4,EE8を基にし、余分な部分
を削除したベクトル線素からなる閉合する図形を抽出す
る。
出を行う(ステップ201)。例えば図11のベクトル
線素E1,E3,EE4,EE8を基にし、余分な部分
を削除したベクトル線素からなる閉合する図形を抽出す
る。
【0047】ここで、このステップ201の閉図形の抽
出処理は、図9の詳細なフローチャートの処理により行
われる。
出処理は、図9の詳細なフローチャートの処理により行
われる。
【0048】図9において、交点情報の初期化を行う
(ステップ301)。ここで、例えば図12(a)は、
チェーンの順序(1から8)で記憶されているベクトル
線素E(E1〜E3,EE4,E6,E7,EE8,E
E10)に対するそれぞれの1つ目の交点座標を記憶す
るバッファ内容「A」、2つ目の交点座標を記憶するバ
ッファ内容「B」、交点数を記憶するバッファ内容
「N」を示しており、また「S」はそれぞれのベクトル
線素の始点座標を、「T」はそれぞれのベクトル線素の
終点座標を示している。さらに、後述する「P」は、交
点座標である。なお、上述した「E」、「A」、
「B」、「N」、「S」、「T」に添えられる添字i,j
は、任意のベクトル線素に対することを意味し、添字a
は、全てのベクトル線素に対することを意味する。
(ステップ301)。ここで、例えば図12(a)は、
チェーンの順序(1から8)で記憶されているベクトル
線素E(E1〜E3,EE4,E6,E7,EE8,E
E10)に対するそれぞれの1つ目の交点座標を記憶す
るバッファ内容「A」、2つ目の交点座標を記憶するバ
ッファ内容「B」、交点数を記憶するバッファ内容
「N」を示しており、また「S」はそれぞれのベクトル
線素の始点座標を、「T」はそれぞれのベクトル線素の
終点座標を示している。さらに、後述する「P」は、交
点座標である。なお、上述した「E」、「A」、
「B」、「N」、「S」、「T」に添えられる添字i,j
は、任意のベクトル線素に対することを意味し、添字a
は、全てのベクトル線素に対することを意味する。
【0049】従って、ステップ301による交点情報の
初期化とは、全ての1つ目の交点座標を記憶するバッフ
ァ内容Aaを各ベクトル線素の終点座標Taにし、全ての
2つ目の交点座標を記憶するバッファ内容Baを各ベク
トル線素の始点座標Saにし、全ての交点数を記憶する
バッファ内容Naを「0」にする。また、ステップ30
1では、iの初期値を「1」にし、jの初期値を「2」に
する。
初期化とは、全ての1つ目の交点座標を記憶するバッフ
ァ内容Aaを各ベクトル線素の終点座標Taにし、全ての
2つ目の交点座標を記憶するバッファ内容Baを各ベク
トル線素の始点座標Saにし、全ての交点数を記憶する
バッファ内容Naを「0」にする。また、ステップ30
1では、iの初期値を「1」にし、jの初期値を「2」に
する。
【0050】すなわち、図12(a)に示した交点情報
の初期値が与えられる。ここで、例えばベクトル線素E
1に対する1つ目の交点座標のバッファ内容Aすなわち
終点座標T1および2つ目の交点座標のバッファ内容B
すなわち始点座標S1は、図11で示すベクトル線素の
終点T1と始点S1に対応するものである。
の初期値が与えられる。ここで、例えばベクトル線素E
1に対する1つ目の交点座標のバッファ内容Aすなわち
終点座標T1および2つ目の交点座標のバッファ内容B
すなわち始点座標S1は、図11で示すベクトル線素の
終点T1と始点S1に対応するものである。
【0051】次に、図9のステップ302において、ベ
クトル線素EiとEjとの交点があるか否かを判断する。
ここでは、まずステップ301において、i=1,j=2
が初期値として与えられているので、ベクトル線素E1
すなわちE1とベクトル線素E2すなわちE2との交点
があるか否かを判断する。そして、交点がある場合は、
ステップ303に移行し、交点がない場合は、ステップ
305に移行する。
クトル線素EiとEjとの交点があるか否かを判断する。
ここでは、まずステップ301において、i=1,j=2
が初期値として与えられているので、ベクトル線素E1
すなわちE1とベクトル線素E2すなわちE2との交点
があるか否かを判断する。そして、交点がある場合は、
ステップ303に移行し、交点がない場合は、ステップ
305に移行する。
【0052】そして、交点がある場合はステップ303
において交点情報を記憶する。この交点がある場合の交
点情報の記憶処理は、図10のフローチャートに基づい
て行う。
において交点情報を記憶する。この交点がある場合の交
点情報の記憶処理は、図10のフローチャートに基づい
て行う。
【0053】すなわち、まずiおよびjに対応する交点数
NiおよびNjの値に「1」を加える(ステップ40
1)。そして、存在する交点が始点座標Siと座標Ai
(最初は初期値の終点座標Ti)との間にあるか否かを
判断し(ステップ402)、ある場合は、座標Aiを交
点の座標とした(ステップ403)後にステップ404
に移行し、ない場合は、ステップ404に移行する。
NiおよびNjの値に「1」を加える(ステップ40
1)。そして、存在する交点が始点座標Siと座標Ai
(最初は初期値の終点座標Ti)との間にあるか否かを
判断し(ステップ402)、ある場合は、座標Aiを交
点の座標とした(ステップ403)後にステップ404
に移行し、ない場合は、ステップ404に移行する。
【0054】ステップ404では、存在する交点が終点
座標Tiと座標Bi(最初は初期値の始点座標Si)との
間にあるか否かを判断し、ある場合は座標Biを交点の
座標とした(ステップ405)後にステップ406に移
行し、ない場合は、ステップ406に移行する。
座標Tiと座標Bi(最初は初期値の始点座標Si)との
間にあるか否かを判断し、ある場合は座標Biを交点の
座標とした(ステップ405)後にステップ406に移
行し、ない場合は、ステップ406に移行する。
【0055】ステップ406では、存在する交点が始点
座標Sjと座標Aj(最初は初期値の終点座標Tj)との
間にあるか否かを判断し、ある場合は座標Ajを交点の
座標とした(ステップ407)後にステップ408に移
行し、ない場合は、ステップ408に移行する。
座標Sjと座標Aj(最初は初期値の終点座標Tj)との
間にあるか否かを判断し、ある場合は座標Ajを交点の
座標とした(ステップ407)後にステップ408に移
行し、ない場合は、ステップ408に移行する。
【0056】ステップ408では、存在する交点が終点
座標Tjと座標Bj(最初は初期値の始点座標Sj)との
間にあるか否かを判断し、ある場合は座標Bjを交点の
座標とした(ステップ409)後、ない場合はそのまま
交点情報の記憶処理を終了する。
座標Tjと座標Bj(最初は初期値の始点座標Sj)との
間にあるか否かを判断し、ある場合は座標Bjを交点の
座標とした(ステップ409)後、ない場合はそのまま
交点情報の記憶処理を終了する。
【0057】なお、交点数が「2」を越える場合は、ベ
クトル線素により描かれる線分の交点のうち、外側の2
点が座標Aiおよび座標Biに設定されることになる。
クトル線素により描かれる線分の交点のうち、外側の2
点が座標Aiおよび座標Biに設定されることになる。
【0058】このようにして、iおよびjに対する交点情
報の記憶処理を行った後、図9において、ベクトル線素
Ejをベクトル線素Eiの次に移動する並び換えを行う
(ステップ304)。
報の記憶処理を行った後、図9において、ベクトル線素
Ejをベクトル線素Eiの次に移動する並び換えを行う
(ステップ304)。
【0059】さらに、全てのiおよびjに対する処理を終
了したか否かを判断し(ステップ305)、処理を終了
していない場合は、iおよびjの値を更新し(ステップ3
06)、ステップ302に移行して処理を継続する。
了したか否かを判断し(ステップ305)、処理を終了
していない場合は、iおよびjの値を更新し(ステップ3
06)、ステップ302に移行して処理を継続する。
【0060】一方、ステップ305において、全てのi
およびjに対する処理が終了した場合は、ステップ30
7に移行する。
およびjに対する処理が終了した場合は、ステップ30
7に移行する。
【0061】ここで、例えばステップ303,304の
処理の様子を図11と図12を参照して具体的に説明す
ると、最初に交点が存在するのは、i=1,j=4のとき
である。このとき、図12(b)において、ステップ4
01により交点数N1およびN4が「1」に設定される。
そして、図11で示すベクトル線素E1とベクトル線素
EE4との交点PAの座標Paが図12(b)で示すよ
うにA1,A4,B1,B4の位置に設定される。
処理の様子を図11と図12を参照して具体的に説明す
ると、最初に交点が存在するのは、i=1,j=4のとき
である。このとき、図12(b)において、ステップ4
01により交点数N1およびN4が「1」に設定される。
そして、図11で示すベクトル線素E1とベクトル線素
EE4との交点PAの座標Paが図12(b)で示すよ
うにA1,A4,B1,B4の位置に設定される。
【0062】すなわち、ステップ402により交点PA
が始点座標S1と座標A1(最初は終点座標T1)との間
に存在するので、ステップ403で初期値の座標A1は
交点PAの座標Pa(新しいA1の値)に設定される。
そして、ステップ404により交点PAが終点座標T1
と座標B1(最初は始点座標S1)との間に存在するの
で、ステップ405により初期値の座標B1は交点PA
の座標Pa(新しいB1の値)に設定される。さらに、
ステップ406により交点PAが始点座標S4と座標A4
(最初は終点座標T4)との間に存在するので、ステッ
プ407で初期値の座標A4は交点PAの座標Pa(新
しいA4の値)に設定される。また、ステップ408に
より交点PAが終点座標T4と座標B4(最初は始点座標
S4)との間に存在するので、ステップ409により初
期値の座標B4は交点PAの座標Pa(新しいB4の値)
に設定される。この結果、交点情報は、図12(b)の
ようになる。
が始点座標S1と座標A1(最初は終点座標T1)との間
に存在するので、ステップ403で初期値の座標A1は
交点PAの座標Pa(新しいA1の値)に設定される。
そして、ステップ404により交点PAが終点座標T1
と座標B1(最初は始点座標S1)との間に存在するの
で、ステップ405により初期値の座標B1は交点PA
の座標Pa(新しいB1の値)に設定される。さらに、
ステップ406により交点PAが始点座標S4と座標A4
(最初は終点座標T4)との間に存在するので、ステッ
プ407で初期値の座標A4は交点PAの座標Pa(新
しいA4の値)に設定される。また、ステップ408に
より交点PAが終点座標T4と座標B4(最初は始点座標
S4)との間に存在するので、ステップ409により初
期値の座標B4は交点PAの座標Pa(新しいB4の値)
に設定される。この結果、交点情報は、図12(b)の
ようになる。
【0063】そして、図9のステップ304により、ベ
クトル線素EE4をベクトル線素E1の次になるように
並び換えを行う。そして、それに伴い交点情報の並び換
えも行う。この結果、図12(c)のような交点情報に
なる。
クトル線素EE4をベクトル線素E1の次になるように
並び換えを行う。そして、それに伴い交点情報の並び換
えも行う。この結果、図12(c)のような交点情報に
なる。
【0064】さらに、次の交点が存在する場合は、i=
1,j=7のときであり、ベクトル線素E1とベクトル
線素EE8との交点PBに対するものである。このと
き、ステップ401により交点数N1は「1」が加えら
れて「2」となり、N7は「1」に設定される。
1,j=7のときであり、ベクトル線素E1とベクトル
線素EE8との交点PBに対するものである。このと
き、ステップ401により交点数N1は「1」が加えら
れて「2」となり、N7は「1」に設定される。
【0065】そして、ステップ402により交点PBは
始点座標S1と座標A1(=Pa)との間に存在しないの
で、座標A1の値は座標Paのままとなる。そして、ス
テップ404により交点PBが終点座標T1と座標B1
(=Pa)との間に存在するので、ステップ405によ
り座標B1の値は交点PBの座標Pb(=B1)に設定さ
れる。さらに、ステップ406では、交点PBが始点座
標S7と座標A7(最初は終点座標T7)との間に存在す
るので、ステップ407で初期値の座標A7は交点PB
の座標Pb(=A7)に設定される。また、ステップ4
08により交点PBが終点座標T7と座標B7(最初は始
点座標S7)との間に存在するので、ステップ409に
より初期値の座標B7は交点PBの座標Pb(=B7)に
設定される。
始点座標S1と座標A1(=Pa)との間に存在しないの
で、座標A1の値は座標Paのままとなる。そして、ス
テップ404により交点PBが終点座標T1と座標B1
(=Pa)との間に存在するので、ステップ405によ
り座標B1の値は交点PBの座標Pb(=B1)に設定さ
れる。さらに、ステップ406では、交点PBが始点座
標S7と座標A7(最初は終点座標T7)との間に存在す
るので、ステップ407で初期値の座標A7は交点PB
の座標Pb(=A7)に設定される。また、ステップ4
08により交点PBが終点座標T7と座標B7(最初は始
点座標S7)との間に存在するので、ステップ409に
より初期値の座標B7は交点PBの座標Pb(=B7)に
設定される。
【0066】さらに、図9のステップ304により、ベ
クトル線素EE8をベクトル線素E1の次になるように
並び換えを行う。そして、それに伴い交点情報の並び換
えも行う。この結果、図12(d)のような交点情報に
なる。
クトル線素EE8をベクトル線素E1の次になるように
並び換えを行う。そして、それに伴い交点情報の並び換
えも行う。この結果、図12(d)のような交点情報に
なる。
【0067】同様にして、i=2,j=5のときのベクト
ル線素EE8とベクトル線素E3との交点PDの座標P
dに設定し、i=3,j=4のときのベクトル線素E3と
ベクトル線素EE4との交点PCの座標Pcに設定し、
チェーンの並び換えを行う。
ル線素EE8とベクトル線素E3との交点PDの座標P
dに設定し、i=3,j=4のときのベクトル線素E3と
ベクトル線素EE4との交点PCの座標Pcに設定し、
チェーンの並び換えを行う。
【0068】この結果、図12(e)のような交点情報
を得ることができる。そして、この場合チェーンの番号
は、抽出すべき外図形に対する左回りの一連の番号とな
っている。
を得ることができる。そして、この場合チェーンの番号
は、抽出すべき外図形に対する左回りの一連の番号とな
っている。
【0069】さて、図9のステップ305において、全
てのiおよびjに対する処理を終了した場合は、ステップ
307に移行し、交点数Naが「0」でなく、かつ
「2」でないか否かを判断する。そして、交点数Naが
「0」でなく、かつ「2」でない場合は、エラーフラグ
をセットし(ステップ308)、ステップ309に移行
する。一方、交点数Naが「0」でなく、かつ「2」で
なくない場合、すなわち交点数Naが「0」または
「2」の場合は、ステップ309に移行する。そして、
ステップ309において、交点数Naが「2」以上のベ
クトル線素Eを閉図形として抽出する。
てのiおよびjに対する処理を終了した場合は、ステップ
307に移行し、交点数Naが「0」でなく、かつ
「2」でないか否かを判断する。そして、交点数Naが
「0」でなく、かつ「2」でない場合は、エラーフラグ
をセットし(ステップ308)、ステップ309に移行
する。一方、交点数Naが「0」でなく、かつ「2」で
なくない場合、すなわち交点数Naが「0」または
「2」の場合は、ステップ309に移行する。そして、
ステップ309において、交点数Naが「2」以上のベ
クトル線素Eを閉図形として抽出する。
【0070】そして、この抽出した交点数Nが2以上の
ベクトル線素の座標Aiすなわち交点座標Aiを新たなベ
クトル線素の始点座標Siとし、抽出したベクトル線素
Biすなわち交点座標Biを新たなベクトル線素の終点座
標Tiとして設定する(ステップ310)。
ベクトル線素の座標Aiすなわち交点座標Aiを新たなベ
クトル線素の始点座標Siとし、抽出したベクトル線素
Biすなわち交点座標Biを新たなベクトル線素の終点座
標Tiとして設定する(ステップ310)。
【0071】さらに、抽出したベクトル線素からなる閉
図形が一筆書きとなるように、始点座標Siとこれに対
となる終点座標Tiとの入れ替えを行う(ステップ31
1)。これにより、閉図形の抽出処理が終了し、その
後、図8のステップ202に移行する。
図形が一筆書きとなるように、始点座標Siとこれに対
となる終点座標Tiとの入れ替えを行う(ステップ31
1)。これにより、閉図形の抽出処理が終了し、その
後、図8のステップ202に移行する。
【0072】例えば、図12(e)において、ステップ
309により、交点数が2以上のベクトル線素E1,E
3,EE4,EE8が抽出され、ステップ310により
ベクトル線素E1に対応する修正したベクトル線素は始
点座標Pa、終点座標Pbとなり、ベクトル線素EE8
に対応する修正したベクトル線素は始点座標Pb、終点
座標Pdとなり、ベクトル線素E3に対応する修正した
ベクトル線素は始点座標Pc、終点座標Pdとなり、ベ
クトル線素EE4に対応する修正したベクトル線素は始
点座標Pa、終点座標Pcとなる。
309により、交点数が2以上のベクトル線素E1,E
3,EE4,EE8が抽出され、ステップ310により
ベクトル線素E1に対応する修正したベクトル線素は始
点座標Pa、終点座標Pbとなり、ベクトル線素EE8
に対応する修正したベクトル線素は始点座標Pb、終点
座標Pdとなり、ベクトル線素E3に対応する修正した
ベクトル線素は始点座標Pc、終点座標Pdとなり、ベ
クトル線素EE4に対応する修正したベクトル線素は始
点座標Pa、終点座標Pcとなる。
【0073】図13は、この閉図形の抽出処理段階にお
けるCADデータを示した図であり、ベクトル線素EA
11〜EA14は、もとのベクトル線素E1,EE8,
E3,EE4にそれぞれ対応する修正したベクトル線素
である。
けるCADデータを示した図であり、ベクトル線素EA
11〜EA14は、もとのベクトル線素E1,EE8,
E3,EE4にそれぞれ対応する修正したベクトル線素
である。
【0074】そして、ステップ311により始点座標と
終点座標の入れ換えを行う。すなわち、図12(e)の
交点情報のうち、もとのベクトル線素E3,EE4の交
点情報である始点座標Pcと終点座標Pd、および始点
座標Paと終点座標Pcの入れ換えを行う。
終点座標の入れ換えを行う。すなわち、図12(e)の
交点情報のうち、もとのベクトル線素E3,EE4の交
点情報である始点座標Pcと終点座標Pd、および始点
座標Paと終点座標Pcの入れ換えを行う。
【0075】図14は、始点座標と終点座標の所定の入
れ換え処理を行ったCADデータを示す図である。この
修正したベクトル線素により、閉合する左回りの外図形
が作成されたことになる。すなわち、交点座標Pa→P
b→Pd→Pcを介する閉合するベクトル線素EA1〜
EA4からなる外図形を得ることができる。
れ換え処理を行ったCADデータを示す図である。この
修正したベクトル線素により、閉合する左回りの外図形
が作成されたことになる。すなわち、交点座標Pa→P
b→Pd→Pcを介する閉合するベクトル線素EA1〜
EA4からなる外図形を得ることができる。
【0076】そして、ステップ201で抽出した外図形
の閉図形の一筆書きが右回りであるか否かを判断し(ス
テップ202)、右回りである場合は、抽出した外図形
の閉図形を構成するベクトル線素の左回りへの変更を行
った(ステップ203)後、外図形を抽出する処理を終
了し、右回りでない場合は、そのまま外図形を抽出する
処理を終了する。
の閉図形の一筆書きが右回りであるか否かを判断し(ス
テップ202)、右回りである場合は、抽出した外図形
の閉図形を構成するベクトル線素の左回りへの変更を行
った(ステップ203)後、外図形を抽出する処理を終
了し、右回りでない場合は、そのまま外図形を抽出する
処理を終了する。
【0077】図15は、閉合する外図形の抽出が終了し
た時点のチェーン状態を示す図であり、この場合外図形
はチェーングループCG1として表現される。
た時点のチェーン状態を示す図であり、この場合外図形
はチェーングループCG1として表現される。
【0078】さて次に、図1のステップ107に移行
し、残りのベクトル線素があるか否かを判断し、残りの
ベクトル線素がある場合は内図形の抽出を行う(ステッ
プ108)。
し、残りのベクトル線素があるか否かを判断し、残りの
ベクトル線素がある場合は内図形の抽出を行う(ステッ
プ108)。
【0079】図16は、内図形の抽出処理手順を示すフ
ローチャートであり、この内図形の処理は、図8で示し
た外図形の抽出処理手順と同様の処理を行うものであ
る。ただし、ステップ502においては、ステップ20
2と異なり修正したベクトル線素からなる一筆書きを右
回りでなく左回りであるか否かを判断する。
ローチャートであり、この内図形の処理は、図8で示し
た外図形の抽出処理手順と同様の処理を行うものであ
る。ただし、ステップ502においては、ステップ20
2と異なり修正したベクトル線素からなる一筆書きを右
回りでなく左回りであるか否かを判断する。
【0080】すなわち、図16において、図8のステッ
プ201と同様な閉図形の抽出処理を行い(ステップ5
01)、抽出された閉図形を構成するベクトル線素の一
筆書きが左回りであるか否かを判断し(ステップ50
2)、左回りである場合は、抽出した内図形の閉図形を
構成するベクトル線素の右回りへの変更を行った(ステ
ップ503)後、内図形を抽出する処理を終了し、左回
りでない場合は、そのまま内図形を抽出する処理を終了
する。
プ201と同様な閉図形の抽出処理を行い(ステップ5
01)、抽出された閉図形を構成するベクトル線素の一
筆書きが左回りであるか否かを判断し(ステップ50
2)、左回りである場合は、抽出した内図形の閉図形を
構成するベクトル線素の右回りへの変更を行った(ステ
ップ503)後、内図形を抽出する処理を終了し、左回
りでない場合は、そのまま内図形を抽出する処理を終了
する。
【0081】そして、この内図形の抽出処理の終了後、
ステップ107に移行し、さらに残りのベクトル線素が
存在するか否かを判断する処理を繰り返す。
ステップ107に移行し、さらに残りのベクトル線素が
存在するか否かを判断する処理を繰り返す。
【0082】一方、ステップ107において、残りのベ
クトル線素が存在しない場合は、ステップ109に移行
し、抽出した外図形と内図形の包含チェックを行って、
本処理を終了する。
クトル線素が存在しない場合は、ステップ109に移行
し、抽出した外図形と内図形の包含チェックを行って、
本処理を終了する。
【0083】例えば、図17は、内図形の抽出処理後の
CADデータを示す図であり、ステップ501により図
11のベクトル線素E2,E7,EE10,E6に対応
する修正されたベクトル線素EB11〜EB14の閉図
形が抽出される。そして、ステップ502により、ベク
トル線素EB11〜EB14が左回りであるので、ステ
ップ503により右回りへの変更を行う。
CADデータを示す図であり、ステップ501により図
11のベクトル線素E2,E7,EE10,E6に対応
する修正されたベクトル線素EB11〜EB14の閉図
形が抽出される。そして、ステップ502により、ベク
トル線素EB11〜EB14が左回りであるので、ステ
ップ503により右回りへの変更を行う。
【0084】図18は、図1の内図形の抽出処理後の最
終CADデータを示す図であり、これにより外図形は左
回り、内図形はベクトル線素EB1〜EB4からなる右
回りのCADデータが最終的に作成される。
終CADデータを示す図であり、これにより外図形は左
回り、内図形はベクトル線素EB1〜EB4からなる右
回りのCADデータが最終的に作成される。
【0085】図19は、閉合する内図形の抽出処理後の
チェーンの最終状態を示す図であり、この場合内図形は
チェーングループCG2として表現される。
チェーンの最終状態を示す図であり、この場合内図形は
チェーングループCG2として表現される。
【0086】なお、交点数が2を越える場合も生じる
が、この場合は次のように処理される。
が、この場合は次のように処理される。
【0087】すなわち、図20は交点数が2を越える場
合のCADデータの処理を示す図である。そして、図2
0(a)は処理対象のCADデータであり、ベクトル線
素EX1〜EX5から構成される。この場合、ベクトル
線素EX4,EX5は、それぞれ交点PX1〜PX3,
交点PX4〜PX6を有し、3個の交点をもっている。
合のCADデータの処理を示す図である。そして、図2
0(a)は処理対象のCADデータであり、ベクトル線
素EX1〜EX5から構成される。この場合、ベクトル
線素EX4,EX5は、それぞれ交点PX1〜PX3,
交点PX4〜PX6を有し、3個の交点をもっている。
【0088】そして、図1のステップに従って処理する
ことになる。図20(b)は最終CADデータであり、
特にステップ106での外図形の抽出処理の際、交点情
報から閉合する図形以外の不用な部分が削除される。そ
して、交点数が「3」、すなわち交点数が「2」を越え
る場合は、修正されたベクトル線素EY1,EY4,E
Y3,EY5に対して一筆書きが行われ、この一筆書き
の図形が閉図形として抽出される。すなわち、図20
(a)において、ベクトル線素EX4に対しては、外側
の交点PX1の座標と交点PX3の座標が交点情報とし
て記憶され、交点PX2の座標は記憶されず、ベクトル
線素EX5に対しては、外側の交点PX4の座標と交点
PX6の座標が交点情報として記憶され、交点PX5の
座標は記憶されない。このように、交点数が「2」を越
える場合は、ベクトル線素の外側の交点の座標が交点情
報として記憶されることにより、修正されたベクトル線
素の始点座標および終点座標を得ることができ、閉合す
るベクトル線素を得ることができる。
ことになる。図20(b)は最終CADデータであり、
特にステップ106での外図形の抽出処理の際、交点情
報から閉合する図形以外の不用な部分が削除される。そ
して、交点数が「3」、すなわち交点数が「2」を越え
る場合は、修正されたベクトル線素EY1,EY4,E
Y3,EY5に対して一筆書きが行われ、この一筆書き
の図形が閉図形として抽出される。すなわち、図20
(a)において、ベクトル線素EX4に対しては、外側
の交点PX1の座標と交点PX3の座標が交点情報とし
て記憶され、交点PX2の座標は記憶されず、ベクトル
線素EX5に対しては、外側の交点PX4の座標と交点
PX6の座標が交点情報として記憶され、交点PX5の
座標は記憶されない。このように、交点数が「2」を越
える場合は、ベクトル線素の外側の交点の座標が交点情
報として記憶されることにより、修正されたベクトル線
素の始点座標および終点座標を得ることができ、閉合す
るベクトル線素を得ることができる。
【0089】このようにして、本実施例によれば重複す
るベクトル線素を1つのベクトル線素に結合し、この結
合されたベクトル線素を含むベクトル線素から最外郭の
閉合する閉図形である外図形を左回りのベクトル線素群
として抽出し、さらにベクトル線素が存在する場合は、
外図形の内側にある閉合する閉図形である内図形を右回
りのベクトル線素群として抽出するようにしているの
で、CAMが受け取ることができ、所望の正確なCAD
データを自動作成することができる。
るベクトル線素を1つのベクトル線素に結合し、この結
合されたベクトル線素を含むベクトル線素から最外郭の
閉合する閉図形である外図形を左回りのベクトル線素群
として抽出し、さらにベクトル線素が存在する場合は、
外図形の内側にある閉合する閉図形である内図形を右回
りのベクトル線素群として抽出するようにしているの
で、CAMが受け取ることができ、所望の正確なCAD
データを自動作成することができる。
【0090】
【発明の効果】以上説明したように、本発明では、CA
D/CAMシステムで概略作成された第1のベクトル線
素群からなるCADデータを処理する際、前記第1のベ
クトル線素群のうち重複する複数のベクトル線素を1つ
のベクトル線素に結合された第2のベクトル線素群に修
正し、この修正された第2のベクトル線素群のうち最外
郭で閉合可能なベクトル線素から所定回りで閉合する第
3のベクトル線素群からなる外図形を抽出する。また、
この抽出された外図形の内側で閉合可能なベクトル線素
が存在する場合、前記所定回りと逆回りで閉合する第4
のベクトル線素群からなる内図形を抽出するようにして
いるので、第1のベクトル線素群の余分な部分が削除さ
れ、所定回りの閉合する外図形および所定回りとは逆回
りの閉合する内図形を抽出することができる。
D/CAMシステムで概略作成された第1のベクトル線
素群からなるCADデータを処理する際、前記第1のベ
クトル線素群のうち重複する複数のベクトル線素を1つ
のベクトル線素に結合された第2のベクトル線素群に修
正し、この修正された第2のベクトル線素群のうち最外
郭で閉合可能なベクトル線素から所定回りで閉合する第
3のベクトル線素群からなる外図形を抽出する。また、
この抽出された外図形の内側で閉合可能なベクトル線素
が存在する場合、前記所定回りと逆回りで閉合する第4
のベクトル線素群からなる内図形を抽出するようにして
いるので、第1のベクトル線素群の余分な部分が削除さ
れ、所定回りの閉合する外図形および所定回りとは逆回
りの閉合する内図形を抽出することができる。
【0091】従って、多大な時間と労力をかけずに、C
AMが受け取ることができ、かつ所望の正確なCADデ
ータを作成することができるという利点を有する。
AMが受け取ることができ、かつ所望の正確なCADデ
ータを作成することができるという利点を有する。
【図1】本発明の一実施例であるCADデータの処理手
順を示す全体フローチャート。
順を示す全体フローチャート。
【図2】本発明の一実施例である板金CAD/CAMシ
ステムの構成を示す図。
ステムの構成を示す図。
【図3】処理対象のCADデータの具体例を示す図。
【図4】最初のチェーンの状態を示す図。
【図5】図1のステップ102による直線のベクトル線
素の結合処理後のCADデータおよびチェーンの状態を
示す図。
素の結合処理後のCADデータおよびチェーンの状態を
示す図。
【図6】図1のステップ103による円弧のベクトル線
素の結合処理後のCADデータおよびチェーンの状態を
示す図。
素の結合処理後のCADデータおよびチェーンの状態を
示す図。
【図7】図1のステップ104により算出された最小長
方形を示す図。
方形を示す図。
【図8】ステップ106による外図形の抽出処理手順を
示すフローチャート。
示すフローチャート。
【図9】図8のステップ201による閉図形の抽出処理
手順を示すフローチャート。
手順を示すフローチャート。
【図10】図9のステップ303による交点情報の記憶
処理手順を示すフローチャート。
処理手順を示すフローチャート。
【図11】図1のステップ105までに処理されたCA
Dデータを示す図。
Dデータを示す図。
【図12】メモリ2に記憶される交点情報の記憶状態の
変遷例を示す図。
変遷例を示す図。
【図13】閉図形の抽出処理段階におけるCADデータ
を示した図。
を示した図。
【図14】始点座標と交点座標の所定の入れ換え処理を
行ったCADデータを示す図。
行ったCADデータを示す図。
【図15】閉合する外図形の抽出が終了した時点のチェ
ーン状態を示す図。
ーン状態を示す図。
【図16】内図形の抽出処理手順を示すフローチャー
ト。
ト。
【図17】内図形の抽出処理後のCADデータを示す
図。
図。
【図18】図1の内図形の抽出処理後の最終CADデー
タを示す図。
タを示す図。
【図19】閉合する内図形の抽出処理後のチェーンの最
終状態を示す図。
終状態を示す図。
【図20】交点数が2を越える場合のCADデータの処
理を示す図。
理を示す図。
1 CPU 2 メモリ 3 表示部 4 キーボード 5 マウス 6 フロッピーディスク装置 7 ハードディスク装置 B バス
───────────────────────────────────────────────────── フロントページの続き (58)調査した分野(Int.Cl.7,DB名) G06F 17/50 608
Claims (1)
- 【請求項1】 CAD/CAMシステムで概略作成され
た第1のベクトル線素群からなるCADデータをCAM
に引き渡すことができるCADデータに処理するCAD
データの処理方法において、 前記第1のベクトル線素群のうち重複する複数のベクト
ル線素を1つのベクトル線素に結合された第2のベクト
ル線素群に修正して各ベクトル線素の始点座標と終点座
標をメモリに格納する第1ステップと、 前記第2のベクトル線素群のうち最外郭で閉合可能なベ
クトル線素から所定回りで閉合するように始点座標およ
び/または終点座標から交点座標への置き換え、および
ベクトル線素情報の並び替えを行ってメモリに格納する
ことにより、第3のベクトル線素群からなる外図形を抽
出する第2ステップと、 前記外図形の内側で閉合可能なベクトル線素が存在する
場合、前記所定回りと逆回りで閉合するように始点座標
および/または終点座標から交点座標への置き換え、お
よびベクトル線素情報の並び替えを行ってメモリに格納
することにより、第4のベクトル線素群からなる内図形
を抽出する第3ステップとを具備したことを特徴とする
CADデータの処理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10293793A JP3274905B2 (ja) | 1993-04-28 | 1993-04-28 | Cadデータの処理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP10293793A JP3274905B2 (ja) | 1993-04-28 | 1993-04-28 | Cadデータの処理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH06314308A JPH06314308A (ja) | 1994-11-08 |
JP3274905B2 true JP3274905B2 (ja) | 2002-04-15 |
Family
ID=14340754
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP10293793A Expired - Fee Related JP3274905B2 (ja) | 1993-04-28 | 1993-04-28 | Cadデータの処理方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3274905B2 (ja) |
-
1993
- 1993-04-28 JP JP10293793A patent/JP3274905B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JPH06314308A (ja) | 1994-11-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPS60500385A (ja) | 一様な幅の曲線を表わす方法及び装置 | |
US6215493B1 (en) | Three-dimensional CAD system and method of converting two-dimensional CAD drawings to three-dimensional CAD drawings | |
JP4329750B2 (ja) | 印刷制御プログラム | |
JPH01209573A (ja) | Cadスケッチ入力作図方法 | |
JP3274905B2 (ja) | Cadデータの処理方法 | |
JP2868666B2 (ja) | 任意の線に沿って組版する電子組版装置 | |
US20060140474A1 (en) | Apparatus and method for generating analysis data, computer-readable recording medium in which analysis data generating program is stored, analysis apparatus, analyzing method and computer-readable recording medium in which analysis program is stored | |
JP3593456B2 (ja) | 板金の図形データ生成方法及び自動プログラミング装置並びに板金の図形データ生成プログラムを記憶した記憶媒体 | |
US7468734B2 (en) | Apparatus for and method of graphic processing and computer-readable program | |
JP4302102B2 (ja) | 3次元設計支援プログラム | |
JPH07220115A (ja) | 3次元cadシステム | |
JPH10326298A (ja) | 3次元モデルデザインレビュー装置 | |
JPH05225290A (ja) | 3次元パラメトリック機能による形状修正方式 | |
JP3524380B2 (ja) | 破線描画装置および破線描画方法および記憶媒体 | |
JP2005332183A (ja) | メッシュ修正装置、メッシュ修正方法及びプログラム | |
JP2006072572A (ja) | 画像表示方法、画像表示プログラムおよび画像表示装置 | |
JP2000231556A (ja) | 情報処理装置及び情報処理方法並びに記憶媒体 | |
JP2006172007A (ja) | 解析用メッシュ修正装置、及び、解析用メッシュ修正方法 | |
JPS62256103A (ja) | 数値制御用マシンプログラム作成方法 | |
JPH0731671B2 (ja) | 数式入力編集方式 | |
JP2002358297A (ja) | 表組み作成プログラム、表組み指定方法および編集レイアウト装置 | |
JP2006113800A (ja) | 画像処理方法、画像処理装置及び画像処理プログラム | |
JPH01219953A (ja) | 部品加工図情報作成装置 | |
JPH0927047A (ja) | 構造解析に用いる有限要素の作成方法 | |
JP2001084389A (ja) | 図形編集装置、方法および記憶媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
LAPS | Cancellation because of no payment of annual fees |