JP3703073B2 - 図形表示装置及びその方法 - Google Patents
図形表示装置及びその方法 Download PDFInfo
- Publication number
- JP3703073B2 JP3703073B2 JP33259199A JP33259199A JP3703073B2 JP 3703073 B2 JP3703073 B2 JP 3703073B2 JP 33259199 A JP33259199 A JP 33259199A JP 33259199 A JP33259199 A JP 33259199A JP 3703073 B2 JP3703073 B2 JP 3703073B2
- Authority
- JP
- Japan
- Prior art keywords
- intersection
- convex polygon
- zero
- determination
- vector
- 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
Images
Description
【発明の属する技術分野】
本発明はCADやCG(コンピュータグラフィックス)などの図形表示装置など、主に3次元図形の処理表示装置に係り、特にレイトレーシング法を用いてレンダリングを行なう図形表示装置に関する。
【0002】
【従来の技術】
一般に、3次元図形をコンピュータ画面等の2次元平面上に表示するには、視点から見て図形が奥行き方向に相互に重なっている中から、画像の画素毎に最も手前にある図形を選択して表示する隠面消去処理が必要になる。
この隠面消去処理の方法の1つにレイトレーシング法が知られており、これについて以下に簡単に説明する。
【0003】
図3のレイトレーシング法の原理図に示されるように、3次元空間に視点Rを設定し、この視点Rに対しスクリーンSを設定する。
そして、このスクリーンS上の縦横一定間隔おきに画素Mを配置し、視点Rからこれらの各画素Mを通過する視線(レイ)Lを順次発生させる。
これらの各視線Lは対象とする3次元図形と交差するかどうかを判定し、視線L上において最も視点R側にある図形との交点Qを検索する方法である。
【0004】
図5はそのレイトレーシング法による隠面消去処理装置の一例を示すブロック構成図である。
この隠面消去処理装置は、視線(レイ)発生部51、交差判定・交点検出部
52、及び輝度算出部53で構成されている。
視線発生部51は与えられた視野データから、視線データとなる視点座標及び視線ベクトルを発生させる。
【0005】
ここで、視線ベクトルは図3に示すように、予め定めたスクリーンSの大きさの中で、スクリーンSを通過する視線Lを水平・垂直方向とも一定間隔おきに発生させた時の視線Lの方向をベクトルで表わしたものである。
視線Lの間隔は一般的にはスクリーンSの画素Bの間隔とする場合が多いが、それより細かくする場合もある。
【0006】
つぎの交差判定・交点検出部52は、供給される視線データと図形データとより、対象となる3次元図形に対し、各視線Lが(スクリーンSの向こう側で)視点Rに最も近い点(Q)で交差する図形を特定し、その交点座標・法線ベクトルを検出する。
【0007】
更に輝度算出部53は前記交差判定・交点検出部52で検出された交点座標・法線ベクトルと供給される図形データとより得られる物体の色・反射率などの交差した図形の特性、光源データなどから、予め定めた方法に基づいて、この視線LのスクリーンSの画素B上での輝度値を求める。
【0008】
従来の隠面消去処理装置の交差判定・交点検出部52の構成の一例を図6に示す。
図6では視線データとして視点座標及び視線ベクトルが視線発生部51より供給されると共に、別に対象となる各図形の位置・形状を示す図形データが供給される。
この図形データは球・円筒・直方体など、特定の形状に関するデータの場合もあるが、多くの場合は複数の凸多角形で構成され、各凸多角形の図形データはその頂点座標で示される。よって、ここでは凸多角形の場合について以下に説明する。
【0009】
この交差判定・交点検出部52は、交点距離検出部61、交点座標算出部62、交差判定部63、及び隠面消去部64より構成される。
交点距離検出部61は、凸多角形を順に取り出し、この凸多角形が含まれる無限平面と前記視線との交点Qから視点Rまでの距離を検出する処理を行なう。
【0010】
つぎの交点座標算出部62は、交点Qから視点Rまでの距離を、視点Rと視線ベクトルで示される直線(実際には半直線)の式に代入して交点Qの座標を算出する処理を行なう。
更に交差判定部63は、前記交点Qが対象となる凸多角形の内部にあるか外部にあるか、すなわち、視線Lがこの凸多角形と前記交点Qで交差するか否かの判定を行なう。
【0011】
更につぎの隠面消去部64は、前記交点距離検出部61、交点座標算出部62、及び交差判定部63の処理の結果、この凸多角形が視線Lと交差する場合には、それまでに処理した凸多角形で得られた交点Qから視点Rまでの距離とここで得られた距離とを比較して、より距離が短いと判定された場合には、この凸多角形を現時点での交差図形とする。
【0012】
前記の交点距離検出部61乃至隠面消去部64の処理を全ての凸多角形に対して行なうことにより、各視線Lに対する交差図形が確定し、結果である交点座標・法線ベクトルと、交差した交差図形・凸多角形の位置情報(どの図形のどの凸多角形に交差したか)などが輝度算出部53に送られる。
【0013】
従来の交差判定部63における判定原理の一例を図7に示す。
交点座標算出部62において座標が算出された凸多角形を含む無限平面と視線Lとの交点Qから、凸多角形の各頂点Pnへ半直線を引き、各半直線が、対象となる頂点と隣接しない凸多角形の辺と交差するか否かを判定する。
全ての半直線が該当する辺と交差しなければ、前記交点Qは凸多角形の内部に存在すると判定する(図7(a))。
【0014】
1つの半直線でも前記凸多角形の辺と交差すると判定されれば、前記交点Qは凸多角形の外部に存在すると判定する(図7(b))。
すなわち、全ての半直線が該当する辺と交差しない場合は視線がこの凸多角形と前記交点Qで交差し、1つの半直線でも前記凸多角形の辺と交差した場合は、視線はこの凸多角形と交差しないと判定される。
【0015】
【発明が解決しようとする課題】
しかし、図7の例では、各半直線と該当する凸多角形の辺との交点を求め、この交点と前記交点Qとの位置関係から、この交点が凸多角形上にあるか否かを判定する処理を全ての半直線−辺の組合わせで行なわなければならず、処理が大変に複雑になってしまうという問題があった。
【0016】
また、従来例においては、図8に示すように2つの凸多角形の境界に視線との交点Qが位置するような場合、境界を凸多角形の外部と判定する処理では、境界の位置関係によっては、一部の境界部分が本来なら凸多角形と交差しているにもかかわらず交差しないと判定されて、背景の色がこの境界部分に出てしまうという問題があった。
【0017】
また、境界を凸多角形の内部と判定する処理では、境界部分は多角形Eと多角形Fの2つの多角形に重複して隠面消去処理が行なわれるが、視点Rと交点Qとの距離が多角形Eと多角形Fでほぼ同じため、演算誤差によってこの境界部分における隠面消去処理の交点−視点間距離判定が、部分的に多角形Eと多角形Fでばらついてしまい、境界部分で2つの多角形が入り組んで見苦しくなってしまうことがあるといった問題があった。
【0018】
【課題を解決するための手段】
そこで上記問題点を解決するために、
請求項1の発明は、
同一平面上に頂点P1、P2、・・・、Pnを有する凸多角形(n>2の整数)と同じ平面上に存在する視線との交点Qが、前記凸多角形の内部に存在するか、前記凸多角形の境界に存在するか、または前記凸多角形の外部に存在するかの判定を行なう領域内外判定を、交点距離検出部11と、交点座標算出部12と、交差判定部13と、隠面消去部14と、距離判定条件設定部15とを有する構成で行なう図形表示装置において、
前記交差判定部13を、
前記交点座標算出部より前記凸多角形の各頂点と前記交点とを結んで形成される各頂点ベクトルが順次供給され、隣接する2頂点間のベクトルの外積がゼロかどうかの判定を行なう第1の交差判定部21と、
前記第1の交差判定部の外積がゼロであるとの出力情報と前記頂点ベクトルとが供給され、前記隣接する2頂点間の外積がゼロであるベクトルにおける内積がゼロより大の場合は前記交点は前記凸多角形の外部にあり、前記内積がゼロより小の場合は前記交点は前記凸多角形の2頂点間の境界線上にあるとの判定を行なう第2の交差判定部22と、
前記第1の交差判定部の外積が前記凸多角形においてすべてゼロでないとの出力情報と前記交点座標算出部よりの凸多角形の法線ベクトルとが供給され、前記2頂点間のベクトルの外積と前記凸多角形の法線ベクトルとの間の内積がゼロより大の場合はsign=1とし、ゼロより小の場合はsign=−1と判定して、前記隣接するすべての2頂点間で前記signがすべて同一の場合は前記交点は前記凸多角形の内部にあり、前記signに異なるものがある場合は前記交点は前記凸多角形の外部にあると判定を行なう第3の交差判定部23と
より構成したことを特徴とする図形表示装置を提供し、
請求項2の発明は、
請求項1に記載された図形表示装置において、
前記隠面消去部は、前記交点が境界線上にあると判定された場合に限り、前記距離判定条件設定部より前記凸多角形の交点から視点までの距離に一定値を加算する指示が供給され、前記隠面消去部において、それまでに処理した凸多角形における距離とで大小の比較を行ない、より距離の短い前記凸多角形の交点を選択することを特徴とする図形表示装置を提供し、
請求項3の発明は、
同一平面上に頂点P1、P2、・・・、Pnを有する凸多角形(n>2の整数)と同じ平面上に存在する視線との交点Qが、前記凸多角形の内部に存在するか、前記凸多角形の境界に存在するか、または前記凸多角形の外部に存在するかの判定を行なう領域内外判定を、交点距離検出部11と、交点座標算出部12と、交差判定部13と、隠面消去部14と、距離判定条件設定部15とを有する図形表示装置に図形表示を行わせる図形表示方法において、
前記交差判定部において、
前記交点座標算出部から前記凸多角形の各頂点と前記交点とを結んで形成される各頂点ベクトルが順次供給され、隣接する2頂点間のベクトルの外積がゼロかどうかの判定を行なう第1の交差判定ステップと、
前記第1の交差判定ステップの外積がゼロであるとの出力情報と前記頂点ベクトルとが供給され、前記隣接する2頂点間の外積がゼロであるベクトルにおける内積がゼロより大の場合は前記交点は前記凸多角形の外部にあり、前記内積がゼロより小の場合は前記交点は前記凸多角形の2頂点間の境界線上にあるとの判定を行なう第2の交差判定ステップと、
前記第1の交差判定ステップの外積が前記凸多角形においてすべてゼロでないとの出力情報と前記交点座標算出ステップよりの凸多角形の法線ベクトルとが供給され、前記2頂点間のベクトルの外積と前記凸多角形の法線ベクトルとの間の内積がゼロより大の場合はsign=1とし、ゼロより小の場合はsign=−1と判定して、前記隣接するすべての2頂点間で前記signがすべて同一の場合は前記交点は前記凸多角形の内部にあり、前記signに異なるものがある場合は前記交点は前記凸多角形の外部にあるとの判定を行なう第3の交差判定ステップと
を有して図形表示を行わせるようにしたことを特徴とする図形表示方法を提供し、
請求項4の発明は、
請求項3に記載された図形表示方法において、
前記隠面消去部における隠面消去ステップは、前記交点が境界線上にあると判定された場合に限り、前記距離判定条件設定部における距離判定条件設定ステップより前記凸多角形の交点から視点までの距離に一定値を加算する指示が供給され、前記隠面消去ステップにおいて、それまでに処理した凸多角形における距離とで大小の比較を行ない、より距離の短い前記凸多角形の交点を選択することを特徴とする図形表示方法を提供するものである。
【0019】
( 作 用 )
本発明は、図2に示すように、まず、凸多角形の頂点P1、P2、・・・、Pnを同一平面上に一定向き(時計回りまたは反時計回り)に定義し、この凸多角形を含む無限平面と視線Lが交点Qで交差するとき、前記交点Qと前記各頂点Pnを結ぶベクトルを順次求め、隣接する2頂点間のベクトル(P1QとP2Q、P2Qと
P3Q、・・・、PnQとP1Q)の外積及び内積を求める。
前記2頂点間ベクトルの外積は、これらの2ベクトルの位置関係によって向きが決まる、2ベクトルに垂直なベクトルを示している。
【0020】
すなわち、図2でP1Q×P2QとP2Q×P1Qの向きは逆であり、P1Q×
P2QとP3Q×P4Qの向きは図2(a)では同じ向きであるが、図2(b)では逆向きとなる。
各2頂点間の外積ベクトルと、予め求めた凸多角形の法線ベクトルとの間の内積の符号を隣接する各頂点間について調べることにより、前記外積ベクトルと前記法線ベクトルの方向(内積が正なら同方向、負なら逆方向)の同一性が判る。
【0021】
前記法線ベクトルは共通であり、前記したように外積ベクトルの向きは2頂点間ベクトルの位置関係によって異なるので、全ての組合わせで、2頂点間の外積ベクトルと法線ベクトルとの内積の符号の同一性を調べることにより、交点Qと該当する凸多角(四角)形の位置関係を知ることが出来る。
【0022】
すなわち、前記2頂点間の外積ベクトルと法線ベクトルとの内積の符号が同一ならば交点Qは凸多角形の内部にあると判定(図2(a))する。
また、前記2頂点間の外積ベクトルと法線ベクトルとの内積の符号に異なるものがある場合は交点Qは凸多角形の外部にあると判定(図2(b))する。
【0023】
一方、2頂点間ベクトルの外積がほぼ0(誤差の影響を見込んだ0に近い値)の場合は、前記法線ベクトルとの内積の符号で内外判定をすることが出来ない。
この場合には該当する2頂点を通る直線上に交点Qが存在しているので、前記2頂点間ベクトルの内積で判定する。
【0024】
すなわち、2頂点間ベクトルの内積が0より大きい場合(2頂点間ベクトルの成す角=0)は、交点Qはこの2頂点の外側に存在する(図2(d))ため、前記交点Qは凸多角形の外部にあると判定する。
【0025】
また、2頂点間ベクトルの内積が0より小さい場合(2頂点間ベクトルの成す角=π)は交点Qはこの2頂点の内側に存在する(図2(c))ため、前記交点Qは凸多角形の境界上にあると判定する。
【0026】
交点Qが凸多角形の境界上にあると判定された時は凸多角形の内部にある場合と同様に、当該凸多角形が視線と交差すると判定して隠面消去部において、それまでに処理した凸多角形で得られた交点から視点までの距離と当該凸多角形における距離とを比較する。
【0027】
この際に、境界上にあると判定された場合に限り、距離の差が一定範囲内の場合は先に判定した凸多角形を優先して、交差図形の更新を行なわないことにより、境界線上で判定交差図形が同一になり、2つの多角形が入り組んで見苦しくなってしまうことが解消される。
【0028】
【発明の実施の形態】
図1に本発明の図形表示装置の交差判定・交点検出部の一実施例のブロック構成図を示す。
図1に示される本発明の交差判定・交点検出部の実施例は、交点距離検出部
11、交点座標算出部12、交差判定部13、隠面消去部14、及び 距離判定条件設定部15より構成される。
【0029】
まず、視線データ(視点の座標、視線ベクトル)及び、各凸多角形のデータ(頂点座標・法線ベクトル)が交点距離検出部11に入力される。
交点距離検出部11は凸多角形を順に取り出し、凸多角形の含まれる無限平面と視線Lとの交点Qから視点Rまでの距離を検出する処理を行なう。
【0030】
なお、視線ベクトルと前記無限平面が平行な場合、及び無限平面と視線との交点が予め定めだ図形領域をはみ出すなど、有効な値でない場合は、この凸多角形は視線と交差しないと判断して、当該視線のこの凸多角形に関する以降の判定処理は行なわない。
【0031】
つぎに、交点座標算出部12は交点Qから視点Rまでの距離を、視点Rと視線ベクトルで示される直線(実際には半直線)の式に代入して交点Qの座標を計算し、視線データ、凸多角形のデータと共に交差判定部13に送られる。
【0032】
本発明の従来例と異なる部分は交差判定部13乃至距離判定条件設定部15である。
交差判定部13は、頂点外積判定部21、頂点内積判定部22、及び法線内積判定部23より構成されている。
【0033】
交差判定部13には交点座標算出部12で計算された凸多角形と視線の交点Qの座標と、合わせて送られる凸多角形の頂点座標から頂点−交点間(図2のPk−Q間、k=1・・・n)のベクトル(図2の頂点V)が求められ、頂点外積判定部21及び頂点内積判定部22において隣接する2頂点間のベクトル(図2のP1QとP2Q、P2QとP3Q、・・・、PnQとP1Q)の外積及び内積を求める。
【0034】
頂点外積判定部(第1の交差判定部)21において、2頂点間のベクトルの外積がほぼ0の場合は、次に頂点内積判定部(第2の交差判定部)22において2頂点間の外積がほぼ0であるベクトルに対して内積による判定が行なわれ、内積が0より大きい場合は、交点Qは凸多角形の外部にあると判定される。
内積が0より小さい場合は、交点Qは凸多角形の2頂点間の境界上にあると判定される。
【0035】
一方、2頂点間のベクトルの外積が当該凸多角形についてすべてほぼ0ではない場合は、次に法線内積判定部(第3の交差判定部)23において、2頂点間のベクトルの外積と凸多角形の法線ベクトルとの間で内積が取られる。
内積が0より大きい場合はsign=1とし、0より小さい場合はsign=‐1であると判別する。
【0036】
以上の処理を全ての隣接する2頂点間について行ない、
(A) 2頂点間のベクトルの外積がすべて0でない場合で、
(a) 2頂点間で前記signがすべて同一(1または−1)である場合・・・交点Qは凸多角形の内部にあり、
(b) 2頂点間でsignに異なるものがある場合・・・交点Qは凸多角形の外部にあり、
(B) 2頂点間のベクトルの外積が0となるものがある場合で、
(c) 2頂点間のベクトル内積が0より小の場合・・・交点Qは凸多角形の境界上にあり、
(d) 2頂点間のベクトル内積が0より大の場合・・・交点Qは凸多角形の外部にある
とした区分条件によって交点Qの内外判定を行なう。
【0037】
なお、1回でも交点Qが凸多角形の外部にあると判定した場合は、その時点で当該視線はこの凸多角形と交差しないと判断して、当該視線のこの凸多角形に関する以降の判定処理は行なわない。
【0038】
交点Qが凸多角形の境界上にあると判定された時は凸多角形の内部にある場合と同様に、当該凸多角形が視線と交差するという判定を視線データ、凸多角形のデータと共に隠面消去部14に送る。
【0039】
この隠面消去部14は従来例と同様に、当該多角形における交点から視点までの距離の計算を行ない、ここで得られた距離と、それまでに処理した凸多角形で得られた交点から視点までの距離とを比較することによって、視点に最も近い、すなわち距離の一番短いものを選択する。
【0040】
ただし、従来例と異なるのは、通常の交差図形に対しては単純な大小判定で距離の比較を行なうが、交点Qが境界線上にあると判定された場合に限り、距離判定条件設定部15より当該凸多角形の交点から視点までの距離に一定値を加算する指示を行ない、それとそれまでに処理した凸多角形における距離とで大小の比較を行なう。
【0041】
これにより、距離の差が一定範囲内の場合は先に判定した前記の一定値を加算しなかった方の凸多角形が優先され、交差図形の更新を行なわないようにすることにより、これまであつた境界線上で判定交差図形が同一になり、2つの多角形が入り組んで見苦しくなってしまうことが解消される。
【0042】
なお、以上の説明では対象とする凸多角形は同一平面上に定義された凸n角形(n>2の整数)を仮定しているが、凸多角形が同一平面上にない場合は、平面を確定出来る三角形に分割して、各々の三角形について同様の処理を行なうことになる。
【0043】
レイトレーシング法によるレンダリングでは、以上の説明のような視点から発生された視線が最も視点側にある図形との交点を求めてその交点における輝度値を求めるだけでなく、図3に示したように、視線が交差した図形の性質によって、前記交点から視線の反射光・屈折光に相当するレイを飛ばし、各交点の反射光・屈折光に相当するレイについて各々、新たに図形の交点を求めていき、新たな交点における輝度値を求め、更にその交点から反射光・屈折光に相当するレイを飛ばしていく・・・という二分木処理を繰り返し、二分木を構成するレイの各々の交点における輝度値を所定の割合で加算していってスクリーン上の各画素における輝度値を求めていく方法がある。
【0044】
さらに、各交点における輝度値を求める際に、与えられた光源からの光線ベクトルを遮る図形があるかどうかを判定することにより、表示された図形に影付けを行なって、よりリアルなレンダリングを行なう方法もある。
そうした反射光・屈折光に相当するレイに対する図形の交差判定や、影付けの際の光源からの光線ベクトルを遮る図形に対する交差判定に対しても、本発明を適応することが出来る。
【0045】
また、これまでの説明ではレイトレーシング法における隠面消去処理に限って説明したが、本発明の交差判定部13における処理方法はそれに限ったものではなく、凸n角形(n>2の整数)における領域内外判定手段を必要とするシステム全般に適応可能なものである。
【0046】
【発明の効果】
本発明によると、レイトレーシング法による隠面消去における視線と凸多角形との間の交差判定などにおいて、凸多角形の頂点を一定向き(時計回りまたは反時計回り)に定義し、凸多角形が存在する平面と視線が交点で交差する場合、交点と頂点を結ぶベクトルを順次求め、隣接する2頂点間のベクトルの内積及び外積、及びその外積と凸多角形の法線ベクトルとの内積によって交点が凸多角形の内部に存在するか、境界に存在するか、外部に存在するかを判定し、交点が凸多角形の内部または境界に存在する場合は当該凸多角形が視線と交差すると判定して隠面消去部による処理を行なうが、境界に存在すると判定された場合には隠面消去処理における距離判定を変更することにより、交差判定の簡略化と、図形表示時における多角形の境界付近における問題を解消することを可能にした。
【図面の簡単な説明】
【図1】本発明の図形表示装置の交差判定・交点検出部の一実施例のブロック構成図を示す。
【図2】本発明の図形表示装置の交差判定部の判定原理を示した図である。
【図3】レイトレーシング法の原理を示した図である。
【図4】反射・屈折及び光源との影判定も考慮したレイトレーシング法の原理を示した図である。
【図5】レイトレーシングシステムのブロック構成を示した図である。
【図6】従来の交差判定・交点検出部のブロック構成の一例を示した図である。
【図7】従来の交差判定部における判定原理の一例を示した図である。
【図8】2つの凸多角形の境界に視線との交点がある場合の一例を示した図である。
【符号の説明】
11 交点距離検出部
12 交点座標算出部
13 交差判定部
14 隠面消去部
15 距離判定条件設定部
21 頂点外積判定部(第1の交差判定部)
22 頂点内積判定部(第2の交差判定部)
23 法線内積判定部(第3の交差判定部)
L 視線
M 画素
P1、P2、・・・、Pn 凸多角形の頂点(n>2の整数)
Q 交点
R 視点
S スクリーン
Claims (4)
- 同一平面上に頂点P1、P2、・・・、Pnを有する凸多角形(n>2の整数)と同じ平面上に存在する視線との交点Qが、前記凸多角形の内部に存在するか、前記凸多角形の境界に存在するか、または前記凸多角形の外部に存在するかの判定を行なう領域内外判定を、交点距離検出部と、交点座標算出部と、交差判定部と、隠面消去部と、距離判定条件設定部とを有する構成で行なう図形表示装置において、
前記交差判定部を、
前記交点座標算出部より前記凸多角形の各頂点と前記交点とを結んで形成される各頂点ベクトルが順次供給され、隣接する2頂点間のベクトルの外積がゼロかどうかの判定を行なう第1の交差判定部と、
前記第1の交差判定部の外積がゼロであるとの出力情報と前記頂点ベクトルとが供給され、前記隣接する2頂点間の外積がゼロであるベクトルにおける内積がゼロより大の場合は前記交点は前記凸多角形の外部にあり、前記内積がゼロより小の場合は前記交点は前記凸多角形の2頂点間の境界線上にあるとの判定を行なう第2の交差判定部と、
前記第1の交差判定部の外積が前記凸多角形においてすべてゼロでないとの出力情報と前記交点座標算出部よりの凸多角形の法線ベクトルとが供給され、前記2頂点間のベクトルの外積と前記凸多角形の法線ベクトルとの間の内積がゼロより大の場合はsign=1とし、ゼロより小の場合はsign=−1と判定して、前記隣接するすべての2頂点間で前記signがすべて同一の場合は前記交点は前記凸多角形の内部にあり、前記signに異なるものがある場合は前記交点は前記凸多角形の外部にあるとの判定を行なう第3の交差判定部と
より構成したことを特徴とする図形表示装置。 - 請求項1に記載された図形表示装置において、
前記隠面消去部は、前記交点が境界線上にあると判定された場合に限り、前記距離判定条件設定部より前記凸多角形の交点から視点までの距離に一定値を加算する指示が供給され、前記隠面消去部において、それまでに処理した凸多角形における距離とで大小の比較を行ない、より距離の短い前記凸多角形の交点を選択することを特徴とする図形表示装置。 - 同一平面上に頂点P1、P2、・・・、Pnを有する凸多角形(n>2の整数)と同じ平面上に存在する視線との交点Qが、前記凸多角形の内部に存在するか、前記凸多角形の境界に存在するか、または前記凸多角形の外部に存在するかの判定を行なう領域内外判定を、交点距離検出部と、交点座標算出部と、交差判定部と、隠面消去部と、距離判定条件設定部とを有する図形表示装置に図形表示を行わせる図形表示方法において、
前記交差判定部において、
前記交点座標算出部から前記凸多角形の各頂点と前記交点とを結んで形成される各頂点ベクトルが順次供給され、隣接する2頂点間のベクトルの外積がゼロかどうかの判定を行なう第1の交差判定ステップと、
前記第1の交差判定ステップの外積がゼロであるとの出力情報と前記頂点ベクトルとが供給され、前記隣接する2頂点間の外積がゼロであるベクトルにおける内積がゼロより大の場合は前記交点は前記凸多角形の外部にあり、前記内積がゼロより小の場合は前記交点は前記凸多角形の2頂点間の境界線上にあるとの判定を行なう第2の交差判定ステップと、
前記第1の交差判定ステップの外積が前記凸多角形においてすべてゼロでないとの出力情報と前記交点座標算出ステップよりの凸多角形の法線ベクトルとが供給され、前記2頂点間のベクトルの外積と前記凸多角形の法線ベクトルとの間の内積がゼロより大の場合はsign=1とし、ゼロより小の場合はsign=−1と判定して、前記隣接するすべての2頂点間で前記signがすべて同一の場合は前記交点は前記凸多角形の内部にあり、前記signに異なるものがある場合は前記交点は前記凸多角形の外部にあるとの判定を行なう第3の交差判定ステップと
を有して図形表示を行わせるようにしたことを特徴とする図形表示方法。 - 請求項3に記載された図形表示方法において、
前記隠面消去部における隠面消去ステップは、前記交点が境界線上にあると判定された場合に限り、前記距離判定条件設定部における距離判定条件設定ステップより前記凸多角形の交点から視点までの距離に一定値を加算する指示が供給され、前記隠面消去ステップにおいて、それまでに処理した凸多角形における距離とで大小の比較を行ない、より距離の短い前記凸多角形の交点を選択することを特徴とする図形表示方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33259199A JP3703073B2 (ja) | 1999-11-24 | 1999-11-24 | 図形表示装置及びその方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP33259199A JP3703073B2 (ja) | 1999-11-24 | 1999-11-24 | 図形表示装置及びその方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2001148028A JP2001148028A (ja) | 2001-05-29 |
JP3703073B2 true JP3703073B2 (ja) | 2005-10-05 |
Family
ID=18256661
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP33259199A Expired - Fee Related JP3703073B2 (ja) | 1999-11-24 | 1999-11-24 | 図形表示装置及びその方法 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3703073B2 (ja) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7884819B2 (en) * | 2006-09-27 | 2011-02-08 | International Business Machines Corporation | Pixel color accumulation in a ray tracing image processing system |
KR102159262B1 (ko) * | 2014-03-14 | 2020-09-23 | 삼성전자 주식회사 | 레이 트레이싱에서의 오류 교차점 제거 방법 및 장치 |
US9607425B2 (en) * | 2014-10-17 | 2017-03-28 | Qualcomm Incorporated | Ray-box intersection testing using dot product-based fixed function logic |
JP6712453B2 (ja) * | 2015-10-16 | 2020-06-24 | 富士フイルム株式会社 | 拡張現実提供システム及び方法、情報処理装置、並びにプログラム |
JP6770040B2 (ja) * | 2018-10-23 | 2020-10-14 | ファナック株式会社 | タッチパネル装置、タッチパネル装置の制御方法、プログラムおよびプログラムを記憶する記憶媒体 |
CN111599018A (zh) * | 2019-02-21 | 2020-08-28 | 浙江宇视科技有限公司 | 一种目标追踪方法、系统及电子设备和存储介质 |
GB2607350B (en) * | 2021-06-04 | 2023-12-13 | Advanced Risc Mach Ltd | Graphics processing |
-
1999
- 1999-11-24 JP JP33259199A patent/JP3703073B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2001148028A (ja) | 2001-05-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
RU2679964C1 (ru) | Визуализация изображений по данным лазерного сканирования | |
US8059119B2 (en) | Method for detecting border tiles or border pixels of a primitive for tile-based rendering | |
JP3840014B2 (ja) | グラフィックス表示システムの走査変換実施装置 | |
US10593096B2 (en) | Graphics processing employing cube map texturing | |
CN114581589A (zh) | 图像处理方法及相关装置 | |
JP5624457B2 (ja) | 三次元データ処理装置、方法及びプログラム | |
JP2000504453A (ja) | コンピュータグラフィックス画像を発生する方法および装置 | |
KR100723422B1 (ko) | 포인트 기반 렌더링 장치와 방법 및 컴퓨터 프로그램을 저장한 컴퓨터로 읽을 수 있는 기록매체 | |
JP3703073B2 (ja) | 図形表示装置及びその方法 | |
US6356264B1 (en) | Image processing device and image processing method | |
US6741248B2 (en) | Rendering geometric features of scenes and models by individual polygons | |
KR100453529B1 (ko) | 제트 좌표값에 의거하여 알파값을 제어하는 3차원그래픽스 묘화장치 및 그 방법 | |
US20050231533A1 (en) | Apparatus and method for performing divide by w operations in a graphics system | |
CN114445579A (zh) | 物体标注信息呈现方法、装置、电子设备及存储介质 | |
JPH05128274A (ja) | 図形表示装置 | |
JP5321385B2 (ja) | 画像処理プログラムおよびコンピュータ読み取り可能な記録媒体 | |
US20110074777A1 (en) | Method For Displaying Intersections And Expansions of Three Dimensional Volumes | |
JP4714919B2 (ja) | レンダリング装置及び記録媒体並びにプログラム | |
JP7455546B2 (ja) | 画像処理装置、画像処理方法、及びプログラム | |
JP2952585B1 (ja) | 画像生成方法 | |
KR20010114046A (ko) | 지.에프-버퍼를 이용하여 광선추적법의 속도를 개선하는방법 | |
JP2006113909A (ja) | 画像処理装置、画像処理方法及び画像処理プログラム | |
JPH06215133A (ja) | データ処理装置および方法 | |
JPH0729034A (ja) | 影付け処理装置および画像生成装置 | |
CN117237472A (zh) | 地图渲染方法、装置、电子设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20050323 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20050405 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050603 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20050701 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20050714 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080729 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090729 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090729 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100729 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110729 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120729 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120729 Year of fee payment: 7 |
|
S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313111 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120729 Year of fee payment: 7 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120729 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130729 Year of fee payment: 8 |
|
LAPS | Cancellation because of no payment of annual fees |