JP4125673B2 - 二次元あるいは三次元の幾何学的実体に結合したデータのエクスポートシステム - Google Patents

二次元あるいは三次元の幾何学的実体に結合したデータのエクスポートシステム Download PDF

Info

Publication number
JP4125673B2
JP4125673B2 JP2003511103A JP2003511103A JP4125673B2 JP 4125673 B2 JP4125673 B2 JP 4125673B2 JP 2003511103 A JP2003511103 A JP 2003511103A JP 2003511103 A JP2003511103 A JP 2003511103A JP 4125673 B2 JP4125673 B2 JP 4125673B2
Authority
JP
Japan
Prior art keywords
data
export
program
format
graphic
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
Application number
JP2003511103A
Other languages
English (en)
Other versions
JP2004534320A (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.)
Okyz SAS
Original Assignee
Okyz SAS
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=8860110&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=JP4125673(B2) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Okyz SAS filed Critical Okyz SAS
Publication of JP2004534320A publication Critical patent/JP2004534320A/ja
Application granted granted Critical
Publication of JP4125673B2 publication Critical patent/JP4125673B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3466Performance evaluation by tracing or monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/32Image data format

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Geometry (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Processing Or Creating Images (AREA)
  • Radar Systems Or Details Thereof (AREA)
  • Numerical Control (AREA)
  • Measurement Of Velocity Or Position Using Acoustic Or Ultrasonic Waves (AREA)
  • Computer And Data Communications (AREA)

Description

本発明は、一般的には、情報処理データのエクスポートの、そしてとくに、幾何学的実体結合したデータの、コンピュータ設計支援技術(CAD)ソフトまたはテレビゲームなどの情報処理プログラムからの、エクスポートに関するものである。
CADおよびテレビゲーム幾何学的実体などのような、モデル化および/または操作の技術およびシステムは、自動車または航空機などの製品のコンピュータ設計支援技術から、飛行のシミュレータなどのようなシミュレーションプログラム、3Dバーチャルリアリティのアクションゲームに至るまで、今では産業のすべての分野において非常に普及している。
とくに、CADの技術が20年未満の比較的新しいものであっても、先行するCADシステムの古いデータ構造保持をもたらすための発展する互換性の必要性は、情報テクノロジーの急速な進化にもかかわらず、現代的な情報処理システムによって提供される可能性を非常に部分的にしか活用しない。
また、CADであれ、テレビゲームの分野であれ、利用されているこれらのデータ構造のフォーマットは、普遍的に所有的なものであり、すなわち、関連するソフト、または、少なくとも関連するソフトのエディター固有のものである。しかしながら、少なくともCADの分野では、これらのグラフィックソフトは、一般的に、幾何学的実体結合したさまざまなデータフォーマットをインポートするための機能を呈する。
それに対して、顧客保持のための明らかな理由により、これらのソフトのエディターは、それが何であれ、彼らが使用しているデータフォーマットの仕様を公表したがらず、そして、同様の考えにおいて、彼らのソフトから競合者のソフトへすべてのデータをエクスポートすることのできるユーティリティープログラムを提供することにためらいがちである。
この事実によって、これらのソフトによって使用されているデータを、幾何学的データのモデル化および/または操作の情報処理システムから類似の情報処理システムへ完全に転送することが非常に困難であるという結果がもたらされる。しかしながら、この転送は、例えば、同業者の異なる下請け業者において、さらには同じ会社内において起こるように、とりわけ、一般的に歴史的理由により、CADを長い昔から使用している大会社において起こるように、異質のCADシステム同士の間でデータを転送するのに、頻繁に必要となるものである。
同様に、テレビゲームの技術の進化が、いずれは、テレビゲームにおける人物または物をインポートすることを可能にすることが想定され、その際、別のテレビゲームからのこのタイプのエクスポートの問題が新たに提起されることになるであろう。
幾何学的実体結合したデータのモデル化および/または操作の異質のシステム同士の間での、データ転送のこのような必要性は、これらのデータの変換のユーティリティープログラムの開発コストを非常に高いものにするという結果をもたらし、それは、関連するデータベースのフォーマットに関する厳密な仕様の不在、そして同様に、関連するシステムのデータベースの構造からもたらされる改良または変更の際に、全体的にまたは部分的にこれらのユーティリティープログラムが再書き込みされなければならないためである。さらに、このデータ変換は、変換すべきデータのフォーマットに関する厳密な仕様が不在であるため、一般的に不完全なものである。
また、CADシステムを使用する企業において、使用されているCADソフトのエディターの活動停止という仮定において、ソフトのCADデータを別のソフトにおいて回復することができるよう、異なるCADシステムの間での交換手段としてだけでなく、同時に使用するCADソフトのエディターに対する最小限の独立を確保するために、開放的であり、普及した、よく定義されたデータの構造およびフォーマットが必要となる。
上記を考慮して、安価で信頼性のある、このソフトによって使用されているデータ構造についていかなる知識も必要とせず、そのソフトがどんな形のものであれ、いかなる変更も必要とせず、そして、関連するソフトに対する特別なインターフェースの開発も必要としない、幾何学的実体結合したデータのモデル化および/または操作の何らかのソフトから、幾何学的実体結合したデータをエクスポートすることを可能にする方法およびシステムへの必要であることは明白である。
先行技術においては、glTraceまたはglAnalyseProのようなユーティリティープログラムが存在し、該プログラムは、グラフィックアプリケーションによって実施された、関数またはグラフィック基本要素の呼び出しの遮蔽および保存を可能にする。しかしながら、これらのユーティリティープログラムは、関連するグラフィックアプリケーションをディバッグする機能しかもたず、同じ性質の別のシステムへの幾何学的実体へ結合されたデータのエクスポートを可能にすることは全くできない。
第1に、
コンピュータにより実行されるデータのエクスポート方法であり、
実行中のグラフィックアプリケーションプログラムにおいて、
コンピュータ設計支援プログラム(CAD)から一つ以上の図形関数に対する関数呼び出しのシーケンスを受け取って実行するに際して
前記コンピュータは、情報処理プログラム(11、12、15)を実行することのできる少なくとも一つの中央処理ユニットと、前記情報処理プログラム(11、12、15)および幾何学的実体(10)に結合されたデータを、前記情報処理プログラム(11、12、15)の実行中に保存することのできるメモリ(16)を有し、
図形関数の処理は、点データと実体データとの種類のデータにより図形を生成出力するためのアプリケーションプログラムインターフェース(API)を介して実行するものであり、
前記コンピュータ設計支援プログラム(CAD)は、オリジナルのAPIライブラリに対してではなく置換ライブラリに対して関数呼び出しを行い
各関数呼び出しに応じて、関数呼び出しが予め定義された一つ以上の関数呼び出しの一つであるかどうか決定し、次に、
関数呼び出しに係るデータが、点データの種類ならば、エクスポート用のデータ構造に一つ以上の幾何学的実体の頂点を示す点データを加え、
関数呼び出しに係るデータが、実体データの種類ならば、エクスポート用のデータ構造に一つ以上の幾何学的実体を示す実体データを加え、
関数呼び出しが、終了状態を示す種類ならば、エクスポート用のデータ構造のデータを一つ以上のテキスト形式のエクスポートファイルにエクスポートし、
関数呼び出しの最後のシーケンスを受信した後、一つ以上のエクスポートファイルを閉じ、
関数呼び出しのシーケンスは、二つ以上の終了状態の関数呼び出しを含み、二つ以上の関数呼び出しの終了状態に応じて二つ以上の回数のエクスポートが起こり
前記テキスト形式のエクスポートファイルは、第二フォーマットによるものであり、
第二フォーマットは、前記CADプログラムを用いた第一フォーマットと異なり、データ構造が多数のデータテーブルを含み、点データは、第一のテーブルに加えられ、実体データは第二のテーブルに加えられることを特徴とする方法。
第2に、
一つ以上のテキストエクスポートファイルは、図形変換形式(DXF)ファイルであることを特徴とする、上記第1に記載の方法。
第3に、
実体データは、三角形を特定するデータを含むことを特徴とする、上記第1に記載の方法。
第4に、
実体データは、四角形を特定するデータを含むことを特徴とする、上記第1に記載の方法。
に、
エクスポートされたデータは、外付けされた記憶手段に記憶されるようにしたことを特徴とする、上記第1に記載の方法。
に、
コンピュータに基づく処理命令を含むコンピュータプログラムであって、
実行中のグラフィックアプリケーションプログラムにおいて、
コンピュータ設計支援プログラム(CAD)から一つ以上の図形関数に対する関数呼び出しのシーケンスを受け取って実行するに際して
前記コンピュータは、情報処理プログラム(11、12、15)を実行することのできる少なくとも一つの中央処理ユニットと、前記情報処理プログラム(11、12、15)および幾何学的実体(10)が結合したデータを、前記情報処理プログラム(11、12、15)の実行中に保存することのできるメモリ(16)を有し、
図形関数の処理は、点データと実体データとの種類のデータにより図形を生成出力するためのアプリケーションプログラムインターフェース(API)を介して実行するものであり、
前記コンピュータ設計支援プログラム(CAD)は、オリジナルのAPIライブラリに対してではなく置換ライブラリに対して関数呼び出しを行い
各関数呼び出しに応じて、関数呼び出しが予め定義された一つ以上の関数呼び出しの一つであるかどうか決定し、次に、
関数呼び出しに係るデータが、点データの種類ならば、エクスポート用のデータ構造に一つ以上の幾何学的実体の頂点を示す点データを加え、
関数呼び出しに係るデータが、実体データの種類ならば、エクスポート用のデータ構造に一つ以上の幾何学的実体を示す実体データを加え、
関数呼び出しが、終了状態を示す種類ならば、エクスポート用のデータ構造のデータを一つ以上のテキスト形式のエクスポートファイルにエクスポートし、
関数呼び出しの最後のシーケンスを受信した後、一つ以上のエクスポートファイルを閉じ、
関数呼び出しのシーケンスは、二つ以上の終了状態の関数呼び出しを含み、二つ以上の関数呼び出しの終了状態に応じて二つ以上の回数のエクスポートが起こり
点データは、一つ以上の頂点を示し、実体データは一つ以上の幾何学的実体を示し、
前記テキスト形式のエクスポートファイルは、第二フォーマットによるものであり、
第二フォーマットは、前記CADプログラムを用いた第一フォーマットと異なり、データ構造が多数のデータテーブルを含み、点データは、第一のテーブルに加えられ、実体データは第二のテーブルに加えられることを特徴とするコンピュータプログラム。
に、
一つ以上のテキストエクスポートファイルは、図形変換形式(DXF)ファイルであることを特徴とする、上記第に記載のコンピュータプログラム。
に、
実体データは、三角形を特定するデータを含むことを特徴とする、上記第に記載のコンピュータプログラム。
に、
実体データは、四角形を特定するデータを含むことを特徴とする、上記第に記載のコンピュータプログラム。
10に、
エクスポートされたデータは、外付けされた記憶手段に記憶されるようにしたことを特徴とする、上記第に記載のコンピュータプログラム。
以下に、例としてのみ、付属の図面を参照に、本発明の二つの実施態様を記載する
−図1は、本発明のエクスポート方法を使用しない、スタンダードディスプレイ関数のライブラリによる、幾何学的モデルのコンピュータ画面上での表示の機能図である
−図2は、本発明による、幾何学的実体結合したデータのエクスポート方法を使用した、幾何学的モデルのコンピュータ画面上での表示の機能図である
−図3は、本発明による、幾何学的モデルのデータのエクスポート方法のフローチャートである。
−図4は、本発明の第一の実施態様における、図3の囲み40の詳細なフローチャートである。
−図5は、本発明の第二の実施態様における、図3の囲み40の詳細なフローチャートである。
本発明の方法は、幾何学的実体結合したデータのモデル化および/操作の情報処理システム1において機能する。
この情報処理システム1は、情報処理システム1に本発明の方法が実施されている、されていないにかかわらず、幾何学的実体結合したデータのモデル化および/操作のプログラム11の、図示されていない、ユーザー2による実施を可能にする。
情報処理システム1は、さらに、グラフィック関数のライブラリ12によって操作されるグラフィックインターフェースカード13から由来するグラフィック信号の、グラフィックスクリーン14上での表示を可能にする。
この説明の続きにおいて、幾何学的実体結合したデータのモデル化および/または操作のプログラム11は、より簡易にするために、グラフィックアプリケーション11として参照される。
本発明の好ましい実施態様において、本発明の方法を機能させるために使用される情報処理システム1は、マイクロソフト社のWindows(登録商標)活用システムを実施するコンピュータである。
この活用システムにおいて、幾何学的データのディスプレイプログラム12は、例えば、シリコングラフィック株式会社のOpenGL仕様に合致する、動的リンクエディションライブラリあるいはDLL(Dynamic Link Library)経由でインプリメンテーションされたグラフィックAPI(アドバンスプログラミングインターフェース)である。このDLLは、通常、Windows(登録商標)システムの目録内に位置しており、“opengl32.dll”という名がついている。
ライブラリOpenGLは、数百の関数を含み、この説明に例として用いられているOpenGL関数の全体は、本発明の方法の実施があるものであろうと、ないものであろうと、この説明を適切な量にとどめるために、OpenGLの関数の非常に小さいサブグループに意図的に制限された。
しかしながら、本発明の原則は、この説明で紹介されるOpenGLの関数に限定されるものではなく、OpenGLの仕様において存在するすべての関数に同様に応用されることが、現時点から確かに理解されなければならない。
図1を参照しながら、本発明のデータエクスポート方法の使用なしでの、グラフィックスクリーン14における幾何学的モデル10のディスプレイの関数の原則が説明される。
グラフィックアプリケーション11がグラフィックスクリーン14に幾何学的モデル10を表示することを望む際、グラフィックインターフェース12のDLLに位置するグラフィック関数呼び出す。
このグラフィックインターフェース12は、接続されたソフトウェアパイロット13を経由して、グラフィックカード13にベクトルタイプのコマンドを送る。
厳密にいうところのコンピュータ画面は、陰極線管、または類似の装置から構成されているため、ビデオタイプの走査によって表示を行い、その結果、ユーザー2のために表示されたグラフィックデータの視覚的持続が保持されるように、表示されたグラフィックデータの二進の画像を保存することが必要になる。
この二進の画像は、スクリーン14のディスプレイ可能なポイントのそれぞれについて、一定数のビットで構成されているが、リフレッシュメモリまたはリフレッシュメモリと呼ばれる、グラフィックカード13の内部メモリに保存される。
ユーザー2にとってのデータの視覚的持続は、毎秒数十回この二進の画像を再読み込みすることによって、そして、再読み込みされた情報からグラフィックカード13のリフレッシュメモリに保存された画像の代表的なビデオ信号を生成することによって、グラフィックカード13によって獲得される。
これらのビデオ信号は、グラフィックカード13によって、グラフィックスクリーン14に送られ、そこで、グラフィックカード13のリフレッシュメモリに二進の形で保存された画像の表示を引き起こす。
コンピュータスクリーン14に幾何学的モデル10を表示することを望むグラフィックアプリケーション11は、したがって、DLL OpenGL12に存在するグラフィック関数に一連の呼び出しを行う。
OpenGL仕様において、このグラフィック関数への一連の呼び出しは、グラフィックスクリーン14に表示される二進のポイントでカード13に送られる命令の変換の完了を引き起こす特別な関数に呼び出しをすることによって終了する。
例えば、幾何学的モデル10を表示するために、それぞれの座標が:
A:(0,10,0);
B:(0,10,−10);
C:(0,0,0);
D:(0,0,−10);
である点ABCおよびBCDをそれぞれ通過する、二つの三角形T1およびT2が構成される。
グラフィックアプリケーション11は、DLL OpenGL12にしたがってグラフィック関数の呼び出しを実施する:
glBegin(GL_TRIANGLE_STRIP)
glVertex3fv(0.000,10.000,0.000)
glVertex3fv(0.000,10.000,−10.000)
glVertex3fv(0.000,0.000,0.000)
glVertex3fv(0.000,0.000,−10.000)
glEnd()
wglSwapBuffers()
この一連の呼び出しにおいて、呼び出しglBegin(GL_TRIANGLE_STRIP)は、三角形の構成の開始を示す。
呼び出しglEnd()は終了を示す。
関数glVertex3fvは、その三つの座標x、yおよびzによって、三角形の頂点のうちの一つを定義することを可能にする。
先のすべての要素が、上記の関数の呼び出しを経由して、グラフィックアプリケーション11によって、グラフィックAPI12に伝送された際、グラフィックアプリケーション11は、上記の例に登場した、関数“glFlush”または関数“wgSwapBuffers”などの、グラフィックAPI12の適切な関数によって先立って伝送された要素のディスプレイの完了を引き起こす。
これらの関数は、二つとも、グラフィックカード13の通常のリフレッシュメモリにおいて、先立ってビット画像で受信された、グラフィックの命令の変換の完了を引き起こし、その結果、グラフィックスクリーン14において、先立って受信されたグラフィック命による表示が終了される。
命令“wglSwapBuffers”は、このグラフィックカード13がそれを二つ保持している場合、グラフィックカード13の二つのメモリのスワップを引き起こす。
記載されているディスプレイの例の場合、命令“wglSwapBuffers”の受信の結果、グラフィックインターフェース12を経由して、グラフィックアプリケーション11によってグラフィックカード13に伝送されるグラフィック命令のグラフィックスクリーン14への実際の表示が引き起こされる。
この場合、このスクリーン14上の二つの三角形T1およびT2から構成される、幾何学的モデル10の表示を終了させる結果となる。
ここからは、図2および3を参照に、本発明のエクスポート方法を実施する幾何学的モデルのエクスポートを説明する。
本発明の方法を実施するグラフィックデータエクスポートプログラムのインストールの際、Windows(登録商標)システムの目録に存在する元のDLL“opengl32.dll”12は、例えば、“opengl32bis.dll”と名前を変更され、そして、本発明の方法を実施するDLL15によって置換され、元と同じように、すなわち“opengl32.dll”と名づけられる。
本発明によるこのDLL15は、OpenGL仕様に合致した、元のDLL12と同じ関数をもつ、つまりは、元のOpengl12と同じ名前、同じパラメータの、同じインターフェース関数を提供する。
図示されていないオペレーター2が、グラフィックアプリケーション11によって作成された、および/または操作された幾何学的モデル10のデータをエクスポートすることを望むとき、上記に記載されたように本発明の方法を実現するDLLを最初に実施する。
それは、グラフィックアプリケーション11によって、望まれる幾何学的モデル10を表示させる。
本発明の方法の実施なしでの情報処理システム1の使用の枠内で先に記載されたことと同様に、グラフィックアプリケーションがスクリーンに幾何学的モデルを表示することを望むとき、Windows(登録商標)システムの目録内に位置する“opengl32.dll”という名のDLL15を使用する、つまりは、このDLL15に含まれるOpenGL仕様に合致する関数および基本要素の呼び出しを行う。
本発明による幾何学的実体結合したデータのエクスポートプログラムのインストールの際、DLL12が本発明の方法を実施するDLL15によって置換される。
グラフィックアプリケーションは、元のDLL12に存在する関数および基本要素を提要する代わりに、本発明の方法を実施するDLL15に存在する関数および基本要素を、確実に呼び出す。
変型例において、“opengl32.dll”と名づけられたDLL15は、ある特殊な幾何学的なモデル化および操作アプリケーションのためにのみ、その特殊なアプリケーション11の目録にだけインストールすることが可能である。
何故なら、Windows(登録商標)の活用システムがアプリケーション11によって参照付けられているDLL15を探す際、まず、アプリケーション11が存在するそれと同じ目録の中を探すためである。
みつからない場合、Windows(登録商標)活用システムは、次に、とくにWindows(登録商標)活用システムがインストールされているシステム目録を含む、システム1によって前もって定義づけられた目録の中を探す。
このように、本発明の方法が実施されるとき、そして、上記の例を再度取り上げると、本発明の方法のDLL15は、元のDLL OpenGL12の代わりに、後者に対するグラフィック関数呼び出しを受信する。
本発明のこの実施態様において、本発明のDLL15は、元のDLL12に対して、受信された関数呼び出しを伝送し、グラフィックアプリケーション11から来る呼び出しにおいて受信されたのと同じパラメータで、DLL12の対応する関数を呼び出す。
その結果、本発明のDLL15は以下の関数呼び出しを受信する
glBegin(GL_TRIANGLE_STRIP)
glVertex3fv(0.000,10.000,0.000)
glVertex3fv(0.000,10.000,−10.000)
glVertex3fv(0.000,0.000,0.000)
glVertex3fv(0.000,0.000,−10.000)
glEnd()
wglSwapBuffers()
幾何学的実体結合したデータをエクスポートするために、本発明によるDLL15に含まれるプログラムは、メモリ16において、非限定的に、ポイントのテーブル“Points”および三角形のテーブル“Triangles”のような、幾何学的実体結合した一定数のデータテーブルを保存し、管理する。
最初は、これらの二つのテーブルは空であり、つまり、テーブルPointsの要素の数Nポイント、およびテーブルTrianglesの要素の数N三角形は、両方ともゼロである。
DLL15のプログラムは、ステップ30で開始し、そこでは、ポイントの数Nポイントおよび三角形の数N三角形を0の値で初期化し、ついで、グラフィックアプリケーション11からのグラフィック命令の受信を待機する。
命令glBegin(GL_TRIANGLE_STRIP)の受信の際、本発明による方法は、ステップ31に移り、命令GL_BEGINのパラメータ値が、それらの頂点によって三角形の構成を定義する一連のグラフィック命令の初めを示す、前もって定義された値、GL_TRIANGLE_STRIPであるかをテストする。
答えが否定の場合、方法はステップ30に戻る。
ステップ31への答えが肯定の場合、つまり、パラメータの値がGL_TRIANGLE_STRIPである場合、方法はステップ32に移り、グラフィック命令を待機する。
グラフィック命令の受信の際、本発明の方法は、ステップ33において、受信された命令が命令glVertex3fvであるかをテストする
紹介されている例においては、答えは肯定であり、呼び出しglVertex3fv(0.000,10.000,0.000)の受信の際、本発明の方法はステップ34に移る。
ステップ34では、プログラム15は、受信されたポイントの数Nポイントを1ユニット分増分する、つまり、Nポイントの数をその最初の値0から値1へ移す。
そして、ポイントデータテーブルに、受信されたポイントを保存する
続いて、ステップ34において、さらに、受信された命令glVertex3fvの、第一、第二および第三のパラメータ、この場合、ポイントデータテーブルにおける最初のポイントのx、yおよびzの座標の位置における値0.000、10.000および0.000をそれぞれ保存する。
そして本発明の方法はステップ35に移る。
ステップ35において、本発明の方法は、受信されたポイントの数Nポイントが3未満であるかどうかをテストする。
答えが肯定の場合、本発明の方法はステップ32に戻り、そうでなければ、本発明の方法はステップ36に移る。
ステップ33において、答えが否定である場合、それは、少なくとも三つのポイントが、先の命令glVertex3fvによって伝送されたことを意味する。
三角形を構成するGL_TRIANGLE_STRIPについてのOpenGL仕様によると、それは、受信された先の三つのポイントによって構成される三角形が定義されたことを示すものである。
その結果、ステップ36において、本発明の方法を実施するDLL15のプログラムは、受信された三角形の数を1ユニット分増加させる
つまり、受信された三角形の数N三角形を1ユニット分増加させる。
そして、このように受信された三角形を構成するポイントの番号n1、n2およびn3を、つまり、OpenGLの仕様によると受信された先の三つのポイントを、三角形のテーブルの対応する位置に保存する
すなわち、テーブルTrianglesの数N三角形の数の位置の、n1、n2およびn3の位置に受信された先の三つのポイントのNポイント−2、Nポイント−1およびNポイントを保存する。
プログラム15は、グラフィックアプリケーション11によって伝送され三角形の構成を形成する他の可能なポイントを待つために、ステップ32に戻る。
本発明の方法は、ステップ33での答えが否定になるまで、ステップ32から36を繰り返す。
記載された例において、四つの命令“glVertex3fv”を経由して四つのポイントを得た後に、DLL15はそれ以外の命令“glVertex3fv”を受信しないが、その代わりに、命令“glEnd”を受信する。
その結果、ステップ33において、答えは否定になり、そこでDLL15はステップ37に移る。
OpenGL仕様において、命令“glEnd”は、先の命令glBeginから開始された一連のグラフィック命令、この場合は三角形の構成GL_TRIANGLE_STRIPが終了したこと意味する。
ステップ37において、DLL15は受信された関数の最後の呼び出しが関数“glEnd”への呼び出しであったかどうかをテストする。
答えが否定の場合、DLL15に含まれるプログラムはステップ32に戻る。
ステップ37におけるテストの答えが肯定の時、DLL15のプログラムはステップ38に移る。
記載されている例においては、それは、グラフィックアプリケーション11が、四つの命令“glVertex3fv”の後に命令“glEnd”を送信する際に起こる。
ステップ38では、本発明のDLL15に含まれるプログラムは、グラフィックアプリケーション11から来る命令を待ち、ついで、このような命令が受信された際に、それはステップ39に移る。
ステップ39において、DLL15のプログラムは、受信されたグラフィック命令が命令OpenGL“wglSwapBuffers”または“glFlush”であるかをテストする。
もし答えが否定の場合、つまり、受信された命令が、命令“wglSwapBuffers”でも命令“glFlush”でもなければ、本発明の方法によるDLL15のプログラムは終了される。
ステップ39での答えが肯定の場合は、DLL15のプログラムはステップ40に移る。
記載されている例において、命令“glEnd”の送信の後、グラフィックアプリケーション11は命令“wglSwapBuffers”をプログラム15に送信する
ここで、命令“glFlush”を同様に用いることもできる。
本発明の方法の使用なしでの情報処理システム1の実施の枠内で先に示されたように、これらの命令は、グラフィック命令の変換、および、それらのスクリーン14での厳密にいうところの表示を引き起こす。
したがって、他のグラフィック命令を待つことなしにそれらはスクリーン14に表示されなければならない
その結果、本発明の実施態様において、先立って受信されたグラフィック命令はそれらを保存ユニット18へ記憶するために、これらの命令が使用される。
したがって、ステップ39において、テストへの答えが肯定であるとき、つまり、命令“wgSwapBuffers”または“glFlush”受信したとき、プログラム15は、ステップ40に移る。
そこでは、Raider 3Dという名前のモジュール17が、メモリ16に保存されたPointsおよびTrianglesのデータテーブルをエクスポートし、該エクスポートした結果を保存ユニット18へ記憶する。
本発明の方法において、PointsおよびTrianglesのデータテーブルが保存されているメモリ16は、本発明の方法を実施するコンピュータにシェアされているメモリであり、そのことは、それがDLL15によって書き込みされ、同時にモジュール17であるRaider 3Dによって再読み込みされることができるということを意味する。
本発明の第一の実施態様において、PointsおよびTrianglesのデータテーブルは、ポイントおよび三角形が、シンプルテキストファイルの形でエクスポートされ、同じ名前のファイルで保存ユニット18に記録される。
さらに、図4を参照しながら、ここで、本発明の方法の第一の実施態様による、モジュール17であるRaider 3Dの機能を説明する。
この第一の実施態様において、ステップ41で、モジュール17であるRaider 3Dは、記載された例において“Points”と名づけられたポイントのエクスポートファイルを、保存ユニット18に作成して開き、ファイル“Points”に記録されたポイントの数iを値0で初期化し、次に、ステップ42に移る。
ステップ42において、モジュール17であるRaider 3Dは、ファイル“Points”に記録されたポイントの数iがシェアされたメモリに存在するポイントの数Nポイント未満であるかをテストする。
ステップ42における答えが肯定の場合、モジュール17であるRaider 3Dはステップ43に移る。
ステップ43において、モジュール17であるRaider 3Dは、数iの値を1ユニット分増加させ、ついで、ファイル“Points”に数iの新しい値を書き込む。
その後には、シェアされたメモリ16に保存されたテーブル“Points”へiを書き込んでから、ポイント数iに対応する座標x、yおよびzを書き込む
モジュール17であるRaider 3Dは、そして、ファイル“Points”におけるラインに移り、ついで、ステップ42に戻る。
ステップ42での答えが否定の場合、モジュール17であるRaider 3Dは、ステップ44に移る。
ステップ44では、モジュール17であるRaider 3Dは、ファイル“Points”を閉じ、次に、ステップ45に移る。
ステップ45において、モジュール17であるRaider 3Dは、記載された例において“Triangles”と名づけられたポイントのエクスポートファイルを、保存ユニットに作成して開き、ファイル“Triangles”に書き込まれたポイントの数iをゼロで初期化する。
そして、それはステップ46に移る。
ステップ46において、モジュール17であるRaider 3Dは、ファイル“Triangles”に記録された三角形の数iがシェアされたメモリに存在する三角形の数Nより少ないかどうかをテストする。
ステップ46における答えが肯定の場合、モジュール17であるRaider 3Dはステップ47に移る。
ステップ47において、モジュール17であるRaider 3Dは、数iの値を1ユニット分増加させ、ついで、ファイル“Triangles”に数iの新しい値を書き込む。
ファイル“Triangles”、シェアされたメモリに保存されているテーブル“Triangles”へiを書き込んでから、数iの三角形を構成する3つのポイントのn1、n2およびn3の数を書き込む。
モジュール17は、そして、ステップ46に戻る。
ステップ46において、答えが否定であるとき、モジュール17であるRaider 3Dは、ステップ48に移り、そこで、エクスポートファイル“Triangles”を閉じる。
先の例の場合において獲得されたテキストファイル“Points”および“Triangles”は、以下のそれぞれのデータテーブル1および2に紹介される形をとることになる。
データテーブル1
1 0.000,10.000,0.000
2 0.000,10.000,−10.000
3 0.000,0.000,0.000
4 0.000,0.000,−10.000
データテーブル2
1 1,2,3
2 2,3,4
本発明の第一の実施態様による幾何学的タイプの実体に結び付けられるデータのエクスポート方法はここで終了する。
ここまでで見てきたように、本発明に係るデータのエクスポート方法は、グラフィックアプリケーション11によって作成され、および/または操作された幾何学的モデル10を、このアプリケーションのデータフォーマットについてのいかなる知識もなしに、そして、このアプリケーション11のいかなる変更もなしに、そして、このアプリケーション11に特有のいかなるプログラムの開発もなしに、エクスポートすることを可能にする。
本発明の第二の実施態様において、使用されるエクスポートフォーマットは、幾何学的実体結合したデータのエクスポートに関してはマーケットでの基準フォーマットである、AutoDesk社のDXF(Data eXchange Format)フォーマットである。
DXFフォーマットは、ライン毎の情報を考慮に入れたテキストフォーマットである。
ラインは、対毎にグループ化されており、対の第一のラインは、次のラインに表されるデータのタイプを示す完全な数値データを内包する。
このように、タイプの数値データが0から9の間に含まれる整数であるとき、次のラインに表れるデータは文字列となり、タイプの数値データが10から59の間に含まれる整数であるとき、次のラインに表れるデータは、三次元の倍精度浮動小数点の座標となる。
また、ファイルDXFは、セクションで編成されている。
一つのセクションは、文字列を導入する数字0から構成されるライン、および、キーワードSECTIONで構成されるラインを最初に有し、最後に文字列を導入する数字0から構成されるライン、および、キーワードENDSECから構成されているラインを有することで終了する。
ファイルDXFは、一定数のタイプのさまざまなセクション、とくに、幾何学的タイプの実体を描写するセクションENTITIES、ならびに、一定数の別のセクション、例えば、ここでは説明しないがパラメータまたはクラスを定義するセクションを有する。
セクションENTITIESは、幾何学的モデルのさまざまな幾何学的実体から構成され、それぞれの実体は、実体のタイプを示す文字によって導入され、考慮される実体の定義に必要なパラメータが後に続く。
例えば、空間における面の定義は、最初のラインが文字を導入する数0によって構成され、キーワード3DFACEによって構成されるラインが続く。
空間における面は、それぞれ三角形または四角形を構成する、三つまたは四つのポイントによって構成されるが、慣習的に、四角形よりもむしろ三角形を示すために、第四のポイントは第三のポイントと同一であると明示されている。
のそれぞれの四つのポイントは、それらの三つの座標x、yおよびzによって定義されており、ぞれぞれの座標は、先に示されているように、第一のラインが、10から59の間に含まれる整数インジケータであり、第二のものが厳密にいうところの座標である、ラインの対によって定義されている。
フォーマットDXFの仕様において、面の第一のポイントの座標x1、y1およびz1のためのインジケータは、それぞれ10、20および30であり、面の第二のポイントの座標x2、y2およびz2のためのインジケータは、それぞれ11、21および31であり、面の第三のポイントの座標x3、y3およびz3のためのインジケータは、それぞれ12、22および32であり、面の第四のポイントの座標x4、y4およびz4のためのインジケータは、それぞれ13、23および33である。
いいかえると、1から4まで変動する面のjについて、ポイントjの座標xの数値のインジケータは9+jであり、ポイントjの座標yの数値のインジケータは19+jであり、ポイントjの座標zの数値のインジケータは29+jである。
より厳密には、ここで図5を参照すると、本発明の第二の実施態様によるモジュール17であるRaider 3Dは、ステップ51において、先の例において“DXF”と名づけられたエクスポートファイルを作成して開き、ついで、ステップ52に移る。
ステップ52において、モジュール17であるRaider 3Dは、DXFフォーマットに、ファイルのヘッダライン、すなわち、以下の四つのラインを書き込む

SECTION

ENTITIES
そして、それは、ファイル“DXF”に書き込まれた面の数iを0に初期化する。
モジュール17であるRaider 3Dは、そこで、ステップ53に移る。
ステップ53では、モジュール17であるRaider 3Dは、書き込まれた面の数iがシェアされたメモリに保存されている三角形の数未満であるかどうかをテストする。
ステップ53での答えが肯定である場合、つまり、ファイルDXFに先立って書き込まれた三角形の数iが、シェアされたメモリ16に保存された三角形の数N三角形未満であれば、モジュール17であるRaider 3Dはステップ54に移る。
ステップ54において、モジュール17であるRaider 3Dは、ファイルに先立って書き込まれた三角形の数iを1ユニット分増分し、ついで、ひとつの面対するDXFフォーマットヘッダラインに、以下の二つのラインを書き込む

3DFACE
さらに、相変わらずステップ54において、モジュール17であるRaider 3Dは、ファイル“DXF”に書き込まれた三角形iのポイントの数jを0に初期化し、ついで、ステップ55に移る。
ステップ55において、モジュール17であるRaider 3Dは、ファイル“DXF”に書き込まれた三角形iのポイントの数jが3未満であるかどうかをテストする。
答えが肯定の場合、モジュール17であるRaider 3Dは、ステップ56に移る。
ステップ56において、モジュールRaider 3Dは、ファイル“DXF”に書き込まれた三角形iのポイントの数jを1ユニット分増加させ、数njをTriangles.njに等しいものと計算する
つまり、nは、三角形iのポイントjの数njに等しくなる。
次いで、連続して、DXFフォーマットに、面のポイントjについて座標xのインジケータを、つまり、値9+jを第一のラインに、そして、座標x自体を第二のラインに、先立って数nが計算されたポイントについて書き込む。
同様に、変わらずステップ56において、そして変わらず数nのポイントについて、モジュール17であるRaider 3Dは、それぞれ、第三のラインにインジケータ19+jを、第四のラインに座標yを、そして、第五のラインにインジケータ29+jを、そして第六のラインに座標zを書き込む。
モジュールRaider 3Dは、そして、ステップ55に戻る。
ステップ55および56の処理は、ステップ55において答えが否定になるまで、つまり、ファイル“DXF”に書き込まれた三角形のポイントの数jが3に等しくなるまで繰り返される
ジュール17であるRaider 3Dの処理によるこのポイントは、三角形iの三つのポイントとして得られる。
iが1であるとき、つまり、第一の三角形について、モジュール17であるRaider 3Dは、ファイル“DXF”に、連続して以下のラインを書き込んだことになる
10
0.0
20
10.0
30
0.0
これらの行は、三角形1のポイントn 1 =1に対する。
11
0.0
21
10.0
31
−10.0
これらの行は、三角形1のポイントn 2 =2に対する。
12
0.0
22
10.0
32
0.0
これらの行は、三角形1のポイントn 3 =3に対する。
ステップ55において、ファイル“DXF”に書き込まれたポイントの数jが3に等しい場合、モジュール17であるRaider 3Dはステップ57に移る。
したがって、ステップ57の初めにおいて、モジュール17であるRaider 3Dは、上記に示された形で三角形iの三つのポイントをファイル“DXF”に書き込んだことになる。
しかしながら、先に言及されたように、DXF仕様は一つの面につき四つのポイントを必要とする
そのため、第三のポイントである数n 3 繰り返される。
それは、DXFの慣習により、描写される面が三角形であることを意味する。
そのため、ステップ57において、モジュール17であるRaider 3Dは、面の第四のポイントについて座標xのインジケータを、つまり13を、第一のラインに、それから、第二のラインに座標xを、ファイルに書き込む。
同様に、それは、第三のラインに座標yのインジケータ、つまり23を、そして、座標yを第四のラインに、そして、第五のラインに、座標zのインジケータ、つまり33を、そして座標zを第六のラインに、それぞれ書き込む。
iが1である場合、つまり、第一の三角形についてであるが、それは、ステップ57においてモジュール17であるRaider 3Dがファイル“DXF”に以下のラインを書き込むことによって表れる
13
0.0
23
0.0
33
0.0
それは、現在の面の先のポイントの座標を繰り返すのは、第一の三角形の第三のポイントを繰り返すことを意味するものである。
ステップ57の後、モジュール17であるRaider 3Dは、ステップ5に戻り、第一の三角形について上記に記載されたのと同じ方法を用いて、ステップ5での答えが否定になるまで、次に続く三角形をエクスポートする。
ステップ5において答えが肯定であるとき、つまり、先にシェアされたメモリ16に保存されたすべての三角形がファイル“DXF”に書き込まれたとき、モジュール17であるRaider 3Dはステップ58に移る。
ステップ58において、モジュール17であるRaider 3Dは、セクション終了のライン、つまり二つのラインを書き込む。

ENDSEC
ついで、DXFフォーマットにおいてエクスポートファイルの終了を示す二つのラインを書き込む。

EOF
ついで、相変わらずステップ58において、モジュール17であるRaider 3Dは、ファイル“DXF”を閉じる。
それは以下のデータテーブル3に示される形をとることになる
データテーブル3

SECTION

ENTITIES

3DFACE
10
0.0
20
10.0
30
0.0
11
0.0
21
10.0
31
−10.0
12
0.0
22
0.0
32
0.0
13
0.0
23
0.0
33
0.0

3DFACE
10
0.0
20
10.0
30
−10.0
11
0.0
21
0.0
31
0.0
12
0.0
22
0.0
32
−10.0
13
0.0
23
0.0
33
−10.0

ENDSEC

EOF
本発明の第二の実施態様による幾何学的タイプの実体に結び付けられるデータのエクスポート方法はここで終了する。
ここまでで見てきたように、それは、グラフィックアプリケーション11によって作成され、および/または操作された幾何学的モデル10を、このアプリケーションのデータフォーマットについてのいかなる知識もなしに、そして、このアプリケーション11のいかなる変更もなしに、そして、このアプリケーション11に特有のいかなるプログラムの開発もなしに、エクスポートすることを可能にする。
当然ながら、本発明の方法は、上記に記載されたポイントおよび三角形のグラフィック関数の遮蔽およびエクスポートに限定されるものではない。
とりわけ、先に記載された例において、ポイントの生成に用いられた関数は関数glVertex3fvであったが、この技術における専門知識のあるすべての人にとっては、先の記述が、基本的な適応とともに、glVertexグループのあらゆる命令へ適用されることは明白である。
さらに、先の記述から、本発明の方法が、非限定的にであるが、四角形を定義する関数、点での常態などの面の方向の情報を定義するもの、カラー、表面のテクスチャ、透明性の情報を定義するものなどの、望まれるあらゆるOpenGLの関数のエクスポートを可能にすることが明らかでなければならない。
また、方法は、記載された例のそれのように単純な幾何学的構造のエクスポートに限定されないが、モデル化されたあらゆる構造が、どんなに複雑であろうと、ポイント、三角形、四角形などの基本要素によってディスプレイされ、したがって、上記に記載された方法を用いてエクスポートされることができることから、本発明の方法が、任意の幾何学的モデルをエクスポートすることを可能にすることは、当業者にとっては明白であろう。
同様に、記述の単純さの明白な理由から、用いられたすべての幾何学的構造が、とくにポイントが別個のものであり、その結果、用いられたテーブルについて重複をなくすまたは最適化する必要が全くないことが仮定された。
実際においては、二重になった要素は、当然、適切な方法によって、それらのPointsおよびTrianglesのデータテーブルへのDLL15のプログラムによる記録の際に、または、それらのモジュール17であるRaider 3Dによる保存ユニット18へのエクスポートの際に削除される。
また、方法は、グラフィックライブラリOpenGLを使用する記載された実施態様に限定されず、この技術における専門知識のあるすべての人にとっては、上記に記載された方法が、非限定的な例としてであるが、マイクロソフト社のディスプレイライブラリDirectX(登録商標)などの、モデル化または幾何学的なモデル化アプリケーション10によって使用される可能性のある、その他一切のディスプレイ関数のライブラリ12にも適用可能であることは明白である。
さらに、本発明の方法は、Windows(登録商標)活用システムのシステム目録におけるよりは、むしろ好ましいアプリケーション11の目録においてのみ本発明の方法を実施するDLL15をインストールし、モデル化および/または操作のシステム1に存在するグラフィックアプリケーションの全体というよりは、むしろ好ましいある特殊なアプリケーション11にのみ実施されるものである。
先に記載されたことより、本発明の方法が、このアプリケーション11のいかなる変更もなしに、そして、このアプリケーション11に特有のいかなるプログラムの開発もなしに、そして、後者によって用いられるデータフォーマットについてのいかなる知識もなしに、このアプリケーション11がそれらの幾何学的モデル10の表示のために用いるグラフィックの関数および基本要素を遮蔽することのみによって、アプリケーション11によるモデル化された例10の幾何学の情報をエクスポートすることを可能にしたことが見受けられる。
保存ユニット18にエクスポートされる幾何学的実体に結び付けられるデータを保存するために使用されるデータフォーマットが、第一の実施態様において示されたような周知の開放されたフォーマット、または、DXFフォーマットのようなマーケットのスタンダードフォーマット、さらにまたは、特殊なアプリケーションによって必要とされるその他一切のフォーマットであることを考慮すると、これらのデータを、その他一切の望まれる幾何学的なモデル化または操作システムにインポートすることが非常に容易になる。
本発明の方法は、したがって、非常に広範なさまざまな領域において、とくに、自動車または航空機建設、産業デザイン、建設および/または建築、テレビゲームなどの工業およびサービス業のような、幾何学的実体に結び付けられるデータを使用する工業およびサービス業のすべてにおいて見られるように、異なるシステム同士の間で幾何学的実体に結び付けられるデータが交換されなければならないすべての領域において適用される可能性がある。
本発明のエクスポート方法を使用しない、スタンダードディスプレイ関数のライブラリによる、幾何学的モデルのコンピュータ画面上での表示の機能図。 本発明による、幾何学的実体結合したデータのエクスポート方法を使用した、幾何学的モデルのコンピュータ画面上での表示の機能図。 本発明による、幾何学的モデルのデータのエクスポート方法のフローチャート。 本発明の第一の実施態様における、図3の囲み40の詳細なフローチャート。 本発明の第二の実施態様における、図3の囲み40の詳細なフローチャート。
符号の説明
10 幾何学的モデル
11 グラフィックアプリケーション
12 グラフィックAPI
13 パイロットおよびグラフィックカード
14 グラフィックスクリーン
15 データエクスポートのグラフィックAPI
16 シェアされたメモリのブロック
17 Raider 3D
18 保存ユニット

Claims (10)

  1. コンピュータにより実行されるデータのエクスポート方法であり、
    実行中のグラフィックアプリケーションプログラムにおいて、
    コンピュータ設計支援プログラム(CAD)から一つ以上の図形関数に対する関数呼び出しのシーケンスを受け取って実行するに際して
    前記コンピュータは、情報処理プログラム(11、12、15)を実行することのできる少なくとも一つの中央処理ユニットと、前記情報処理プログラム(11、12、15)および幾何学的実体(10)に結合されたデータを、前記情報処理プログラム(11、12、15)の実行中に保存することのできるメモリ(16)を有し、
    図形関数の処理は、点データと実体データとの種類のデータにより図形を生成出力するためのアプリケーションプログラムインターフェース(API)を介して実行するものであり、
    前記コンピュータ設計支援プログラム(CAD)は、オリジナルのAPIライブラリに対してではなく置換ライブラリに対して関数呼び出しを行い
    各関数呼び出しに応じて、関数呼び出しが予め定義された一つ以上の関数呼び出しの一つであるかどうか決定し、次に、
    関数呼び出しに係るデータが、点データの種類ならば、エクスポート用のデータ構造に一つ以上の幾何学的実体の頂点を示す点データを加え、
    関数呼び出しに係るデータが、実体データの種類ならば、エクスポート用のデータ構造に一つ以上の幾何学的実体を示す実体データを加え、
    関数呼び出しが、終了状態を示す種類ならば、エクスポート用のデータ構造のデータを一つ以上のテキスト形式のエクスポートファイルにエクスポートし、
    関数呼び出しの最後のシーケンスを受信した後、一つ以上のエクスポートファイルを閉じ、
    関数呼び出しのシーケンスは、二つ以上の終了状態の関数呼び出しを含み、二つ以上の関数呼び出しの終了状態に応じて二つ以上の回数のエクスポートが起こり
    前記テキスト形式のエクスポートファイルは、第二フォーマットによるものであり、
    第二フォーマットは、前記CADプログラムを用いた第一フォーマットと異なり、データ構造が多数のデータテーブルを含み、点データは、第一のテーブルに加えられ、実体データは第二のテーブルに加えられることを特徴とする方法。
  2. 一つ以上のテキストエクスポートファイルは、図形変換形式(DXF)ファイルであることを特徴とする、請求項1に記載の方法。
  3. 実体データは、三角形を特定するデータを含むことを特徴とする、請求項1に記載の方法。
  4. 実体データは、四角形を特定するデータを含むことを特徴とする、請求項1に記載の方法。
  5. エクスポートされたデータは、外付けされた記憶手段に記憶されるようにしたことを特徴とする、請求項1に記載の方法。
  6. コンピュータに基づく処理命令を含むコンピュータプログラムであって、
    実行中のグラフィックアプリケーションプログラムにおいて、
    コンピュータ設計支援プログラム(CAD)から一つ以上の図形関数に対する関数呼び出しのシーケンスを受け取って実行するに際して
    前記コンピュータは、情報処理プログラム(11、12、15)を実行することのできる少なくとも一つの中央処理ユニットと、前記情報処理プログラム(11、12、15)および幾何学的実体(10)が結合したデータを、前記情報処理プログラム(11、12、15)の実行中に保存することのできるメモリ(16)を有し、
    図形関数の処理は、点データと実体データとの種類のデータにより図形を生成出力するためのアプリケーションプログラムインターフェース(API)を介して実行するものであり、
    前記コンピュータ設計支援プログラム(CAD)は、オリジナルのAPIライブラリに対してではなく置換ライブラリに対して関数呼び出しを行い
    各関数呼び出しに応じて、関数呼び出しが予め定義された一つ以上の関数呼び出しの一つであるかどうか決定し、次に、
    関数呼び出しに係るデータが、点データの種類ならば、エクスポート用のデータ構造に一つ以上の幾何学的実体の頂点を示す点データを加え、
    関数呼び出しに係るデータが、実体データの種類ならば、エクスポート用のデータ構造に一つ以上の幾何学的実体を示す実体データを加え、
    関数呼び出しが、終了状態を示す種類ならば、エクスポート用のデータ構造のデータを一つ以上のテキスト形式のエクスポートファイルにエクスポートし、
    関数呼び出しの最後のシーケンスを受信した後、一つ以上のエクスポートファイルを閉じ、
    関数呼び出しのシーケンスは、二つ以上の終了状態の関数呼び出しを含み、二つ以上の関数呼び出しの終了状態に応じて二つ以上の回数のエクスポートが起こり
    点データは、一つ以上の頂点を示し、実体データは一つ以上の幾何学的実体を示し、
    前記テキスト形式のエクスポートファイルは、第二フォーマットによるものであり、
    第二フォーマットは、前記CADプログラムを用いた第一フォーマットと異なり、データ構造が多数のデータテーブルを含み、点データは、第一のテーブルに加えられ、実体データは第二のテーブルに加えられることを特徴とするコンピュータプログラム。
  7. 一つ以上のテキストエクスポートファイルは、図形変換形式(DXF)ファイルであることを特徴とする、請求項に記載のコンピュータプログラム。
  8. 実体データは、三角形を特定するデータを含むことを特徴とする、請求項に記載のコンピュータプログラム。
  9. 実体データは、四角形を特定するデータを含むことを特徴とする、請求項に記載のコンピュータプログラム。
  10. エクスポートされたデータは、外付けされた記憶手段に記憶されるようにしたことを特徴とする、請求項に記載のコンピュータプログラム。
JP2003511103A 2001-07-04 2001-07-04 二次元あるいは三次元の幾何学的実体に結合したデータのエクスポートシステム Expired - Fee Related JP4125673B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/FR2001/002136 WO2003005201A1 (fr) 2001-07-04 2001-07-04 Procede et systeme d'exportation de donnees associees a des entites geometriques bidimensionnelles ou tridimensionnelles

Publications (2)

Publication Number Publication Date
JP2004534320A JP2004534320A (ja) 2004-11-11
JP4125673B2 true JP4125673B2 (ja) 2008-07-30

Family

ID=8860110

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2003511103A Expired - Fee Related JP4125673B2 (ja) 2001-07-04 2001-07-04 二次元あるいは三次元の幾何学的実体に結合したデータのエクスポートシステム

Country Status (13)

Country Link
US (2) US7150026B2 (ja)
EP (1) EP1402371B1 (ja)
JP (1) JP4125673B2 (ja)
KR (1) KR100876025B1 (ja)
CN (1) CN1318975C (ja)
AT (1) ATE278987T1 (ja)
CA (1) CA2450941A1 (ja)
DE (1) DE60106301T2 (ja)
DK (1) DK1402371T3 (ja)
ES (1) ES2228910T3 (ja)
HK (1) HK1063082A1 (ja)
PT (1) PT1402371E (ja)
WO (1) WO2003005201A1 (ja)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2823896B1 (fr) * 2001-04-23 2003-10-24 E Bourgeois Ets Simulateur de vol adapte a une famille d'aeronefs
KR100876025B1 (ko) 2001-07-04 2008-12-26 오카이그렉제드 이차원 또는 삼차원 기하 요소와 관련된 데이터엑스포트를 위한 방법 및 시스템
US7236914B1 (en) * 2002-02-22 2007-06-26 Microsoft Corporation Integrated aircraft flight dynamics prediction and simulation
US7002573B2 (en) * 2003-01-16 2006-02-21 1914 Holding Company Method and system for converting engineering data into 3D modeling data
WO2005055148A1 (en) * 2003-11-29 2005-06-16 Vital Images, Inc. Segmented volume rendering using a programmable graphics pipeline
US20070168309A1 (en) * 2005-12-01 2007-07-19 Exent Technologies, Ltd. System, method and computer program product for dynamically extracting and sharing event information from an executing software application
US20070129990A1 (en) * 2005-12-01 2007-06-07 Exent Technologies, Ltd. System, method and computer program product for dynamically serving advertisements in an executing computer game based on the entity having jurisdiction over the advertising space in the game
US7596536B2 (en) * 2005-12-01 2009-09-29 Exent Technologies, Ltd. System, method and computer program product for dynamically measuring properties of objects rendered and/or referenced by an application executing on a computing device
US7596540B2 (en) * 2005-12-01 2009-09-29 Exent Technologies, Ltd. System, method and computer program product for dynamically enhancing an application executing on a computing device
US8629885B2 (en) * 2005-12-01 2014-01-14 Exent Technologies, Ltd. System, method and computer program product for dynamically identifying, selecting and extracting graphical and media objects in frames or scenes rendered by a software application
US20070296718A1 (en) * 2005-12-01 2007-12-27 Exent Technologies, Ltd. Dynamic resizing of graphics content rendered by an application to facilitate rendering of additional graphics content
US20070171222A1 (en) * 2006-01-23 2007-07-26 Autodesk, Inc. Application-independent method for capturing three-dimensional model data and structure for viewing and manipulation
US20080007563A1 (en) * 2006-07-10 2008-01-10 Microsoft Corporation Pixel history for a graphics application
JP5815408B2 (ja) * 2008-09-16 2015-11-17 トムソン ライセンシングThomson Licensing スケーラブルビデオコーディングを利用したリニアなデジタルtv番組の伝送方法
DE102009058802B4 (de) * 2009-12-18 2018-03-29 Airbus Operations Gmbh Anordnung zur kombinierten Darstellung eines realen und eines virtuellen Modells
EP2523130A1 (en) * 2011-05-11 2012-11-14 Dassault Systèmes Method for designing a geometrical three-dimensional modeled object
CN104346753A (zh) * 2013-08-07 2015-02-11 鸿富锦精密工业(深圳)有限公司 裁切最优化处理系统及方法
WO2015187133A1 (en) * 2014-06-03 2015-12-10 Landmark Graphics Corporation Integrating external algorithms into a flexible framework for imaging visualization data
US10416836B2 (en) * 2016-07-11 2019-09-17 The Boeing Company Viewpoint navigation control for three-dimensional visualization using two-dimensional layouts
CN108259496B (zh) 2018-01-19 2021-06-04 北京市商汤科技开发有限公司 特效程序文件包的生成及特效生成方法与装置、电子设备
CN112860168B (zh) 2018-02-08 2022-08-02 北京市商汤科技开发有限公司 特效程序文件包的生成及特效生成方法与装置、电子设备

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5819062A (en) * 1994-12-05 1998-10-06 Motorola Inc. Method for converting design intent into a neutral-file-format for computer aided design applications
US5616876A (en) * 1995-04-19 1997-04-01 Microsoft Corporation System and methods for selecting music on the basis of subjective content
US5793371A (en) * 1995-08-04 1998-08-11 Sun Microsystems, Inc. Method and apparatus for geometric compression of three-dimensional graphics data
US5988862A (en) * 1996-04-24 1999-11-23 Cyra Technologies, Inc. Integrated system for quickly and accurately imaging and modeling three dimensional objects
JP4253045B2 (ja) 1996-08-01 2009-04-08 武藤工業株式会社 図面データ修復方法
US5995113A (en) 1996-08-02 1999-11-30 Hewlett-Packard Company Coloring events in event streams in order to provide information about operation of a software library
JPH10155094A (ja) 1996-09-30 1998-06-09 Ricoh Co Ltd 色変換処理装置およびその方法,動的にリンク可能なプログラムモジュールの拡張方法およびそれを適用した色変換処理方法並びにそれらの方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
JPH10301971A (ja) 1997-04-24 1998-11-13 Hiruta Kogyo Kk Cadデータ受渡方法
US5999186A (en) * 1997-05-23 1999-12-07 3-Design L.L.C. Reference based parametric dimensioning method and system
JPH1125154A (ja) * 1997-07-07 1999-01-29 Hitachi Telecom Technol Ltd Cadシステム
US6847384B1 (en) * 1998-05-14 2005-01-25 Autodesk, Inc. Translating objects between software applications which employ different data formats
US6614428B1 (en) * 1998-06-08 2003-09-02 Microsoft Corporation Compression of animated geometry using a hierarchical level of detail coder
JP3301971B2 (ja) 1998-08-05 2002-07-15 三洋電機株式会社 集光ユニット及び該集光ユニットを具えた投写装置
FR2782183B1 (fr) * 1998-08-05 2000-10-13 Geofermat Sarl Procede et systeme de traitement d'informations a reference spatiale, notamment d'informations cartographiques, applications et appareils implementant ce procede
US6738065B1 (en) * 1999-08-10 2004-05-18 Oshri Even-Zohar Customizable animation system
US7203946B2 (en) * 1999-10-11 2007-04-10 Hewlett-Packard Development Company, L.P. System and method for intercepting, instrumenting and characterizing usage of an application programming interface
US7203634B2 (en) * 2000-10-30 2007-04-10 Translation Technologies, Inc. Computational geometry system, interrupt interface, and method
KR100876025B1 (ko) 2001-07-04 2008-12-26 오카이그렉제드 이차원 또는 삼차원 기하 요소와 관련된 데이터엑스포트를 위한 방법 및 시스템
EP1443431A4 (en) * 2001-11-07 2007-05-09 Kajima Corp Construction output INFORMATION INTEGRATION SYSTEM
US7492364B2 (en) * 2002-07-23 2009-02-17 Imagecom, Inc. System and method for creating and updating a three-dimensional model and creating a related neutral file format

Also Published As

Publication number Publication date
DE60106301D1 (de) 2004-11-11
JP2004534320A (ja) 2004-11-11
DE60106301T2 (de) 2005-10-20
CA2450941A1 (fr) 2003-01-16
US20070094299A1 (en) 2007-04-26
US20040189671A1 (en) 2004-09-30
DK1402371T3 (da) 2005-02-14
EP1402371B1 (fr) 2004-10-06
ES2228910T3 (es) 2005-04-16
PT1402371E (pt) 2004-12-31
US7150026B2 (en) 2006-12-12
EP1402371A1 (fr) 2004-03-31
CN1318975C (zh) 2007-05-30
US7747570B2 (en) 2010-06-29
KR20040018425A (ko) 2004-03-03
ATE278987T1 (de) 2004-10-15
KR100876025B1 (ko) 2008-12-26
CN1526098A (zh) 2004-09-01
WO2003005201A1 (fr) 2003-01-16
HK1063082A1 (en) 2004-12-10

Similar Documents

Publication Publication Date Title
JP4125673B2 (ja) 二次元あるいは三次元の幾何学的実体に結合したデータのエクスポートシステム
CN101675453B (zh) 用于分析对于应用程序修改前命令改变的性能的图形命令管理工具和方法
US7095416B1 (en) Facilitating performance analysis for processing
EP2438576B1 (en) Displaying a visual representation of performance metrics for rendered graphics elements
JP5489395B2 (ja) グラフィックスパイプラインサブユニットのデバッグ方法及びシステム
US6046747A (en) Graphics application programming interface avoiding repetitive transfer of texture mapping data
US20070171222A1 (en) Application-independent method for capturing three-dimensional model data and structure for viewing and manipulation
CN1512454A (zh) 用于图形渲染的z-缓冲技术
CN110544290A (zh) 数据渲染方法及装置
JP2008192164A (ja) グラフィカル画像生成分析方法
KR20080022591A (ko) 내장형 디바이스에서의 3d 콘텐츠에 대한 오프라인 최적화파이프라인
JP3359634B2 (ja) 境界内更新を備えたグラフィックス出力システム
EP2090994A2 (en) System, method and computer program product for computer modeling with generative components
KR101239965B1 (ko) 렌더링 장치 및 방법
US6933940B2 (en) Incremental resolution changes in multi-resolution meshes with update records
JPH0136152B2 (ja)
CN115454432B (zh) 一种基于bim平台考试开发方法与系统
JP2012033175A (ja) 幾何モデルを動的に更新する方法およびシステム
US20070040939A1 (en) Encapsulating frame of graphics data for reply
JPH03180979A (ja) マルチプロセッサ・グラフィック・システム
Revie Designing a Data-Driven Renderer
CN117373013A (zh) 一种三维模型的可视化版本比较方法和装置
CN114040518A (zh) 网络节点展示方法及装置
JP2827122B2 (ja) 図形処理方法
CN115984409A (zh) 一种地理信息系统矢量数据绘制的方法、装置及电子设备

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20040827

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070508

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070807

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070814

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070910

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071120

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20080219

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

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

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20110516

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20110516

Year of fee payment: 3

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

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

Free format text: PAYMENT UNTIL: 20110516

Year of fee payment: 3

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313531

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

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

Year of fee payment: 4

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: R3D02

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

Free format text: PAYMENT UNTIL: 20130516

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20130516

Year of fee payment: 5

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees