(57)【要約】      （修正有）【課題】  モデル化オブジェクトのデータベースにおいてナビゲートを行うためのグラフィカルな方法を提供すること。【解決手段】  リレーショナルデータベース内でナビゲートを行うために、ユーザは、第１のデータおよび第１の関係を選択し、該関係に従って第１のデータに関連する第２のデータが検索される。次いで、第２のデータによって表されるオブジェクトの３次元表現がユーザに表示される。表示オブジェクトのうちの１つおよび第２の関係を選択すると、選択オブジェクトを表す第２のデータが識別され、第２の関連に従って識別された第２のデータに関連する第３のデータが検出される。次いで第３のデータによって表されるオブジェクトの３次元表現が表示される。ユーザは、データベースの構造を知り、理解する必要なく、データベース内のオブジェクトの３次元表現内をナビゲートすることができる。【選択図】  図２
2006114014.tif 000002
【特許請求の範囲】
【請求項１】
データの組および前記データの組中のデータの間の関係を含むデータベースにおいてナビゲートを行うための方法であって、
第１のデータおよび第１の関係を選択するステップ（１２）と、
前記第１の関係に従って前記第１のデータに関係する第２のデータを検出するステップ（１４）と、
前記第２のデータによって表されるオブジェクトの３次元表現を表示するステップ（１６）と、
前記表示されたオブジェクトのうちの１つおよび第２の関係を選択するステップ（１８）と
前記第２のデータの間で、前記選択されたオブジェクトを表すデータを特定し、前記第２の関係に従って前記特定された第２のデータに関係する第３のデータを検出するステップ（２０）と、
前記第３のデータによって表されるオブジェクトの３次元表現を表示するステップ（２２）と
を備えたことを特徴とする方法。
【請求項２】
前記データベース内の前記データの組は、３Ｄモデル化オブジェクトを表すデータを含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記表示された３次元表現は、表示されたオブジェクト間に、前記表示されたオブジェクトを表す前記データ間の関係のグラフィカル表現を含むことを特徴とする請求項１または２に記載の方法。
【請求項４】
前記第１のデータおよび第１の関係を選択するステップは、第１のレイアウトを選択するステップを含み、前記第２のデータによって表されたオブジェクトの前記３次元表現は、前記第１のレイアウトでの表現であることを特徴とする請求項１、２または３に記載の方法。
【請求項５】
前記表示されたオブジェクトのうちの１つおよび第２の関係を選択するステップは、第２のレイアウトを選択するステップを含み、前記第３のデータによって表されるオブジェクトの前記３次元表現は、前記第２のレイアウトでの表現であることを特徴とする請求項１ないし４のいずれかに記載の方法。
【請求項６】
前記レイアウトは、
オブジェクトが線に沿って分解された透視図で表されるインラインレイアウト、
インプレースレイアウト、
オブジェクトが円盤上に分散された分解透視図で表されるインディスクレイアウト、および
３Ｄの小型表現の２Ｄレイアウト
の中から選択されることを特徴とする請求項４または５に記載の方法。
【請求項７】
前記レイアウトは、動画化されることを特徴とする請求項４、５または６に記載の方法。
【請求項８】
前記関係は、
「構成」関係、
「使用場所」関係、
「接触」関係、
「衝突」関係、および
「影響」関係
のうちの少なくとも２つを含むことを特徴とする請求項１ないし７のいずれかに記載の方法。
【請求項９】
前記オブジェクトの３次元表現を計算し、格納するステップをさらに備えたことを特徴とする請求項１ないし８のいずれかに記載の方法。
【請求項１０】
３Ｄモデル化オブジェクトを表すデータの組と、
前記データの組のデータ間の１組の関係と、
モデル化オブジェクトの少なくとも１つの３次元表現と、
モデル化オブジェクトの前記少なくとも１つの３次元表現をナビゲートし、視覚化するルーチンと
を備えたことを特徴とするデータベース。
【請求項１１】
請求項１ないし９のいずれかに記載の方法を実施することを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明はコンピュータプログラムおよびシステムの分野に関し、より詳細には、モデル化オブジェクトを表すデータのデータベースを含む製品ライフサイクル管理ソリューションに関する。
【背景技術】
【０００２】
部品の設計または部品のアセンブリの市場には、ＣＡＴＩＡという商標でＤＡＳＳＡＵＬＴ  ＳＹＳＴＥＭＥＳによって提供されるシステムをはじめとして、いくつかのシステムおよびプログラムが提供されてきている。これらのいわゆるコンピュータ支援設計（ＣＡＤ）システムによって、ユーザは、オブジェクトの複雑な３次元（３Ｄ）モデルまたはオブジェクトのアセンブリを構築し、操作することができる。したがってＣＡＤシステムによって、一定の場合、面とともに、エッジや線を使用してモデル化オブジェクトの表現が提供される。これらの線またはエッジは、ｎｏｎ−ｕｎｉｆｏｒｍ  ｒａｔｉｏｎａｌ  Ｂ−ｓｐｌｉｎｅｓ（ＮＵＲＢＳ）などの様々な方法で表すことができる。こうしたＣＡＤシステムは、部品または部品のアセンブリをモデル化オブジェクトとして管理しており、したがってモデル化オブジェクトは本質的に形状の仕様となる。具体的には、ＣＡＤファイルは、仕様を含んでおり、その仕様から形状が生成され、形状から表現が生成される。仕様、形状、および表現は、単一または複数のＣＡＤファイルに格納することができる。ＣＡＤシステムは、モデル化オブジェクトを設計者に示すグラフィックツールを備えており、これらのツールは、複雑なオブジェクトの表示のために設けられたものである。ＣＡＤシステムでオブジェクトを表すファイルの一般的なサイズは、一部品について（ｆｏｒ  ｐａｒｔ）１メガバイトの範囲であり、アセンブリは何千もの部品を含むことができる。ＣＡＤシステムは、電子ファイルに格納されているオブジェクトのモデルを管理する。
【０００３】
製品ライフサイクル管理ソリューション（ＰＬＭ）といったシステムも提案されており、このようなシステムとして、ＣＡＴＩＡ、ＥＮＯＶＩＡ、およびＤＥＬＭＩＡの商標でＤＡＳＳＡＵＬＴ  ＳＹＳＴＥＭＥＳによって提供されるものなどが存在する。これらのソリューションは、製品工学の知識を構成するエンジニアリングハブ（Ｅｎｇｉｎｅｅｒｉｎｇ  Ｈｕｂ）、製造工学の知識を管理するマニュファクチャリングハブ（Ｍａｎｕｆａｃｔｕｒｉｎｇ  Ｈｕｂ）、およびエンジニアリングハブおよびマニュファクチャリングハブへのエンタープライズの統合および接続を可能にするエンタープライズハブを提供する。システムにより、全体的に、製品、プロセス、リソースをリンクするオープンオブジェクトモデルが提供され、最適化された製品定義、製造準備、生産、およびサービスを動かす動的な知識に基づいた製品開発および決定支援が可能となる。こうしたＰＬＭソリューションは、製品のリレーショナルデータベースを備える。データベースは、１組のテキストデータおよびデータ間の関係を含む。このデータには一般に、製品に関連する技術データが含まれ、これはデータの階層内で順序付けられており、検索可能なように索引付けされている。データは、多くの場合モデル化オブジェクトである製品を表す。
【０００４】
こうしたＰＬＭソリューションでの問題の１つとして、システムのユーザが製品を表示し、製品の３次元グラフィック表現を取得したい場合がある。ＤＡＳＳＡＵＬＴ  ＳＹＳＴＥＭＥＳは、ＤＭＵ  Ｒｅｖｉｅｗの名前で、ＰＬＭソリューションのユーザがシステムで管理されている製品の３次元グラフィック表現を処理することができる一連のＣＡＤツールを提供する。これらのツールの使用は、製品のＣＡＤ表現から予め計算されているデジタルモックアップを使用するかどうかに依存する。これらのツールは、具体的には図１を参照して後述するように、製品の制限された１組のグラフィックビューをさらに提供し、ＤＭＵシステムは通常、製品の３次元表現を提供する。ＤＭＵ  Ｎａｖｉｇａｔｏｒの名前で販売されているシステムで、ユーザは、複雑な製品の３次元表現を表示することができる。表示は、様々な製品または前記表示された製品の部品を表す階層ツリーをさらに含む。図１は、ＤＭＵ  Ｎａｖｉｇａｔｏｒでの表示のビューである。表示の左側には、データベースの内容を表すツリー２が表示されている。図１に示すように、ツリーのルートレベルは、アセンブリ一式を示しており、図１の例では車である。ツリーの次のレベルは、調整システム、エンジン、車体、ギアボックス、ペダルシステムなど、ルートレベルの製品を形成する一連のサブアセンブリを示している。また、一連のアプリケーションも提供されている。この表示はさらに、製品の３次元表現を示している。ユーザは、例えばペダルシステムなど、ツリー内のサブアセンブリのうちの１つをクリックすることができ、その結果システムにより選択されたサブアセンブリの３次元表現が表示される。ユーザは、サブアセンブリの左の「＋」記号をクリックすることによってツリー内の対応する枝を展開して、例えばペダルシステムにあるブレーキペダルなど、サブアセンブリを構成する部品を表示することができる。この場合もまた、部品の１つを選択することによって、システムは、関連の部品の３次元表現を表示する。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このようなシステムでは、ユーザに対し、データベースに格納されている製品の３次元表現が提供される。しかし、このシステムでのナビゲーションは、さらに改良することができる。ＤＭＵ  ｒｅｖｉｅｗやＤＭＵ  ＮａｖｉｇａｔｏｒなどのＣＡＤツールを使用すると、ユーザは、システムにロードされている部品または製品間のナビゲーションを行うことしかできない。したがって、ナビゲーションの範囲は非常に限られている。というのは、ユーザは、使用可能なすべての製品またはアセンブリ間をナビゲートしたい場合、こうした製品またはアセンブリのすべてをロードする必要があり、すべてをロードするのはハードウェアの制約およびトランザクションの問題のために不可能だからである。
【０００６】
実際に、ＤＭＵ製品は、ナビゲーションの範囲に関して限られている。具体的には、ユーザは、まずＤＭＵセッションを開く。ＤＭＵセッションでは部品およびアセンブリの限られたリストが定義される。これによってシステムがＤＭＵナビゲーションでそれ以降に使用される表現を計算し、格納することができるようになる。ナビゲーションは、ＤＭＵセッションが開かれたときに定義された部品およびアセンブリのリストに限定される。
【０００７】
さらに、ユーザは、上記のブレーキペダルがどこで使用されているか、すなわちブレーキペダルが組み込まれている他のモデルの車を知りたい場合がある。実際のＣＡＤツールによってユーザは、主に「構成」関係（“ｉｓ  ｃｏｍｐｏｓｅｄ  ｏｆ”ｒｅｌａｔｉｏｎ）に従って部品または製品の間をナビゲートすることができる。製品データ管理（ＰＤＭ）システムで使用されているデータベースによって、部品または製品の間のすべてのタイプの関係に対してクエリを行うことができ、データベースのナビゲーションの範囲は最大限の広さである。実際に、ユーザはすべての部品、製品、またはアセンブリにアクセスすることができる。
【０００８】
それにもかかわらず、データベースはユーザに簡単にナビゲートさせない。というのは、データはグラフィカル表現を有してないからである。データはファイル名またはタイプによって識別され、こうした名前は、十分には関連付けされておらず、ユーザが探している項目を正確に識別することができない可能性がある。
【０００９】
したがって、ユーザがモデル化オブジェクトを表すリレーショナルデータベース、特に製品ライフサイクル管理システムでの製品のデータベースでナビゲートを行うことができるソリューションが必要である。このソリューションは、ユーザフレンドリであり、ユーザが容易に、また直観的に製品を探し、表示できることが好ましい。
【課題を解決するための手段】
【００１０】
一実施態様において、本発明は、１組のデータおよびその組のデータ間の関係を含むデータベースでナビゲートを行うための方法であって、
−  第１のデータおよび第１の関係を選択するステップと、
−  第１の関係に従って第１のデータに関連する第２のデータを検出するステップと、
−  第２のデータによって表されるオブジェクトの３次元表現を表示するステップと、
−  表示されたオブジェクトのうちの１つおよび第２の関係を選択するステップと、
−  第２のデータ間で、選択されたオブジェクトを表すデータを識別し、第２の関係に従って識別された第２のデータに関連する第３のデータを検出するステップと、
−  第３のデータによって表されるオブジェクトの３次元表現を表示するステップと
を含む方法を提供する。
【００１１】
データベース内のデータの組が３Ｄモデル化オブジェクトを表すデータを含むようにすることもできる。
【００１２】
また、表示された３次元表現は、表示されたオブジェクト間に、表示されたオブジェクトを表すデータ間の関係のグラフィカル表現を含むことも可能である。
【００１３】
一実施態様において、第１のデータおよび第１の関係を選択するステップは、第１のレイアウトを選択するステップを含み、第２のデータによって表されたオブジェクトの３次元表現は、第１のレイアウトでの表現である。
【００１４】
また、表示されたオブジェクトのうちの１つおよび第２の関係を選択するステップは、第２のレイアウトを選択するステップを含み、第３のデータによって表されるオブジェクトの３次元表現は、第２のレイアウトでの表現とすることもできる。
【００１５】
次いでレイアウトは、
−  オブジェクトが線に沿って分解された透視図で表されるインラインレイアウト（ｉｎ−ｌｉｎｅ  ｌａｙｏｕｔ）
−  インプレースレイアウト（ｉｎ−ｐｌａｃｅ  ｌａｙｏｕｔ）
−  オブジェクトが円盤上に分散された分解透視図で表されるインディスクレイアウト（ｉｎ−ｄｉｓｋ  ｌａｙｏｕｔ）
−  ３Ｄの小型表現の２Ｄレイアウト
の中から選択することができる。
【００１６】
レイアウトは、動画化することもできる。  
関係は、
−  「構成」関係
−  「使用場所」関係（ｒｅｌａｔｉｏｎ“ｗｈｅｒｅ  ｕｓｅｄ”）
−  「接触」関係（ｒｅｌａｔｉｏｎ“ｉｎ  ｃｏｎｔａｃｔ  ｗｉｔｈ”）
−  「衝突」関係（ｒｅｌａｔｉｏｎ“ｉｎ  ｃｌａｓｈ  ｗｉｔｈ”）
−  「影響」関係（ｒｅｌａｔｉｏｎ“ｉｍｐａｃｔ  ｗｉｔｈ”）
のうちの少なくとも２つを含むようにすることができる。
【００１７】
この方法は、オブジェクトの３次元表現を計算し、格納するステップをさらに含むことができる。
【００１８】
本発明は、
−  ３Ｄモデル化オブジェクトを表す１組のデータ
−  データ間の１組の関係
−  モデル化オブジェクトの少なくとも１つの３次元表現
−  モデル化オブジェクトの前記少なくとも１つの３次元表現をナビゲートし、視覚化するルーチン
を含むデータベースをも提供する。
【００１９】
最後に、本発明は、この方法を実施するコンピュータプログラムを提供する。
【００２０】
次に、本発明を具体化するシステムについて、非限定的な一例として、添付の図面を参照して説明する。
【発明を実施するための最良の形態】
【００２１】
本発明は、ＰＬＭソリューションで使用されるものなど、リレーショナルデータベースに適用される。こうしたデータベースは、当業者にはよく知られているように、１組のデータ、およびその組のデータ間の関係を含む。この関係は、データベース内での検索を高速化する目的で、多くの場合索引付けされる。ファイルの観点から、リレーショナルデータベースは、単一のファイルから成るのではなく、様々なデータおよび関係を格納する複合ファイルシステムを使用する。データベース内のデータは、モデル化オブジェクトを表す。
【００２２】
ＰＬＭソリューションにおいて、１組のデータは、例えば製品またはモデル化オブジェクトについての
−  部品番号
−  製品またはモデル化オブジェクトについての製造または調達情報
−  製品の図面またはＣＡＤファイルへの参照
−  （設計の反復の履歴、リリースバージョンの履歴）バージョン管理
を含む。
【００２３】
ＰＬＭソリューションでの関係は、特に「構成」関係を含む。この関係によって、図１に表示したペダルシステムサブアセンブリなど、製品のクラスタまたはサブアセンブリを作成できるようになる。関係には、所与の製品が使用されているすべてのサブアセンブリを表す「使用場所」関係をも含むことができる。また、関係には、ユーザがデータベース内の様々な製品間の接触を管理することができる「接触」関係も含むことができる。関係には、様々なデータが互いに重なるオブジェクトを表すことを示す「衝突」関係を含むことができる。これは、設計の問題を見つけるのに役立つ。関係には、部品の依存関係を含まれる。この関係は、部品が別のものから構築されているとき、「リレーショナルデザイン」としても知られている影響グラフを表す。最後に、様々なデータの属性を表す関係が存在する可能性がある。これらの属性は、オブジェクトを形成する材料、オブジェクトの原点など、ＰＬＭソリューションでの通常の属性を含むことができる。
【００２４】
図１の例では、「構成」関係によって、本システムは、システムでのレベルの数に従って、ペダルシステムを形成する製品のリスト、ペダルシステムを形成するサブアセンブリのリストなど、サブアセンブリ内の製品のリストを提供することができる。同じ例で、「使用場所」関係は、所与の製品について、その製品が使用されているサブアセンブリのリストを提供する。例えば参照ボールトから開始して、ユーザはどのサブアセンブリに類似のボールトが使用されているかを見つけることができる。「接触」関係は、自明であり、さらに説明する必要はない。
【００２５】
本発明は、データを３次元表現で表示することによって、ユーザがデータ間をナビゲートできるようにする。表示されたデータは、データベースに存在する様々な関係に従って選択される。
【００２６】
図２は、本発明によるプロセスを示すフローチャートである。図３から図７は、図２のプロセスで提供される表示の例を示している。図３から図７の例は、アパートに含まれている壁およびドアから備品要素まで、アパートを構成する様々な製品のデータベースに関連する。
【００２７】
ステップ１０で、データベースが提供される。
【００２８】
ステップ１２で、ユーザは第１のデータおよび第１の関係を選択する。これは、図１のものなど、ツリーの使用により行うことができる。また、ユーザは、例えば、第１のデータの識別情報を入力する、リスト内の第１のデータを選択するなどによって、別のタイプのユーザインターフェースにより、第１のデータを選択することもできる。関係は、コンボボックス、アイコン、特殊コマンド、右クリックなど、任意の種類のユーザインターフェースにより選択することができる。
【００２９】
第１のデータおよび第１の関係の選択に応答して、システムは、オブジェクトを３次元表現で表示する。表示されたオブジェクトは、実際には、第１の関係に従って第１のデータに関連する第２のデータによってデータベースに表されているオブジェクトである。このため、システムは、データベースの関係上の特性を使用して、第１の関係で第１のオブジェクトに関連するデータベース内のすべてのデータを選択することができる。ステップ１４で第２のデータが識別されると、ステップ１６に示すように、これらの第２のデータによって表されるモデル化オブジェクトが表示される。
【００３０】
提案した例では、ユーザは、アパートの１部屋および「構成」関係を選択することができる。この場合、システムは、部品または製品など、選択された部屋を構成するすべてのデータについてデータベースを検索する。図３は、選択された部屋のビューを示している。
【００３１】
３次元ビューは、図３から図７に示すような様々な種類またはレイアウトのうちの１つとすることができる。
【００３２】
図３の例などの場合、これは、アセンブルされたときのオブジェクトの通常の３次元表現であり、これを「インプレース」レイアウトと呼ぶことができる。図３の例では、オブジェクトはアパートである。
【００３３】
様々な第２のデータオブジェクトを、分解透視図において分けることができる。レイアウトは、所与の線に沿って分解することができ、線の方向は、ユーザによって選択することができる。これは、「「インライン」レイアウト」と呼ぶことができる。このレイアウトは、例えば、表したアセンブリまたは部品の重心、または表したアセンブリまたは部品の中心など所与の点からの方向に沿って分解することができる。こうしたレイアウトによって、ユーザは、様々な第２のデータオブジェクトを識別し、選択することが容易になる。図８にインラインレイアウトでの表現を示している。
【００３４】
図４の例などの場合、第２のデータオブジェクトを円盤または円に分散させて、「インディスク」レイアウトを得ることができる。このレイアウトは、モデルの理解を容易にし、また追加のデータを選択しやすくする。図４の例では、ユーザは、図３のアパートおよび「構成」関係を選択している。アパートを形成している様々な要素が円盤上に表示されている。
【００３５】
考え得る別のレイアウトは、様々な部品の小型のレイアウトである。例えば、オブジェクトの３Ｄ小型表現の２Ｄレイアウトを使用することができる。これは図５の表現に例示されており、図５には図３および図４で表したアパートの居間からの様々な項目が示されている。
【００３６】
レイアウトは、動画化することもできる。したがって、ユーザがレイアウトを変更したり、所与のレイアウトを選択したりしたとき、様々なオブジェクトが徐々に動く。これは、様々なオブジェクトの位置を理解するのを助ける。
【００３７】
ユーザに表示されたレイアウトの種類は、予め設定されていても、ユーザによって選択されてもよい。１つの有効なソリューションとして、ユーザがすべての表示に使用されるデフォルトの種類のビューを設定することができる。所与のレイアウトが表示されると、ユーザは、デフォルトの種類のレイアウトを別の種類に変更することができる。
【００３８】
さらに、各部品または製品の３次元表現を予め計算することができる。これによって計算時間が短縮する。データベースで繰り返し使用されると予想される少なくとも表現の一部について、３次元表現を予め計算することができる。これは、例えば、サブアセンブリの３次元表現の場合がそうである。こうした予め計算された表現は、何もしないで計算され、システムによってアクセスできるように格納することができる。所与の３次元表現が表示される場合、先ず、すでに格納されている表現中を最初に検索し、表示すべき表現がない場合、計算が行われることになる。
【００３９】
プロセスのステップ１８で、ユーザは、表示された第２のデータのうちの１つおよび第２の関係を選択する。第２の関係は、第１の関係と同じものでもよく、これをデフォルトの選択とすることができる。また、第２の関係は、第１の関係と異なるものでもよい。したがってステップ１８は、ステップ１２と類似する。しかし、ステップ１８では、ユーザに３Ｄ表現で表示されている状態で直接選択が行われる。
【００４０】
ステップ２０で、ステップ１４と同様、選択された第２の関係を介して選択された第２のデータに関連する第３のデータが検索され、識別される。ステップ２２で、選択されたレイアウトに従って、第３のデータの３Ｄ表現がユーザに対して表示される。
【００４１】
図６は、第２のデータおよび第２の関係のユーザ選択の例を示している。この例では、ステップ１６で、図４のビューがユーザに表示されたと仮定する。ユーザは、居間および同じ「構成」関係を選択している。図６は、ステップ２２で表示された３Ｄ表現を示している。図４のビューと同様、図６のビューは、データが円盤または円上に分散されたレイアウトを示している。大きい円４０は、図４に表示されているものと同じものである。より小さい円４２は、第２の関係を表す。図６のビューは、ユーザが表示されたオブジェクト間の様々な関係を即座に理解できるようにする。これは、選択された関係がユーザに表示された３Ｄレイアウトに図形表示されることにより保証される。より詳細には、このビューは、オブジェクト間に、オブジェクトを表すデータ間の関係のグラフィカル表現を示す。
【００４２】
図７は、第２のデータおよび第２の関係のユーザ選択の別の例を示している。この例では、この場合もまた、ステップ１６で、図４のビューがユーザに表示されると仮定する。ステップ１８で、ユーザは、居間のフロア４４および「接触」関係を選択している。結果として得られた図７のビューは、「インディスク」レイアウトで、選択されたフロアに接する様々なデータまたはオブジェクトを示している。
【００４３】
図８は、レイアウトのさらに別の例を示している。図８の例では、表示されたオブジェクトは、ユーザによって選択された軸に沿って直線的にレイアウトされている。具体的には、表示されたオブジェクトは、ユーザによって選択された軸上に分散され、軸に沿って格納される。例えば、アセンブリ内の境界ボックスの中心の位置をオブジェクトのソートのために使用することができる。図８のビューによって、ユーザは、表示された様々なオブジェクトのアセンブリを直観的に理解することができる。図８の例では、図７と同じオブジェクトが横線上に表示される。
【００４４】
ステップ２２の後、プロセスはステップ１８に戻って処理がループする。これは、ユーザが表示された３Ｄビュー上の何らかのデータを再度選択し、新しい画像を表示するために新しい関係を再度選択することができることを意味する。
【００４５】
このプロセスによってユーザは、このデータベース内の様々な関係を利用しながら、データベースに含まれるデータをグラフィカルにナビゲートすることができる。使用可能な関係が「構成」関係のみである従来技術のソリューションと比べて、本発明では、データベース構造の事前の知識がなくてもナビゲーションが可能である。したがって、データベース内の一部のデータ、つまり所与のオブジェクトを、システムのユーザによって容易に見つけ出すことができる。
【００４６】
さらに、ユーザに表示された３Ｄビューは、関係のグラフィカル表現を含むことができる。「構成」関係が実際に別々のツリーに表示される従来技術のソリューションに比べて、本発明はユーザに、データベース内の様々な関係の直観的な理解を提供する。
【００４７】
本発明は、ＰＬＭソリューションなど既存のデータベースシステムへのアドオンとして実行することができる。次に本発明の考えることができる実装を、図９〜図１４を参照して説明する。
【００４８】
図９は、本発明の実行に使用可能なソフトウェアアーキテクチャの概略図であり、単一のクライアント、データベースサーバ５６、およびボールトのサーバを示している。クライアントは、ユーザインターフェースを管理し、構成要素５２、５８、６４を制御するナビゲーションエンジン５０を備える。ナビゲーションエンジンによって、ユーザは、オブジェクト、関係、および入手可能な場合、オブジェクトを表示するためのレイアウトの種類またはビューの種類を選択することができる。さらに、ナビゲーションエンジンは、ＰＬＭシステムで使用可能な通常の種類のクエリを提供することができる。
【００４９】
図９はさらに、クエリエンジン５２、データベースクライアント５４、およびデータベースサーバ５６を示している。クエリエンジン５２は、ナビゲーションエンジン５０によって制御されており、ユーザのコマンドに応じてデータベースステートメントを構築し、データベースステートメントをデータベースクライアント５４に渡す。また、クエリエンジン５２は、データベースクライアント５４から受信されたクエリ結果を管理する。
【００５０】
データベースクライアント５４は、データベースサーバ接続を管理するように構成されている。データベースクライアントは、クエリエンジン５２からクエリを受信し、そのクエリをデータベースサーバ５６に渡す。データベースクライアントは、データベースサーバ５６からクエリ結果を受信し、その結果をクエリエンジン５２に渡す。
【００５１】
データベースサーバ５６は、クライアント５４などいくつかのデータベースクライアントからクエリを受信し、これらのクエリに応じる。データベースサーバは、一般にリレーショナルデータベースであり、ＩＢＭから参照番号ＤＢ２で入手可能なソリューション、またはＯｒａｃｌｅから入手可能なソリューションを使用して実施することができる。また、データベースは、オブジェクトまたはＸＭＬデータベース、またはデータベースにアクセスするアプリケーションサーバとすることもできる。前記アプリケーションサーバは、高度なクエリ（近接クエリ、空間クエリなど）についての（その場で、または非同期に）処理を提供することもできる。
【００５２】
ナビゲーションエンジン５０でユーザが使用可能な追加のグラフィカルナビゲーション機能を除いて、構成要素５２、５４、５６は、ＰＬＭソリューションで使用されているものなど、当分野のリレーショナルデータベースと異なっている必要はない。したがって、これらの構成要素については詳しく説明しない。
【００５３】
図９は、データベース内に含まれるオブジェクトの表現を格納し、提供するボールトの（ｖａｕｌｔ）サーバ６２をさらに示している。言い換えれば、ボールトのサーバは、表現を格納するリポジトリとして使用される。ボールトのサーバ６２は、ファイルサーバとすることができ、これにより、表現は様々なファイルに格納することができる。これは、例えば「ｂｌｏｂ」（バイナリ言語オブジェクト）記憶を使用することによりデータベースサーバを使用して実施することもできる。また、プロキシおよび／またはキャッシュ技術を使用することもできる。ボールトのサーバに格納されているオブジェクトの表現は、例えば、境界ボックス、多角形、ビットマップ画像、ベクトル画像、細分割曲面、当分野で知られているより一般的な任意のフォーマットなど、様々なフォーマットとして存在することができる。後述するように、表現の漸進的なロードを可能にするためには、ボールトのサーバに様々なフォーマットを格納することが有効である。
【００５４】
ボールトのサーバは、ボールトのクライアント６０によりアドレス指定される。ボールトのクライアントによって、クライアントは、オブジェクトの表現を取り出すためにボールトのサーバをアドレス指定することができる。図９は、表現ローダ５８も示している。表現ローダ５８は、ユーザに表示されるオブジェクトの表現を取得するために、ボールトの（ｖａｕｌｔ）クライアント６０を介してボールトのサーバ６２に対してクエリを行う。さらに、表現ローダ５８は、ボールトのクライアント６０から表現を受信すると、表現の漸進的なロードを管理する。
【００５５】
視覚化エンジン６４は、ユーザへの表現の表示を管理する。視覚化エンジンは、ほとんどの場合グラフィックカードである、表示ハードウェア装置を管理する表示ドライバ６６をアドレス指定する。表示ハードウェアに表現を表示するために、ＯｐｅｎＧＬドライバを介して、またはＭｉｃｒｏｓｏｆｔ  Ｄｉｒｅｃｔ  ３Ｄ、ＤｉｒｅｃｔＸを使用して加速式ハードウェアを使用することができる。
【００５６】
図１０は、本発明による表示を構築するプロセスを示すフローチャートである。プロセスは、図９に示したソフトウェアアーキテクチャを使用する。ステップ７０〜７８で、第１のデータおよび第１の関係の選択に応答して、システムは、オブジェクトの３次元表現を表示する。ステップ８０で、ユーザはオブジェクトおよび関係を選択する。次に、示したように、図１０のプロセスは、ユーザに表示される新しいビューを構築するためにステップ７２に戻り処理がループする。
【００５７】
より具体的には、ステップ７０で、クエリが構築され、レイアウト種別が選択される。これは、図２のステップ１２に関して上述したように実行することができる。クエリおよびレイアウト種別の選択は、図９のナビゲートエンジン５０のユーザインターフェースによって可能になる。レイアウト種別は、図３〜図７を参照して例示した様々なタイプのビューのうちの１つとすることができる。
【００５８】
ステップ７２で、ステップ７０で構築されたクエリに一致するオブジェクトの属性を取得するために、データベースに対してクエリが行われる。図９のアーキテクチャで、このステップは、ナビゲートエンジン５０、クエリエンジン５２、データベースクライアント５４、およびデータベースサーバ５６によって実行される。ステップ７２の結果、表示する必要があるオブジェクトの１組の属性が提供される。
【００５９】
ステップ７４で、表示する必要があるオブジェクトの様々な表現を取得するために、ボールトのサーバに対してクエリが行われる。図９のアーキテクチャで、このステップは、ナビゲートエンジン５０、表現ローダ５８、ボールトのクライアント６０、およびボールトのサーバ６２によって実行される。ステップ７４の結果、選択されたレイアウトで、表示される様々なオブジェクトに対応する１組の表現が提供される。
【００６０】
ステップ７６で、表現は、選択されたレイアウトに従って、またデータベースサーバから取り出された情報に従って３Ｄ空間にレイアウトされる。図９のアーキテクチャで、これは、ナビゲートエンジン５０および視覚化エンジン６４によって実行することができる。レイアウトされた表現は、ステップ７８で、表示ドライバ６６によりユーザに表示される。
【００６１】
次いでプロセスは、小さい低質なフォーマットから大きい高質なフォーマットに、表現を漸進的にロードするために、ステップ７４、７６、７８の間をループ処理することができる。例えば、オブジェクトの多角形表現をロードする前に、まずオブジェクトの境界ボックス表現をロードすることができる。また、表現を流すこともできる。これによって、ユーザにオブジェクトのほとんどそのままの表現を提供することができる。この表現の質が最初はかなり劣っているものである場合でさえ、この表現は時間とともに向上する。最終的に、こうした表現を必ずしも長時間待つことなく、より高質でより完全な表現がユーザに提供される。マルチスレッドまたは非同期の入力／出力を使用して、バックグラウンドタスクとして表現をロードすることができる。これらのソリューションによって、データベースでのナビゲートがデータベース内でのユーザの作業を遅らせないように、より高い優先度をデータベースクエリに与えることができる。
【００６２】
ステップ７４、７６、７８を通るループは、最適かつより高質な表現がロードされ、ユーザに提供されると停止する。
【００６３】
そうでなければ、これらのステップを通るループは、ユーザが表示されたオブジェクトのうちの１つおよび関係を選択すると停止する。このステップを、図１０の参照番号８０に示している。これは、図２のステップ１８に対応する。次いでプロセスは、ステップ７２に戻り、データベースサーバに対するクエリが再度行われる。
【００６４】
図１０のプロセスおよび図９のアーキテクチャは、ボールトのサーバを使用し、ここにデータの予め計算された様々な表現が格納される。
【００６５】
図１１および図１２は、本発明を実行するように構成された、クライアントおよびネットワークハードウェアアーキテクチャの概略図である。図１１は、クライアントワークステーションを示している。ワークステーションは、中央処理装置９０、ＲＡＭ９２、およびＲＡＭへのアクセスを可能にするワークステーション内部通信バス９４を含む。ワークステーションは、さらに、グラフィカル処理ユニット９６、およびその関連のビデオＲＡＭ９８を備える。ディスクコントローラ１００は、ハードドライブ１０２など大容量メモリ装置へのアクセスを管理する。ネットワークアダプタ１０４は、ネットワーク１０６へのアクセスを管理する。
【００６６】
動作中、図９の様々なクライアント構成要素は、ＣＰＵ９０で実行されるプロセスである。ネットワークアダプタ１０４は、ネットワーク１０６を介してボールトのサーバ６２にアクセスするためにボールトのクライアント６０によって使用され、ネットワーク１０６を介してデータベースサーバ５６にアクセスするためにデータベースクライアント５４によってさらに使用される。ディスクコントローラ１００は、ローカルの大容量メモリ装置１０２上に表現のキャッシュを作成するために、ボールトのクライアントによって使用される。これによって頻繁に使用される表現の性能が向上する。表示ドライバ６６は、ビデオＲＡＭ９８に表現のレイアウトを提供する。これらは、ＧＰＵ９６により表示される。
【００６７】
クエリエンジン５２は、クエリを処理し、結果をＲＡＭ９２に格納する。表現ローダ５８は、表現の作業用フォーマットを処理し、ＲＡＭ９２に格納する。格納された表現は、ステップ７６を参照して説明したように、表示ドライバ６６によって使用され、表示ドライバ６６に送信される。
【００６８】
図１２は、本発明を実施するように構成されているネットワークアーキテクチャの概略図である。図１２のアーキテクチャは、一般にアクセス可能な表現のデータベースを提供する共通のボールトのサーバ、および共通のデータベースサーバにより様々なユーザがナビゲートを行うことができるように構成されている。図１２の例では、２つのローカルエリアネットワーク１１０および１１２が広域ネットワーク１１４で接続されている。図１２は、データベース１１６およびマスタのボールト１１８を示している。これらはＷＡＮ１１４内に示されており、ＬＡＮ１１０および１１２からアクセスすることができる。第１のＬＡＮ１１０は、２つのクライアント１２０および１２２、およびプロキシのボールト１２４を含む。第２のＬＡＮ１１２も、２つのクライアント１２６および１２８、およびプロキシのボールト１３０を含む。マスタのボールト１１８は、ＷＡＮ帯域幅の使用状況を最適化するために、各プロキシのボールト１２４、１３０において複製される。
【００６９】
動作中、ＬＡＮ１１０および１１２のうちの一方のクライアントは、ＷＡＮ１１４を介してデータベース１１６にアクセスする。第１のＬＡＮ１１０のクライアント１２０および１２２は、表現を取得するために、プロキシのボールト１２４にアクセスし、第２のＬＡＮ１１２のクライアント１２６および１２８は、表現を取得するために、プロキシのボールト１３０にアクセスする。この例の動作は、ＰＬＭソリューションを参照して上述したように、ほぼテキストクエリであるデータベース１１６に対するクエリは、ＷＡＮ内で対応され得ると仮定する。したがってＷＡＮは、データベース１１６に対する要求を満たすのに十分な帯域幅を有している。データベース１１６は、任意のクライアントによって更新することができるため、図１２のソリューションは、様々なデータベースプロキシでデータの更新を管理するより簡単である。図１２の動作は、ボールトのサーバ１１８をプロキシのボールト１２４および１３０に複製することによって、ＷＡＮ帯域幅の使用状況を最適化する。このことは有利である。というのは、データの表現のサイズは一般にデータベース情報より大きく、さらに、表現は予め計算されており、データベース情報とは異なり更新する必要がないからである。
【００７０】
本発明は、図面を参照して説明した好ましい実施形態に限定されるものではない。特に、図２に関連する「第１」「第２」および「第３」のデータまたは関係という用語は、説明を簡潔にするために使用されており、データおよび関係の実際の資格を表すものではない。
【００７１】
図３〜図８にビューの例が提供されている。他のレイアウト例を使用することもできる。図９、図１１、図１２は、好ましい実施形態を示唆している。この場合もまた、他のソフトウェアまたはハードウェアソリューションを使用することができる。
【図面の簡単な説明】
【００７２】
【図１】従来技術のシステムでの表示の例を示す図である。
【図２】本発明によるプロセスを示すフローチャートである。
【図３】図２のプロセスで表示されるビューの例を示す図である。
【図４】図２のプロセスで表示されるビューの例を示す図である。
【図５】図２のプロセスで表示されるビューの例を示す図である。
【図６】図２のプロセスで表示されるビューの例を示す図である。
【図７】図２のプロセスで表示されるビューの例を示す図である。
【図８】図２のプロセスで表示されるビューの例を示す図である。
【図９】本発明の実行に使用可能なソフトウェアアーキテクチャを示す概略図である。
【図１０】本発明を実行するために３次元表現を構築するプロセスを示すフローチャートである。
【図１１】本発明を実行するように構成されているクライアントワークステーションアーキテクチャを示す概略図である。
【図１２】本発明を実行するように構成されているネットワークアーキテクチャを示す概略図である。
【符号の説明】
【００７３】
９０  中央処理装置
９２  ＲＡＭ
９４  ワークステーション内部通信バス
９６  グラフィカル処理ユニット
９８  ビデオＲＡＭ
１００  ディスクコントローラ
１０２  ハードドライブ
１０４  ネットワークアダプタ
１０６  ネットワーク
【図１】
2006114014.tif 000003
【図２】
2006114014.tif 000004
【図３】
2006114014.tif 000005
【図４】
2006114014.tif 000006
【図５】
2006114014.tif 000007
【図６】
2006114014.tif 000008
【図７】
2006114014.tif 000009
【図８】
2006114014.tif 000010
【図９】
2006114014.tif 000011
【図１０】
2006114014.tif 000012
【図１１】
2006114014.tif 000013
【図１２】
2006114014.tif 000014
【外国語明細書】
2006114014000001.pdf