JPH0896025A - 図形処理方法および装置 - Google Patents

図形処理方法および装置

Info

Publication number
JPH0896025A
JPH0896025A JP7151438A JP15143895A JPH0896025A JP H0896025 A JPH0896025 A JP H0896025A JP 7151438 A JP7151438 A JP 7151438A JP 15143895 A JP15143895 A JP 15143895A JP H0896025 A JPH0896025 A JP H0896025A
Authority
JP
Japan
Prior art keywords
graphic
data
relative position
area
point
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.)
Pending
Application number
JP7151438A
Other languages
English (en)
Inventor
Shinji Tokumasu
眞司 徳増
Shiro Nonaka
士郎 野中
Yasumasa Kawashima
泰正 川島
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP7151438A priority Critical patent/JPH0896025A/ja
Publication of JPH0896025A publication Critical patent/JPH0896025A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【目的】シンプルで例外処理の不要な拡大処理、処理速
度と精度の高い表示処理及び効率のよい通信制御を達成
して、相対位置データによる実用可能な画像処理方法お
よび装置を提供する。 【構成】図形オブジェクト生成手順s110は、図形
名,生成手順アドレス,オペランド図形名のアドレス,
パラメータからなるオブジェクトデータを生成する。送
信制御機能11から、図形Gの表示のメッセージを受信
した図形の表示手順s130は、相対位置データ生成手
順s120に空間点Pを送り、図形Gに対する点Pの相
対位置データを受けとる。図形Gがオペランド図形のと
きは、さらに下層の図形に点Pを送って相対位置データ
を求める。表示手順s130は、視線方向に繰返し点P
を設定して相対位置データを受信し、その内外判定デー
タIOが反転する点Pから図形Gの境界点を求め、さら
に視線を移動して取得した境界点列を画面に表示する。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、CADやCAMあるい
はコンピュータグラフィックス(CG)における図形処
理方式に係り、特に相対位置データを用いた図形の生
成、表示、応用処理等の図形処理方式に関する。
【0002】
【従来の技術】近年、CADやCAMあるいはCG等の
図形処理技術が目ざましく進歩し、二次元や三次元での
領域の定義、加工、編集、表示等に種々の方式が提案さ
れ、実用されているものも多い。
【0003】たとえば、三次元の図形処理に関しては、
バウンダリー・リプレゼンテーション法、コンストラク
ティブ・ソリッド・ジオメトリ法、オクトリー法が代表
的で、これらに関する多数の文献が出版されている。
【0004】応用図形処理についても同様である。たと
えば、与えられた図形を外側または内部側に一定の距離
だけ拡大するオフセット技術一つみても、数値制御(N
C)の軌跡データ作成などに関して、特開昭58−18
1185号公報、特開昭60−108222号公報、特
開昭60−184484号公報など、多数の出願がみら
れる。また、オフセットを利用して、製品形状に現われ
る凸部や凹部の角に丸み付けるフィレット処理に関して
も、特開平3−228181号公報等があり、さらに別
の応用として、オフセットされた図形間で交差チェック
を行い物体間の干渉を判定する特公昭61−533号公
報等と枚挙にいとまがない。
【0005】しかし、これらの従来の図形処理技術は、
予め対象とする図形の境界が陽に分かっていることが前
提である。ここで、陽に分かるとは、図形の境界が位置
や形の情報(境界上の各点に於ける傾きや曲率などの微
分幾何学的情報)によって表されることを意味する。
【0006】たしかに、円や四角形のように境界に関す
るパラメータや、方程式が分かっている場合は、それを
そのまま図形処理に用いるのが効率的である。しかし、
図形がこれら単純な図形の複雑な組合せでなり、さらに
そのオフセット図形であったりすると、境界を表す情報
が得られなかったり、たいへんに複雑な式の組合せとな
って処理が困難になり、図形処理方法の抱える大きな問
題点となっている。
【0007】これに対し、複雑な図形の境界の位置や形
の情報が陽に分からない場合の図形処理方法として、先
に本発明者等が提案した相対位置データを利用する新規
な方法がある(特開平2−7174号公報;以下では引
用例と呼ぶ)。
【0008】この方法は、対象図形Gに対する任意の空
間点Pの相対位置データを利用するもので、それには図
形Gに対する空間点Pの内/外を判定するデータが含ま
れている。生成される図形オブジェクトデータは、円や
三角等のように本来、境界が陽に分かる基本図形を最下
層とし、その上に組合せや反転あるいは拡大等により生
成される図形を積み重ねて、階層構成に作成される。
【0009】相対位置データを用いた図形処理として、
例えば和図形Gを表示する場合、図形Gからそのオペラ
ンド図形(和図形を構成している二つの図形)に空間点
Pを送って各図形から相対値データを受け取り、和図形
生成手順に従って一方の相対位置データを採用する。そ
のデータに従い、P点を中心とする一定領域が図形Gの
内部/外部かを判定し、どちらとも決定できない場合、
その未定領域を四分木法で次々と細分していき、最終的
に内部/外部に分かれるところを境界線として表示す
る。
【0010】
【発明が解決しようとする課題】上記の引用例に開示し
ている相対位置データによる図形処理方法によれば、複
雑な図形の境界の位置や形の情報が陽に分からなくて
も、その図形を構成する最下層の図形(ツリーの葉の部
位)部分からの相対位置データを基にして、表示をはじ
め種々の図形処理が可能になる。しかし、上記引用例の
方法は実用化に際していくつかの問題点が明らかになっ
ている。
【0011】その第一は、上層の図形オブジェクトデー
タが下層のオペランドを含む場合等に、各層の図形間で
の空間点やパラメータあるいは相対位置データなどを動
的に接続する制御方法が不明で、複数の階層に跨るダイ
ナミックな図形処理の方法と装置の構成が提供されてい
ないことである。
【0012】第二には、拡大処理(オフセットを含む)
において、第二種の相対位置データに距離dの上界の概
念を含むために、場合分けの処理が複雑化し不正確とな
る場合があることである。特に、元図形の境界に近い外
部に空間点Pが位置する場合には、この点Pの内外判定
には結果的に、点Pと図形境界との真の距離を求める必
要があることである。この真の距離の算定は最小化問題
のため、特別な場合を除いて一般には難しく、複雑なス
テップを必要とする。結局、相対位置データを用いる拡
大の図形処理に処理不可能な場合を生じ、図形処理の信
頼性の低下ないしは適用範囲が制約される問題点があ
る。
【0013】第三に、画像処理は一般にオペレータとの
対話によることが多く、その処理過程で常に表示処理が
伴う。しかし、上記した従来の四分木法による表示は、
境界が陽に分かるものに比べ処理時間がかかり、境界線
の表示精度にも問題があり、実用上の大きなネックとな
っている。
【0014】第四に、相対位置データ生成による画像処
理の速度が実用の域に達していないことにある。
【0015】本発明の第一の目的は、従来技術の問題点
を克服して階層関係にある図形間の動的な通信制御方式
を与え、相対位置データを用いる実用可能な図形処理方
法および装置を提供することにある。
【0016】本発明の第二の目的は、相対位置データを
用いいる拡大を含むあらゆる処理を効率的に且つロバス
トに実現でき、信頼性が高く使い勝手のよい図形処理方
法および装置を提供することにある。
【0017】本発明の第三の目的は、相対位置データを
用いる図形処理において、表示処理の高速化と表示精度
の向上を可能にする図形処理方法および装置を提供する
ことにある。
【0018】本発明の第四の目的は、相対位置データの
生成処理を高速化して、三次元モデルを含む複雑な画像
処理を実用可能な水準に引上げることにある。
【0019】その余の目的は、以下の記載を通して明ら
かになる。
【0020】
【課題を解決するための手段】本発明の第一の目的は、
図形領域に対する任意の空間点の相対位置データを用い
て前記図形領域に関わる所定の図形処理を行う図形処理
装置において、第一の図形領域の相対位置データを生成
する第一の図形生成手段と、前記第一の図形領域の相対
位置データを基に所定の生成処理をして第二の図形領域
の相対位置データを生成する第二の図形生成手段を含む
図形生成手段と、前記第一の図形領域及び/又は前記第
二の図形領域を表す相対位置データを受信してその図形
領域を表示する表示処理手段と、前記第二の図形領域に
関わる前記所定の図形処理の指示に従い、所定の空間点
を前記第二の図形生成手段、前記第一の図形生成手段へ
と送信して各々を実行し、前記第一の図形生成手段から
第一の相対位置データを前記第二の図形生成手段へ、前
記第二の図形生成手段から第二の相対位置データを前記
表示処理手段へと送信する通信制御手段と、を備えるこ
とことにより達成される。
【0021】本発明の第二の目的は、図形領域Gに対す
る任意の空間点Pの相対位置を表す相対位置データDP
を生成し、このデータを用いて図形領域Gに関わる所定
の図形処理を行う図形処理方法において、相対位置デー
タDPは、空間点Pが図形領域Gの内部(IN)または
外部(OUT)を示す内外判定データIOと、空間点P
と図形領域Gの境界との最短距離またはそれ以下の少な
くともどの程度離れているかを示すデータ(以下、距離
下界と呼ぶ)の距離データdと、前記最短距離が設定さ
れるときその近地点Qと、近地点Qが設定されるときを
第一種、そうでないときを第二種とする種別フラグを含
み、前記所定の図形処理として、図形領域Gの境界から
距離rだけ拡大する図形領域G*を生成する場合に、距
離rをパラメータとする点対称の操作図形の中心を相対
位置データDPの近地点Qと一致するように対応させ、
図形領域Gの全体または所定の範囲に渡って前記点対象
図形の集合和をとるように処理することにより達成され
る。
【0022】上記における拡大の場合分けは、前記操作
図形を円図形とする場合で、相対位置データDPがKI
ND=第一種で受信されるとき、その近地点Qを中心と
し距離rを半径とする円図形と空間点Pと近地点Qを結
ぶ半直線PQとの交点Rを求め、図形領域Gに対する交
点Rの相対位置データD1(=IO1,d1,Q1,
1)を求めて、以下の(1)〜(3)の拡大の場合分け
によって拡大図形領域G*の相対位置データDDを生成
することを特徴とする。
【0023】(1)前記内外判定データIO=INの場
合は、距離d1が距離rに等しいとき、相対位置データ
DDの内外判定データを内部(IN)、距離データをd
+r、近地点を交点Rとする。そうでないとき及びKI
ND=第二種の場合は、近地点=nil(不定)とし
て、相対位置データDDを第二種で表す。
【0024】(2)前記内外判定データIO=OUTの
場合は、相対位置データDDの内外判定データを外部
(OUT)、距離データをd−r、近地点を交点Rとす
る。KIND=第二種の場合は、近地点=nil(不
定)として、相対位置データDDを第二種で表す。
【0025】(3)前記内外判定データIO=OUTで
d<rの場合は、距離d1が所定距離rに等しいとき、
相対位置データDDの内外判定データを内部(IN)、
距離データをd−r、近地点を交点Rとする。そうでな
いときは、近地点=nil(不定)として、相対位置デ
ータDDを第二種で表す。但し、KIND=第二種の場
合は、前記他の図形領域に対する所定の判定機能によっ
て前記空間点Pの内外判定データIOPと距離データd
Pを求め、相対位置データDDの内外判定データをIO
P、距離データをdPとする。
【0026】前記所定の判定機能は、空間点Pを中心と
する半径rの所定図形と前記他の図形が交差する場合に
IOP=INとする超球判定機能によることを特徴とす
る。
【0027】本発明の第三の目的は、図形処理として図
形領域Gを表示する場合に、該領域Gに対する任意の視
線方向(view)を設定し、前記視線方向の視線上の
空間点Pを開始点から所定移動距離毎に順次、図形領域
Gの相対位置データ生成機能に送信し、前記相対位置デ
ータ生成機能から各空間点Pの相対位置データを受信
し、その相対位置データに含まれる内外判定データIO
が反転する前後の二つの空間点Pから当該視線上におけ
る図形Gの境界点を算出し、複数の視線について同様に
して得られる境界点列を結んで前記図形Gを表示するこ
とにより達成される。
【0028】あるいは、前記図形領域Gを表示する場合
に、該領域Gを囲む正方領域を四分木法により分割し、
分割された四つの正方領域毎の各中心点Pを図形領域G
の相対位置データ生成手段(以下、図形G生成手段)に
送信して各々の相対位置データを受けとり、該データに
含まれる内外判定データIOと距離dに基づいて、各々
の正方領域が図形領域Gの内部部領域または外部領域ま
たはそのいずれでもない未定領域となるか判定し、判定
された未定領域を四分木法により再分割して上記一連の
処理を繰返し、分割された正方領域が所定領域感度δ以
下になったとき、残っている未定領域毎にその4頂点の
各々を前記図形G生成手段に送信し、その各相対位置デ
ータを受信して前記4頂点の内外判定データIOからI
O組合せパターンを定め、予めIO組合せパターン毎に
設定されている表示セグメントを対応して、前記残って
いる各未定領域の表示セグメントを結んで図形領域Gを
表示することにより達成される。
【0029】本発明の第四の目的は、所定の図形が対応
される空間点の相対位置データによって表わされ、該相
対位置データの点列によって前記所定図形を生成する図
形処理方法において、任意の空間点Pを受信したとき
に、この空間点Pが前記所定図形の内部(IN)か外部
(OUT)かを示す内外判定データIOと、前記所定図
形の境界と空間点Pとの最短距離または該最短距離以下
で少なくともどの程度離れているか(距離下界)の一方
を示す距離データdと、前記最短距離が設定されるとき
その近地点Qと、近地点Qが設定されるときを第一種、
そうでないときを第二種とする種別フラグKINDから
なる相対位置データDを生成する詳細計算と、前記所定
図形に関して参照可能に設定されている領域データが使
用可能な範囲においては、前記領域データを基に求めた
内外判定データIO及び距離データdと、第二種の種別
フラグKINDを含む相対位置データDを生成する簡略
計算を、使い分けながら処理することにより達成され
る。
【0030】前記領域データは、前記所定の図形を含む
近似的に極小で単純な領域図形(円または四角形)でな
る静的領域データであり、前記使用可能な範囲は前記空
間点が前記領域図形の外部にある場合であることを特徴
とする。
【0031】あるいは、前記領域データは、最初に受信
した空間点P0の相対位置データDの詳細計算の結果に
よる点P0の内外判定データと距離データd0を含む動
的領域データであり、前記使用可能な範囲は受信される
空間点Piの点P0からの移動距離が距離データd0以
内にある場合で、これを超える空間点Pについては再度
詳細計算を行ってその結果により前記動的領域データも
更新することを特徴とする。
【0032】
【作用】本発明で用いられる相対位置データは、図形の
頂点等の座標でも境界線の方程式でもなく、対象の図形
Gに対して任意の空間点Pが内部(IN)にあるか外部
(OUT)にあるかを示す内外判定データ(IO)、図
形Gの境界と点Pの最短距離またはそれ以下で境界から
少なくともどの程度離れているかを示す距離データ
(d)、距離dが最短距離の場合の近地点Qなどを要素
とする。
【0033】図形の位置や形の情報を陽に含まない相対
位置データを用いることは、レーダーで電波を発信して
その進行方向にある物体の境界点をみつけ、その境界点
を結んで物体の形状を認識する場合に例えることができ
る。
【0034】このように、存在している図形領域の境界
は分かるが数式などによる表現が困難な図形領域に対
し、相対位置データを用いてその形状や境界を生成する
こと、言い替えれば図形生成のための相対位置データを
生成する図形処理方式が、本発明の基本的なメカニズム
となっている。その場合、空間点と対象図形領域と所定
距離以上離れている場合は、領域データによる簡略計算
が適用され、高速化が図られる。
【0035】本発明の図形処理装置によれば、図形の生
成手段の相互間あるいはそれら生成手段と表示処理など
の応用処理手段の間で、上層から下層へ空間点Pなどが
メッセージされ、反対に下層から上層へと相対位置デー
タが求められて応用処理手段へとメッセージされるダイ
ナミックな通信制御が可能になるので、階層関係に有る
図形の相対位置データによる生成と応用図形処理が効率
的に実現できる。
【0036】本発明の拡大図形(G*)の生成によれ
ば、上記した操作図形方式による場合分けを行うので、
引用例の場合に比べ単純化されるうえに、距離d≠拡大
距離rの場合にも正確な相対位置データを求めることが
できる。
【0037】さらに、空間点Pが元の図形Gの外部でそ
の境界の近く(拡大距離rの内側)にあるときも、上記
の超球判定法によって点Pの内外判定が行えるので、ど
のような図形の場合にも例外なく拡大処理が可能にな
り、相対位置データを用いる図形処理の信頼性を高め、
適用範囲の制約の払拭を可能にする。さらに、本発明の
図形処理で時間のからる超球判定等の繰返し処理部は、
並列処理化によって実用可能な処理速度を実現してい
る。
【0038】本発明の表示処理によれば、視線方式によ
る境界探索によって相対位置データを用いる表示速度を
実用可能なレベルに向上できる。また、再帰的な四分木
方式による未定領域の組合せパターンから選択される表
示セグメントをもちいるので、従来の四分木方式に比べ
処理が速く且つ、図形精度の高い表示が実現できる。こ
れら表示法を選択可能に用いることで、表示処理を不可
欠とする大多数の図形処理における相対位置データの適
用を可能にする。
【0039】本発明は特に三次元モデル、たとえばNC
工作機械の工具経路の計算、凹凸部のフィレット処理、
移動体の緩衝チエックなどの画像処理において好適であ
る。
【0040】
【実施例】以下、本発明の実施例を図面を用いて詳細に
説明する。
【0041】はじめに、実施例の図形処理装置の構成と
動作の概略を説明する。図2は、図形処理装置の機能ブ
ロック図で、中央処理装置(CPU)1、記憶装置2、
入力装置3及び表示装置4からなる計算機装置によって
構成される。
【0042】CPU1は、入力装置や各処理機能とメッ
セージを送受しながら、各処理機能を制御する通信制御
機能11、図形オブジェクトデータを作成する図形オブ
ジェクト作成機能12、図形の相対位置データを生成す
る図形相対位置生成機能13、図形の表示を処理する図
形表示機能14、所定の応用図形処理を行う応用図形処
理機能15を有している。
【0043】応用図形処理機能15は、図形オブジェク
トデータと図形相対位置生成機能を利用して行う図形処
理で、たとえば面積計算、NC情報の生成、配置や干渉
チェックなど多種多様である。表示も応用処理の一つで
あるが、本実施例では説明の都合上から独立して扱って
いる。
【0044】図形相対位置生成機能13は、図形に応じ
た相対位置データを指示点に対応して出力する処理で、
生成した相対位置データは表示処理や応用処理によって
具現化される。従って、図形相対位置生成機能は、本質
的には相対位置データによる図形生成の機能であるが、
本実施例では図形オブジェクトデータ生成との混同をさ
けるために、このように呼ぶことにする。
【0045】本実施例の図形相対位置生成機能13は、
以下の(1)〜(4)に大別されるが、(1)の基本図
形に対する機能はさらに円、四角、三角等の形状別に分
かれる。(2)〜(4)の機能は、いわゆるオペランド
図形に対する機能で、これより基本的にはあらゆる図形
の生成が可能になるが、別に差図形、積図形などの処理
機能を有してもよい。
【0046】(1)基本図形Gの相対位置を生成する機
能。
【0047】(2)図形Gの反転図形G’の相対位置を
生成する機能。
【0048】(3)二つの図形G1,G2を集合した和
図形G3の相対位置を生成する機能。
【0049】(4)図形Gの拡大図形G*の相対位置を
生成する機能。
【0050】記憶装置2には、通信制御のプログラムを
記憶する通信制御手順ファイル21、図形オブジェクト
データを生成する制御プログラムを記憶する図形オブジ
ェクト生成手順ファイル22、図形毎の相対位置データ
生成の制御プログラムを記憶する相対位置生成制御手順
ファイル23、図形オブジェクトデータを記憶する図形
オブジェクトファイル24、図形表示の制御プログラム
を記憶する表示制御手順ファイル25、用途毎に応用図
形処理の制御プログラムを記憶する応用図形制御手順フ
ァイル26を有している。
【0051】図3(a)は、図形相対位置生成手順ファ
イル23で、円の生成手順231、四角形の生成手順2
32、三角形の生成手順234等の基本図形と、反転図
形の生成手順235、和(+)図形の生成手順236、
拡大図形の生成手順237等(基本図形に対し、以下で
はオペランド図形の生成手順と呼ぶ)が記憶されてい
る。さらに、拡大図形の生成過程で、特殊な場合に相対
位置データの内外判定に使用される超球判定処理手順2
38も格納している。
【0052】図示の「#×××」は、格納先頭番地であ
り、CPU1によって管理される。実際の格納では、手
順名称と先頭アドレスの対照をヘッダー部とし、手順は
その下層にアドレス毎に記憶される。
【0053】図3(b)は、図形オブジェクトデータフ
ァイル24で、図形名、その相対位置生成手順の格納番
地を示す手順ポインタ、オペランド(参照する図形オブ
ジェクトのポインタ)及びパラメータエリアからなる。
基本図形はオペランドを持たない。例えば図形名が”
円”の場合、手順ポインタは”#ccc”を、パラメー
タは中心座標値と半径の値を記憶する。
【0054】図4(a)は、表示制御手順ファイル25
で、図形表示処理の高速化を可能にする視線式表示処理
手順251と、その探索点決定処理手順252、更には
如何なる形状の表示にも適用でき且つ効率的な四分木式
パターン形処理手順253が、各アドレス領域に格納さ
れている。
【0055】視線式表示処理手順251と四分木式パタ
ーン形処理手順253は、図形表示機能14がコマンド
の指示に従って選択する。もちろん、図形オブジェクト
データの生成時に、特定の図形にたいしては属性として
表示手順名を持たせるようにしてもよい。
【0056】同図(b)は、応用図形制御手順ファイル
26で、面積計算の手順261やNC情報の生成手順2
62などが各アドレス領域に格納され、更にアプリケー
ションに応じて種々の手順が追加される。
【0057】このように構成される図形処理装置は、オ
ペレータが入力装置3から指示したコマンドに従い、新
たな図形オブジェクトの生成又は図形の表示、あるいは
応用図形処理を実行する。図形の表示や応用処理では適
宜、相対位置データの生成処理が行われる。各段階の処
理結果は、必要に応じて表示装置4に表示される。
【0058】図1は、本実施例による図形処理装置の基
本機能を示すフロー図である。通信制御機能11は、入
力装置3や各処理手段からのメッセージを受信すると
(s101)、メッセージの様式から通信先を決定し
(s102)、通信先を呼び出して(あるいは起動し
て)メッセージを送信する(s103)。このとき、必
要に応じてメッセージの加工が行われる。
【0059】処理態様を示すコマンド(入力装置3か
ら)などのメッセージは、(様式1)で表される。
【0060】 〔手順名称;パラメータ;図形オブジェクト名称(図形名)〕 …(様式1) 手順名称は、図形オブジェクト生成の場合、基本図形で
は「円」や「四角」など、オペランド図形では「反転」
や「和(+)」などが記述される。一方、表示処理の場
合は「表示」、応用処理の場合は「面積」などと記述さ
れる。オペランドで与えられる図形オブジェクト名称
(以下、図形名)は、その手順の操作対象となる図形名
であり、基本図形オブジェクトを生成する場合にはな
い。
【0061】図形オブジェクトデータ生成処理(s11
0)が起動され、(様式1)のメッセージが受信される
(s111)。オペランドに図形名Gがある場合は、図
形Gのオブジェクトデータを読出し、図形G相対位置生
成手順の先頭アドレス(ファイル23)を読出す(s1
12)。例えば、手順名称が和(+)で、オペランド図
形名が円A、四角形Bとすると、円相対位置生成手順の
ポインタ#ccc、四角形対位置生成手順のポインタ#
sssが読出される。
【0062】次に、手順名称の図形オブジェクトデータ
を様式(2)により生成し(s113)、図形オブジェ
クトファイル24へ格納する(s114)。
【0063】 〔生成した図形名;相対位置生成手順ポインタ;パラメータ; 図形ポインタ〕 …(様式2) 上記和図形の例で示すと、(C;手順#ccc,手順#
sss)となり、パラメータは必要ない。和図形Cの重
ね位置のパラメータは、後述する和図形の相対位置デー
タの生成や表示の際に、基本図形A、Bの中心位置が指
定されるまで、省略できる。これとは反対に、図3
(b)のように、図形によってはパラメータのみで、操
作対象図形名のポインタ(先頭アドレス)が記述されな
いこともある。
【0064】通常、生成した図形オブジェクトデータ
は、通信制御機能11に表示要求のメッセージを送信し
て(s115)、図形の表示処理s130によって画面
表示される。
【0065】このように、本実施例により生成される図
形オブジェクトのデータは、図形名とその図形生成手順
のポインタ(先頭アドレス)及びパラメータからなり、
従来のデータのように境界や形状を陽に示すための数式
などを一切持たない。
【0066】また、種々の基本図形のオブジェクトデー
タを下層にして、和や反転あるいは拡大などの処理を加
えるオペランド図形のオブジェクトデータを、上層に積
み重ねる階層構成(基本図形を葉とするツリー構造)と
している。本実施例のオブジェクトデータは、このよう
に積み重ねで生成できるので、所望の複雑な図形の生成
が可能である。
【0067】一方、(様式1)の手順名称が「表示」の
メッセージの場合は、図形表示処理(s120)が起動
され、表示する図形名Gとパラメータが受信され(s1
31)、図形Gのオブジェクトデータからその相対位置
生成手段のアドレス(手順名でもよい)が読出される
(s132)。
【0068】次に、図形Gの相対位置生成手段に、通信
制御機能11を介して(s101〜s103)、パラメ
ータと共に空間点P(境界探索開始点)を送る(s13
3)。そして、点Pに対する図形Gの相対位置データ
(様式3)を受信し(s134)、後述する境界点探索
を行う(s135)。一つの境界探索開始点に対応する
境界点が求まったら上記s133〜s135を繰返し、
図形Gの前境界点列を取得する(s136)。最後に境
界点列を結んで図形Gを画面表示する(s137)。な
お、本実施例の相対位置データを用いる表示処理の詳細
は後述する。
【0069】図形相対位置生成処理s120は、(様式
4)のメッセージにより起動され、受信したパラメータ
を基に、点Pに対する相対位置データを後述するように
求め(s122)、通信制御機能11に返信する(s1
23)。
【0070】また、応用図形処理(s120)が起動さ
れると、表示処理のs131〜s134と同様の処理後
に、相対位置データを利用した個別の応用処理、たとえ
ば面積計算が行われて、結果が出力される。応用処理の
詳細は後述する。
【0071】以下、具体的な図形例によって、本実施例
の図形処理装置により行なわれる図形処理、即ち、図形
領域の相対位置データ生成処理(図形領域生成処理)と
その表示処理、さらに応用図形処理のいくつかを詳細に
説明することにする。なお、以下では特に断らないかぎ
り空間の次元を二次元とし、図形領域は単に図形と呼ん
で説明する。
【0072】はじめに、相対位置データを用いる図形処
理の理解を容易にするために、基本図形を例にその相対
位置データの生成と表示処理について説明する。基本図
形としては、四角形、三角形および円等が対象になる。
【0073】図5に、円の例を示す。円の図形オブジェ
クトデータは上記(様式2)で与えられ、〔円;パラメ
ータ(中心O、半径r)〕となる。
【0074】図5(a)は説明図で、円50、円内部の
空間点P51、外部の空間点P52を示す。また、円の
中心O、半径r、近地点Q(点Pから最短の図形境界
点)、線分PQの距離d(Qが分かる場合は点Pと円5
0の最短距離)を示す。同図(b)に円の生成手順20
0を示す。
【0075】円生成の制御手順s200(ファイル23
の手順231)は、たとえば表示機能13から通信・制
御機能11を介して起動され、(様式3)のメッセージ
を受信する(s201)。
【0076】 〔空間点P;パラメータ(中心O,半径r)〕 …(様式3) このメッセージより空間点Pと、円生成のパラメータ中
心O,半径rを得て、点Pと円の周境界との符号付き距
離dを計算する(s202)。距離dの符号を判定し
(s203)、符号が正ならば、点Pの内外判定データ
IO=”OUT”と設定する(s2031)。空間点P
52がこのケースである。距離dが負またはゼロの場合
には、IO=”IN”を設定し、距離dの符号を反転す
る(s2032)。空間点P51がこのケースである。
【0077】さらに、点Pと円の周境界との近地点Qを
ベクトル計算により求める(s204)。最後に、種別
フラグ=”1”とする相対位置データを完成し、このデ
ータ〔IO、d、Q、1〕を、通信・制御機能11を介
して要求元(たとえば表示機能13)に返信する(s2
05)。以上の処理を、与えられる一連の空間点Pに対
し繰返し行なうことで、相対位置データによる円図形が
生成される。
【0078】ここで、相対位置データを定義しておく。
相対位置データとは、対象とする図形Gに対して、任意
の空間点Pが持つ相対的な位置関係であり、データ形式
は(様式4)で表される。
【0079】 〔内外判定データ(IO);距離データ(d); 境界点データ(Q);種別フラグ(KIND)〕(様式4) 内外判定データ(IO):空間点Pが図形Gの中にある
場合「IN」、空間点Pが図形Gの外にある場合「OU
T」。
【0080】距離データ(d) :空間点Pと図形
Gの境界δGとの最短距離またはそれ以下の近似値(距
離下界)。
【0081】近地点データ(Q) :空間点Pが境界
δG上で最短距離をとる点の一つ、上記点を設定できな
い場合は「NIL」。
【0082】種別フラグ(KIND):距離データと境
界点データが設定される場合「1」、
それ以外の場合「2」。
【0083】なお、相対位置データは種別フラグが
「1」の場合を第一種、「2」の場合を第二種と呼ぶ。
また、全ての空間点Pに対して第一種の相対位置データ
を与える図形Gを第一種図形といい、それ以外を第二種
図形と呼ぶ。第二種図形では、近地点Qは不明(ni
l)のままで、距離dは最短距離より下側で、できれば
近似値が表示処理等にはベターである。
【0084】計算機を用いて図形処理を行う場合、図形
の境界に係るデータあるいは領域に係るデータ(マスプ
ロパティデータ;図形の重心、直径、面積、体積、モー
メント等)が必要になる。前者は輪郭の表示やNC制御
情報の取得、後者は面積や体積の計算あるいは物体の配
置や干渉解析のために用いられる。
【0085】上記した相対位置データは、メッセージに
よって与えられた空間点Pの一点毎に定まり、近地点Q
を除く他の項目が設定される。この場合、近地点Qは分
からなくても、後述するようにその内外判定から、図形
の境界点やマスプロパティデータが決定できる。
【0086】ところで、円図形は明らかに第一種図形で
ある。即ち、空間点Pと中心Oを結ぶ線分OPと半径r
の差が距離dであり、線分OPまたはそのP側の延長と
円周との交点が近地点Qである。内外判定データIO
は、半径rと距離dの比較によって決まる。
【0087】四角形(長方形)の場合は、その四辺を延
長したときの九つの空間領域に対し、空間点Pがどの領
域に入るかを判定することによって、第一種の相対位置
データが得られる。他の基本図形に対しても、同様にし
て図形と空間点の幾何学的関係から、内外判定データI
O、距離d及び近地点Qを求め得ることは自明であり、
このように基本図形は、第一種の相対位置データとして
求めることができる。
【0088】尤も、基本図形の表示等を行う場合は、そ
の境界データは陽に与えられるので、従来処理の方が効
率的であり、本実施例はかかる場合に従来処理の併用を
排除しない。
【0089】しかし、複数の基本図形を合成した複雑な
形状の図形では、その境界データが陽に分からなかった
り、分かっても求めるのに時間がかかる。このような複
雑な図形は、相対位置データを用いる図形処理の好適な
対象であり、第二種の相対位置データを含んで生成され
る場合が殆どである。第二種の相対位置データは、内外
判定データのみが明確に定まり、近地点Qや最短距離は
不明であるが、それでも本方式の優れた特徴によって図
形処理が可能になる。
【0090】図6及び図7は、円の表示処理を説明する
説明図とその相対位置データを示し、前者は第一種、後
者は第二種の例である。
【0091】表示処理では、設定された視線方向(vi
ew)に視線V1が設定され、視線V1上の開始点P0
から円Aの境界位置の探索を開始する。図6の開始点P
0は、図5に示した空間点P51又は52に相当する。
【0092】開始点P0の相対位置データは、図6
(b)に示すように円の生成手段(s200)から(様
式4)で得られ、〔OUT,c0,Q0,1〕となる。
次の探索点Pは、視線V1の方向に、点P0から距離c
0にある点P1に設定される。この点P1の相対位置デ
ータは、同様にして〔OUT,c1,Q1,1〕とな
る。点P1の距離データc1が、予め設定されている交
差感度εより小さいとき、次の探索点P2は点P1から
視線V1上に距離εの位置とされる。次に、探索点P2
の内外判定データIOがINになると、この間に視線V
1と図形Aの境界δAの交点が存在することになり、点
P1と点P2に二分法を適用して境界点δ1を求める。
【0093】さらに、視線Vi、Vi+1、...と、視線
方向と垂直方向に走査間隔Wづつ移動して、視線方向か
ら見える円Aの半円部(点線Lより上)の境界点データ
列QQを求める。残る半円部の境界点は、上記で、内外
判定データIOが変化した後も更に視線V上を交差感度
εづつ探索を続け、再びIOが変化する点を検出するよ
うにしてもよい。しかし、一般には視線Vを再設定し、
上記例では視線を下から上に向けて繰り返すことで、よ
り効率的に残る半円部の境界点データ列を求めることが
できる。なお、間隔Wを交差感度εと同等または以下に
設定し、表示図形が違和感なく見えるようにする。交差
感度εについては後述する。
【0094】図7は、円図形Aを敢えて第二種図形で定
義したときの表示例である。同図(b)に示すように、
第二種の相対位置データにおいては、空間点Pと境界と
の最短距離が分からないので近地点Q=nilとなる。
また、相対位置データの距離データは、P0に対しては
d=c0/2が設定されている。
【0095】第一種の場合と同様に、点P0から探索を
開始し、視線V1上をc0/2進んだ点P1で、〔OU
T,c1/2,nil,2〕が得られる。距離データc
1/2が交差感度εより小さいと、次の探索点P2は点
P1から視線V1上に距離εの位置となり、〔OUT,
c2/2,nil,2〕が得られる。更に、距離ε前進
した探索点P3で、その内外判定データIOがINにな
ると、点P2とP3の二分法により境界点δ1が求ま
る。
【0096】このように、近地点Qがnil、距離dが
近似値となる第二種の相対位置データによっても、基本
図形の境界点を求めるのには何の不都合もない。しか
し、複雑な図形の種々な場合分け処理を進めるときに、
全てを第二種の相対位置データで処理しようとすると処
理効率が悪くなる。
【0097】本実施例では、基本図形は原則として第一
種で表現し、複雑な図形の場合も下層の基本図形からの
相対位置データを基にして、処理効率を上げ且つ、処理
不能となるケースをなくしている。
【0098】図8に、本実施例の視線式図形表示の手順
を示す。この手順は相対位置データを用いる場合の汎用
的な方法で、基本図形には限定されない。
【0099】表示の手順s300は、表示制御手順ファ
イル25の処理手順251であり、(様式5)のメッセ
ージ(基本形は(様式1)に同じ)を受信して(s30
1)処理を開始する。
【0100】 〔表示;視線方向などのパラメータ;図形名G〕 …(様式5) パラメータとしては、視線方向view、開始点P0、
走査線間隔幅W、走査線数N、最大探索深さL、交差感
度εなどである。但し、W、εなどは予め定数が設定さ
れることも多い。走査方向は、視線方向viewに垂直
な長さWのベクトルで定める(s302)。
【0101】次に、探索点PをP=PP(最初は開始点
P0)とし(s303)、全走査i=0〜(N−1)の
i=0から探索を開始する(s304)。まず、図形G
の相対位置生成手順(円の例ではS200)に探索点P
をメッセージして(s3041)、返信された相対位置
データ〔IOO、d、Q、KIND〕を受けとる(s3
042)。そのきの内外判定データIOOを判定し(s
3043)、開始点P0が図形Gに対して、外にあれば
探索向きVをview方向に設定し、内にあればその反
対方向(V=−view)に設定して探索する。
【0102】次に、内外判定データIOOがIONに変
化(IOO≠ION)するまで、または探索深さj>L
になるまで(s3044,5)、探索ステップσ=ma
x(d、ε)による探索点P(=P×σ×V)を求めな
がら(s30451)、図形Gの相対位置生成手順にメ
ッセージ(探索点P)を送って(s30452)、相対
位置データを受け取る(s80453)。
【0103】相対位置データを受信する度にその内外判
定データを判定し(s3046)、IOOからIONに
変化していれば、一つ前の探索点POと今回の探索点P
から二分法より境界点δiを求める(s30461)。
そして、次の走査探索開始点Pを決定し(s3046
2)、求められた境界点δiは境界点列QQ(i)に追
加する(s3047)。一方、探索深さj>Lとなるま
で内外判定データがIOOのままであれば、境界点δi
=nilとして次の探索開始点Pを決定する(s304
63)。最後に、境界点列QQ(i)のi=0〜(N−
1)を結ぶ曲線を表示する(s305)。
【0104】本実施例の視線式表示処理方法によれば、
上記引用例の四分木式表示に比べ、相対位置データを用
いる場合の表示処理を大幅にスピードアップでき、十分
に実用に供し得る。なお、本発明で改良した四分木式表
示方法については後述する。
【0105】上記の処理(s30462,3)で、次の
探索開始点Pは探索開始点P0と走査線間隔幅Wから、
P=PP(最初の開始点P0)+(i+1)Wにより求
めている。しかし、境界点δiが求まったときの次の開
始点は(s80462)、図形のコヒーレンス性を利用
して、より効率よく決定することができる。
【0106】図9を用いて、その効率的な探索点決定方
法(手順252)を概念的に説明する。今、ベクトルw
を図示の矢線方向とし、視線Vi上の境界点δiが点9
1に求まったとする。このとき、次の視線Vi+1の開始
点P0は、点91から視線Vi +1に下ろした垂点92と
することができる。あるいは、一つ前の視線Vi-1の境
界点90を起点とし、境界点91を通る半直線と次の視
線Vi+1との交点93を開始点P0とすることができ
る。
【0107】いずれの場合にも、間隔Wを交差感度εと
同等またはそれ以下の微小幅すると、次の探索点P1で
内外判定データIOが反転する。従って、境界点の探索
処理が大幅に効率化され、本実施例の視線式表示処理方
法を、直接の境界データを用いる従来法に比べ、遜色な
い程度にまで高速化できる。
【0108】図10に、交差感度の設定方法を説明す
る。交差感度εは、視線Vと図形Gの境界δGの交点の
検出精度を規定する値である。即ち、交差感度εとは、
視線V上で任意のε幅の区間に於ては、視線と図形との
交点は、高々一個であると規定する。この際、二個以上
の交点がある場合でも、一個以下に縮約して扱う。同図
で、区間10d、10eでは、この規定どうりになって
いる。しかし、区間10fでは、この規定に合致しない
ので、交点は一個以下に縮約される。従って、εの値を
小さくする、または大きくすることは、それぞれ、交差
感度を上げる、または、下げると言う意味になる。
【0109】交差感度εは通常、図形の最大寸法の1/
100〜1/1000程度に設定されるが、内外判定デ
ータIOが反転する2点間の距離に応じて動的に可変す
るようにしてもよい。
【0110】次に、オペランド図形の例として、反転図
形、和(+)図形及び拡大図形の相対位置データ生成と
その表示処理について説明する。
【0111】反転図形生成の手順は、オペランドとして
元図形を記述した(様式6)のメッセージを受信して実
行される。
【0112】 〔反転;;元図形G〕 …(様式6) 反転図形生成の手順は簡単である。まず、元図形Gの相
対位置データ生成手順に対して、空間点Pと元図形Gに
応じたパラメータ(元図形Gが円であれば中心と半径)
からなるメッセージを送り、返信された相対位置データ
〔IO,d,Q,KIND〕を受けて、その中の内外判
定データIOを反転するだけでよい。
【0113】反転図形の表示処理は、図形の内外が反転
して実領域が元図形と反対になるだけで、基本的には上
述した図形Gの表示処理と変わるところがない。
【0114】次に、合成処理の一例として、二つの図形
の和(+)図形の相対位置データを生成する機能及びそ
の表示処理について説明する。
【0115】図11は、和図形の相対位置データを生成
する手順の流れ図である。和図形の相対位置データ生成
手順s400は、例えば表示処理手順s300から、オ
ペランドとして二つの図形名G1,G2を記述した(様
式7)のメッセージを受信して実行される。
【0116】 〔+;; 図形G1、図形G2〕 …(様式7) 和図形生成手順s400は、空間点Pと図形名G1、G
2のメッセージを受信すると(s401)、図形G1と
図形G2のオブジェクトデータから読出した各々の相対
位置生成手順に対し空間点Pを送信する(s402)。
【0117】このとき、各々の手順に与えるパラメータ
も(たとえば、G1が円であれば中心O1と半径r、G
2が四角形であれば中心O2と二辺の長さ)をそれぞれ
送信する。
【0118】この結果、G1の生成手順から相対位置デ
ータD1=〔IO1、d1、Q1、KIND1〕、G2
の生成手順からD2=〔IO2、d2、Q2、KIND
2〕が返信される(s403)。
【0119】これら二つの相対位置データD1、D2
は、空間点Pに対する内外判定データ(IO)に応じて
次のように場合分けされ、空間点Pに対する和図形の相
対位置データが決定される。
【0120】図12に、円と四角形による和図形の説明
図を示し、これを参照しながら和の場合分け手順を説明
する。
【0121】(1)IO1=IO2=”OUT”の場合 これは、図12の空間点P1(121)に相当する。こ
の場合は、相対位置データD1の距離d1と相対位置デ
ータD2の距離d2を比較し(s4041)、距離dの
小さい方を空間点Pに対する相対位置データDDとす
る。
【0122】(2)IO1=”IN”、IO2=”OU
T”の場合 これは、空間点P2(122)に相当する。この場合
は、図形G1(円)の相対位置データの種別を判定し
(s4042)、第一種の場合にその近地点Q1を空間
点として図形G2(四角形)の相対位置生成手段に送り
(s40421)、その相対位置データDQ1=(IO
1,d12,Q12,,KIND12)を受信する(s
40422)。その内外判定(s40423)でQ1が
G2の外にある場合は、空間点P2に対する和図形の相
対位置データはDD=D1とし(s404231)、そ
れ以外の場合にはDD=(”IN”、d1、nil、
2)とする(s404232)。
【0123】(3)IO1=”OUT”、IO2=”I
N”の場合 これは、空間点P3(123)に相当する。この場合は
(2)と同様にして(s40431〜s40433)、
空間点P3に対する図形G2(四角形)の近地点Q2が
図形G1の外にある場合には(s64331)、空間点
3に対する和図形の相対位置データはDD=D2とし
(s404331)、それ以外の場合にはDD=(”I
N”、d2、nil、2)とする(s404332)。
【0124】(4)IO1=IO2=”IN”の場合 これは、空間点P4(124)に相当する。この場合、
空間点Pに対する和図形の相対位置データは、DD
=(”IN”、max(d1、d2)、nil、2)と
する(s4044)。
【0125】相対位置データDDは、上記(1)〜
(4)の場合分け処理により求められ、空間点Pの送信
元、たとえば表示処理手順300に返信され(s40
5)、以下のように表示される。
【0126】図13は、和図形の表示処理の説明図と、
和の場合分け処理により求められる和図形の相対位置デ
ータの例である。
【0127】表示処理手順s300に、(開始点P0、
視線V=view及び図形名C)が与えられると、手順
s300から図形C相対位置生成手順s400に開始点
P0が与えられ、さらに生成手順s400から円Aの相
対位置生成手順s200及び説明を省略して図示のない
四角形の相対位置生成手順に対して、空間点P0とパラ
メータが与えられる。
【0128】同図(b)のように、開始点P0に対する
円Aの相対位置データD1=(OUT,c0,Q0,
1)と、四角形BのD2=(OUT,s0,R0,1)
が生成手順s400に返信される。手順s400は場合
分けにより、両方がOUT及びc0>s0から、和図形
Cに対する点P0の相対位置データDD=(OUT,s
0,R0,1)を求め、表示処理手順s300に返信す
る。
【0129】手順s300は、再び視線V上の次の探索
点P1を手順s400に送り、上記処理を行って点P1
の相対位置データDD(=D2)を受け取る。これを図
示のように繰返し、探索点Pnに対する和図形Cの相対
位置データDDが、IO=INに変わったところで、点
n-1と点Pnの座標の二分法から視線V上の和図形の境
界点δ1を求める。なお、探索点Pnは図形Aと図形B
の両方に”IN”となるので、上記した和の場合分けの
(4)に該当し、相対位置データDDは第二種として生
成されている。
【0130】さらに、視線Vを走査幅Wづつ移動しなが
ら、視線方向(view)から見える和図形Cの境界点
を求め、その境界点列QQを結んで図形Cが表示できる
ことは、基本図形の表示の場合と同じである。
【0131】次に、本実施例による拡大処理について、
相対位置データを生成する機能及び表示処理を説明す
る。
【0132】図14は、拡大処理の具体例を示し、同図
(a)の元図形G(図12に示した円と四角形の和図
形)を、同図(c)のように距離rだけオフセットした
拡大図形G*を生成、表示する例である。なお、本実施
例で言う「拡大」は、オフセット図形を含む広義の意味
に用いている。
【0133】拡大処理は、操作図形方式と呼ぶ新規な方
法による。即ち、同図(b)に示すパラメータrで中心
Qの点対象操作図形g(Q)を介して、前記拡大図形の境
界の相対位置データDDを生成する。言い替えれば、点
対象操作図形g(Q)を元図形Gの境界上の近地点Qと一
致するように対応させ、元図形Gの全体または指定範囲
(オフセットの場合は、拡大する境界の一部を指定する
ことも多い)に渡って操作図形g(Q)の集合和をとるも
のである。
【0134】本実施例の操作図形g(Q)は、半径距離r
の円図形を用いて説明する。操作図形g(Q)としては楕
円や四角形など、基本的には全ての点対称図形に拡張可
能である。
【0135】図15は、拡大図形の相対位置データを生
成する手順の流れ図である。拡大図形の相対位置データ
生成手順s500は、例えば表示処理手順s300ある
いは応用図形処理(NC情報)などから、(様式8)の
メッセージを受信して実行される。なお、拡大図形名G
*を設定して(様式9)のメッセージとすると、図形名
が直接に利用できるので便利である。
【0136】 〔拡大;距離r;図形G〕 …(様式8) G*=〔拡大;距離r;図形G〕 …(様式9) 拡大図形の生成手順s500は、メッセージ制御手段1
1を介して(様式8)または(様式9)のメッセージを
受けると、元の図形Gに対して空間点Pを指定したメッ
セージを送り(s502)、図形Gの相対位置生成手順
から図形Gに対する空間点Pの相対位置データD=〔I
O、d、Q、KIND〕を受けとる(s503)。
【0137】次に、以下のように拡大の場合分け処理
(s504)が行われ、拡大図形G*に対する空間点P
の相対位置データDDが求められる。図14に示した空
間点P141、P142及びP143を例に説明する。
【0138】(1)IO=”IN”の場合 これは、空間点Pが図形G内にあるP1(141)のケ
ースに相当する。受信した相対位置データDのKIND
を判定し(s5041)、第一種の場合は、その近地点
Qを中心とする半径rの操作円g(Q)を対応させ、g
(Q)と半直線PQの交点Rを求める(s50411)。
【0139】次に、交点Rをメッセージとして図形Gに
送る(s50412)。その返信データDR=〔IO
1、d1、Q1、KIND1〕を受信し(s5041
3)、距離d1=rか否か判定する(s50414)。
d1=rの場合は、拡大図形G*の相対位置データDD
=〔”IN”、d+r、R、1〕とする。この交点Rは
拡大図形G*の境界上にある。d1≠rの場合は、DD
=〔”IN”、d+r、nil、2〕とする。
【0140】s5041で、KINDが第二種の場合
は、DD=〔”IN”、d+r、nil、2〕とする。
【0141】(2)IO=”OUT”& d≧rの場合 これは、空間点Pが図形Gの外で且つ距離dが距離r以
上となるP2(142)のケースに相当する。相対位置
データDが第一種の場合は、相対位置データDD=〔”
OUT”、dーr、R、1〕とする(s50421)。
一方、第二種の場合には、DD=〔”OUT”、dー
r、nil、2〕とする(s50422)。
【0142】なお、場合分け(1)と同様にして、操作
円g(Q)を対応させ、g(Q)と半直線PQの交点Rを求
める処理の記載は省略している。
【0143】(3)IO=”OUT”& d<rの場合 これは、空間点Pが図形Gの外で且つ距離がr未満とな
るP3(143)のケースに相当する。相対位置データ
Dの種別を判定し(s5043)、第一種の場合には、
操作円g(Q)を対応させ、g(Q)と半直線PQの交点R
を求める(s50431)。
【0144】次に、交点Rをメッセージとして図形Gに
送り(s50432)、その返信データDR=〔IO
1、d1、Q1、KIND1〕を受信する(s5043
3)。d1=rの場合は、相対位置データをDD=〔”
IN”、rーd、R、1〕とする(50434)。この
点RはG*の境界上にあり、Pからの距離は(r−d)
となる。また、d1≠rの場合には、DD=(”I
N”、rーd、nil、2)とする。
【0145】一方、s5043で、相対位置データDが
第二種の場合には、上記した操作図形方式を、そのまま
適用することができない。即ち、拡大図形G*に対する
空間点Pの内外判定ができず、この点における相対位置
データDDを求めることができないからである。このた
め、本実施例では以下の超球判定方法適用し、空間点P
の内外判定データIOPを求め(s50435)、これ
を用いて、空間点Pの拡大図形G*に対する相対位置デ
ータDD=(IOP、dP、nil、2)を決定する
(s50436)。
【0146】図16に、超球判定法の説明図を示す。超
球判定法では、対象図形と同じ空間次元を持つ超球によ
って判定するが、本実施例では二次元として半径rの円
(他の円と区別するために、”超円”と呼ぶことにす
る)を用いる。なお、超円と上記の操作円は同形で、ど
ちらも図形Gへ対応させるが、対応位置が相違する。超
球判定法には、図16の(a)、(b)および(c)に
三種類の方法がある。
【0147】(a)の方法では、上記の空間点Pである
点P161を中心として、半径rの超円160を描く。
円領域162(162aと162bからなる)と図形G
の交差をチェックし、交差する場合には、相対位置デー
タDDの内外判定を”IN”とし、そうでない場合に
は、”OUT”とする。
【0148】点P161は、円領域162bで図形Gと
交差するので、内外判定は”IN”となる。一方、点P
163は、超円164と図形Gが交差しないので、”O
UT”である。
【0149】(b)の方法では、円領域の変わりに円周
を用いることを除けば、(a)と全く同じである。
【0150】(c)の方法では、(b)の方法を効率化
するためにモンテカルロ法を適用したものである。即
ち、あらかじめ一定数Nを設定し、中心点P、半径rの
円周上に最大N個の点を一様乱数を用いて発生させ、逐
一、図形Gに対する内外判定を行なう。
【0151】点P161の場合のように、円周162a
+162b上に発生させた点群の中に、162bに属す
る点が検知された時点で、点Pの属性を”IN”と判定
する。また、点P163のように、N個全ての点群が図
形Gの外部にあるとき、点Pの属性を”OUT”と判定
する。
【0152】図17は、上記(c)による超球判定法の
手順を示す流れ図である。超球判定法の手順s600
は、図15のステップs50435で起動される。即
ち、拡大の手順s500から(空間点P,図形名G,半
径r)のメッセージを受信し(s601)、内外判定デ
ータIOP=〃OUT〃、距離dP=∞と初期設定する
(s602)。
【0153】次に、モンテカルロ法を最大N回試行する
(s603)。一様乱数randomを発生し(s60
31)、同図(b)の超円160(中心P,半径r)
で、乱数に応じた角度θとその円周上の判定点Tの位置
を計算する(s6032,3)。この判定点Tを図形G
に送信して(s6034)、図形Gに対する点Tの相対
位置データ(IOT,dT,QT,KINDT)を受信
する(s6035)。
【0154】次いで、内外判定データIOTをチエック
し(s6036)、IOT=INであれば、拡大図形G
*に対する空間点Pの内外判定データIOP=INと
し、距離dP=dTとして(s60361)、s603
のループを抜ける(s60362)。
【0155】一方、s6036でIOT=OUTであれ
ば、空間点Pの距離をdP=min(dP,dT)とし
(s60363)、次の乱数による新たな判定点Tによ
る処理を繰り返す。このよう求められた相対位置データ
(IOP,dP,nil,2)を、s500に返信する
(s604=s50436)。
【0156】このように、拡大の場合分け処理で、空間
点Pが図形Gに対して外部(IO=”OUT”)、相対
位置データの距離d<r、KIND=2(第二種)であ
るときに、空間点Pの拡大図形G*に対する内外判定を
超球判定法により可能にしているので、かかる場合にも
相対位置データを生成することができる。
【0157】このような本実施例の拡大図形処理によれ
ば、元図形から拡大(オフセット)距離rを半径とする
円の操作図形g(Q)を用い、その中心Qを元図形Gの境
界上の近地点Qと一致するように元図形Gの境界に対応
させ、その集合和をとることで拡大処理を行っている。
【0158】本実施例の操作図形方式による拡大処理
を、引用例に記載の「領域のオフセット(同、第9頁左
上欄第4行〜第10頁左上欄第12行)」と比べると、
拡大の場合分けをシンプルにして処理効率を向上してい
る。これは、本実施例の相対位置データから、距離d
の”最短距離上界”という概念を排除していること、及
び、超球判定法を採用したことにある。
【0159】さらに、IO=INまたはIO=OUT
& d<rの場合に、操作円から第一種の相対位置デー
タを返信があっても、その距離d1≠rの条件では近地
点が決定できず、拡大図形G*の相対位置データDDが
第二種となる分岐を含むようにして、拡大処理を正確な
ものにしている。
【0160】しかも、引用例が特別な条件では結局のと
ころ真の距離を求める複雑な例外処理を必要としている
場合にも、本実施例では超球判定法を適用することで、
例外なく相対位置データを用いる拡大処理が可能にな
る。この結果、基本的にはどのような図形処理にも適用
が可能となって、信頼性と使い勝手を大きく向上してい
る。
【0161】図18(a)は、拡大図形の表示処理の説
明図、(b)は元図形G(この例では図形C)と拡大図
形G*(この例では図形D)の相対位置データテーブル
である。
【0162】開始点P0、視線V=view及び図形名
Dのメッセージを受信した表示処理手順s300は、拡
大図形Dに開始点P0を送信する。拡大図形Dの生成手
順s500は、図形Cに開始点P0を送りその手順s4
00から相対位置データDcを求める。手順s400か
らの相対位置データDcを、手順s500で拡大の場合
分け毎に、操作図形方式で処理して相対位置データDD
を求め、表示処理手順s300に返信する。
【0163】同図(b)のように、開始点P0に対する
図形Cの相対位置データは、Dc=(OUT,d0,Q
0,1)となる。P0は図形Cの外でd0>rであるか
ら、P0に対する拡大図形Dの相対位置データDD=
(OUT,d0−r,R0,2)を、表示処理手順s3
00に返信する。
【0164】手順s300は、再び視線V上の次の探索
点P1を手順s500に送り、上記処理を繰返し、空間
点Pmと空間点Pnの間の境界点δを算出する。なお、
相対位置データDcは全て第一種で求まり、本実施例に
よる図形処理では大抵のケースがそうなるので処理効率
が高い。
【0165】図19は、拡大図形の表示処理例を示し、
相対位置データDcが第二種で且つ、超球判定法を利用
する場合である。元図形が楕円の場合には、任意の空間
点からそこに至る最短距離を求めることは簡単ではない
ので、第二種の図形として扱うのがよい。
【0166】同図(a)は、最短距離以下の近似値(距
離下界)として第二種の距離データdを算出するときの
説明図である。楕円Cの中心Oと空間点Pの半直線PO
の交点Sとすると、距離di=(PiSi/OSi)・
bとなり、楕円Cに対する空間点Pの相対位置データは
Dc=〔OUT,di,nil,2〕として求まる。た
だし、bは楕円Cの短径、Q1,Q2は近地点、dmin
1,dmin2は最短距離で、上記の関係からdi<dmini
が成立する。
【0167】この相対位置データDcを受信して、楕円
Cを距離r拡大した図形Dを同図(b)のように表示す
る。同図(c)はその相対位置データで、di<rとな
る点P1,Pnなどで、超球判定方が適用されている。
【0168】以上の表示処理の説明は、全て視線式表示
処理方法によっている。この表示方法では、図形の形状
が複雑になった場合に、設定される視線方向(vie
w)によって見えるところ(境界の求まる)が異なるこ
とがある。かかる場合、探索深さLを図形全域を含む範
囲に広げて、一の視線上で複数の境界点を取得する。
【0169】または、複数の視線方向(view;水
平、垂直、45°など)による処理を行って境界点列を
取得する。この場合は、取得された境界点に境界線とし
て結べないものがある場合に、視線方向を更に小刻みに
した処理を繰り返す必要がある。このため、図形オブジ
ェクトの生成時に表示処理を試行して、予め必要な視線
方向を設定しておく。
【0170】次に、他の表示処理方法の実施例について
説明する。これは、引用例の四分木式表示方法を改良し
た新規な方法で、四分木式パターン表示方法と呼ぶこと
にする。本実施例の四分木式パターン表示方法は、どの
ような図形に対しても只1回の一連処理で、相対位置デ
ータによる表示が可能になる。
【0171】図20は、四分木式表示処理の概念を説明
する模式図である。図形G(例では円A)を完全に含む
正方領域Rを設定し、それを中心から4分割して正方領
域R1〜R4を設定し、図形Gに対する各領域の内外関
係を判定し、各々に”内セル”、”外セル”または、”
未定セル”のフラグを立てる。
【0172】図21に、正方領域とその内外関係判定の
概念を説明する。まず、図形Gに対し任意の空間点Pを
中心とする正方領域200を設定する。次に、中心が点
Pで半径dの円領域201を設定する。但し、図形Gに
する点Pの相対位置データを〔IO,d,Q,KIN
D〕とする。また、正方領域200の一辺が、予め定め
た領域感度δより小さくなるときは、一辺をδにする。
【0173】同図(a)のように、IO=INで且つ円
領域201が正方領域200を含めば、この正方領域は
図形Gの一部で”内セル”である。円領域201が正方
領域200を完全には含まないときは”未定セル”であ
る。同図(b)のように、IO=OUTであれば、この
正方領域は図形Gに含まれず”外セル”である。
【0174】図20で、”内セル”となる正方領域Rは
黒色(塗り潰し)、”外セル”は白色、”未定セル”は
灰色(まだらの点々)で表している。この未定セルに、
図形境界δAの一部が含まれる。
【0175】同図(a)の第一象限〜第四象限は、それ
ぞれ分割の第1段階〜第4段階に対応して示している。
本例では第3段階(第三象限)の未定セルは、第4段階
(第四象限)の分割で領域感度δとなって分割を終了す
る。
【0176】図22は、第四象限における正方領域の分
布とその内外判定セル及び表示曲線を示している。未定
セルとなる正方領域(イ)〜(ト)の四頂点について、
○印はその頂点の相対位置データのIO=IN、●印は
IO=OUTの属性を示している。
【0177】図23(a)は、未定セルの4頂点の内外
属性のパターンと、対応する表示セグメントを示したも
のである。内外属性のパターンは、パターン1〜パター
ン6に区分され、パターン4はさらに二つに区分され
る。各々のパターンに対応して図示の表示セグメントが
記憶装置2に格納されている。同図(b)は、パターン
41と対応するセル(チ)、パターン42と対応するセ
ル(リ)を示している。
【0178】図24は、四分木式パターン表示の処理手
順を示す流れ図である。パターン表示の手順s700
は、(様式10)によるメッセージを受信する(s70
1)。
【0179】 〔表示;パラメータ(正方領域の中心O,幅W,領域感度δ);図形名G〕 …(様式10) 開始点P=点O、セル幅w=Wを初期設定し(s70
2)、四分木法処理手順(s703)をP,w,Gをパ
ラメータとして実行する。四分木法処理手順は、s70
31〜s7037をその内容としている。
【0180】まず、図形Gの手順に点Pをメッセージと
して送信し(s7031)、図形Gに対する点Pの相対
位置データ(IO,d,Q,KIND)を受信する(s
7032)。ここで、点Pを中心とし一辺がwの正方領
域Rにおける点Pと頂点の線分=w/√2と、相対位置
データの距離dを比較し(s7033)、後者が大(d
>w/√2)のときリターンする。この場合は、当該領
域が図形Gの境界に関係しないからである。リターン先
は、当該処理を呼び出していた四分木法(s703/s
7037のi)である。
【0181】一方、d≦w/√2のときは、セル幅wが
領域感度δ以下になったか判定し(s3074)、領域
感度δ以下のセルについて4頂点P1〜P4の相対位置
データを受けとって、4頂点P1〜P4の図形Gに対す
る内外属性を判定する(s30741)。
【0182】各セルの4頂点の内外属性の組合せパター
ンを分類し(s30742)、該当するパターンのセグ
メントを表示し(s30743)、本処理の呼出し先に
リターンする(s30744)。
【0183】s3074で、w>δであれば、同図
(b)のようにw”=w/2を求め(s7035)、点
Pを中心として一辺w”の正方領域の四頂点Pi(i=
1〜4)を求める(s7036)。そして、(Pi,
w”,G)をメッセージとする四分木法処理手順を、i
=1〜4まで繰り返す(s7037)。
【0184】本実施例によれば、相対位置データを利用
するどのような複雑な図形表示においても、上記領域感
度δまでの一連の四分木処理によって正確に表示でき、
しかも最小セルの4頂点の内外属性の組合せパターンに
応じて、直ちに表示セグメントが選択され、引用例の四
分木法表示処理に比べ、その処理精度と速度を大幅に向
上している。
【0185】なお、四分木法は、ハンター(G.Hun
ter)によって提案されたものであり、文献等に周知
である。
【0186】以上、基本図形及びオペランド図形の主な
ものについて、その相対位置データの生成方法と表示処
理を説明した。ところで、上記の図形処理において、上
層の図形の相対位置データ生成手段は、下層の図形の相
対位置データ生成手段とメッセージを送受信しながら、
所望の相対位置データを生成している。このメッセージ
の送受信は、通信制御機能11によって処理される。
【0187】図25に、図形の表示処理を例にした通信
処理の流れを示す。上述のように、円図形Aと四角形B
を合成した和図形Cを拡大して生成される拡大図形Dを
例にとる。
【0188】表示処理手段(s300)191は、通信
制御機能11を介してメッセージS1(表示;表示パラ
メータ;図形D)を受信すると、視線方向(view)
を設定し探索点Pを拡大図形DにメッセージS2を送信
する。正しくは、(P;図形名D)のメッセージを通信
制御機能11に送信し、通信制御機能11から図形名D
のオブジェクトデータ(#obd)を読出し、その手順
ポインタ(#zzz)にある拡大図形相対位置生成手順
192を起動して、メッセージS2(点Pとオペランド
図形Cのポインタ(#ob+))を渡す。
【0189】以下同様にして、拡大図形生成手順192
はS2を受信すると点PをメッセージS3を図形Cの和
図形相対位置生成手順193に送信し、さらに図形A及
び図形Bそれぞれの相対位置生成手順194,195に
メッセージS4,S5で点Pが送られる。
【0190】これにより、円生成手順194及び四角形
生成手順195は、それぞれ点Pの相対位置データD
a、Dbを求めて生成手順193に通信制御機能11を
経由して送信する。和図形生成手順193は、受信した
相対位置Da、Dbについて和の場合分けをして求めた
相対位置データDcを拡大図形生成手順191に送信
し、さらに拡大の場合分けにより求められた拡大図形D
に対する点Pの相対位置データDdが、表示処理手段1
91に返信される。表示処理手段191は、順次探索点
Pをメッセージして、上記通信処理を経て図形Dの境界
点列QQを求め、表示装置4に出力する。
【0191】本実施例ではこのように通信制御すること
で、上層の図形オブジェクトデータはその生成手順ポイ
ンタと下層の図形ポインタを記憶するのみで、上層と下
層の間の再帰的な処理が円滑に且つ効率良く実行でき
る。
【0192】次に、応用図形処理の実施例として、面積
計算とフィレットを説明する。
【0193】図26は、面積計算の概念を模式的に示し
た説明図である。面積計算は、上述の四分木法を用いて
行われる。まず、図形Gを完全に囲む正方領域200を
設定し、その中心を通り互いに直交する二つの線分20
3,204により、全体を四つの正方領域210〜24
0に分割し、領域200に対する四分木構造として記憶
する(第1段階)。
【0194】次に、正方領域210〜240の各々に対
して、図21を用いて説明したのと同様の内外判定処理
を行い、正方領域毎に、”内部”、”外部”または、”
未定”のフラグを立てる。上記で”内部”となる正方領
域は、ツリー構造の図形オブジェクトの葉の部分(基本
図形)に存在している。
【0195】上記で”未定”となる正方領域が、ツリー
構造の葉の部分に存在している場合は、その正方領域を
再び四つの正方領域に分割し(第2段階)、その内外判
定を行う。正方領域が”外部”の場合または”未定”で
葉の部分でないとき、当該領域の分割操作を終了する。
【0196】同図には、この分割操作の第1段階〜第4
段階までの分割状況を示し、第4段階で正方領域の一辺
の長さが領域感度δ以下となり分割を終了している。図
示の正方領域(イ)は第2段階でその内外判定は”外
部”、正方領域(ロ)は第3段階でその内外判定は”内
部”、正方領域(ハ)は第4段階でその内外判定は”未
定”となる。
【0197】第4段階、即ち領域感度δ以下の場合の未
定領域は、その中心Pの内外判定によって、”内部”ま
たは”外部”とする。最後に、上記の操作で得られた四
分木構造をスキャンして、”内部”の属性を持つ正方領
域の面積の総和をとる。
【0198】図27に、面積計算手順の流れ図を示す。
応用図形処理機能15は、面積計算のメッセージ( 面
積;パラメータ;計算対象となる図形G)を受けると、
面積計算処理手順s800を呼び出し、対称の図形名G
とパラメータ(正方領域の中心O、幅W、領域感度δ)
を受信する(s801)。そして、開始点P=点O、セ
ル幅w=W、面積S=0を初期設定し(s802)、
P、w、Gをメッセージして四分木法の処理を開始する
(s803)。
【0199】四分木法は、まず点Pをメッセージとして
図形Gに送信し(s8031)、相対位置データ(I
O,d,Q,KIND)を受信する(s8032)。そ
して、d>w/√2またはδ≧wであるか判定し(s8
033)、そうであれば、IO=”IN”かを判定し
(s80331)、そであれば、”内部”、正方領域の
面積の累積計算であるS=S+w×wを行って(s80
3311)、呼出し先にリターンする(s80331
2)。それ以外の場合は、何もしないでリターンする
(s803313)。
【0200】ステップs8033で、判定が否の場合は
w”=w/2として(s8034)、点Pを中心とし
て、一辺w”の正方形の四頂点P1,P2,P3,P4
を同図(b)の陽に求める(s8035)。そして、四
分木法にメッセージ(Pi,w”,G)して、上記s8
031〜s8035をi=1〜4まで、繰り返し処理す
る(s8036)。
【0201】本実施例によれば、境界が陽に得られない
ような複雑な図形Gの面積を、図形Gに対する空間点P
の近傍領域の内外関係を、相対値データを用いて判定す
ることで、簡単且つ迅速に計算できる。
【0202】以上は、面積計算の例であるが、ここで示
した方法の本質的な部分、即ち、与えられた図形に対し
て、任意の空間点Pの近傍領域の内外判定を行なう手法
は、そのまま干渉チェックの手順などに適用可能であ
る。
【0203】次に、応用図形処理の他の例として、図2
8を参照してフイレット処理を説明する。フイレット
は、同図(a)の図形領域Gの凸部を半径δ1、凹部を
半径δ2で丸めて、同図(c)の新たな図形領域G*を
作る処理である。
【0204】応用図形処理機能15は、フイレットのメ
ッセージ( フイレット;パラメータ(δ1,δ2);
対象図形名G)を受けると、フイレット処理手順263
を呼び出して次の処理を行う。
【0205】〔フイレット;δ1,δ2;図形G〕=
〔オフセット;δ1(反転;(オフセット;δ1+δ
2;(反転;δ2;図形G)))〕を行う。図29に示
す各図形の生成過程と処理関係を具体的に示すと、以下
のようになる。
【0206】G1=〔オフセット;δ2;図形G〕⇒G2
=〔オフセット;δ1+δ2;反転図形G1〕⇒G3
〔反転;図形G2〕⇒G*=〔反転;δ1;図形G3〕と
なる。なお、オフセット処理は、上記した本実施例の拡
大処理で行われることは言うまでもない。
【0207】以上に説明した各種の図形生成処理におけ
る相対位置データ生成手順は、空間点Pが与えられる
と、点Pと対象形状Gとの位置関係に関して詳細計算を
行い、相対位置データを生成するものであった。この相
対位置データの生成は本発明の実施に必須の基本手順で
あり、その処理性が高いほど実用上のメリットは大き
く、適用範囲も広いものとなる。
【0208】次に、この相対位置データの計算をより簡
略化し、相対位置データの生成手順を高速化する領域デ
ータ方式について説明する。この方式は、図形形状に関
する参照データである領域データを図形オブジェクトデ
ータに追加し、これを基に相対位置データの簡略計算を
行なうもので、静的領域データと動的領域データを用い
る二つの方法がある。
【0209】図29は、静的領域データを用いる相対位
置データ簡略計算の概念を示す説明図である。
【0210】静的領域データを用いる方法は、図形Gの
境界δGを内部に含む極小、または近似的に極小で且つ
単純な領域図形Cg、例えば、円または四角形を図形G
の生成時に求め、あらかじめ図形オブジェクトデータ
(様式2)のパラメータに含める。領域図形に円を用い
ることにすると、領域円Cgは図形Gに関して定まり、
様式11に示す形式で、領域データが与えられる。
【0211】 〔円Cgの内外属性、円Cgの中心座標、円Cgの半径〕 …(様式11) ここで、円Cgの内外属性は、領域円Cgが同図(a
1)のように図形Gの内部を含むときはOUTで、同図
(a2)のように図形Gの外部を含むときはINを取る
ものとする。
【0212】静的領域データによる相対位置手順は次の
ように行われる。すなわち、空間点Pがメッセージとし
て図形Gに送られてきたとすると、まず、図形Gの領域
データを参照して、点Pが領域円Cgの内部にあるか、
外部にあるかを判定する。外部にある場合には簡略計算
が可能であり、点Pと円Cgの距離dを求めて、様式4
による相対位置データ(円Cgの内外属性、d、ni
l、2)を返信すればよい。点Pが円Cgの内部にある
場合には、前述の詳細な相対位置データ生成手順にした
がうものとする。このように、点Pが図形Gの境界δG
から十分離れているときには、図形Gを領域円Cgで代
替した簡略計算によって、相対位置データの生成処理を
高速化できる。
【0213】図30は、動的領域データを用いる相対位
置データ簡略計算の概念を示す説明図である。動的領域
データによる相対位置手順は次のように行われる。これ
は、全てにおいて、静的領域データの場合と対照的であ
る。動的領域データは、静的領域データのように図形生
成時に設定されるものではなく、応用処理手順の適用中
に設定され、しばしば更新されるデータである。
【0214】すなわち、図30(b1)、(b2)に示
すように、対象とする図形Gに対して、メッセージ空間
点Piが送られてきたときに、その点の相対位置データ
を計算後、そのデータの一部を様式12に示す形式で、
領域データとして図形Gのオブジェクトデータに登録す
る。
【0215】 〔点Piの内外判定データ、空間点Pi、距離データdi〕 …(様式12) この領域データは、メッセージが初めて送られてきた空
間点P0における〔点P0の内外判定データ、空間点P
0、距離データd0〕を基に、以下のように更新しなが
ら利用される。
【0216】点P0における領域データの設定後、図形
Gが次の点P1をメッセージとして受けたとする。この
とき、まず、図形Gの領域データを参照し、点P1が点
P0を中心とし、半径d0の円の内部にある場合、簡略
計算が可能であり、点P1を中心とし、円C0に外接す
る円C1の半径d1を求め、(点P0の内外判定デー
タ、d1、nil、2)を点P1の相対位置データとし
て返信する。この場合には、領域データの更新はない。
【0217】なお、点P0から点P1までの移動距離s
01を利用し、距離データd1=d0−s01と簡略計
算される。図形表示などの応用処理に於けるように、一
つ前の点の近傍に関係付けられて次の点が決められる、
所謂コヒーレントなメッセージ点列が与えられる場合
は、更新された領域データの距離データdiを基に順
次、各点の距離データを簡略計算できるので、相対位置
手順の高速化が達成できる。
【0218】もし、次のメッセージが点P2のように、
円C0の外部になるときは、点P2に対して簡略計算を
行なわず、通常の詳細計算により得られた相対位置デー
タに基づき、領域データを(点P2の内外判定データ、
点P2の座標、距離データd2)として更新する。
【0219】以上のように、初期または処理中に設定さ
れる領域データは、各図形オブジェクトデータに付加し
た形で記憶される。図31(a)に、円H1、四角形H
2および三角形H3の和集合からなる図形W2のトリー
構造を、同図(b)に、その図形オブジェクトデータ構
造を示している。図示のように、各図形オブジェクトデ
ータに付加した小量の領域データは、トリー構造の各ノ
ードに対応する図形毎に同一の形式で記憶される。すな
わち、静的領域データ(様式11)と動的領域データ
(様式12)のデータ形式は同一であり、相対位置デー
タの生成処理上では同じものとして扱える。
【0220】このような静的領域データと動的領域デー
タは、その一方または両方を領域データとして用いるこ
とによって、相対位置手順の高速化が可能になる。簡略
計算によって、距離データの精度は多少落ちるが、計算
手順が点と円の距離、言い換えると2点間の距離の計算
に帰着され、非常に簡単になるからである。後述するよ
うに、相対位置データの計算に必要なトリーの探索にお
いて、領域データの採用によるトリーの枝切りが可能に
なるので、探索の高速化も併せて達成される。以下、領
域データを用いるオブジェクト図形の相対位置データ生
成方法を詳細に説明する。
【0221】図32は、和図形W2のトリー構造におけ
る静的領域データの求め方を示す説明図である。静的領
域データの生成は、図形オブジェクト生成時に一回だけ
行なわれるが、各種の図形オブジェクトに対応した体系
的な手順によって達成される。以下、各種の図形処理に
必須となる四種類の図形(基本図形、反転図形、和図形
及び拡大図形)におる領域データの生成手順を説明す
る。
【0222】基本図形の領域データは、図32(a
1),(a2),(a3)に示すように、円H1、四角
形H2または、三角形H3の場合、図形オブジェクト固
有のパラメータから、その外接円を求めることにより、
領域円C1、C2またはC3がそれぞれ決まる。各領域
円の内外属性はOUTである。
【0223】反転図形の領域データは、既に作成済みの
オペランド図形の領域データを取り出し、その内外属性
を反転することによって得られる。例えば、同図(a
3)の図形H3の反転図形は、同図(b1)のHC3と
なるが、この図形の領域円CC3は、図形H3の領域円
C3と等しく、単に、内外属性が反転したものになる。
反対に、図形HC3を反転すると図形H3になるが、こ
の場合にも上記の関係が成立している。
【0224】和図形の領域データは、二つのオペランド
図形を取るため、まず、これらの図形に設定されている
領域データを取り出す。この結果、各領域円に設定され
ている内外属性の組み合わせによって、図32(c
1),(c2),(c3)に示すように三つの場合に分
かれる。
【0225】図32(c1)のように、オペランド図形
H2およびH3の内外属性が共にOUTの場合、二つの
領域円C1及びC2に内接する円C+が、和図形の領域
円であり、その内外属性はOUTである。
【0226】図32(c2)のように、一方のオペラン
ド図形HC3の内外属性がINで、他方の図形C2の内
外属性がOUTの場合、H2の領域円C2がHC3の領
域円CC3を内部に含まないときには、内外属性がIN
となる図形HC3の領域円CC3を和図形H+の領域円
C+とする。
【0227】図32(c3)のように、図形HC3と図
形H2の反転図形(図形HC2、領域円CC2とする)
の二つの内外属性が共にINの場合、二つの領域円CC
2とCC3の共通弦を直径とする円C+を和図形H+の
領域円とする。円C+の内外属性はINである。なお、
前記共通弦が存在しない場合、即ち、二つの領域円が交
差しない場合には、図形H+は全空間を意味するトリビ
アルなケースとなるので、外部属性を有する半径0のダ
ミーな円を領域円とする。
【0228】拡大図形の領域データは、拡大(様式8)
のパラメータである半径rと、オペランド図形の領域デ
ータを取り出す。領域円の内外属性によって、図32
(d1),(d2)に示すように二つの場合に分かれ
る。内外属性がOUTの場合、図(d1)に示すよう
に、図形H3の領域円C3の半径をrだけ延長した、円
CEを拡大図形HEの領域円とする。内外属性がINの
場合、図(d2)に示すように、図形HC3の領域円C
C3の半径をrだけ短縮した、円CEを拡大図形HEの
領域円とする。但し、パラメータrが円CC3の半径よ
り大きい場合には、円CEの半径を0とする。即ち、図
形HEが全空間を意味するトリビアルなケースである。
【0229】図33に、静的領域データを用いた和図形
W2の相対位置データ生成の概念と、各点の相対位置デ
ータのテーブルを示す。
【0230】同図(a)は、和図形W2として組み立て
られた図形H1、H2及びH3が配置された状態と、こ
れらの領域円C1、C2及びC3、和図形W1、W2の
領域円CW1、CW2を図示している。さらに、ベクト
ルLの向きに移動する物体(Bと呼ぶ)に関する代表点
の時系列位置{Pi,i=1,7}を示している。その
他の記号については、図中に説明している通りである。
本実施例は、上記の時系列点に対して、時系列順にメッ
セージを図形W2に送って、物体Bと図形H1、H2ま
たはH3との干渉チェックを行なうことを想定してい
る。
【0231】同図(b)は、静的領域データによる簡略
計算を含む各空間点の相対位置データを具体的に示した
ものである。あらかじめ、各図形に各々の領域データが
設定されている。テーブルの空白部は計算の省略による
トリー探索の枝切り(計算なし)、斜線部は通常の詳細
計算、斜線部以外は領域データを用いた簡略計算をそれ
ぞれ示している。
【0232】空間点P1、P2は和図形W2の領域円C
W2の外部にあるので、領域円CW2に対する空間点P
1、P2の相対位置データを返信するのみでよく、簡略
計算となり、その他の図形に対する計算は全て省略され
ている。空間点P3、P4はCW2の内部でC1及びC
W1の外部にあるので、W2に対しては詳細計算、H1
及びW1に対しては簡略計算を行ない、図形H2とH3
に関しては省略される。なお、和図形の距離データdi
は前述したように、短い方d3w1(<d3c1)が採
用される。空間点P5、P6はCW1の内部でC2及び
C3の外部にあるので、図形W2及びW1は詳細計算、
他は簡略計算を行う。空間点P7は領域円C3の内部に
あるので、図形H1及びH2が簡略計算、他は詳細計算
となる。
【0233】このように、空間点Piが領域円の外にな
る場合に、トリー探索の枝切りや簡略計算が頻繁に行な
われていることが分かる。従って、図示を省略している
空間点P7の後、領域円CW2の外部に出てからは、全
ての空間点に対してH1以降の探索の枝切りが行なわれ
る。なお、静的領域データによる手順では、メッセージ
の順序に依存しない。
【0234】図34に、動的領域データを用いた和図形
W2の相対位置データ生成の概念と、相対位置データの
テーブルを示す。この実施例における状況設定は、図3
3の静的領域データの場合と同様である。但し、領域円
は存在しない。同図(b)に示すように、各点の各図形
に対するデータは二段になっていて、上段が相対位置デ
ータ、下段が動的に更新される領域データの内容を表
す。図示で、相対位置データの詳細計算が行われる場合
には領域データの更新が行われ、簡略計算の場合には領
域データは更新されない。テーブルの空白部は計算の省
略によるトリー探索の枝切りを示している。
【0235】まず、初めてのメッセージとして空間点P
1が与えられると、通常の相対位置手順による詳細計算
が図形W2に関する各図形に対して行われ、様式12に
よる領域データ(OUT,P1,d1h1)が生成され
る。空間点P2では、前述のように時系列点のコヒーレ
ント性を利用して、相対位置データ(OUT,d1h1
−s12,nil,2)を簡略計算して返信する。空間
点P2,P3では、H1以降の図形の計算は省略され
る。
【0236】空間点P4で半径d1h1の円の外になる
とs14>d1h1、円H1に対する相対位置データが
詳細計算され、領域データは(OUT,P4,d4h
1)と更新される。和図形W2を構成する一方の図形H
1の相対位置データが計算される場合、他方の図形W1
に対する相対位置データの計算も行う。その逆に、和図
形W2を構成する図形W1と図形H1の相対位置データ
の計算がなされるとき、和図形W2の相対位置データが
詳細計算されて領域データも更新される。前述のよう
に、和図形の相対位置データは、詳細計算と言っても、
実質は一方の図形の相対位置データを転用するに過ぎ
ず、高速処理が可能である。
【0237】ここで、和図形W1の相対位置データを与
える図形H2と当初の点P1の距離データd1h2は、
点P1から点P4の移動距離s14より依然として大き
いので、和図形W1に対する相対位置データは簡略計算
によって行われる。また、和図形W2に対する相対位置
データは、d4h1>(d1h2−s14)であること
から、和図形W1の相対位置データがそのまま採用さ
れ、領域データは(OUT,P4,d1h2−s14)
と更新される。
【0238】空間点P5では、図形H2に対する相対位
置データの詳細計算と領域データの更新が行われる。一
方、図形H1に対してはd4h1>s45、図形H3に
対してはd1h3>s15となるので、簡略計算のみが
行われる。図形H2に対する詳細計算に応じて和図形W
1、さらに和図形W2の詳細計算が行われる。
【0239】空間点P6では、和図形W1を構成する図
形H2及びH3は共に簡略計算である。この場合、和図
形W1は簡略計算によることも可能であるが、本実施例
では空間点と対象図形の距離が一定以内にると距離精度
を維持するために、領域データも更新している。
【0240】空間点P7では、初めに空間点P1で求め
た各図形の領域データにおいて最長の距離d1h3を超
える距離に設定されている。言い替えれば、和図形W2
内の全ての図形に対する空間点P1とP7の視線方向が
逆転している。このような場合、各図形に対する点P7
の相対位置データを詳細計算し、領域データを更新す
る。空間点P7の後は、全ての空間点に対してH1以降
の探索の枝切りが行なわれる。
【0241】このように、静的領域データに基づく手順
と動的領域データに基づく手順は、メッセージ点Pが、
対象図形の境界から十分離れているときは、いずれも同
様に効果的である。また、前者はメッセージ順序に関係
しないのでメッセージ点列にコヒーレントな性質があろ
うとなかろうと影響を受けない。他方、後者は、一般に
よく現われるコヒーレントなメッセージ点列に対して
は、メッセージ点が図形の近くにある場合でも、前者よ
り遥に効果的に作用する。このように、二つの手順の一
方、ないし両方の手順を取り入れた相対位置手順は高速
化にとって有効な手段となる。
【0242】図35は、静的領域データに基づく手順と
動的領域データに基づく二つの手順を融合した、相対位
置データ生成の拡張手順(t100)を示すフローチャ
ートである。拡張前の相対位置データ生成手順では、メ
ッセージとして様式3に示すように空間点Pが与えられ
たが、本例の拡張手順では、後述するカットオフ距離=
dcutを追加して、様式13によるメッセージを図形
Gの相対位置データ生成処理手順へ送信する。
【0243】 〔空間点P,カットオフ距離(dcut)〕 …(様式13) このカットオフ距離dcutは、次の二通りに用いられ
る。
【0244】一般に、領域データに基づく簡略計算で
は、簡略計算の結果求まった距離データが、あらかじめ
定められた値、すなわちdcutより小さい場合には、
簡略計算の結果を捨てて、通常の手順に基づく詳細計算
を行なう。このことにより、精度の低下による影響を軽
減する。
【0245】さらに、物体と対象図形の間で概略の干渉
チェックを行なうために、本実施例の拡張生成手順を用
いる場合、点Pを物体の代表点とし、この点を中心と
し、物体を包む包絡円の半径をdcutとすれば、拡張
手順の結果、得られた相対位置データの内外属性がOU
T(IN)で距離データがdcutより大きい場合に
は、物体は対象形状の外(内)にあると判断できる。
【0246】以下、図35の拡張手順を詳細に説明す
る。ステップt101はメッセージの受信で、t102
〜t104は静的領域データに基づく簡略計算を行な
う。ここで、t104の条件が満たされる場合、即ち、
「点Pが領域円の外にあり、且つその距離d1がカット
オフ距離dcutより大きい」と言う第1の条件が成立
する場合には、ステップt1041で相対位置データが
返信される。
【0247】この第1の条件が成立しない場合には、こ
こでの結果は無効となり、動的領域データに基づく簡略
計算t105〜t107を行なう。ここで、ステップt
107の条件が満たされる場合、即ち、「点Pが領域デ
ータに含まれる、空間点O2を中心とし、半径r2の円
の内にあり、且つその距離d2がカットオフ距離dcu
tより大きい」と言う第2の条件が成立する場合には、
ステップt1071で相対位置データが返信される。
【0248】前記の第1及び第2の条件が共に成立しな
い場合には、ここでの結果は無効となり、ステップt1
08において拡張前の手順による詳細計算を行う。拡張
前の手順としては既に、処理図形に応じて基本図形の図
5、和図形の図11、拡大図形の図15などを示してい
る。最後のステップt109では、ステップt108の
結果である相対位置データDDに基づいて、動的領域デ
ータを更新した後、相対位置データDDが返信される。
【0249】上記の位置データ生成の拡張手順において
は、二種類の領域データに基づいた手順を示したが、そ
の一方だけの手順を構成することは容易である。例え
ば、図35のフローから、t102〜t104の部分を
除けば動的領域データのみによる拡張手順、t105〜
t107の部分を除けば静的領域データのみによる拡張
手順となる。いずれの場合にも、この拡張手順は、大量
の物体のレイアウトとか、障害物の中での物体移動にお
ける、高速な干渉チェックの方法として極めて有効であ
る。
【0250】次に、本発明の相対位置データによる三次
元モデルにおける実施例を説明する。これまでの実施例
は、主に二次元モデルを念頭に説明している。しかし、
本発明の画像処理は、対象画像が複雑になればなるほ
ど、従来の画像処理に比較して処理性が向上できるの
で、三次元モデルは好適な対象といえる。
【0251】三次元モデルの場合にも、図1及び図2に
示した図形処理装置の各機能や処理手順の基本内容は変
わらない。ただし、図2及び図3におけるデータ構造は
三次元的な内容に置き代わる。まず、二次元モデルで説
明した三次元版について、概略の説明を行う。
【0252】三次元モデルによる図形相対位置生成機能
は、二次元の場合と同様に、基本図形、反転図形、和図
形及び拡大図形の四つの生成処理に大別される。基本図
形に関する手順は、円や四角形の代わりに球や、四角柱
に関する手順を備える必要がある。ところが、例えば、
球の場合には、図5で示した円に対する手順と形式的に
は同じであり、単に、点の座標値を三次元で取り扱えば
よい。
【0253】図36に、三次元モデルの図形オブジェク
ト生成機能で取り扱う実用的な基本図形群を示す。四角
柱、四角錐体、三角柱、三角錐体、球、円柱、円錐体、
トーラス、回転楕円体、回転放物体、回転双曲体等の三
次元基本立体について、与えられた三次元空間上の任意
の点Pに対して、相対位置データを計算する図形生成手
順を、前述の球における場合と同様に構成して図形オブ
ジェクト生成手順ファイル23に記憶して管理する。ま
た、これらの生成手順を用いて生成したオペランド図形
は、その図形名、アドレス、パラメータなどのデータを
オブジェクトデータファイル24に格納する。
【0254】三次元モデルによる反転と和図形の図形生
成は、データを三次元で扱うことを除いて、二次元の場
合の手順と同様であり、たとえば和図形の場合には図1
1のフローと同じになる。
【0255】三次元モデルによる拡大図形の生成は、図
15の拡大の手順S500の中で、ステップs5043
5に対応する超球判定手順S600(図17)が二次元
モデルに限られることから、後述する三次元用の超球判
定法1(または2)と置換することで、拡大の手順S5
00が三次元モデルに拡張して使える。
【0256】また、図形相対位置生成機能は、三次元モ
デルの集合演算による図形生成手段を備え、二次元の場
合と同様に、反転や和(+)を組み合わせたブール代数
によって、二つの図形をオペランドとする差(ー)や積
(*)による図形生成を可能にしている。さらに、図形
相対位置生成の機能は、三次元モデルの座標変換を行う
図形生成手段を備え、生成済みの図形のアフィン変換、
移動、回転による図形生成を可能にしている。
【0257】三次元モデルにおけるオフセット図形は、
拡大図形における操作図形として球を用いた場合であ
り、前述の二次元モデルの場合と同様に構成される。こ
れにより、フィレット図形、即ち、与えられた図形の凸
部と凹部を、それぞれ半径r1、半径r2で丸めた図形
を生成する手順も、後述するようにオフセットと反転の
組み合わせで構築できる。
【0258】以上のように、図形オブジェクト生成手段
12と相対位置データ生成手段13を中核とする図形相
対位置生成機能を、前述の二次元から三次元モデルを含
むように拡張しておくことにより、広範囲の三次元の基
本図形を基にその反転、和、拡大等のオペランド図形の
生成が可能になり、設計や製造あるいは検査等で必要と
なる図形の配置、変形など種々の応用処理が実行でき
る。
【0259】図37〜図39に、三次元モデルの典型的
な一例である金型形状の図形生成手順を説明する。図3
7は、対象となる金型形状Gの外観図である。この金型
形状Gは、図38(a)に示す図形Gのトリー構造に従
い、以下の手順によって生成される。
【0260】回転楕円体EL、四角柱RE、球CU、円
柱CYの各基本図形、及び、和(+)図形、差(−)図
形、フィレット図形の各々の生成手順が、図38(b)
に示すように、図形生成手順ファイル23に格納されて
いる。
【0261】まず、様式1によるメッセージ(回転楕円
体;中心、長径、短径)により、回転楕円体REの図形
オブジェクト生成が指示される。図形オブジェクト生成
処理(s110)が起動して回転楕円体の相対位置生成
手順(#iii)が呼び出され、様式2により生成した
回転楕円体ELのオブジェクトデータは、図39に示す
ようにファイル24の#obelに格納される。同様
に、四角柱RE、球CUの各オブジェクトが生成され、
それぞれファイル24の#obre、#obcuに格納
される。次に、メッセージ(+;;RE,EL)によ
り、和(+)図形相対位置生成手順(#jjj)が呼び
出され、生成された和図形G1のオブジェクトデータが
ファイル24の#obg1に格納される。さらに、メッ
セージ(+;;G1,CU)により、和図形G2のオブ
ジェクトが#obg2に格納される。
【0262】ここで、メッセージ(フィレット;半径=
0、半径=r;G2)により、フィレット図形の相対位
置生成手順(#lll)が呼び出され、和図形G2に対
する凹部丸め半径r(凸部は0)による丸め処理が行わ
れ、図形G3として#obg3に格納される。次に、メ
ッセージ(円柱;中心、軸方向、半径、高さ)により円
柱CY1、円柱CY2がそれぞれ生成され、さらに、メ
ッセージ(+;;G3,CY1)により、和図形G4が
生成される。最後に、メッセージ(ー;;G4,CY
2)により、差(−)図形の相対位置生成手順(#kk
k)が呼び出され、図形G4と円柱CY2の差図形であ
る金型形状Gが生成される。
【0263】これらの処理作業は、二次元モデルの場合
と同様に、実際には後述する表示処理を介して、画像表
示しながら進められる。また、前述の領域データによる
相対位置データ生成手順は、三次元モデルの場合にも可
能である。すなわち、静的手順の場合には、領域円の代
わりに領域球を用いること、動的手順の場合には点の座
標を三次元で扱うことにより、二次元における生成手段
がそのまま適用でき、高速処理される。
【0264】三次元モデルにおける、相対位置手順の体
系を完結させるためには、超球判定法の三次元版を備え
る必要がある。二次元モデルにおける超球判定法の一例
である図17は、円を用いたモンテカルロ法であるの
で、三次元の場合には使えない。そこで、三次元超球判
定法として、球面(三次元球の境界面)を操作図形とす
るモンテカルロ法(超球判定法−1と呼ぶ)または球面
四分木法(超球判定法−2と呼ぶ)を新たに備える。モ
ンテカルロ法が確率論的な方法であるとすれば、球面四
分木法は、これとは対照的に決定論的な方法である。
【0265】図40に、球面を操作図形とするモンテカ
ルロ法による三次元超球判定法の実施例を示す。同図
(a)に、t200として示す超球判定法ー1は、図1
7の二次元モンテカルロ法を三次元に拡張したものであ
る。メッセージ受信部t201、超球判定法ー11(本
体部)t202、メッセージ返信部t203からなる。
【0266】本処理の本体部をなす超球判定法ー11
は、メッセージ点Pを中心とし、半径rの球面と図形G
との交差の有無を、最大N個の点を球面上にランダムに
発生させ、これらの点の図形Gに関する相対位置データ
を調べることによって判定し、拡大手順のための必要デ
ータを抽出するものである。
【0267】超球判定法ー11(t202)は、球面上
に一様にランダム点を発生させるために、1点当たり、
2個の(random1,2)一様乱数を発生させてそ
の座標を決める(t20221〜t20223)もの
で、この点で図17の方法と異なり、他は処理が三次元
になるだけで同じである。
【0268】具体的には、モンテカルロ法を最大N回指
向する(t2022)。一様乱数randomを発生し
(t20221)、同図(b)超円(中心P,半径r)
で、乱数に応じた角度θ、z座標zzとその球場の判定
点Tの位置を計算する(t20222、t2022
3)。この判定点Tを図形Gに送信して(t20224
1)、図形Gに対する点Tの相対位置データ(IOT、
dT、QT、KINDT)を受信する(t20224
2)。次いで、内外判定データIOTをチエックし(t
202243)、IOT=INであれば拡大図形G*に
対する空間点Pの内外判定データIOP=INとし、距
離dP=dTとして、t2022のループを抜ける。一
方、t202243でIOT=OUTであれば、空間点
Pの距離をdP=min(dP,dT)とし、次の乱数
による新たな判定点Tによる処理を繰り返す。このよう
に求められた相対位置データ(IOP、dP、nil、
2)を、拡大図形の相対位置生成手順(s500)に返
信する(t203)。
【0269】次に、球面四分木法による三次元超球判定
法の実施例を説明する。球面四分木法は、図41(a)
に示すように、点Pを中心とする半径rの球面と、対象
となる図形Gとの交差を判定するために、あらかじめ、
前記球面を北極N及び南極Sを通る経度±πの経線に切
り込みを入れて、同図(b)に示すように、矩形領域
(球面展開図と称する)に展開し、球面上の点と球面展
開図の間に、経度θと緯度面zによる座標(θ、z)に
関して一対一の関係を付けておき、この球面展開図に四
分木法を作用させることによって、探索の絞り込みを行
なうことを特徴とする。
【0270】図42は、球面四分木法に基づく超球探索
法(超球判定法ー2)の手順の説明図である。球面四分
木法t300は、t301でメッセージ(空間点P、図
形名G、半径r)を受信し、t303で球面展開図また
はその四分木領域である矩形領域(同図(b)参照)の
データをセットし、t302で球面四分木法に関する再
帰的処理(超球判定法ー22)を行なって、点Pの相対
位置データを求め、t304でこのデータを返信する。
【0271】超球判定法ー22は、前記(P、G、r)
と、参照点(θ0、z0)及び展開図における矩形領域
のサイズ(W、H)を受信し、t3031〜t3034
で参照点T(θ0、z0)の図形Gに関する相対位置デ
ータを求める。次に、t3035〜t3036で前記矩
形領域と一対一に対応する球面上の領域(四辺形パッ
チ)に内接する中心Tの球面半径rrと、ここで計算を
打ち切った場合の誤差(error)を求める。t30
37で、もし、点Tの内外属性IOTがINであるか、
rr<dPか、またはerrorが、あらかじめ設定し
た打ち切り誤差ε!より小さい場合には、この矩形領域
に関する探索は終了したものとして、t30371で点
Pの相対位置データを返信する。即ち、この処理は再帰
処理になっているので、呼び出し側の超球判定法ー22
に戻す。
【0272】上記の条件が成立しない場合には、t30
38で前記矩形領域をその中心に関して四分割し、t3
039でこれら分割された矩形領域に対してt3039
1〜t30394で、超球判定法ー22自身の再帰処理
を行なう。即ち、超球判定法ー22に各矩形領域に関す
るメッセージ:(P、G、r)、(θi、zi)及び
(W/2、W/2)を送信する。t20392でその結
果である相対位置データ(IOi,di,nil,2)
受信し、t30393で、もし、IOiがINならば、
交差が判明したものとして、所定のデータをセットして
t3039を抜ける。一方、OUTの場合には、t30
394でdPの値を更新する。最後に、t3040で点
Pの相対位置データを返信する。
【0273】ところで、本発明の相対位置データによる
画像生成手順の中で、最も時間のかかる処理は超球判定
法である。これは二次元、三次元を問わず、また、超球
判定法ー1(モンテカルロ法)でも、超球判定法ー2
(球面四分木法)の場合でも同じである。このため、例
えば超球判定法ー1では、領域データによる簡略計算の
適用によるランダム点探索の省略などが行われる。しか
し、最大N点のランダム点を発生し、最悪の場合はN点
についての相対位置計算が必要となるので、通常の相対
位置計算のN倍の計算時間がかかることになる。拡大処
理がネストになる場合、例えば、フィレット図形の相対
位置手順では、さらにこの影響が大きくなる。そこで、
逐次処理によっていた前述の超球判定法を、並列処理へ
展開する高速化の手段を設けることによって、この問題
の解決を図るものとする。
【0274】図43に、拡大手順の逐次構造と並列構造
の概念を説明する模式図を示す。同図(a)は、図15
の拡大手順s500において、s50435の超球判定
手順(二次元でも三次元でもよい)を本体部313とし
て、模式的に表現した逐次構造である。ここで、拡大手
順30は図15の全体であり、超球判定法31は図のs
50435の部分を意味する。拡大処理手順前段301
は、図15のs50435より上に位置する部分であ
り、拡大処理手順後段302は、s50435より下に
位置する部分である。
【0275】また、超球判定法31が超球判定法ー1
(図40)の場合、超球判定法の本体部313はt20
2超球判定法ー11を指し、超球判定法前段311はt
201を、また超球判定法後段315はt203を指
す。同様に、超球判定法31が超球判定法ー2(図4
2)の場合には、313はt303超球判定法ー22を
指し、311はt301〜t302を、また315はt
304を指す。
【0276】図43(b)に、同図(a)に対応する並
列構造を示す。超球判定本体部313を、一定の並列処
理機構の基で連動する複数台(m台)の処理装置よりな
り、各々の処理装置が分散手段(DISPATCH)3
12から別々のメッセージを受けてm分割された負荷を
処理し、結果を連結手段(MERGE)314で連結す
ることによって、最大でm倍の高速化を達成する機能を
備えるものである。なお、このような並列計算処理機構
の一般的な構造は、例えば、共立出版株式会社出版の
「bit別冊;第5世代コンピュータの並列処理(瀧和
男/編)」に記載のものが知られている。以下、具体的
な並列化について詳しく説明する。
【0277】図44は、超球判定法ー1の逐次処理を並
列処理に展開した超球判定法ー1Pを示すフローチャー
トである。
【0278】超球判定法ー1P(t400)において、
t401〜t402は超球判定法前段であり、t401
でメッセージ(空間点P、図形名G、半径r)を受信
し、t402で所定の初期設定を行なう。t403(D
ISPATCH)では、まずt4031で空き状態にあ
る処理装置{CPUi:i=1,m}を確保する。t4
032で1CPU当たりの負荷として全試行回数Nをm
等分した、試行回数n(=N/m)とする。次に、t4
033とt40331では、前記m台のもとで超球判定
法の本体部を並列処理させるべく、それぞれのCPUi
の超球探索法ー11Pにメッセージ(P、G、r、及び
試行回数n)を送信する。
【0279】ここで超球探索法ー11Pは本質的に超球
探索法ー11そのものである。t404(MERGE)
では以下の処理を行なう。即ち、前記いずれかのCPU
jより、相対位置データ(IOj,dj,nil,2)
を受信する(t4041)。t4042で点Pの内外属
性IOjを判定し、もし、INであるならば、他の処理
装置の結果を待たなくとも、この時点で交差が判明した
ので、t40421〜t40423で所定のデータをセ
ットし、DISPATCHされた全てのプログラムを停
止させ、これらのCPU資源を開放した後、MERGE
を抜ける。一方、OUTのときはt40424でdPの
を更新した後、t4043でDISPATCHされた全
てのプログラムの返信が終了したかどうかを判定する。
返信が終了していたら、MERGEを終わるものとし、
そうでなければ、再び次の返信を待つ。t405は、超
球判定法後段であり、求められた相対位置データ(IO
P,dP,nil,2)を返信して終了する。
【0280】図45は、超球判定法ー22(t303)
の逐次処理を並列処理に展開した超球判定法ー22Pを
示すフローチャートである。超球判定法ー22P(t5
03)において、t5031〜t5032は、図42の
t3031〜t3037の内容を略記したものである。
また、t5033は、t3038に対応する。ここで、
1CPU当りの負荷を、四分割された区分矩形距離の一
つ一つとする。
【0281】t5034(DISPATCH)では、ま
ずt50341で空き状態にある4台の処理装置{CP
Ui:i=1,4}を確保する。このとき、自分自身も
1台と数え、それでも不足する場合には重複して自分に
割り当てる。次に、t50342とt503421で
は、前記4台のもとで超球判定法の本体部を再帰的に並
列処理させるべく、それぞれのCPUiの超球探索法ー
22Pにメッセージ:(P、G、r)と区分領域の中心
(θ0、z0)及びサイズ(W/2、H/2)を送信す
る。t5035(MERGE)の処理は、前述したt4
04の処理と全く同じになるので説明を省略する。t5
036では、求められた相対位置データ(IOP,d
P,nil,2)を呼び出し側に返信して終了する。
【0282】以上のような並列処理構造をもつ図形処理
装置の構成と動作の概略を説明する。並列図形処理装置
の場合も、図2の構成が基本になる。但し、並列処理機
構の基で並列的に動作する複数台(m台)の処理装置
{CPUi:i=1,m}に於て、主タスクが動作する
処理装置(例えば、CPU1)には、図2の11〜15
の機能が存在しており、他のCPU{CPUi:i=
2,m}には、少なくとも機能11、13と同等の機能
を有して、超球判定法のサブタスクを並列処理する。ま
た、記憶装置2の内容は、全てのCPUに共通であって
も良いし、通信を介して互いに利用可能な、個々のCP
U固有の装置に分散されて存在しても良い。但し、相対
位置データ生成手順23には、並列化された超球判定法
本体部313も含めるものとする。さらに、通信制御手
段11には、異なるCPU間での通信機能も含まれる。
【0283】並列図形処理装置の動作は、図1の処理フ
ローが基本になる。s101〜s103のメッセージ
は、並列計算処理機構の基では、同一CPU内だけでな
く異なるCPU間でも行なわれる。主タスクが動作中の
CPU1では、図1のメッセージ処理が全て行なわれ
る。他のCPUは、例えば、記憶装置2の相対位置生成
手順23に超球判定法ー11Pが実装されている場合に
は、CPU1の主タスク超球判定法ー1Pからのメッセ
ージs120を受けて、超球探索法ー11Pをサブタス
クとして、図40の手順t200に従って並列処理し、
結果をCPU1の主タスクに返信する。
【0284】以上説明したように、拡大図形生成処理に
おける超球判定処理を並列化することによって、本発明
の相対位置データによる画像生成の一層の高速化が可能
になり、三次元の複雑な図形処理においても十分に、実
用に耐えるものとすることができた。なお、超球判定処
理の並列処理は一例に過ぎず、繰返しや分岐等を伴う他
の処理手順にも、同様にして適用できることは言うまで
もない。
【0285】次に、三次元モデルによる応用図形処理の
典型的な実施例として、図形表示(走査線による表示と
パターン表示)について説明する。これらは、二次元モ
デルの場合の図形表示の自然な延長としてえられる。
【0286】図46に、境界面の走査線探索による図形
表示の概念図を、図47に、その処理フローを示す。
【0287】三次元表示の手順t600は、二次元の表
示手順s300(図8)を三次元に拡張したものであ
る。即ち、対象図形Gの境界面を表示するために、視線
方向に垂直な平面πを視点の側に設定して、平面πと直
交する格子状の二次元走査線列を発生させ、この走査線
列と図形Gの交点よりなる格子状の二次元境界点列を、
相対位置データを繰り返し計算することによって求め、
この境界点列を曲面として表示することを特徴とする。
【0288】走査線による表示手順t600は、まず、
t601で(視線方向ベクトルview,図形名G)及
び、その他のパラメータ(走査開始点PP、走査線間隔
W、走査線数(Ni,Nj)、最大探索深さL、交差感
度ε)を受信する。t602で、viewに直交する平
面上にあり、且つ互いに直交する単位ベクトルwi,w
jを求める。t603でwi方向の外側ループを、その
内側で、wj方向のループを制御し(t6032)、N
i*Nj本の走査線に関する境界点を求める。即ち、t
6031で(i,j=0)の走査開始点P=Pi0を決
め、t60321〜t60322で点Pの図形Gに関す
る相対位置データを求める。点Pが図形Gの内部にある
か外部にあるかによって、探索の向きvを決める(t6
0323)。
【0289】次に、t60324〜t60325のルー
プ及び、t603251〜t603254は、二次元の
表示手順s300のs3044〜s3045及び、s3
0450〜s30453と全く同じであり、ここで、境
界点が存在する区間が決まる。この区間が存在する場合
には(t60326)、t606261で境界点Q0を
前記区間に関する二分法で求め、次の走査線(i,j+
1)の探索開始点を決める。区間が存在しない場合に
は、t603262でQ0をnilとし,次の開始点を
Pi0より求める。t60327で、求められた境界点
Q0を二次元アレーQQ(i,j)に格納する。最後
に、t604で二次元アレーQQの全内容を曲面として
表示する。この表示の特徴は、視線方向に関して見える
部分だけが表示されることである。
【0290】図48〜図50を用いて、三次元モデルに
おけるパターン表示の実施例を説明する。二次元モデル
では、図20〜23に示したように、四分木法を用いて
空間を正方領域(正方形)で細分することによって、パ
ターン表示手順S700(図24)により表示結果を得
るものであるが、三次元の場合には、八分木法を用いて
空間を立方体で細分することによって、表示結果を得
る。
【0291】このために、あらかじめ、対象とする図形
Gを包む立方体を設定し、この立方体を基に、領域感度
を与えられた八分木法により、図形Gを正方領域(立方
体セル)で細分し、その各正方領域の中心を空間点とす
る相対位置データの内外判定データから、図形領域に対
する各正方領域の内、外、未定の領域判定を行ない、未
定の領域について上記一連の処理を所定領域感度まで繰
り返して後、残っている各未定の領域(未定セル)の各
面に対して、その四頂点について得た内外判定データの
組み合わせパターンに応じて、あらかじめ定めた所定の
境界辺セグメントを求め、各面の境界辺セグメントを所
定の手順の基で結合してえられる表示面セグメントを、
当該未定領域の表示面とするものである。
【0292】パターンを決めるための未定セルを得るま
での手順は、図20〜21におけると同様であるので説
明を省略し、その後の、未定セルに対する手順につい
て、図48を用いて説明する。図48(a)は、未定セ
ルの一つを表している。これら一つ一つの未定セルの各
面に対して、例えば、同図(b)のようにベクトル表記
の境界辺セグメントL11〜L15、及び、L21〜L
23を求める。この手順は、図22〜23に於けるもの
と同じである。ベクトル表記の仕方は、例えば、INの
頂点を右に、OUTの点を左に見るように向きを与える
ものとする。
【0293】次に、これらの境界辺セグメントを、隣接
するもの同志をまとめてグループ化すると、例えば、同
図(c)のように、向き付けられた二つの多辺形、L1
1〜L15及び、L21〜L23が得られる。さらに、
これらの多辺形をそれぞれ、その頂点の重心に関して三
角形分割する事により、表示面セグメントを求める。即
ち、同図(d)に示すようにC1に関して三角形分割し
て得られる面F1と、三辺形のため分割されない三角形
領域F2が表示面セグメントとなる。なお、面の表側
は、多辺形に関して右ネジの向きである。これらの表示
面セグメントを全ての未定セルについて集めると、この
集合全体は、図形Gの境界面の(与えられた領域感度の
精度を持つ)三角形近似となっている。このデータを基
に、任意の視点からの表示を行なうことは容易である。
【0294】図49は、表示結果の一例である。表示し
た形状Gは概略、以下のように記述される。
【0295】RE1=(四角柱;中心O1、三辺の長さ
d1,w1,h1) RE2=(四角柱;中心O2、三辺の長さd1,w1,
h1) RE3=(四角柱;中心O3、三辺の長さd2,w2,
h2) CY =(円柱;軸方向の中心O4、半径R1,高さh
3) G1 =(+;;RE1,RE2) G2 =(−;;G1,RE3) G3 =(−;;G2,CY) すなわち、同等の四角柱RE1とRE2の和図形G1か
ら、四角柱RE3の差図形、さらに円柱CYの差図形に
よる立体図形Gである。
【0296】図49(a)は、図20〜図21と同様に
求めた未定セルをそのままセル(直方体)表示したもの
である。一方、同図(b)は、これらの未定セルから、
本手法によりパターン表示を行なった結果を示してい
る。両者を比較してわかるように、本実施例のパターン
表示によれば、同一領域感度の場合、詳細な形状表面の
表示が可能になる。
【0297】図50は、三次元モデルにおけるパターン
表示の手順を示すフローチャートである。パターン表示
(t700)は、まず、t701でメッセージ(正方領
域の中心O、幅W、領域感度δ、図形名G)を受信し、
t702で開始点Pとセル幅wを初期化し、メッセージ
(P、w、G)を送って、再帰的に八分木法を適用し、
図形Gの境界面の三角形近似を行なうものである(t7
03)。
【0298】即ち、t7031〜t7032で点Pの図
形Gに関する相対位置データ(IO,d,Q,KIN
D)を求め、t7032で、点Pを中心として半径dの
球が、点Pに関する幅wのセルを含む場合には(同図
(b))、このセルは内セル、または外セルのいずれか
であるので、なにもしないで呼び出し側に戻る。t70
34でwが領域感度δ以下である場合には、これ以上分
解されない未定セル、即ち、境界セルとなるのでt70
341〜t70435で前述した手順にしたがって、表
示面セグメントを作成する。セル幅wが領域感度δより
大きい場合には、w”=w/2とし(t7035)、t
7036で中心Pを通り且つ、x、y、z軸に直交する
三つの平面でセルを8等分し、それぞれの中心Pi(i
=1,8)を求める。
【0299】次に、これら8箇のサブセルに対して、t
7037、t70371で順次、メッセージ(Pi,
w”,G)を送って、八分木法で再帰的に評価する。こ
のフローでは、表示面セグメントから実際の表示を行な
う部分は自明なものとして省略した。
【0300】本実施例によれば、表示面セグメントの全
集合が図形Gの境界面全体の三角形近似である表示面デ
ータとなるので、任意の視点に対する表示に適用でき、
また、詳細な形状表面の表示が可能になる。
【0301】次に、三次元モデルによる応用図形処理の
他の実施例として、体積計算について説明する。体積計
算は、前述の二次元における面積計算(s800)の単
純な拡張として得られる。
【0302】即ち、あらかじめ、対象とする図形Gを包
む立方体を設定し、この立方体を基に、領域感度を与え
られた八分木法により、図形Gを正方領域(立方体セ
ル)で細分し、その各正方領域の中心を空間点とする相
対位置データの内外判定データから、図形領域に対する
各正方領域の内、外、未定の領域判定を行ない、未定の
領域について上記一連の処理を所定領域感度まで繰り返
して後、上記の処理過程で前記内部セルとして判定され
た全てのセルの体積の総和を求めるものである。
【0303】図51に、体積計算の処理フローを示す。
図示のように、図27の面積計算フローにおける細分過
程が四分木法から八分木法に置換されたのみであり、説
明を簡単に留める。t8033では、点Pを中心として
半径dの球が、点Pに関する幅wのセルを含む場合(同
図(b))、t80331で内セルと判定された場合
に、t803311でセル体積の積算を行なう。また
は、t8033でセル幅wが領域感度δ以下の場合、セ
ルが境界セルとなるので、その中心が図形内部にある場
合のみ(t80331)、体積の積算を行なう(t80
3311)。
【0304】次に、三次元モデルにおける他の応用処理
として、フィレット図形処理の実施例を図52〜図55
にしたがって説明する。フィレット図形処理とは、与え
られた図形G(図52(a))の凸部を半径r1、凹部
を半径r2で丸めた図形G*(図53(f))を生成す
るもので、三次元のオフセットや反転を組み合わせて処
理される。
【0305】図54に、図形G*の生成手順のトリー構
造、図55に、対応する図形オブジェクトのデータ構造
を示す。なお、ここでのオフセットは、前述のように拡
大図形における操作図形に球を用いている。
【0306】応用図形処理機能15は、メッセージ〔フ
ィレット;パラメータ(r1,r2);対象図形名G〕
を受信すると、フィレット図形G*を以下の手順で生成
する。
【0307】G1=(オフセット;r2;G) G2=(反転;G1) G3=(オフセット;(r1+r2);G2) G4=(反転;G3) G*=(オフセット;r1;G4) ここで、G1〜G4は図52(b)〜図53(e)に対
応している。
【0308】次に、三次元モデルによるさらに好適な応
用図形処理の実施例として、NC工具経路計算への適用
例を、図56〜図63を用いて説明する。金型加工など
における輪郭切削では、NC工作機械の工具の切削経路
を表す工具経路データ(NC情報)を求める必要があ
る。以下では、三軸のNCフライス加工を対象として説
明する。
【0309】図56(a)に、輪郭切削に用いられる
(a1)ボールエンドミル、(a2)フィレットエンド
ミルおよび(a3)フラットエンドミルの三種類の工具
の断面図、同図(b)に各々の先端部(歯面)の模式図
を示す。図示の点Oを工具中心とし、各歯面の形状であ
る球体、扁平球、円板に、オフセットの操作図形が対応
される。
【0310】図57に、切削加工の対象となる金型形状
Gの側面図を示す。加工は金型上面F1とF2に対して
行われ、工具を垂直に保って歯面をF1やF2に接しな
がら切削するものとする。このときの工具経路データと
は、工具が上面F1、F2をスキャンするための工具中
心Oの軌跡である。
【0311】図58は、従来方法の工具経路を示す説明
図である。図示のように、F1、F2の面毎に、面の各
点(Q1/Q2)から外向きの法線ベクトル(v1/v
2)を出して、その点から半径rの点(P1/P2)を
工具経路の候補点とする。このようにして、工具経路C
L1ないしCL2面を求める。
【0312】この結果、同図(a)のように、形状Gの
面F1、F2が凹に交差する場合は、CL1とCL2の
相貫部に関係して除去されるべき部分を、CL1とCL
2の交線Lを求めてカットする。これによって図の点
P’は工具経路に含まれない。一方、同図(b)のよう
に、形状Gの面F1、F2が凸に交わる場合には、法線
ベクトルから計算したCL1とCL2は相貫部付近でス
プリットしてしまうので、この場合には、両者を適当な
条件の基で延長して、交線Lを求めなければならない。
一般に、これらの処理は煩雑であり、三個以上の面が同
一箇所で相貫する場合などでは、この傾向がより顕著に
なる。
【0313】図59に、本実施例による工具種別毎の工
具経路の模式図を示す。ボールエンドミルによる工具経
路は、同図(a)のCL1およびCL2ようになる。こ
の工具経路データは、三次元モデルによる図形の拡大手
順(ここでは、オフセットと同義)を金型図形Gに対し
て作用させることによってえられる。
【0314】即ち、図形Gの各点Pに対応させる操作図
形g(P)として、ボールエンドミル先端部に対応する
半径rの球を設定する(図52(b1))。次に、様式
14によるメッセージを応用図形処理機能15に送り、
拡大図形G*を生成する。
【0315】 G*=(ボールエンド拡大;半径r;図形G) …(様式14) ここで、G*の生成手順である「ボールエンド拡大」
は、前述のように操作図形として球を用いる三次元モデ
ルに拡張された「三次元の拡大」と同じであり、あらた
めて用意する必要はない。別名を付けて図形生成の相対
位置生成手順ファイル23に登録しておけばよい。但
し、図形Gは、例えば図38(a)のようにあらかじめ
生成されている必要がある。
【0316】図60に、ボールエンドミルによる工具経
路計算の概略処理フローを示す。工具経路データ生成手
順t1000は、空間点P、図形名Gと共にボールエン
ドミル先端部(歯面)に対応する半径rを受信する(t
1001)。次に、金型図形Gを半径r分オフセットし
た形状G*を求める(t1002)。この形状G*の境
界面が工具の中心の移動可能な場所である。次に、工具
軸方向に垂直な平面上で工具軸に垂直な方向の移動点列
{Pi}を設定する(t1003)。そして、点列の数
だけt1004のループ処理を行う。即ち、t1004
1で、点Piから工具軸方向に一致するプローブ(ここ
では、境界探索用の走査線)を出す。t10042で、
プローブに沿って図形G*の境界点Qiを求める。この
点列{Qi}が求める工具経路データとなる。なお、こ
のような境界点の探索は、図8で説明した図形表示の走
査線探索と同じ処理である。
【0317】ところで、金型形状Gに関する「三次元の
拡大」の手順で得られる図形G*は、図形Gの上面F
1、F2から求めたい工具経路CL1およびCL2に一
致することを、補足的に説明する。
【0318】まず、次の事実に着目する。(1)工具中
心Pが金型形状Gの内部にあれば、工具は金型と交差し
点Pは工具径路面の内側にある。(2)工具中心Pが金
型形状Gの外部にあって、その境界との距離が工具半径
rより大ならば、工具中心Pは工具径路面の外側にあ
る。(3)工具中心Pが金型形状Gの外部にあって、そ
の境界との距離が工具半径rより小ならば、工具中心P
は工具径路面の内側にある。(4)工具中心Pが工具経
路面上にあるのは、点Pが形状Gの外部にあって境界と
の距離がrに等しいときである。
【0319】従って、本実施例の「ボールエンド拡
大」、即ち「三次元の拡大」が決定し、空間点Pに対す
る図形G*の相対位置データは、点Pを工具中心とし、
図形G*の境界を工具径路面と見做したときの解釈に全
く一致する。このことは、図形Gが、第一種である場合
には、明らかである。
【0320】因みに、図58(a)における点P’は、
距離として、P’Q’(=r)でなく、P’Q”(<
r)が与えられるので、図形G*の内部、従って、工具
経路面の内側にあると自動的に判定される。ところで、
「三次元の拡大」の場合、図形Gが第二種である場合に
は、距離データが下界の近似値として与えられるので、
上記の事実だけでは正確な内外判定が出来ない。とく
に、工具中心Pが図形Gの外部にあり、図形Gとの距離
が、rより小さい近似値として与えられる場合には別の
判定法が必要である。この場合、点Pを中心とするボー
ルエンドミルの先端部の球(図56(b1))が図形G
と交差するかどうかを判定することによって、点Pの内
外関係を決定することができる。本実施例の「三次元の
拡大」に用いられる前述の超球判定法−1(または2)
は、真に、この操作を具体化した手順であり、以下では
特に「超球拡大」と呼ぶことにする。
【0321】さらに、「超球拡大」は、図形Gの境界で
あるF1およびF2を直接扱わず、立体である図形Gそ
のものを拡大するので、図58(b)のような図形のス
プリットは起こりえず、必ず閉じた図形として図59の
ように生成される。結局、工具経路のデータ、即ち、工
具軸方向のプローブによる探索によって求められる図形
Gとの距離がrとなる点列は、CL1/CL2相貫部に
関する特別の例外処理を不要としている。
【0322】図形G*は、CL1、CL2を境界の一部
として含む図形Gの拡大図形となる。但し、図形G*が
生成されたと言っても、この段階では、図形G*が(様
式14)の形で登録しただけで、CL1、CL2を陽に
与えるものではない。そこで、前述の表示手順t600
により、図61に示すように、工具軸方向に一致する垂
直な視線方向のプローブを出して、図形G*の境界点を
探索し、CL1、CL2を点列{Qi}として求める。
【0323】次に、フィレットエンドミルによる工具経
路は、図59(b)のCL1およびCL2となる。この
工具経路データも、基本的には「三次元の拡大」を金型
図形Gに対して適用することによってえられる。
【0324】即ち、図形Gの各点Pに対応させる操作図
形g(P)として、フィレットエンドミル先端部(図5
6(b2))に対応するパラメータ(r、h)の偏平球
を設定する。次に、この拡大図形G*を、 G*=(フィレットエンド拡大;半径r;図形G) …(様式15) として生成する。ここで、G*の生成手順である「フィ
レットエンド拡大」は、あらかじめ相対位置生成手順フ
ァイル23に作成しておく。
【0325】しかし、フィレットエンドミル先端部の偏
平球は、工具中心Oを中心とする球の変形としての対称
図形であるので、拡大の手順を一部変更する必要があ
る。この場合の図形G*の生成手順の概略は以下のよう
になる。
【0326】(1)空間点Pに対する図形Gの相対位置
データを求めて、(IO,d,Q,KIND)とする。
(2)IO=INのときは、点PのG*に置ける相対位
置データを、(IO,d+h,Nil,2)とする。
(3)IO=OUTで、d≧rのときは、相対位置デー
タを(IO,d−r,Nil,2)とする。(4)IO
=OUTで、d<rのときは、超球判定法のアルゴリズ
ムを球に代えて偏平球に適用して、相対位置データを求
める。
【0327】ここで、上記(2)と(3)の手順が可能
となる理由は、偏平球が点Pを中心とする半径rの外接
球と半径hの内接球を持つことから、点Pが図形Gの内
部にあるときは内接球で、また、点Pが図形Gの外部に
あって、図形G*の境界から十分に離れた点Pでは、半
径rの外接球で前記偏平球を近似できるからである。な
お、偏平球に関する超球判定法については、モンテカル
ロ法及び四分木法とも可能であるが、それぞれ、図40
及び図42の自然な変形として容易に構成できるもので
ある。
【0328】このようにして生成された図形G*の境界
上面F1、F2が工具経路面CL1、CL2と一致する
ことは、図62に示すように、偏平球が点対称の図形で
あるということから明らかである。即ち、点Q*を図形
G*の境界上の点とするならば、点Q*に対して図形G
の境界点Qが存在して、偏平球g(Q)は点Q*で、偏
平球g(Q*)は点Qで、それぞれ図形G*およびGの
境界に接する。CL1、CL2の工具経路データを点列
として求める手順は、前述のボールエンドミルの場合と
同じである。
【0329】さらに、フラットエンドミルによる工具経
路は、図59(c)のCL1およびCL2となる。この
工具経路データも、基本的には「三次元の拡大」を金型
図形Gに対して適用することによってえられる。
【0330】即ち、図形Gの各点Pに対応させる操作図
形g(P)として、フラットエンドミル先端部(図56
(b3))に対応する半径rの円板を設定する。次に、
この拡大図形G*を、 G*=(フラットエンド拡大;半径r;図形G) …(様式16) として生成する。ここで、G*の生成手順である「フラ
ットエンド拡大」は、あらかじめ相対位置生成手順ファ
イル23に作成しておく。
【0331】ところで、半径rの円板は、フィレット半
径hをゼロとしたときのパラメータ(r、0)の偏平球
と解釈できるので、”フラットエンド拡大”の手順
は、”フィレットエンド拡大”の特別の場合として扱う
ことができる。従って、以降の説明は、フィレットエン
ドミルの場合と同じであり省略する。
【0332】以上、3種類の工具による工具経路計算に
ついて説明した。本実施例によれば、加工面の相関部に
おける従来のような後処理が不要になる。
【0333】ところで、NCのオペレーションプランニ
ングにおいては、シミュレーションによって加工手順の
妥当性を検証するが、その際、工具経路データに基づい
て行なう、ワーク削り残し部の検出は重要なチェック項
目の一つである。前述の状況のもとで、三軸NCフライ
ス加工を仮定すると、F1とF2の相貫部において、図
63のような削り残し領域が発生する。本発明の相対位
置データによる図形処理は、三次元モデルによるNC削
り残し領域の検出にも有効に適用できる。
【0334】NC削り残し領域の検出は、前述の3種類
の工具を例に説明すると、以下の手順によって処理され
る。
【0335】ボールエンドミルによる削り残し領域は、
まず、金型図形Gとボールエンドミル先端部(歯面)に
対応する半径rから、様式17による図形G1を生成す
る。
【0336】 G1=(ボールエンドミル;半径r;図形G) =(反転;;(ボールエンド拡大;半径r;(反転;; (ボールエンド拡大;半径r;図形G)))) …(様式17) 生成された図形G1は、工具が加工後に残す図形:(図
形G+削り残し領域Gr)を表す図形となっている。図
形G1を生成する手順「ボールエンドミル」は、あらか
じめ相対位置生成手順ファイル23に作成しておくべき
もので、前述の「ボールエンド拡大」と「反転」手順の
合成として作成される。そこで、 Gr=(ー;;図形G1、図形G) =(反転;;(和;;(反転;;G1)、図形G)) …(様式18) として、”図形G1ー図形G”を行なえば、削り残し領
域が生成される。
【0337】削り残し領域図形Grの生成は、Gr相対
位置データ生成手順を登録しただけであるので、さら
に、該領域Grを表示したり、その大きさ(体積)を測
る場合には、前述した図形表示または体積計算に関する
応用処理の手順を適用すればよい。
【0338】次に、フィレットエンドミルによる削り残
し領域は、同様にして様式(19)による図形G1を生
成する。
【0339】 G1=(フィレットエンドミル;半径r、半径h;図形G) =(反転;;(フィレットエンド拡大;r、h;(反転;; (フィレットエンド拡大;r、h;図形G)))) …(様式19) その後の処理は、ボールエンドミルの場合と同じであ
る。
【0340】次に、フラットエンドミルによる削り残し
領域は、同様にして様式(20)による図形G1を生成
する。
【0341】 G1=(フラットエンドミル;半径r;図形G) =(反転;;(フラットエンド拡大;半径r;(反転;; (フラットエンド拡大;半径r;図形G)))) …(様式20) 以上、加工工程のオペレーションプランニングに、本実
施例の三次元モデルによるNC削り残し領域の検出処理
を適用することによって、従来は例外処理によっていた
ものを、工具経路計算からの一貫処理として統一的に解
決することができる。
【0342】
【発明の効果】本発明の図形処理方式によれば、階層関
係にある図形間の動的な通信制御方式が可能になるの
で、相対位置データを用いる図形処理を効率的に実行で
きる効果がある。
【0343】本発明の図形処理方式によれば、領域デー
タを用いて相対位置データの計算を簡略化するので、処
理を高速化できる効果がある。
【0344】本発明の図形処理方式によれば、拡大図形
の処理を操作図形方式による場合分けを行うので、処理
がシンプル化され且つ処理精度が向上できる効果があ
る。特に、従来は真の距離データで処理しなければなら
ない場合にも、超球判定機能による内外判定を可能にし
たことで、二次元のみならず三次元図形の拡大処理とそ
れを含むオペランド図形処理に、例外なく相対位置デー
タの適用が可能となり、信頼性の向上と適用範囲の拡大
を図り且つロバストで使い勝手のよい図形処理方法およ
び装置を提供することができる。
【0345】本発明の図形処理方式によれば、相対位置
データを用いる表示処理において、新規な視線方式およ
び/または四分木パターン方式を可能にしたので、表示
処理を実用化能なレベルに高速化し且つ表示精度を向上
できる効果がある。
【0346】本発明の図形処理方式によれば、超球判定
など時間を要する繰返しまたは分岐処理部に並列処理構
造を適用したので、複雑な図形処理の高速化を達成でき
る効果がある。
【図面の簡単な説明】
【図1】本発明の一実施例を示し、図形処理装置の全体
的な図形処理方法の処理手順を示すフローチャート。
【図2】本発明の一実施例による図形処理装置の構成を
示す機能ブロック図。
【図3】図形相対位置生成手順の格納形式及び図形オブ
ジェクトデータの階層構造を示す説明図。
【図4】表示処理手順及び応用処理手順の格納形式を示
す説明図。
【図5】円図形の相対位置生成手順の説明図及びフロー
チャート。
【図6】円図形の第一種の相対位置データによる表示手
順の説明図及び相対位置データテーブル。
【図7】円図形の第二種の相対位置データによる表示手
順の説明図及び相対位置データテーブル。
【図8】本実施例による視線方式表示処理手順を示すフ
ローチャート。
【図9】視線方式表示処理の探索可視点の決定方法を示
す説明図。
【図10】視線方式表示処理における交差感度の説明
図。
【図11】本実施例による和(+)の相対位置データ生
成手順を示すフローチャート。
【図12】和(+)の場合分け処理の説明図。
【図13】和図形の表示手順の説明図及び相対位置デー
タテーブル。
【図14】操作図形方式による拡大処理の説明図。
【図15】本実施例による操作図形方式の拡大処理手順
を示すフローチャート。
【図16】超球判定方法の説明図。
【図17】本実施例による超球判定方式の内外判定手順
を示すフローチャート。
【図18】拡大図形の表示手順の説明図及び相対位置デ
ータテーブル。
【図19】超球判定法を利用する楕円の拡大図形表示手
順の説明図及び相対位置データテーブル。
【図20】四分木法による正方領域の分割処理を示す説
明図。
【図21】正方領域の内外判定基準を示す説明図。
【図22】四分木法による表示処理を示す説明図。
【図23】未定セルの四頂点内外判定データパターンと
表示セグメントを示す説明図。
【図24】本実施例による四分木式パターン型表示処理
手順を説明するフローチャート及び説明図。
【図25】本実施例による通信制御機能の動作を示す説
明図。
【図26】四分木法による面積計算の説明図。
【図27】本実施例による面積計算の処理手順を説明す
るフローチャート及び説明図。
【図28】本実施例によるフイレット処理の説明図。
【図29】静的領域データの概念を示す説明図。
【図30】動的領域データの概念を示す説明図。
【図31】領域データを利用する和図形生成のトリー構
造とオブジェクトデータを示す説明図。
【図32】静的領域データの領域を示す説明図。
【図33】本実施例による静的領域データを利用する和
図形の相対位置データ生成過程を示す説明図。
【図34】本実施例による動的領域データを利用する和
図形の相対位置データ生成過程を示す説明図。
【図35】本実施例による領域データを利用する相対位
置データ生成処理のフローチャート。
【図36】三次元モデルにおける基本図形群の説明図。
【図37】三次元モデルの一例を示す金型形状の外観
図。
【図38】本実施例による金型形状(図37)の図形生
成手順の概要を示す説明図。
【図39】本実施例による金型形状(図37)のオブジ
ェクトデータの構成図。
【図40】本実施例によるモンテカルロ法による三次元
超球判定法の処理を示すフローチャート。
【図41】球面四分木法による三次元超球判定法の説明
図。
【図42】本実施例による球面四分木法による三次元超
球判定法の処理を示すフローチャート。
【図43】本実施例による拡大手順の逐次処理と並列処
理を対比的に示す模式図。
【図44】本実施例によるモンテカルロ法による三次元
超球判定法の並列処理を示すフローチャート。
【図45】本実施例による球面四分木法による三次元超
球判定法の並列処理を示すフローチャート。
【図46】走査線探索方式による三次元表示の説明図。
【図47】本実施例による走査線探索方式の三次元表示
処理を示すフローチャート。
【図48】パターン方式による三次元表示の説明図。
【図49】本実施例によるパターン方式による三次元表
示の説明図。
【図50】本実施例によるパターン方式による三次元表
示処理を示すフローチャート。
【図51】本実施例による体積計算のフローチャート。
【図52】三次元モデルによるフィレット処理の説明
図。
【図53】三次元モデルによるフィレット処理の説明
図。
【図54】フィレット処理のトリー構造図。
【図55】本実施例によるフィレット処理のオブジェク
トデータの構成図。
【図56】NCフライス加工工具の形状図。
【図57】切削加工の対象となる金型形状の側面図。
【図58】従来の工具経路の説明図。
【図59】本実施例により得られる工具経路の模式図。
【図60】本実施例によるボールエンドミルの場合の工
具経路データの生成手順を示すフローチャート。
【図61】工具軸方向プローブによる工具経路生成手順
の説明図。
【図62】フィレットエンドミル先端部の扁平球の点対
称の説明図。
【図63】本実施例によるNC削り残し領域の検出処理
を説明する模式図。
【符号の説明】
1…CPU、2…メモリ、3…入力装置、4…表示装置
(CRT)、11…通信制御機能、12…図形オブジェ
クトデータ生成機能、13…図形相対位置データ生成機
能、14…図形表示処理機能、15…応用図形処理機
能、23…相対位置データ生成手順(プログラム)格納
エリア、24…図形オブジェクトデータ格納エリア、2
5…表示制御手順格納エリア、26…応用図形処理手順
格納エリア、IO…内外判定データ、d…距離データ、
Q…近地点、KIND…種別フラグ。

Claims (34)

    【特許請求の範囲】
  1. 【請求項1】 図形領域が任意の空間点の相対位置デー
    タによって表され、ある図形領域の相対位置データが一
    つまたは一以上の他の図形領域を基にした所定の生成処
    理によってなる図形処理方法において、 前記所定の生成処理を行う所定図形の相対位置データ生
    成機能(以下、生成機能)は、前記他の図形領域の相対
    位置データDを生成する生成機能に前記空間点を送信
    し、それより前記他の図形領域に対する前記空間点Pの
    相対位置データDを受信し、相対位置データDは空間点
    Pが前記他の図形領域の内部(IN)か外部(OUT)
    かを示す内外判定データIOと、前記他の図形領域の境
    界と空間点Pとの最短距離または該最短距離以下で少な
    くともどの程度離れているか(距離下界)の一方を示す
    距離データdと、前記最短距離が設定されるときその近
    地点Qと、近地点Qが設定されるときを第一種、そうで
    ないときを第二種とする種別フラグKINDを含み、こ
    の相対位置データDを基に、前記ある図形領域に対する
    空間点Pの相対位置データDDを生成することを特徴と
    する図形処理方法。
  2. 【請求項2】 請求項1において、 前記所定の生成処理は前記他の図形領域の反転であり、
    相対位置データDの前記内外判定データの値のみを反転
    して前記ある図形領域の相対位置データDDを生成する
    ことを特徴とする図形処理方法。
  3. 【請求項3】 請求項1において、 前記所定の生成処理は二つの他の図形領域の和(+)で
    あり、前記他の図形領域各々の相対位置データDを基に
    和の場合分け処理を行って、前記ある図形の相対位置デ
    ータDDを生成することを特徴とする図形処理方法。
  4. 【請求項4】 請求項1において、 前記所定の生成処理は前記他の図形領域を所定距離広げ
    る拡大処理であり、相対位置データDを基に拡大の場合
    分け処理を行って、前記ある図形の相対位置データDD
    を生成することを特徴とする図形処理方法。
  5. 【請求項5】 請求項4において、 前記拡大処理は操作図形方式であり、前記所定距離をパ
    ラメータとする点対称の操作図形の中心を前記他の図形
    の近地点Qと一致するように対応させ、前記他の図形の
    境界の全体または所定の範囲に渡って前記点対象図形の
    集合和をとるように処理することを特徴とする図形処理
    方法。
  6. 【請求項6】 請求項4において、 前記拡大処理は操作図形方式であり、半径を前記所定距
    離、中心を近地点Qとする円または球を操作図形とし
    て、相対位置データDDを生成することを特徴とする図
    形処理方法。
  7. 【請求項7】 請求項6において、 前記操作図形方式は、前記相対位置データDがKIND
    =第一種で受信されるとき、その近地点Qを中心とし前
    記所定距離rを半径とする円図形と空間点Pと近地点Q
    を結ぶ半直線PQとの交点Rを求め、前記他の図形に対
    する交点Rの相対位置データD1(=IO1,d1,Q
    1,1)を求めて、以下に示す前記拡大の場合分けを行
    うことを特徴とする図形処理方法。 (1)前記内外判定データIO=INの場合は、距離d
    1が所定距離rに等しいとき、相対位置データDDの内
    外判定データを内部(IN)、距離データをd+r、近
    地点を交点Rとする。そうでないとき及びKIND=第
    二種の場合は、近地点=nil(不定)として、相対位
    置データDDを第二種で表す。 (2)前記内外判定データIO=OUTの場合は、相対
    位置データDDの内外判定データを外部(OUT)、距
    離データをd−r、近地点を交点Rとする。KIND=
    第二種の場合は、近地点=nil(不定)として、相対
    位置データDDを第二種で表す。 (3)前記内外判定データIO=OUTでd<rの場合
    は、距離d1が所定距離rに等しいとき、相対位置デー
    タDDの内外判定データを内部(IN)、距離データを
    d−r、近地点を交点Rとする。そうでないときは、近
    地点=nil(不定)として、相対位置データDDを第
    二種で表す。但し、KIND=第二種の場合は、前記他
    の図形領域に対する所定の判定機能によって前記空間点
    Pの内外判定データIOPと距離データdPを求め、こ
    れらを含んで相対値データDDを生成する。
  8. 【請求項8】 請求項7において、 前記所定の判定機能は、空間点Pを中心とする半径rの
    所定図形と前記他の図形が交差する場合にIOP=IN
    とする超球判定機能によることを特徴とする図形処理方
    法。
  9. 【請求項9】 図形領域Gに対する任意の空間点Pの相
    対位置を表す相対位置データDを生成し、このデータを
    用いて図形領域Gに関わる所定の図形処理を行う図形処
    理方法において、 相対位置データDは、空間点Pが図形領域Gの内部(I
    N)または外部(OUT)を示す内外判定データIO
    と、空間点Pと図形領域Gの境界との最短距離または距
    離下界で示す距離データdと、前記最短距離が設定され
    るときその近地点Qと、近地点Qが設定されるときを第
    一種、そうでないときを第二種とする種別フラグを含
    み、 前記所定の図形処理は拡大処理であり、図形領域Gの境
    界から距離rだけ拡大する図形領域G*を生成する場合
    に、図形領域Gの相対位置データ生成機能(以下、図形
    G生成機能)に空間点Pを与えて相対位置データDを受
    けとり、その内外判定データIOが外部(OUT)で且
    つ、距離dが距離rより小さいとき、図形領域Gに対す
    る超球判定機能によって空間点Pの内外判定データIO
    Pと距離データdPを求め、拡大図形領域G*に対する
    空間点Pの相対位置データDDの内外判定データをIO
    P、距離をdPとして生成することを特徴とする図形処
    理方法。
  10. 【請求項10】 請求項9において、 前記超球判定機能は、空間点Pを中心とし距離rを半径
    とする円領域または球領域と図形領域Gとの交差の有無
    を判定し、交差する場合に内外判定IOPを内部(I
    N)、交差しない場合に外部(OUT)とすることを特
    徴とする図形処理方法。
  11. 【請求項11】 請求項10において、 前記交差の判定は、前記円領域の円周上に複数の設定点
    Tをモンテカルロ法を用いて順次に設定し、前記図形G
    生成機能による設定点Tの内外判定データIOTがIN
    となるとき前記交差が有ると判定し且つ、当該設定点T
    の距離データdTを距離データdPとなし、一方、所定
    数の設定点Tの内外判定データIOTが全てOUTのと
    き前記交差が無いと判定し且つ、設定点Tによる最短の
    距離データdTを距離データdPとなすことを特徴とす
    る図形処理方法。
  12. 【請求項12】 請求項10において、 前記交差の判定は、前記球領域の球面上に最大N個のラ
    ンダム点Tを、1点当り2個発生する一様乱数から定ま
    る座標値により順次に設定し、前記図形G生成機能によ
    る設定点Tの内外判定データIOTがINとなるとき前
    記交差が有ると判定し且つ、当該設定点Tの距離データ
    dTを距離データdPとなし、一方、所定数の設定点T
    の内外判定データIOTが全てOUTのとき前記交差が
    無いと判定し且つ、設定点Tによる最短の距離データd
    Tを距離データdPとなすことを特徴とする図形処理方
    法。
  13. 【請求項13】 請求項10において、 前記交差の判定は、予め、前記球領域の球面を北極N及
    び南極Sを通る経度±πの経線に基づいて複数の矩形領
    域に展開した球面展開図上において、球面上の設定点T
    を経度θと緯度面zによる座標によって対応付けてお
    き、前記球面展開図に四分木法を作用させて、交差する
    矩形領域を順次細分して絞り込みを行うことを特徴とす
    る図形処理方法。
  14. 【請求項14】 請求項4〜13のいずれか1項におい
    て、 前記拡大処理は、図形領域Gの境界から距離rだけ拡大
    するオフセット処理であることを特徴とする図形処理方
    法。
  15. 【請求項15】 図形領域Gに対する任意の空間点Pの
    相対位置を表す相対位置データを生成し、このデータを
    用いて図形領域Gに関わる所定の図形処理を行う図形処
    理方法において、 前記所定の図形処理として図形領域Gを表示する場合
    に、図形領域Gに対する所定の視線方向(view)を
    設定し、前記視線方向の視線上に空間点Pを開始点から
    所定移動距離毎に順次設定して、図形領域Gの相対位置
    データ生成機能に送信しては各空間点Pの相対位置デー
    タを受信し、その相対位置データに含まれる内外判定デ
    ータIOが反転する前後の空間点Pから当該視線上にお
    ける図形領域Gの境界点を算出し、複数の視線について
    同様にして得られる境界点列を結んで図形領域Gを表示
    することを特徴とする図形処理方法。
  16. 【請求項16】 請求項15において、 前記所定移動距離は、空間点Pの相対位置データに含ま
    れる距離データd以下で、所定の交差感度ε以下となる
    ときには交差感度εとすることを特徴とする図形処理方
    法。
  17. 【請求項17】 請求項16において、 前記複数の視線は視線方向と垂直方向で、その走査幅W
    は交差交差ε以下とされることを特徴とする図形処理方
    法。
  18. 【請求項18】 請求項15、16または17におい
    て、 前記視線毎の前記開始点は、前回の視線上で前記境界点
    が求められた場合に、当該境界点から今回の視線上に下
    した垂点または前前回の境界点と前回の境界点を結ぶ直
    線と今回の視線との交点にとることを特徴とする図形処
    理方法。
  19. 【請求項19】 請求項15〜18のいずれか1項にお
    いて、 前記境界点列の中で、結ぶ相手が不明な境界点のあると
    きは、前記視線方向(view)を変更して、前記境界
    点を算出する処理を繰返し行うことを特徴とする図形処
    理方法。
  20. 【請求項20】 図形領域Gに対する任意の空間点Pの
    相対位置を表す相対位置データを生成し、このデータを
    用いて図形領域Gに関わる所定の図形処理を行う図形処
    理方法において、 前記所定の図形処理として図形領域Gを表示する場合
    に、図形領域Gを囲む正方領域を四分木法により分割
    し、分割された四つの正方領域毎の各中心点Pを図形領
    域Gの相対位置データ生成手段(以下、図形G生成手
    段)に送信して各々の相対位置データを受けとり、該デ
    ータに含まれる内外判定データIOと距離dに基づい
    て、各々の正方領域が図形領域Gの内部領域か外部領域
    かそのいずれでもない未定領域か判定し、前記未定領域
    を四分木法により再分割して上記一連の処理を繰返し、
    分割された正方領域が所定領域感度δ以下になったと
    き、残っている未定領域毎にその4頂点の各々を前記図
    形G生成手段に送信し、その各相対位置データを受信し
    て前記4頂点の内外判定データIOからIO組合せパタ
    ーンを定め、予めIO組合せパターン毎に設定されてい
    る表示セグメントを対応して、前記残っている各未定領
    域の表示セグメントを結んで図形領域Gを表示すること
    を特徴とする図形処理方法。
  21. 【請求項21】 請求項20において、 前記IO組合せパターンは、前記4頂点の内外判定デー
    タの全部が内部(IN)または外部(OUT)、前記4
    頂点の内外判定データの中の3頂点が内部(IN)また
    は外部(OUT)、前記4頂点の内外判定データの一辺
    の2頂点が同一、前記4頂点の内外判定データの対角点
    が同一によって区分されることを特徴とする図形処理方
    法。
  22. 【請求項22】 図形領域Gに対する任意の空間点Pの
    相対位置を表す相対位置データを生成し、このデータを
    用いて図形領域Gに関わる所定量を計算する図形処理方
    法において、 前記所定量として図形領域Gの面積を計算する場合に
    は、図形領域Gを囲む正方領域を四分木法により分割
    し、または、前記所定量として図形領域Gの体積を計算
    する場合には、図形領域Gを囲む正方領域を八分木法に
    より分割し、分割された正方領域毎の各中心点Pを図形
    領域Gの相対位置データ生成手段(以下、図形G生成手
    段)に送信して各々の相対位置データを受けとり、該デ
    ータに含まれる内外判定データIOと距離dに基づい
    て、各々の正方領域が前記図形領域Gの内部領域または
    外部領域またはそのいずれでもない未定領域となるか判
    定し、前記未定領域となる各正方領域を四分木法または
    八分木法により再分割して上記一連の処理を繰返し、分
    割された正方領域が所定領域感度δ以下になったとき、
    上記の処理過程で前記内部領域と判定された全ての正方
    領域の面積または体積の総和を求めることを特徴とする
    図形処理方法。
  23. 【請求項23】 請求項22において、 前記正方領域が所定領域感度δ以下になったときの未定
    領域は、その中心点Pの内外判定データIOがINのと
    き、前記内部領域とすることを特徴とする図形処理方
    法。
  24. 【請求項24】 所定の図形が対応される空間点の相対
    位置データによって表わされ、該相対位置データの点列
    によって前記所定図形を生成する図形処理方法におい
    て、 任意の空間点Pを受信したときに、この空間点Pが前記
    所定図形の内部(IN)か外部(OUT)かを示す内外
    判定データIOと、前記所定図形の境界と空間点Pとの
    最短距離または該最短距離以下で少なくともどの程度離
    れているか(距離下界)の一方を示す距離データdと、
    前記最短距離が設定されるときその近地点Qと、近地点
    Qが設定されるときを第一種、そうでないときを第二種
    とする種別フラグKINDからなる相対位置データDを
    生成する詳細計算と、 前記所定図形に関して参照可能に設定されている領域デ
    ータが使用可能な範囲においては、前記領域データを基
    に求めた内外判定データIO及び距離データdと、第二
    種の種別フラグKINDを含む相対位置データDを生成
    する簡略計算を、使い分けながら処理することを特徴と
    する図形処理方法。
  25. 【請求項25】 請求項24において、 前記領域データは、前記所定の図形を含む近似的に極小
    で単純な領域図形(円または四角形)でなる静的領域デ
    ータであり、前記使用可能な範囲は前記空間点が前記領
    域図形の外部にある場合であることを特徴とする図形処
    理方法。
  26. 【請求項26】 請求項24または25において、 前記領域データは、最初に受信した空間点P0の相対位
    置データDの詳細計算の結果による点P0の内外判定デ
    ータと距離データd0を含む動的領域データであり、前
    記使用可能な範囲は受信される空間点Piの点P0から
    の移動距離が距離データd0以内にある場合で、これを
    超える空間点Pについては再度詳細計算を行ってその結
    果により前記動的領域データも更新することを特徴とす
    る図形処理方法。
  27. 【請求項27】 請求項1〜23のいずれか1項の図形
    処理方法において、 前記相対位置データの生成は、請求項24、25または
    26の図形処理方法によって行うことを特徴とする図形
    処理方法。
  28. 【請求項28】 任意の図形領域に対する任意の空間点
    の相対位置データを用いて前記図形領域に関わる所定の
    図形処理を行う図形処理装置において、 第一の図形領域の相対位置データを生成する第一の図形
    生成手段と、前記第一の図形領域の相対位置データを基
    に所定の生成処理をして第二の図形領域の相対位置デー
    タを生成する第二の図形生成手段を含む図形生成手段
    と、 前記第一の図形領域及び/又は前記第二の図形領域を表
    す相対位置データを受信してその図形領域を表示する表
    示処理手段と、 前記第二の図形領域に関わる前記所定の図形処理の指示
    に従い、所定の空間点を前記第二の図形生成手段、さら
    に前記第一の図形生成手段へと送信して各々を実行し、
    前記第一の図形生成手段から第一の相対位置データを前
    記第二の図形生成手段へ、前記第二の図形生成手段から
    第二の相対位置データを前記表示処理手段へと送信する
    通信制御手段と、を備えることを特徴とする図形処理装
    置。
  29. 【請求項29】 任意の図形領域に対する任意の空間点
    の相対位置データを用いて前記図形領域に関わる所定の
    図形処理を行う図形処理装置において、 円、四角形等の基本図形領域毎の基本図形生成手順に従
    って相対位置データを生成する基本図形生成手段と、反
    転図形生成手順に従って任意の図形領域の反転図形領域
    の相対位置データを生成する反転図形生成手段、和
    (+)図形生成手順に従って二つの図形領域の和図形領
    域の相対位置データを生成する和図形生成手段、拡大図
    形生成手順に従って任意の図形領域の拡大図形領域の相
    対位置データを生成する拡大図形生成手段の少なくとも
    一つと、を含む図形生成処理手段と、 前記基本図形生成手順と、前記反転図形生成手順、前記
    和(+)図形生成手順、前記拡大図形生成手順の少なく
    とも一つと、を記憶する生成手順記憶エリアと、前記各
    図形領域を示す図形名、その図形生成手順のアドレス、
    パラメータ及び/又はオペランドの図形オブジェクトデ
    ータのアドレスを含む階層構成の図形オブジェクトデー
    タを記憶するオブジェクトデータエリアを有する記憶装
    置と、 表示処理手順などの応用処理手順を有し、任意の図形領
    域の相対位置データを基に、前記応用処理手順に従った
    図形処理を行う応用図形処理手段と、 前記所定の図形処理の指示による処理内容と対象図形名
    の受信と、前記処理内容に対応する前記応用処理手順の
    実行、前記対象図形名の図形オブジェクトデータの読出
    し、そのオブジェクトデータの図形生成手順の実行、そ
    のオブジェクトデータにオペランドの図形のあるとき更
    にその図形生成手順の実行、前記応用処理手順から各図
    形生成手順に前記階層構成の順序に前記空間点を含むメ
    ッセージの送信と、前記順序と逆に各図形生成手順によ
    る相対位置データの返信と、を行う通信制御手段を設け
    ることを特徴とする図形処理装置。
  30. 【請求項30】 請求項28または29において、 所望の図形名とオペランドの図形名を含む図形オブジェ
    クトデータ生成のメッセージを受信し、前記所望の図形
    名の図形領域を生成するための生成手順のアドレスを前
    記生成手順記憶エリアから読出し、前記オペランドの図
    形名のオブジェクトデータのアドレスを前記オブジェク
    トデータ記憶エリアから読出し、前記所望の図形名、前
    記生成手順のアドレス及び前記オペランドの図形名のオ
    ブジェクトデータのアドレスを含むオブジェクトデータ
    を生成し、前記オブジェクトデータ記憶エリアに記憶す
    る図形オブジェクトデータ生成手段を備えることを特徴
    とする図形処理装置。
  31. 【請求項31】 請求項29において、 前記拡大図形生成手順は、任意の図形領域と前記空間点
    が特定の位置関係になるとき、前記拡大図形領域の相対
    位置データの内外判定データと距離データを求める超球
    判定手順を有して構成されることを特徴とする図形処理
    装置。
  32. 【請求項32】 請求項31において、 前記超球判定手順は、並列処理するように構成されるこ
    とを特徴とする図形処理装置。
  33. 【請求項33】 請求項29において、 前記応用処理手順は、NC工作機械の工具経路データの
    生成処理として適用されることを特徴とする図形処理装
    置。
  34. 【請求項34】 請求項28または29において、 前記表示処理手順は、以下の(1)または(2)の表示
    手段を選択利用可能に含んでなることを特徴とする図形
    処理装置。 (1)任意の図形領域に対する所定の視線上で前記空間
    点を移動設定しつつ、相対位置データの内外判定データ
    が反転する空間点より、当該視線上での図形領域の境界
    点を求める視線式表示手段。 (2)任意の図形領域を囲む正方領域を四分木法により
    分割し、その各正方領域の中心を前記空間点とする相対
    位置データの内外判定データから図形領域に対する各正
    方領域の内、外、未定の領域判定を行い、未定の領域に
    ついて上記一連の処理を所定領域感度まで繰り返して
    後、残っている未定の領域の4頂点について得た内外判
    定データの組合せパターンに応じて予め定めた所定の表
    示セグメントを当該未定領域の表示線とする四分木式表
    示手段。
JP7151438A 1994-07-28 1995-06-19 図形処理方法および装置 Pending JPH0896025A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP7151438A JPH0896025A (ja) 1994-07-28 1995-06-19 図形処理方法および装置

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP17662194 1994-07-28
JP6-176621 1994-07-28
JP7151438A JPH0896025A (ja) 1994-07-28 1995-06-19 図形処理方法および装置

Publications (1)

Publication Number Publication Date
JPH0896025A true JPH0896025A (ja) 1996-04-12

Family

ID=26480693

Family Applications (1)

Application Number Title Priority Date Filing Date
JP7151438A Pending JPH0896025A (ja) 1994-07-28 1995-06-19 図形処理方法および装置

Country Status (1)

Country Link
JP (1) JPH0896025A (ja)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2003098489A1 (fr) * 2002-05-17 2003-11-27 Riken Programme et procede de determination interieures/exterieure de donnees de frontiere
WO2005109255A1 (ja) 2004-05-06 2005-11-17 Riken ボリュームデータのセルラベリング方法とそのプログラム
US6988059B1 (en) 1999-09-14 2006-01-17 Kabushiki Kaisha Square Enix Rendering method and device, game device, and computer-readable recording medium for storing program to render stereo model
JP2006116583A (ja) * 2004-10-25 2006-05-11 Aida Eng Ltd トランスファプレス機械
JP2007087207A (ja) * 2005-09-22 2007-04-05 Canon Inc 図形処理装置及び図形処理方法
JP2007299054A (ja) * 2006-04-27 2007-11-15 Shinko Electric Ind Co Ltd Cadシステム、図形データ処理方法および図形データ処理プログラム
US7891223B2 (en) 2004-10-29 2011-02-22 Aida Engineering, Ltd. Transfer press machine
JP2012168730A (ja) * 2011-02-14 2012-09-06 Fujitsu Ltd 図形処理プログラム、方法及び装置
JP2012247832A (ja) * 2011-05-25 2012-12-13 Sony Computer Entertainment Inc 情報処理装置、情報処理方法、情報処理プログラム、情報処理プログラムを記憶したコンピュータ読み取り可能な記録媒体、厚み領域設定装置、厚み領域設定方法、厚み領域設定プログラム、厚み領域設定プログラムを記憶したコンピュータ読み取り可能な記録媒体、仮想空間における面に関するデータ構造
JP2014090896A (ja) * 2012-11-05 2014-05-19 Mitsubishi Electric Corp 粒子線治療用干渉チェック装置
US9126379B2 (en) 2011-01-28 2015-09-08 Aida Engineering Ltd. Servo press system

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6988059B1 (en) 1999-09-14 2006-01-17 Kabushiki Kaisha Square Enix Rendering method and device, game device, and computer-readable recording medium for storing program to render stereo model
CN100367284C (zh) * 2002-05-17 2008-02-06 独立行政法人理化学研究所 边界数据的内外判定方法
EP1507220A1 (en) * 2002-05-17 2005-02-16 Riken Boundary data inside/outside judgment method and program thereof
WO2003098489A1 (fr) * 2002-05-17 2003-11-27 Riken Programme et procede de determination interieures/exterieure de donnees de frontiere
EP1507220A4 (en) * 2002-05-17 2007-04-04 Riken PROGRAM AND METHOD FOR INNER / EXTERIOR DETERMINATION OF FRONTIER DATA
US7388584B2 (en) 2002-05-17 2008-06-17 Riken Method and program for determining insides and outsides of boundaries
WO2005109255A1 (ja) 2004-05-06 2005-11-17 Riken ボリュームデータのセルラベリング方法とそのプログラム
US7734059B2 (en) 2004-05-06 2010-06-08 Riken Method and its program for cell labeling of volume data
JP2006116583A (ja) * 2004-10-25 2006-05-11 Aida Eng Ltd トランスファプレス機械
US7891223B2 (en) 2004-10-29 2011-02-22 Aida Engineering, Ltd. Transfer press machine
JP2007087207A (ja) * 2005-09-22 2007-04-05 Canon Inc 図形処理装置及び図形処理方法
JP2007299054A (ja) * 2006-04-27 2007-11-15 Shinko Electric Ind Co Ltd Cadシステム、図形データ処理方法および図形データ処理プログラム
US9126379B2 (en) 2011-01-28 2015-09-08 Aida Engineering Ltd. Servo press system
JP2012168730A (ja) * 2011-02-14 2012-09-06 Fujitsu Ltd 図形処理プログラム、方法及び装置
US8847971B2 (en) 2011-02-14 2014-09-30 Fujitsu Limited Graphic processing device, graphic processing method, and non-transitory medium for storing graphic processing program for generating corrected graphic data
JP2012247832A (ja) * 2011-05-25 2012-12-13 Sony Computer Entertainment Inc 情報処理装置、情報処理方法、情報処理プログラム、情報処理プログラムを記憶したコンピュータ読み取り可能な記録媒体、厚み領域設定装置、厚み領域設定方法、厚み領域設定プログラム、厚み領域設定プログラムを記憶したコンピュータ読み取り可能な記録媒体、仮想空間における面に関するデータ構造
US9495485B2 (en) 2011-05-25 2016-11-15 Sony Corporation Information processing device, information processing method, computer readable storage medium storing information processing program, thickness area setting device, thickness area setting method, and computer readable storage medium storing thickness area setting program
JP2014090896A (ja) * 2012-11-05 2014-05-19 Mitsubishi Electric Corp 粒子線治療用干渉チェック装置

Similar Documents

Publication Publication Date Title
Kim et al. Quasi-triangulation and interworld data structure in three dimensions
Greß et al. GPU‐based collision detection for deformable parameterized surfaces
CN103236079B (zh) 一种基于三维模型体素化的内部球改进构造方法
Park et al. Reverse engineering with a structured light system
JP2021185408A (ja) ビルブロックデータのマージに関する方法、装置、電子デバイス、コンピュータ可読記憶媒体及びコンピュータプログラム
JPH0896025A (ja) 図形処理方法および装置
CN106447777A (zh) 布尔运算支持下的三维拓扑关系表达与映射
CN108090952A (zh) 建筑物三维建模方法和装置
CN112528428B (zh) 对工程结构的物理参数展示的方法、装置和计算机设备
JP4653538B2 (ja) 3次元データ管理装置、3次元データ管理プログラム及び3次元データ管理方法
US7388584B2 (en) Method and program for determining insides and outsides of boundaries
WO2012073363A1 (ja) 表示処理方法及び装置
Nagy et al. New algorithm to find isoptic surfaces of polyhedral meshes
JP2003323461A (ja) Cadデータ作成装置および情報加工方法
JP2005293021A (ja) 最大角度法を用いた三角形メッシュ生成方法及びプログラム
US11120621B2 (en) Systems and methods for applying partial updates to point cloud terrain
Li et al. Efficient ray casting polygonized isosurface of binary volumes
JP2006277672A (ja) 三次元モデル処理方法
Tet-Khuan et al. 3D spatial operations in geo DBMS environment for 3D GIS
Inui et al. Fast computation of accessibility cones for assisting 3+ 2 axis milling
KR20000072426A (ko) 반도체 기판상의 3차원 구조물에 대한 비구조형 사면체메쉬 생성 시스템 및 방법
JP3792584B2 (ja) 工具経路面計算方法、工具経路面計算プログラム及び工具経路面計算プログラムを記録した記録媒体
JP4526063B2 (ja) ボリュームデータのセルラベリング方法とそのプログラムとボリュームデータのセルラベリング装置
JP2021033375A (ja) 三次元形状データの編集装置、及び三次元形状データの編集プログラム
CN116934994B (zh) Eam设备分布的立体地图构建方法、系统、设备及存储介质