JP4425734B2 - 隠線を消去したベクトルイメージを提供する方法 - Google Patents

隠線を消去したベクトルイメージを提供する方法 Download PDF

Info

Publication number
JP4425734B2
JP4425734B2 JP2004214868A JP2004214868A JP4425734B2 JP 4425734 B2 JP4425734 B2 JP 4425734B2 JP 2004214868 A JP2004214868 A JP 2004214868A JP 2004214868 A JP2004214868 A JP 2004214868A JP 4425734 B2 JP4425734 B2 JP 4425734B2
Authority
JP
Japan
Prior art keywords
line
bitmap image
image
modeled object
pixels
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.)
Active
Application number
JP2004214868A
Other languages
English (en)
Other versions
JP2005050336A (ja
Inventor
アンドレ ブロ
アラン デルグリーズ
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.)
Dassault Systemes SE
Original Assignee
Dassault Systemes SE
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 Dassault Systemes SE filed Critical Dassault Systemes SE
Publication of JP2005050336A publication Critical patent/JP2005050336A/ja
Application granted granted Critical
Publication of JP4425734B2 publication Critical patent/JP4425734B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/40Hidden part removal

Description

本発明は、コンピュータプログラム/システムの分野に関し、より詳細には、部品設計プログラム/システムに関する。
出願人によってCATIA(登録商標)という商標で提供されているものなど、部品または部品のアセンブリを設計するためのいくつかのシステムおよびプログラムが市場で提供されている。こうしたいわゆるコンピュータ支援設計(CAD)システムにより、ユーザが、部品または部品のアセンブリの複雑な3次元(3D)モデルを構築し、操作することが可能となる。いくつかの異なるモデリング技法を使用して、アセンブリのモデルを作成することができる。こうした技法には、ソリッドモデリング、ワイヤフレームモデリング、およびサーフェスモデリングが含まれる。ソリッドモデリング技法は起伏3Dモデルを提供する。3Dモデルは、例えば相互接続されたエッジとフェイス(faces)の集合である。幾何学的には、3Dソリッドモデルは、閉じたスキンを画定するトリミングまたはリリミット(relimit)したサーフェス(surfaces)の集合である。トリミングしたサーフェスは、エッジによって境界を画定された起伏面に対応する。閉じたスキンは、部品の材料で満たされた3D空間の有界領域を画定する。一方、ワイヤフレームモデリング技法は、モデルを単純な3D線の集合として表現するのに使用することができるが、サーフェスモデリングは、モデルを外面の集合として表現するのに使用することができる。CADシステムは、上記のモデリング技法、並びにパラメトリックモデリング技法などのその他のモデリング技法を組み合わせることができる。したがってCADシステムは、エッジまたは線を、ある場合にはフェースと共に使用して、モデリングされるオブジェクトの表現を提供する。線またはエッジは、様々な方式、例えばNURBS(non-uniform rational B-spline)で表現することができる。
CADシステムのユーザが通常必要とする一機能は、例えば図面などを生成するために、モデリングしたオブジェクトのイメージを生成できることである。このようなイメージでは、モデリングしたオブジェクトが、モデリングしたオブジェクトのエッジおよびシルエットに一般に対応する1組の線で表される。シルエットは、以下で説明するように仮想的な線である。隠線を消去すること、すなわち現実のオブジェクトを閲覧した場合にユーザには見えないオブジェクトの線の表現を、イメージから消去することが役立つことがある。この機能、並びにCADシステムの要素の定義を、図1〜3を参照して例示する。
図1に、平行六面体基部2と、基部の上面のシリンダ4から形成されるオブジェクトのワイヤフレーム表示(a wire frame view)を示す。基部2は6つのフェースから形成され、各フェースは、無限平面であるサーフェスのリリミテーション(relimitation)である。シリンダは、3つのフェースを有するように見え、上と下は円板である。円板は、無限平面のリリミテーションである。シリンダの側面は円筒形の壁である。円筒形の壁は、管を形成する無限サーフェスのリリミテーションである。このサーフェスは、2つの円で境界を画定され、またはリリミットされる。テセレーション(tessellation)表現では、オブジェクトは1組のファセットによって表される。ファセットは多角形、通常は三角形である。提案される実施例では、基部の側面および下面は、それぞれ2つの三角形で表すことができる。基部2の上面、シリンダ4の下側円板の外側、シリンダの側面および上面は、より多数のフェースで表すことができる。「エッジ(edge)」という語はフェースの起伏境界を指し、「ワイヤ(wire)」という語はモノパラメトリック要素を指す。「シルエット(silhouette)」(またはアウトライン)という語は、以下で例示するように、仮想モノパラメトリック要素である。この説明の以下の部分では、「線(line)」という語は、エッジ、ワイヤ、シルエット、またはその他の任意のモノパラメトリック曲線を包含する。
図1の例では、基部2のエッジ並びにシリンダ4のエッジを表す線が表されている。図1には、シリンダの境界を表す2つの垂直線6および8がさらに示されている。これらの線は、実際にはモデリングしたオブジェクトのエッジではないが、それでもなおイメージ上に現れる。これらの線は、実際には表示に依存するので、仮想線すなわちシルエットである。図1のワイヤフレーム表示では、モデリングしたオブジェクトのすべての線が表されている。こうした線には、通常は隠されるはずであるエッジまたはエッジの一部が含まれる。
図2に、図1のモデリングしたオブジェクトの、隠線を消去した表示を示す。図2では、単にこうした隠線が表示されない。例えば基部2の線10は、その中央付近で、シリンダ4によって閲覧者から隠される部分で中断される。点14および16は、線10と垂直線6および8との交差を示す。線10は、点14と16の間で隠される。図2の線12は、基部4の正面の下端の線であるので、完全に可視である。
図3に、図1のモデリングしたオブジェクトの、隠線を消去した表示を示す。図3では、こうした隠線が破線で表されている。例えば、基部2の線10は、その中央付近で破線として表される。製図者にとっては、図2と図3は共に、隠線を消去した表示を示す。隠線用にその他の図形表現、例えば異なる色などを選択することもできる。本明細書での隠線消去は、関連する表示上で線またはエッジが隠され、または可視となることに従って線またはエッジの表現が変化する場合のすべての実施例を包含する。図1の表現は透視図であるが、平面図や側面図などのその他のタイプの表示に関して、隠線の消去について同一の問題が生じる。
モデリングしたオブジェクトのイメージは、様々なタイプのものでよい。イメージをエンドユーザに対してコンピュータ画面上に表示する目的で、特にビットマップイメージが使用される。コンピュータ画面は2次元行列のピクセルであり、ビットマップイメージは2次元行列の値である。これらの値は、白黒ディスプレイについては2進値でよく、または例えばカラーディスプレイについてはより複雑にすることができる。したがってビットマップイメージは、イメージの異なるピクセルについてのカラー値を表す1組の値である。ベクトルイメージは、単にピクセル要素から形成されるのではなく、直線または曲線から形成される。ベクトルイメージは、トレーシングマシンおよび様々なコンピュータソフトウェアプログラムにとって特に有用である。したがって、ベクトルイメージは一連の線によって表される。例えば、図1の表示のビットマップイメージは、様々な線を表すためのいくつかのピクセルを含む。図1の表示のベクトルイメージは、14個の直線と2つの円を含む。あるいは、円は、いくつかの水平な弧として定義することもできる。ベクトルイメージで使用される線の表現のタイプは、イメージフォーマットに従って変化する可能性があることを当業者は理解するであろう。
隠線を消去する解決策が知られている。「ペインタアルゴリズム(painter algorithm)」と呼ばれる一アルゴリズムは、開始時の基礎として、モデリングしたオブジェクトのテセレーション表現、すなわちモデリングしたオブジェクトの1組のエッジおよびファセットとしての表現を使用する。このアルゴリズムは、イメージ内に各エッジおよびファセットを次々に描画するものである。エッジまたはファセットのピクセルを描画するとき、アルゴリズムは、このピクセルがイメージ上にすでに描画されたピクセルの前面に現れるか、それとも背面に現れるかをチェックする。後者の場合は、このピクセルを描画せず、前者の場合は、このピクセルがイメージ内の既存のピクセルに取って代わる。このアルゴリズムにより、イメージ上に描画されたピクセルごとに、表示内のピクセルのデプス(depth)を表すデプス値を格納することが必要となる。このアルゴリズムは、モデリングしたオブジェクトの、隠線を消去したビットマップイメージを提供する。このアルゴリズムの副産物は、イメージの描画されるピクセルごとに表示内のそのデプスを表す値が格納されたデプスイメージである。このアルゴリズムは開示されている(例えば、非特許文献1参照。)。このアルゴリズムは迅速に応答するが、ピクセルイメージを提供するようにしか適合されない。
CATIA(登録商標)という商標で販売される設計システムでは、モデリングしたオブジェクトのベクトルイメージを提供するプログラムが提供される。このプログラムは、モデリングしたオブジェクトの表現内のエッジごとに、このエッジはモデリングしたオブジェクトの別のエッジまたはファセットによって隠されるか否かを判定することによって動作する。このプログラムは申し分のないものであるが、複雑なイメージの場合、設計システムのユーザが十分知覚できるほどのかなりのコンピューティング時間を必要とすることがある。
イメージから隠線を消去するための解決策は、「シェーディング(shading)」という語で知られている。特定のタイプのシェーディングは、「動的隠線リムーバ(dynamic hidden line remover)」である。シェーディングは開示されている(例えば、非特許文献1のpp.584以降を参照。)。動的隠線リムーバはCATIA(登録商標) V5(登録商標)で使用されている。この最後の解決策は、モデリングしたオブジェクトのテセレーション表現内のファセットの色を変更するものである。ファセットの色は背景色に変更される。修正後のテセレーションオブジェクトがグラフィックカードに印加される。この結果、隠線付きのビットマップイメージが得られる。実際、ファセットは背景と同じ色を有するので、ファセットはユーザに見えない。しかし、実際にはファセットはグラフィックカードで描かれ、その結果、背後のエッジが隠されたように見える。この解決策は、例えばモデリングしたオブジェクトのイメージを画面上に表示するには申し分のないものであるが、この解決策はビットマップイメージしか提供しない。
OpenGL Programming Guide, Third Edition, Addison Wesley
したがって、モデリングしたオブジェクトの、隠線を消去したベクトルイメージを提供する解決策が求められている。この解決策は、容易に実装され、モデリングした大きなオブジェクトの場合であっても過度のCPU時間またはメモリスペースを必要としないことが好ましい。
本発明によれば、モデリングしたオブジェクトの隠線を消去した表示のベクトルイメージを提供するコンピュータで実施される方法であって、モデリングしたオブジェクトの隠線を消去した表示のビットマップイメージを提供するステップと、ベクトルイメージの線について、表示内の線のラスタを提供するステップと、ラスタのピクセルをビットマップイメージのピクセルと比較するステップと、比較結果に従って、線の可視部分を判定するステップとを含む。
好ましい実施形態では、ビットマップイメージを提供するステップは、ハードウェアロジックでビットマップイメージを計算するステップを含み、例えばビットマップイメージがグラフィックカードで計算される。
好ましくは、モデリングしたオブジェクトは、エッジおよびフェイスを有するテセレーション表現で提供され、線は、テセレーション表現のエッジおよびシルエットを含む。
別の好ましい実施形態では、モデリングしたオブジェクトの線に印が付けられ、ビットマップイメージを提供するステップは、ビットマップイメージ中のピクセルに印を付けることをさらに含む。有利には、異なる線が異なるシグニチャを備える。
好ましくは、本発明の方法は、所与のシグニチャを有する線について、ビットマップイメージがその所与のシグニチャを有するピクセルを含むか否かを探索するステップと、ビットマップイメージが所与のシグニチャを有するピクセルを含まない場合、線はベクトルイメージ内で可視ではないと判定するステップとをさらに含む。
好ましい実施形態では、比較するステップは、線のシグニチャをビットマップイメージのピクセルのシグニチャと比較することを含み、モデリングしたオブジェクトの線がカラーサインされる。
別の好ましい実施形態では、モデリングしたオブジェクトが、エッジおよびファセットと共にテセレーション表現で提供され、判定するステップは、線を隠すファセットを見つけること、および、ファセットと線との交差を計算することを含む。
別の解決策では、モデリングしたオブジェクトが、エッジおよびファセットと共にテセレーション表現で提供され、判定するステップは、線を隠すファセットを見つけること、および、線とファセットに関係するフェースとの交差を計算することを含む。
本発明はまた、モデリングしたオブジェクトの隠線を消去した表示のベクトルイメージを提供するプログラムであって、モデリングしたオブジェクトの隠線を消去した表示のビットマップイメージを受け取るルーチンと、その表示でのモデリングしたオブジェクトの線のラスタを提供するルーチンと、線のラスタのピクセルを、ビットマップイメージのピクセルと比較するルーチンと、比較ルーチンによって提供される結果に従って、線の可視部分を判定するルーチンとを含むプログラムを提供する。
上記プログラムが、エッジおよびファセットと共に、モデリングしたオブジェクトのテセレーション表現を受け取るように適合されることが好ましい。
好ましい実施形態では、上記プログラムが、印が付けられた線(signed lines)と、印が付けられたピクセル(signed pixels)を有するビットマップイメージと共に、モデリングしたオブジェクトを受け取るように適合される。
上記プログラムは、ビットマップイメージがモデリングしたオブジェクトの線のシグニチャを有するピクセルを含むか否かを探索するルーチンをさらに含む。
有利には、上記プログラムが、カラーサインされた線(colour-signed lines)と、カラーサインされたピクセル(colour-signed pixels)を有するビットマップイメージと共に、モデリングしたオブジェクトを受け取るように適合される。
好ましい実施形態では、上記プログラムが、エッジおよびファセットと共に、テセレーション表現で、モデリングしたオブジェクトを受け取るように適合され、判定ルーチンが、線を隠すファセットを見つけ、かつ、ファセットと線との交差を計算するように適合される。
別の好ましい実施形態では、上記プログラムが、エッジおよびファセットと共に、テセレーション表現で、モデリングしたオブジェクトを受け取るように適合され、判定ルーチンが、線を隠すファセットを見つけ、かつ、線とファセットによって表されるフェースとの交差を計算するように適合される。
これから、非限定的な実施例により、添付の図面を参照しながら、本発明を実施するコンピュータ支援設計システムを説明する。
本発明は、モデリングしたオブジェクトの、隠線を消去したビットマップイメージを提供するのに、コンピュータグラフィックカードで実施されるものなどの既存の解決策を活用する。モデリングしたオブジェクトの表示のベクトルイメージを提供するために、本発明は、モデリングしたオブジェクトの表示のビットマップイメージを使用し、隠線がイメージ上から消去される。
モデリングしたオブジェクトの所与の線−オブジェクトのテセレーション表現の実施例におけるエッジ−について、本発明は、同一の表示で線のラスタを描画することを提案する。ラスタは、実際には表示中の線のピクセル表現である。ラスタを提供することは、線だけからなるモデリングしたオブジェクトの表示のビットマップイメージを提供することに等しい。次いで、ラスタ中のピクセルと、ビットマップイメージ中の対応するピクセルを比較することができる。ラスタのピクセルがビットマップイメージ中に含まれない場合、線の対応する部分が隠され、ベクトルイメージ中に現れるべきでないことを意味する。したがって、この比較により、ベクトルイメージ中で隠されるべき線の部分、あるいはベクトルイメージ中で隠されるべき線の部分を判定することが可能となる。
最も単純な実施形態では、ベクトルイメージ中のすべての線についてこのプロセスを反復することができる。このプロセスを加速するための解決策を以下で論じる。
本発明により、以下の利点が得られる。まず、本発明は、モデリングしたオブジェクト中の線の数の線形関数である複雑さを有する。このことを、上記で論じた従来技術のプログラムと比較すべきである。従来技術のプログラムでは、各線を、モデリングしたオブジェクト中のすべての他の線およびファセットと比較しなければならないので、複雑さが線の数の二次関数となる。
第2に、本発明により、ビットマップイメージおよびラスタの粒度(granularity)を単に変更することによって解像度を適合させることが可能となる。解像度の選択は、全イメージについて同一の解像度であるグローバルなものでよい。同一のイメージに対して異なる解像度を使用することもできる。したがって、粗い解像度を用いて、モデリングしたオブジェクトの粗いベクトルイメージを非常に迅速に提供することができる。
第3に、以下で論じるように、ビットマップイメージ中のピクセルサイズよりもさらに小さくなるように解像度を向上させることができる。
第4に、本発明は堅牢である。ビットマップイメージが誤っていないという仮定の下、ベクトルイメージ中の線に関する誤差の上限は、ビットマップイメージ中のピクセルサイズである。これは、本発明に従って提供されるベクトルは、ビットマップイメージと同じほど信頼性が高いことを意味する。ビットマップイメージが誤っていないと仮定することは妥当なことである。したがって、ベクトルイメージは、隠すべきであった実線などのあからさまな誤差を含まない。
本発明の他の利点を以下の説明で論じる。上述のように、「線(line)」という語は、どんなタイプのエッジ、ワイヤ、曲線、シルエット、またはモノパラメトリック要素も含む。したがって、「線」という語は、幾何学の分野の直線という伝統的名称を拡張するものである。
説明のために、モデリングしたオブジェクトのテセレーション表現の実施例で本発明を説明する。すなわち、モデリングしたオブジェクトは、それぞれEおよびFで表される1組のエッジおよびファセットによって表される。添字iおよびjは整数である。設計システムの当業者は、モデリングしたオブジェクトのその他の表現に本発明を適用できることを理解するであろう。
図4は、本発明の一実施形態におけるプロセスのフローチャートである。
ステップ20では、モデリングしたオブジェクトのテセレーション表現を与える。このような表現を与える方法は、当業者にとって周知であるので、ここでは論じない。
ステップ22では、モデリングしたオブジェクトの、隠線を消去したビットマップイメージを与える。このステップでは、ソフトウェアまたはハードウェアの解決策、あるいはそれらの組合せを使用することができる。例示的ハードウェア解決策は、グラフィックカードを使用して、モデリングしたオブジェクトをグラフィックカードに印加するものである。この解決策は、グラフィックカードを備えたどんなコンピュータでも使用可能であるという利点を有する。加えて、この解決策により、ステップが確実に、迅速に実施される。ビットマップイメージは、モニタ上に表示するために使用されるものでよい。ビットマップイメージは、表示することを意図しない任意のサイズの仮想イメージでもよい。イメージは、メモリに格納し、またはオンザフライで生成することができる。
このハードウェア解決策が現在のところ好ましいとしても、必要なビットマップイメージを与える限り、その他の解決策も使用することができる。このステップでは、ビットマップイメージは、図1の正透視図など、所与の表示でのモデリングしたオブジェクトのイメージであることを理解されたい。
ステップ24では、最初のエッジを選択する。ここで論じる本発明の最も単純な実施形態では、モデリングしたオブジェクトのテセレーション表現における最初のエッジEを単に選択することができる。以下で論じるように、モデリングしたオブジェクトのエッジのサブセットを考慮することで十分であり、エッジの線形スキャンも、このプロセスを実施するための要件ではない。
ステップ26では、選択したエッジのラスタが提供される。上記で論じたように、ラスタは、ビットマップイメージに対して選択した表示に対応するエッジのピクセル表現である。例えば、表示が所与の縮尺の正透視図である場合、同一の縮尺の同一の正透視図でエッジのラスタを与える。このことは、エッジがビットマップイメージに隠されない場合、ラスタがビットマップイメージ中のエッジの表現に重なることになるという効果を有する。図2の実施例では、エッジ12のラスタがビットマップイメージ中のエッジ12のピクセルと重なることになる。エッジ10のラスタは、ビットマップイメージのピクセルと重なるが、ビットマップイメージのエッジの可視部分だけである。
ラスタを提供するのにいくつかの解決策が存在する。単に、必要な表示でエッジを描画するソフトウェアアルゴリズムを使用し、次いで描画したエッジをピクセルに分離することができる。エッジが実際には単一のエッジから形成されるテセレーションオブジェクトであることを考慮することもできる。このオブジェクトのビットマップイメージは、エッジのラスタを提供する。このようなビットマップイメージは、ステップ22を参照しながら論じたどの解決策でも得ることができる。
最も単純な実施形態では、ラスタ中のピクセルサイズはビットマップイメージ中のピクセルサイズと同一である。これにより、以下で論じる比較ステップが単純化され、ベクトルイメージで得られる解像度が最適化される。しかし、ラスタ中のピクセルサイズは、必ずしもビットマップイメージ中のピクセルサイズと同一ではない。例えば、選択したエッジは、隠線を消去したベクトルイメージでは高解像度を必要としない可能性がある。この場合、ラスタ中の解像度−ピクセルサイズ−がビットマップイメージ中のピクセルサイズよりも高いと判断することができる。
ステップ26の終りに、隠線を消去したエッジのラスタおよびビットマップイメージが得られる。次いで、ステップ28〜36で論じるように、ラスタのピクセルをイメージのピクセルと比較し、エッジのどの部分をベクトルイメージで可視とすべきかを判定することができる。図2のエッジ10および12の実施例では、この比較により以下の結果が得られる。エッジ12については、ラスタ中の全ピクセルに対応するピクセルがビットマップイメージ中に存在する。これは、エッジ12がモデリングしたオブジェクトのベクトルイメージで完全に可視となるべきであることを意味する。エッジ10については、ラスタの中心付近のピクセルに対応するピクセルがビットマップイメージ中に存在しない。これは、中心付近のエッジ10の一部が可視となるべきでないことを意味する。
ステップ28では、ラスタ中の最初のピクセル、例えばエッジの一端に対応するピクセルを考慮する。ステップ30では、選択したピクセルについて、対応するピクセルが存在するか否かについてビットマップイメージ内を探索する。ラスタ中のピクセルサイズとビットマップイメージ中のピクセルサイズが同一である最も単純な実施形態では、これは、エッジからのピクセルがラスタ中のピクセルの位置で描画されるか否かについてビットマップイメージ内を探索するものである。対応するピクセルが存在しない場合、プロセスはステップ32に進み、ベクトルイメージ中で隠す必要があるエッジの一部に対応するラスタピクセルを求める。対応するピクセルが存在する場合、プロセスはステップ34に進み、ベクトルイメージ中で可視となるべきエッジの一部に対応するラスタピクセルを求める。ピクセルサイズがビットマップイメージとラスタとで異なる場合、それに応じてステップ30を適合させる。
ステップ32または34の後、プロセスはステップ36に進み、次のラスタピクセルを見つけるテストを実施する。次のラスタピクセルが存在する場合、プロセス30は、この次ピクセルについて30に進む。存在しない場合、エッジのラスタを完全にスキャンしたことになり、プロセスはステップ38に進む。
ステップ38では、選択したエッジのラスタのピクセルについて比較が終了する。次いで、比較結果に基づいて、選択したエッジのどの部分がベクトルイメージで可視となるべきかを判定することができる。したがって、一解決策は、ラスタに沿って遷移を探索すること、すなわち、ステップ30の比較で変化があったラスタのピクセルを探索することである。こうしたピクセルのエッジ上の位置は、エッジの可視部分または隠れる部分の端部を決定する。図2の実施例では、図4のステップ30および34で、基部4のエッジ12が、下にあるビットマップピクセルと共にピクセルから構成される。これにより、エッジ12がベクトルイメージで完全に可視となるべきであるという結論が得られる。図2のエッジ10の左端から開始して、ピクセルはまず、点14に対応するピクセルまで可視となる。このときに遷移があり、すなわち次のピクセルが不可視となる。点16で第2の遷移があり、ピクセルが再び図2のエッジ10の右端まで可視となる。
遷移ピクセルを知ると、ラスタを与える操作と逆の操作により、エッジ上の対応する点を見つけることができる。ラスタのピクセルとエッジの間の対応表を使用することもできる。したがって、ステップ28〜36での比較結果に基づいて、エッジの可視部分を求めることができる。
ステップ40では、考慮すべき残りのエッジが存在するか否かをチェックする。その答えが肯定的である場合、プロセスはステップ26に進む。そうでない場合は、ステップ42で、エッジの可視部分と共にベクトルイメージを描画する。ステップ40の前にステップ42に進み、エッジごとにイメージを描画することもできる。これにより、隠線を消去したイメージを格納する必要が回避される。
1ピクセル未満のオブジェクトは、イメージ中で無視することができる。別法として、または組合せとして、ステップ30または32で、ピクセルが見つからなかった場合、周囲のピクセルを探索することができる。OpenGL規格を使用する場合、この規格で1ピクセルの誤差が許容されるので、これは特に有用である。
本発明の利点は、図4の説明から明らかとなる。複雑さについては、各エッジが1度スキャンされ、ビットマップイメージと比較されるが、その他のあらゆるファセットまたはエッジとは比較されない。上記で論じたように解像度を適合させることができ、最大解像度を求めるためにビットマップイメージの粒度を変更することができる。例えば高解像度が不要であるイメージエリアで、ラスタについて異なる粒度を使用することもできる。
図4は本発明の一例に過ぎない。上記で論じたように、すべてのエッジの線形スキャンに進む必要はない。エッジを処理する順序は、得られる表示に影響を及ぼさない。上記で例示したように、エッジの一部をスキップすることもできる。同様に、比較ステップ28〜36で、一端から他端までエッジをスキャンする。いくつかのピクセルの平行比較に進むことができる。エッジ上に分布するピクセルのサブセットだけをまずスキャンし、次いでより細かいステップで遷移を捜すこともできる。採用される解決策は、必要な解像度に依存する。複雑な解決策をより高速にすることができる。図4のプロセスでは、ステップ30でのテストは、ビットマップイメージ中にピクセルが存在するか否かだけをテストする。このテストは、白黒ビットマップイメージであっても実施することができる。
次に、本発明の他の実施形態を論じる。こうした実施形態の1つまたは複数は、図4のプロセスと組み合わせることができる。
図1のシルエット6および8のようなシルエットをエッジに加えることができる。こうしたシルエットは、その位置が選択する表示に依存するので、モデリングしたオブジェクトのテセレーション表現中のエッジまたは線ではない。それでもなお、こうしたシルエットは、隠される部分を探索するためにエッジとして処理することができる。したがって、オブジェクトのテセレーション表現を与えるステップ20は、シルエットの計算を含むことがある。したがって、様々な実施形態の説明における「エッジ」という語は、モデリングしたオブジェクトの実際のエッジだけでなく、シルエットも包含することがある。
別の実施形態では、エッジに印が付けられる。言い換えれば、ビットマップイメージ中のエッジを区別する手段が提供される。まずエッジに印を付けることにより、図面中の重なるエッジ間を区別することが可能となる。図2の実施例では、モデリングしたオブジェクトの正面図で線18と10が重なる。エッジに印を付けることにより、線18についてステップ28〜36を実行するときに、正面図のビットマップイメージ中のピクセルが線18を表し、下にある線10を表すのではないと判定することが可能となる。ステップ28〜36を実行するとき、線のラスタに対応する正面図のビットマップイメージ中の一部のピクセルが存在する場合であっても、線が完全に隠されることが確認される。したがって、線18はベクトルイメージ中に描画されるが、線10は描画されない。ベクトルイメージはより正確であり、重なった線は描画されない。別の実施例は、線間の交差である。図2では、線10が線6および線8と交差する。線6および8は線10の前にあるので、交点は実際にはそれぞれ線6および8の点である。エッジに印を付けることにより、交点を線10にではなく、線6または8に描画すべきであると判定することが可能となる。
加えて、エッジに印を付けることにより、プロセスを高速化することができる。エッジに印を付けた場合、ビットマップイメージ中に存在するシグニチャの表を提供することができる。モデリングしたオブジェクトのエッジを考慮するとき、エッジのシグニチャがビットマップイメージ中に全く存在しない場合、比較ステップを実施する必要はない。これにより、ビットマップイメージ中に全く現れない線をスキャンすることを回避することが可能となる。図4のプロセスでは、エッジをラスタリングするステップ26の前にテストステップを加えることができる。このステップでは、選択したエッジのシグニチャがビットマップイメージ中に現れるか否かを判定する。シグニチャが現れない場合、プロセスは直接ステップ36にジャンプする。シグニチャが現れる場合、図4を参照しながら論じたようにステップ26以下を実施することができる。
エッジに印を付けるにはいくつかの解決策がある。一解決策は、各色を様々なエッジに割り当てるものである。モデリングしたオブジェクトまたはその表現中のエッジにすでに付与された色が存在する可能性がある。エッジに対して様々な色を割り当てることもできる。エッジ数がグラフィックカードで使用可能な色の数よりも少ないことを条件として、この解決策により、モデリングしたオブジェクトのテセレーション表現中のすべてのエッジに対して異なる色を割り当てることが可能となるという点で、この解決策は特に有利である。色の数はしばしば2百万よりも多く、したがって色は効率的なシグニチャを提供する。このシグニチャはまた、ほとんどの設計システムおよびグラフィックカードで色が処理され、したがってシグニチャ用に追加のツールを提供する必要がないという利点も有する。この場合、割り当てた色を変更する可能性のある、アンチエイリアシングなどのグラフィックカードの機能を動作不能にすることができる。
別の解決策は、一部のグラフィックカードで提供される索引を使用するものである。こうしたカードにより、オブジェクトを索引付けすることが可能となる。したがって、索引はエッジに印を付けるための解決策である。
さらに別の解決策は、デプス情報を使用するものである。上記で論じたように、一部のグラフィックカードで提供されるデプスは、このプロセスの副産物である。ラスタが所与のエッジに対して提供されるとき、ラスタ中の様々なピクセルのデプスを計算することができる。デプスの比較により、重なったエッジ間を区別することが可能となる。図1のオブジェクトの正面図の実施例では、線18と10が重なるが、線18が線10の前にある。したがって、線10のラスタのピクセルを考慮するとき、比較ステップ30は、ビットマップイメージ中に対応するピクセルが存在することを示す。しかし、ビットマップイメージのピクセル(実際には、線18の一部を表す)は、線10のラスタのピクセルと同一のデプスではない。デプスをシグニチャとして使用するこの実施例は、各エッジのシグニチャが一意でない場合であっても、エッジに印を付けることが有利であることを示している。
上記で与えた実施例では、各エッジまたは線のシグニチャは単一のパラメータである。シグニチャは、1組のパラメータから形成することができる。例えば、色cおよびデプスdから形成される対(c,d)をシグニチャとして使用することができる。色およびデプスが各エッジについて一意ではない場合、複合シグニチャ(c,d)により、あるエッジが別のエッジと区別される可能性がより高い。エッジを区別するために位置情報を使用することもできる。表示は、様々な部分、例えば4つの同一の部分に分離される。これにより、4つの部分の実施例では4つの値を有する、エッジの位置を表すパラメータが提供される。このパラメータは、エッジを識別するため、またはエッジ間を区別するために、図4のプロセスで使用することができる。
したがって、エッジに印を付けることにより、プロセスを高速化することができ、かつ/または、表示で線またはエッジが重なる場合に、得られるベクトルイメージの精度を改善することができる。
図4のプロセスは、線の交差に関してより正確にすることができる。まず、線6、8、および10を参照しながら上記で論じたように、エッジに印を付けることにより、エッジが属する交点を求めることが可能となる。加えて、テセレーション表現のファセットに印が付けられている場合、所与の線を隠すエッジまたはファセットを求めることができる。例えば、図2の実施例では、線10がシリンダ4のサーフェスによって部分的に隠される。このサーフェスのファセットに印が付けられている場合、比較ステップ30〜36で線10に沿って進むとき、テセレーション表現中の最初のファセットを見つけることができる。例えば、ファセットおよびエッジがカラーサインされていると仮定する。図2のこのエッジの左端からエッジ10に沿って進むとき、ビットマップイメージでエッジ10の色を有するピクセルをまず見つけることができる。色がエッジ10の色ではない最初のピクセルは、線10を隠す円筒面のシルエットのシグニチャを提供する。このシルエットを識別し、線10と識別したシルエットとの交差を計算することにより、エッジ10の可視部分の端部を求めることができる。計算した交差はもちろん、図に対する投影の交差である。したがって、ピクセルサイズによって限定されない精度で線の可視部分の端部を求めることができることがわかる。ビットマップイメージは、テセレーション表現のどのエッジまたはファセットが選択したエッジの所与の部分を隠すかを求めるためだけに使用される。この隠すファセットとの交差は、交差を計算するために使用される。このことを、図5で拡大した縮尺で表す。この図は、シリンダ4のエッジ10およびフェース(face)50を概略的に示す。フェース50は、様々な色で描画される様々なファセットから形成される。ファセット52は、線10を隠す最初のファセットである。図4のプロセスでは、線10を左から右にスキャンすると仮定して、最初に、プロセスはステップ32に進み、隠すピクセルがファセット52の色を有する。
可視の線またはエッジをより高い精度で求めることもできる。まず、図5を参照しながら説明したように、隠すファセットを求める。次いで、このファセットに関係するフェースを見つける。次いで、このフェースとエッジとの交差を計算することができる。図2および図5の実施例では、ファセット52が線10を隠している。ファセット52は、シリンダ4のフェースの一部である。これは、エッジ10上の最後の可視点がこのエッジとシリンダのシルエットとの交差であるということを意味する。可視部分の端部を求める精度は、テセレーション表現に依存しない。図2および図5の実施例では、線10が直線であり、その結果、線10と対応するエッジとの間に差がない可能性がある。一連のエッジE〜Eで近似される複雑な線Lの場合、線LのエッジEがファセットFによって隠されることを判定することができ、線LとファセットFとの交点、または線LとファセットFで表されるフェースSとの交差を計算することができる。
本発明のこうした実施形態では、交差がピクセル解像度に依存する可能性が存在する場合であっても、線の可視部分の端部を求める精度はピクセル解像度に依存しない。サーフェスを使用して交差を求める場合、精度は、モデリングしたオブジェクトのテセレーション表現に依存しない。したがって、必要なだけ正確にベクトルイメージを提供することができる。隠線を有するベクトルイメージの精度は、イメージ上で変化する可能性があることに留意されたい。
ビットマップイメージ中のピクセルサイズを選択し、
線のラスタ中のピクセルサイズを選択し、
エッジまたは線とファセットとの交差を計算し、または、
エッジまたは線と下にあるフェースとの交差を計算することにより、イメージのエリアに従って精度を変更することができる。同一のベクトルイメージで、次々に、またはイメージの様々なエリアに対してすべての方法を使用することができる。次々に方法を使用した場合、プロセスは、粗いベクトルイメージを迅速に提供し、次いでイメージの精度を改善することができる。例えば、イメージの一部をズームし、イメージのズームした部分でベクトルイメージのより正確な計算を使用することができる。所与の精度を保証する解決策の使用は、ズーミング因子に依存する可能性がある。したがって、元の画面表示用に粗いベクトルイメージを提供し、ユーザによってズームされたイメージの部分のためにより良好な精度を有するイメージを提供することができる。同一のイメージで方法を使用した場合、イメージ上で精度を変更することができる。選択エリアでの精度を改善するためにフルイメージを再計算する必要はない。様々な部分にイメージを分離し、その様々な部分で解像度または精度を変更することができる。エンドユーザにとって注目のエリアがあらかじめ定められる場合、このことには特に注目できる。
本発明は、当業者にとって周知のプログラミングツールおよび解決策を使用して実装することができる。例えば、CATIA(登録商標) V5(登録商標)アーキテクチャでは、C++をプログラミング言語として使用することができ、ATI(登録商標)またはNVIDIA(登録商標)の商標で販売されているグラフィックカードなど、市販のどんなグラフィックカードも使用することができる。本発明を実施するプログラムは、ビットマップイメージ−例えばグラフィックカードから得られたビットマップイメージ−およびモデリングしたオブジェクトの表現を受け取る。ビットマップイメージに基づいて、図4を参照しながら上記で論じたように、プログラムは、モデリングしたオブジェクトの線をスキャンする。
図6〜12は、従来技術の解決策および本発明のプロセスで得られるモデリングしたオブジェクトの表示である。図6は、CATIA(登録商標)で実装される従来技術の解決策で得られる、隠線を消去した複雑に設計したオブジェクトのベクトルイメージである。図6のベクトルイメージは、2.8GHzで動作するIntel(登録商標) Pentium(登録商標)IV(登録商標)プロセッサ、ランダムアクセスメモリ1Go、およびNVIDIA(登録商標) Quadro2(登録商標)の商標で販売されているグラフィックカードを備えるコンピュータ上でMicrosoft(登録商標) Windows(登録商標)2000(登録商標)オペレーティングシステムによりCATIA(登録商標) V5(登録商標)設計システムが動作するとき、27秒で得られる。この構成は一例であり、本発明のプロセスは、任意のその他の構成で達成することができる。
図7は、本発明に従って得られるベクトルイメージである。このイメージは11秒で得られる。イメージ品質は、従来技術のイメージ品質とほぼ同様である。
図8および図9は、同一のモデリングしたオブジェクトの拡大図である。図8のイメージは、3秒で得られる低品質イメージである。図9のイメージは、理解しやすいように図7をズーミングすることによって得られた拡大図である。図10〜12は、オブジェクトの様々なイメージの間の品質差を例示するものである。図10は、オブジェクトのラスタイメージである。図11は、図4のプロセスを使用して得られたイメージである。図12は、従来技術の解決策によって得られる。これらの図を比較すると、本発明により、従来技術のイメージ品質と同様のイメージ品質を、より迅速に、かつ必要なリソースがより少なくても得ることが可能となることを示している。本発明は詳細な説明で与えた実施例に限定されない。各実施例では、オブジェクトのテセレーション表現を使用した。テセレーション表現は、グラフィックカードに直ちに入力することができる点で有利である。NURBS、サブディビジョンサーフェスなど、モデリングしたオブジェクトの任意のその他のタイプの表現も使用することができる。線という語の広い意味において、こうした表現も線を含むことができる。本発明の様々な実施形態は、同一のイメージ内であっても、組み合わせて使用することができる。
モデリングしたオブジェクトの概略ワイヤフレーム表現である。 図1と類似しているが、隠線を消去した図である。 図1と類似しているが、隠線を消去した図である。 本発明の第1実施形態でのプロセスのフローチャートである。 図2のオブジェクトのビットマップイメージの拡大図である。 従来技術の解決策および本発明のプロセスで得られるモデリングしたオブジェクトの表示である。 従来技術の解決策および本発明のプロセスで得られるモデリングしたオブジェクトの表示である。 従来技術の解決策および本発明のプロセスで得られるモデリングしたオブジェクトの表示である。 従来技術の解決策および本発明のプロセスで得られるモデリングしたオブジェクトの表示である。 従来技術の解決策および本発明のプロセスで得られるモデリングしたオブジェクトの表示である。 従来技術の解決策および本発明のプロセスで得られるモデリングしたオブジェクトの表示である。 従来技術の解決策および本発明のプロセスで得られるモデリングしたオブジェクトの表示である。
符号の説明
2 基部(basis)
4 シリンダ(cylinder)
6,8 垂直線(vertical line)
10,12 線(line)またはエッジ(edge)
14,16 点(point)
50,S フェース(face)
52 ファセット(facet)

Claims (15)

  1. モデリングしたオブジェクトの表示の、隠線を消去したベクトルイメージを生成する、コンピュータで実施される方法であって、
    前記モデリングしたオブジェクトの前記表示の、隠線を消去したビットマップイメージを生成するステップであって、該ビットマップイメージ中のピクセルに印を付けることを含み、前記モデリングしたオブジェクトの線が該ビットマップイメージ中の対応するピクセルと同じ印を有しているステップ(22)、
    前記モデリングしたオブジェクトの、所与の印が付けられた線について、
    該印が付けられたピクセルを前記ビットマップイメージが含むか否かを調べるステップ、
    該印が付けられたピクセルを前記ビットマップイメージが含まない場合、前記ベクトルイメージにおける該印が付けられた線は可視ではないと判定するステップ、及び、
    該印が付けられたピクセルを前記ビットマップイメージが含む場合、
    前記表示内の線のラスタを生成するステップ(26)、
    前記ラスタのピクセルを前記ビットマップイメージのピクセルと比較するステップ(30〜36)、
    該比較結果に従って、前記ベクトルイメージ内の前記線の可視部分を判定するステップ(38)
    を含むことを特徴とする方法。
  2. 前記ビットマップイメージを生成するステップは、ハードウェアロジックでビットマップイメージを計算することを含むことを特徴とする請求項1に記載の方法。
  3. 前記ビットマップイメージを生成するステップは、グラフィックカードでビットマップイメージを計算することを含むことを特徴とする請求項2に記載の方法。
  4. 前記モデリングしたオブジェクトは、エッジおよびフェスを有するテセレーション表現で生成され、前記線は、前記テセレーション表現のエッジを含むことを特徴とする請求項1、2または3に記載の方法。
  5. 前記線はシルエットをさらに含むことを特徴とする請求項1ないし4のいずれかに記載の方法。
  6. 異なる線が異なる印を備えることを特徴とする請求項1ないし5のいずれかに記載の方法。
  7. 前記比較するステップは、前記線の印を前記ビットマップイメージのピクセルの印と比較することを含むことを特徴とする請求項1ないし6のいずれかに記載の方法。
  8. 前記モデリングしたオブジェクトの線の前記印は、色を該線に因らせることに存ることを特徴とする請求項1ないし7のいずれかに記載の方法。
  9. 前記モデリングしたオブジェクトが、エッジおよびファセット(ファセットの集合がフェースである)と共にテセレーション表現で生成され、前記線の可視部分を判定するステップ(38)は、
    前記ステップ(30〜38)の結果として線を隠すファセットを見つけること、および、前記ファセットと前記線との交差を計算することを含むことを特徴とする請求項1ないし8のいずれかに記載の方法。
  10. 前記モデリングしたオブジェクトが、エッジおよびファセット(ファセットの集合がフェースである)と共にテセレーション表現で生成され、前記線の可視部分を判定するステップ(38)は、
    前記ステップ(30〜38)の結果として線を隠すファセットを見つけること、および、線とファセットに関係するフェースとの交差を計算することを含むことを特徴とする請求項1ないし8のいずれかに記載の方法。
  11. モデリングしたオブジェクトの表示の、隠線を消去したベクトルイメージをコンピュータにより生成するためのプログラムであって、該プログラムは印が付けられた線を持ったモデリングしたオブジェクト、および、印が付けられたピクセルを含んだビットマップイメージを受け取るように適合されており、また、前記モデリングしたオブジェクトの線は該ビットマップイメージ中の対応するピクセルと同じ印を有しており、
    前記モデリングしたオブジェクトの前記表示の、隠線を消去したビットマップイメージを受け取る第1ルーチン、
    前記モデリングしたオブジェクトの線の前記印が付けられたピクセルを前記ビットマップイメージが含むか否かを調べる第2ルーチン、
    前記モデリングしたオブジェクトの前記線の前記印が付けられたピクセルを前記ビットマップイメージが含まない場合、該線は前記ベクトルイメージ内で可視ではないと判定する第3ルーチン、
    前記モデリングしたオブジェクトの前記線の前記印が付けられたピクセルを前記ビットマップイメージが含む場合、
    前記表示内の前記モデリングしたオブジェクトの線のラスタを生成する第4ルーチン(26)、
    前記線の前記ラスタのピクセルを、前記ビットマップイメージのピクセルと比較する第5ルーチン(30〜36)、
    該第5ルーチンによって提供された結果に従って、前記ベクトルイメージ内の前記線の可視部分を判定する第6ルーチン(38)を含み、前記第1乃至第6ルーチンに従った処理をコンピュータに実行させるプログラム。
  12. エッジおよびファセット(ファセットの集合がフェースである)と共に、前記モデリングしたオブジェクトのテセレーション表現を受け取るように適合されることを特徴とする請求項11に記載のプログラム。
  13. 印が付けられた線を持ったモデリングしたオブジェクト、および、印が付けられたピクセルを持ったビットマップイメージを受け取るように適合されており、前記モデリングしたオブジェクトの線および該ビットマップイメージの前記印は、色を前記印が付けられた線に因らせることに存ることを特徴とする請求項11または12に記載のプログラム。
  14. エッジおよびファセット(ファセットの集合がフェースである)と共に、テセレーション表現で、モデリングしたオブジェクトを受け取るように適合され、前記第6ルーチンが、
    前記第5ルーチンの結果として線を隠すファセットを見つけ、かつ、ファセットと線との交差を計算するように適合されることを特徴とする請求項11ないし13のいずれかに記載のプログラム。
  15. エッジおよびファセット(ファセットの集合がフェースである)と共に、テセレーション表現で、モデリングしたオブジェクトを受け取るように適合され、前記第6ルーチンが、
    前記第5ルーチンの結果として線を隠すファセットを見つけ、かつ、線とファセットによって表されるフェースとの交差を計算するように適合されることを特徴とする請求項11ないし13のいずれかに記載のプログラム。
JP2004214868A 2003-07-28 2004-07-22 隠線を消去したベクトルイメージを提供する方法 Active JP4425734B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
EP03291861A EP1503346B1 (en) 2003-07-28 2003-07-28 A process for providing a vector image with removed hidden lines

Publications (2)

Publication Number Publication Date
JP2005050336A JP2005050336A (ja) 2005-02-24
JP4425734B2 true JP4425734B2 (ja) 2010-03-03

Family

ID=33522459

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004214868A Active JP4425734B2 (ja) 2003-07-28 2004-07-22 隠線を消去したベクトルイメージを提供する方法

Country Status (7)

Country Link
US (1) US7289117B2 (ja)
EP (1) EP1503346B1 (ja)
JP (1) JP4425734B2 (ja)
KR (1) KR100737221B1 (ja)
AT (1) ATE325399T1 (ja)
CA (1) CA2475345C (ja)
DE (1) DE60305027T2 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2008004927A1 (en) * 2006-07-07 2008-01-10 Telefonaktiebolaget Lm Ericsson (Publ) Device and method for simplifying vector graphics
US8421800B2 (en) * 2009-05-29 2013-04-16 Siemens Product Lifecycle Management Software Inc. System and method for selectable display in object models
JP5620741B2 (ja) * 2010-08-06 2014-11-05 キヤノン株式会社 情報処理装置、情報処理方法、およびプログラム
US9524572B2 (en) * 2010-11-23 2016-12-20 Microsoft Technology Licensing, Llc Parallel processing of pixel data
US9449118B2 (en) * 2011-09-29 2016-09-20 Siemens Product Lifecycle Management Software Inc. Hybrid hidden-line processor and method
TW201325935A (zh) * 2011-12-29 2013-07-01 Printing Plant Ministry Of Finance 調變網點結構組合、應用該組合製作具有隱藏圖文印刷品的影像檔的方法及由其所製得的印刷品
US9846958B1 (en) 2012-10-04 2017-12-19 Aftershock Services, Inc. System and method for display object bitmap caching
JP2022169276A (ja) 2021-04-27 2022-11-09 横河電機株式会社 冗長化方法、冗長化プログラムおよび情報処理装置

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4924414A (en) * 1986-09-24 1990-05-08 Daikin Industries, Ltd. Apparatus and method for obtaining priority numbers for drawing figures forming a display figure
US5265214A (en) * 1987-08-28 1993-11-23 Daikin Industries, Ltd. Filling processing apparatus and method
US4918626A (en) * 1987-12-09 1990-04-17 Evans & Sutherland Computer Corp. Computer graphics priority system with antialiasing
US5220646A (en) * 1990-04-30 1993-06-15 International Business Machines Corporation Single pass hidden line removal using z-buffers
US5359704A (en) * 1991-10-30 1994-10-25 International Business Machines Corporation Method for selecting silhouette and visible edges in wire frame images in a computer graphics display system
US5864342A (en) * 1995-08-04 1999-01-26 Microsoft Corporation Method and system for rendering graphical objects to image chunks
US6031544A (en) * 1997-02-28 2000-02-29 Adobe Systems Incorporated Vector map planarization and trapping
US6801215B1 (en) * 2001-11-29 2004-10-05 At&T Corp. Hardware-assisted visibility-ordering algorithm
AUPS028702A0 (en) * 2002-02-01 2002-02-28 Canon Kabushiki Kaisha Efficient display update from changing object graphics

Also Published As

Publication number Publication date
KR100737221B1 (ko) 2007-07-09
CA2475345A1 (en) 2005-01-28
DE60305027T2 (de) 2006-12-14
CA2475345C (en) 2008-12-09
EP1503346A1 (en) 2005-02-02
JP2005050336A (ja) 2005-02-24
KR20050013511A (ko) 2005-02-04
EP1503346B1 (en) 2006-05-03
DE60305027D1 (de) 2006-06-08
US7289117B2 (en) 2007-10-30
US20050041022A1 (en) 2005-02-24
ATE325399T1 (de) 2006-06-15

Similar Documents

Publication Publication Date Title
US11527040B2 (en) Tessellating patches of surface data in tile based computer graphics rendering
Kalkofen et al. Comprehensible visualization for augmented reality
US5809179A (en) Producing a rendered image version of an original image using an image structure map representation of the image
CN100583084C (zh) 对程序几何对象进行三角剖分
JP5299173B2 (ja) 画像処理装置および画像処理方法、並びにプログラム
JP2007528529A (ja) 3dデータ集合のサーフェスを識別するための方法及びシステム(「ボクセル分割」)
JPH07282293A (ja) 3次元画像生成方法
JP2572515B2 (ja) 画素処理方法及び装置並びにグラフィックバッファ
KR101507776B1 (ko) 3차원 지도의 외곽선 표현 방법
US10832376B2 (en) Generating enhanced digital content using piecewise parametric patch deformations
US6897863B2 (en) System and method for hidden object removal
JP4425734B2 (ja) 隠線を消去したベクトルイメージを提供する方法
US10706500B2 (en) Generating enhanced digital content using piecewise parametric patch deformations
US10628918B2 (en) Generating enhanced digital content using piecewise parametric patch deformations
Doungmala et al. Investigation into the Application of Image Modeling Technology in the Field of Computer Graphics
US10109105B2 (en) Method for immediate boolean operations using geometric facets
JP2006099422A (ja) 画像処理装置、およびプログラム
dos Passos et al. Sample-based synthesis of illustrative patterns
Arpa et al. Perceptual 3D rendering based on principles of analytical cubism
US7170528B1 (en) Fast glyph rendering for vector based fonts
Mulder Automatic repair of geometrically invalid 3D city building models using a voxel-based repair method
US8243072B2 (en) Method for rendering an object
Martin et al. Alhambra: a system for producing 2D animation
Magnenat-Thalmann et al. Visible surface algorithms
Correa Illustrative Deformation of volumetric objects and other graphical models

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050916

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080926

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20081217

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20081222

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090123

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090225

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090428

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090727

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090730

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090827

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090901

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090925

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: 20091201

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20091209

R150 Certificate of patent or registration of utility model

Ref document number: 4425734

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121218

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20131218

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250