(57)【要約】【課題】コンピュータスクリーン上にオブジェクトを表示するためにコンピュータによって実行される方法を提供すること。【解決手段】本発明に係る方法は、第１のイメージを計算するステップ（Ｓ２０）と、第１のイメージを表示するステップ（Ｓ３０）と、ｎ番目の遷移イメージを計算すること（Ｓ４０）、重み付けされた第１のイメージと重み付けされたｎ番目の遷移イメージをマージすることによって、ｎ番目のマージ済みイメージを計算すること（Ｓ６０）、およびｎ番目のマージ済みイメージを表示すること（Ｓ７０）をｋ回繰り返すステップとを含む。ｎは、１からｋまでの範囲内にあり、ｎおよびｋは、正の整数である。【選択図】図３
2011129124.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータスクリーン上にオブジェクトを表示するために、コンピュータによって時実行される方法であって、
第１のイメージを計算するステップ（Ｓ２０）と、
前記第１のイメージを表示するステップ（Ｓ３０）と、
ｎ番目の遷移イメージを計算するステップ（Ｓ４０）と、
重み付けされた前記第１のイメージと重み付けされた前記ｎ番目の遷移イメージをマージすることによって、ｎ番目のマージ済みイメージを計算するステップ（Ｓ６０）と、
前記ｎ番目のマージ済みイメージを表示するステップ（Ｓ７０）と
をｋ回繰り返すステップと
を含み、
ｎは、１からｋまでの範囲内であり、ｎおよびｋは、正の整数であることを特徴とする方法。
【請求項２】
前記ｎ番目の遷移イメージ（Ｓ４０）は、（ｎ−１）番目の遷移イメージから開始して計算されることを特徴とする請求項１に記載の方法。
【請求項３】
前記ｎ番目のマージ済みイメージを計算するステップ（Ｓ６０）は、前記第１のイメージのピクセルおよび前記ｎ番目の遷移イメージのピクセルを変数として有する関数ｆによって実行されることを特徴とする請求項１乃至２のいずれかに記載の方法。
【請求項４】
前記第１のイメージおよび前記ｎ番目の遷移イメージは、重み付け関数である前記関数ｆによって重み付けされることを特徴とする請求項１乃至３のいずれかに記載の方法。
【請求項５】
前記重み付け関数ｆは、f(ImDeg,ImTrans(n),n=α(n)・ImTrans(n)+(1-α(n))・ImDegとして定義され、ＩｍＤｅｇは、前記計算された第１のイメージであり、ＩｍＴｒａｎｓ（ｎ）は、前記計算されたｎ番目の遷移イメージであり、α（ｎ）は、０から１までの範囲内にあり、ｎを変数として有する関数であることを特徴とする請求項４に記載の方法。
【請求項６】
前記繰り返すステップにおいて、ｋは、終了基準を満たすように選択されることを特徴とする請求項１乃至５のいずれかに記載の方法。
【請求項７】
表示されたマージ済みイメージが最終イメージであるときに、前記終了基準が満たされることを特徴とする請求項６に記載の方法。
【請求項８】
ｋは、デフォルトまたはユーザによって選択されることを特徴とする請求項６乃至７のいずれかに記載の方法。
【請求項９】
コンピュータスクリーン上にオブジェクトを表示するための装置であって、
請求項１乃至８のいずれかに記載の方法のステップを実装するための手段を備えたことを特徴とする装置。
【請求項１０】
コンピュータ読取可能記憶媒体に記憶された、コンピュータスクリーン上にオブジェクトを表示するためのコンピュータプログラムであって、
請求項１乃至８のいずれかに記載の方法のステップをコンピュータに実行させるためのコード手段を備えたことを特徴とするコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータプログラムおよびコンピュータシステムの分野に関し、より具体的には、オブジェクトをコンピュータスクリーン上に表示するための方法に関する。
【背景技術】
【０００２】
コンピュータ支援技術は、製品設計を作成するためのソフトウェアソリューションに関連するコンピュータ支援設計（Computer-Aided Design）、すなわちＣＡＤを含むことが知られている。同様に、ＣＡＥは、Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｅｎｇｉｎｅｅｒｉｎｇ（コンピュータ支援エンジニアリング）の頭字語であり、ＣＡＥは、例えば、将来の製品の物理的な振舞いをシミュレートするためのソフトウェアソリューションに関連する。ＣＡＭは、Ｃｏｍｐｕｔｅｒ−Ａｉｄｅｄ  Ｍａｎｕｆａｃｔｕｒｉｎｇ（コンピュータ支援製造）を表し、典型的に、製造プロセスおよびオペレーションを定義するためのソフトウェアソリューションを含む。
【０００３】
市場には、ＣＡＴＩＡという商標でダッソーシステムズにより提供されるような、製品を形成するオブジェクト（もしくは部品（parts））またはオブジェクトの組立て／組立部品（assembly）を設計するための複数のシステムおよびプログラムが供給されている。これらのＣＡＤシステムは、ユーザが、オブジェクトまたはオブジェクトの組立ての複雑な３次元（３Ｄ）モデルを構築して、操作することを可能にする。したがって、ＣＡＤシステムは、辺(edge)または線（line）を（一部の事例では面（face）とともに）使用する、モデル化オブジェクト（modeled object）の表現を提供する。辺または線は、例えば、非一様有理Ｂスプライン（non-uniform rational B-splines：ＵＲＢＳ）など、様々な方法で表すことができる。これらのＣＡＤシステムは、ほとんどが形状（geometry）の仕様である部品、または部品の組立てを、モデル化オブジェクトとして管理する。具体的には、ＣＡＤファイルは仕様を含んでおり、この仕様から形状が生成され、同様にこの仕様により表現を生成することが可能になる。形状および表現を、単一のＣＡＤファイルに格納することも、複数のＣＡＤファイルに格納することもできる。ＣＡＤシステムは、モデル化オブジェクトを設計者に提示するためのグラフィックツールを含む。これらのグラフィックツールは、複雑なオブジェクトの表示用に専用化され、ＣＡＤシステムにおいてオブジェクトを表すファイルの典型的なサイズは、１部品当たり１メガバイトの範囲内にあり、組立部品は、数千の部品を備えることがある。ＣＡＤシステムは、電子ファイル内に格納されるオブジェクトのモデルを管理する。
【０００４】
コンピュータ支援技術において、グラフィカルユーザインタフェース（ＧＵＩ）は、その技術の効率に関して重要な役割を果たす。オブジェクトを操作および／またはナビゲートするために必要なオペレーションの大部分は、ユーザ（例えば、設計者）によりＧＵＩに対して実行される。特に、ユーザは、製品を形成するオブジェクトを作成、変更、および削除することができ、ユーザは、オブジェクトがどのように相互に関連するかを把握するために（例えば、製品構造を介して）その製品を調べることもできる。従来、これらのオペレーションは、ＧＵＩの両側に配置された専用のメニューおよびアイコンを通じて実行されている。最近、ＣＡＴＩＡなどのＣＡＤシステムでは、製品の表現の近くで、これらの機能を呼び出すことができる。設計者は、メニューやアイコンの方へマウスを動かす必要がない。したがって、マウスがすぐに届く範囲内でオペレーションを行うことができる。さらに、これらのオペレーションは、意味的（semantically）に振舞う。すなわち、ＣＡＤシステムは例えば、設計者によって選択された所与のオペレーションに関して、前に選択されたオペレーションに応じて、設計者が選択する可能性が高い新たなオペレーションのセットを、マウスの近くに置き、その設計者に示唆することができる。
【０００５】
製品ライフサイクル管理（ＰＬＭ：Product Lifecycle Management）ソリューションも知られているが、ＰＬＭソリューションは、複数の会社が、拡張された事業の概念にわたって、製品データを共有し、共通のプロセスを適用し、そして構想からその寿命の終わりまで製品の開発に関する企業知識を利用するのを助けるビジネス戦略を指す。複数の主体（企業部門、ビジネスパートナ、納入業者、ＯＥＭ（相手先製品の製造業者（Original Equipment Manufacturers）、および顧客）を含めることにより、ＰＬＭは、このネットワークが、製品およびプロセスを概念化し、設計し、構築し、およびサポートする単一のエンティティとして動作することを可能にする。
【０００６】
一部のＰＬＭソリューションは、例えば、デジタルモックアップ（製品の３Ｄグラフィカルモデル）を作成することによって製品を設計および開発することを可能にする。デジタル製品は、まず、適切なアプリケーションを使用して定義され、シミュレートされる。次いで、リーンデジタル生産プロセス（lean digital manufacturing process）を定義し、モデル化することができる。
【０００７】
ダッソーシステムズによって提供されるＰＬＭソリューション（商標登録：ＣＡＴＩＡ、ＥＮＯＶＩＡ、およびＤＥＬＭＩＡ）は、製品エンジニアリング知識を編成するエンジニアリングハブ（Engineering Hub）、製造エンジニアリング知識を管理する製造ハブ（Manufacturing Hub）、およびエンジニアリングハブと製造ハブの双方への企業の統合と接続を可能にする企業ハブ（Enterprise Hub）を提供する。全体として、このシステムは、製品、プロセス、動的な知識ベースの製品作成を可能にするリソース、および最適化された製品定義、製造準備、製造、サービスを行うための意思決定支援（decision support）をリンクさせるオープンオブジェクトモデルを提供する。
【０００８】
上記ＰＬＭソリューションは、製品のリレーショナルデータベースを備える。このデータベースは、テキストデータのセットと、そのデータ間の関係（relation）を備える。データは、典型的に、製品と関連する技術的データを含み、このデータは、データ階層で順序付けされ、検索可能であるようにインデックス付けされる。このデータはモデル化オブジェクトを表し、これにより、しばしば製品およびプロセスがモデル化される。
【０００９】
製品の構成と、プロセス知識と、リソース情報とを含む製品ライフサイクル情報は、典型的に、共同で編集されることが意図されている。
【００１０】
前述したように、モデル化オブジェクトに対するオペレーションの大部分は、ＣＡＤシステムにおいてグラフィックスにより実行される。したがって、モデル化オブジェクトを表現することは、重要な役割を果たす。モデル化オブジェクトの表示は、該モデル化オブジェクトのイメージを計算するプロセスの結果であり、このプロセスは、レンダリングと呼ばれる。したがって、レンダリングは、表示されるべきモデル化オブジェクトのイメージを作成する動作であり、イメージは、レンダリングの結果である。このため、イメージを「計算する」という表現とイメージを「レンダリングする」という表現は同義である。
【００１１】
レンダリングするいくつかの方法が開発されており、これらの方法は、ＣＡＤシステムによって実装される。一部の方法は、フォトリアル（photo-realistic）レンダリングに適しており、他の方法は、リアルタイムレンダリングに好都合である。フォトリアルレンダリングの中では、レイトレーシング（ray tracing）レンダリング（レイトレーシングとも呼ばれる）がＣＡＤシステムによって幅広く実装されている。レイトレーシングは、イメージ平面内のピクセルを通過する光の経路をトレースすることによって、イメージを生成する。特に、レイトレーシングは、他のレンダリング方法と比べてライティングのリアルなシミュレーションを可能にし、反射や陰影などの効果が、レイトレーシングレンダリングでは自然に得られる。
【００１２】
しかしながら、レイトレーシングは、レンダリングがリアルタイムで実行されないという欠点がある。すなわち、この方法は、イメージのレンダリングを完全に実現するための期限を決定することができない。実際、ＣＡＤシステムによって毎秒少なくとも１０個のイメージを計算することができる場合、ＣＡＤのシーンがリアルタイムで計算されると見なされる。しかしながら、現在のコンピュータハードウェアは、必ずしも、完全なイメージをリアルタイムで計算できるほど高性能であるとは限らない。実際、イメージは、これらには限られないが、反射、陰影、鏡面性（specularity）、風（blow）など、数百もの高度な視覚効果を含むことがあり、これらの高度な視覚効果はそれぞれ、例えば、ＣＰＵおよびＧＰＵの計算リソースなどの計算リソースを必要とする。したがって、ＣＡＤシステムのリソースは限られていることから、視覚効果の計算の開始からその計算の終了までの間に遅延時間が生じることがある。その結果、イメージの表示は、瞬時すなわちリアルタイムに行われず、これによりＣＡＤシステムと設計者の間の対話に欠如が存在するため、設計者にとっては厄介なことである。
【００１３】
この問題に対処するために、いくつかの技法が開発されている。伝統的な技法では、表示されたモデル化オブジェクトと設計者の対話の間、視覚的レンダリングを意図的に低品質にする。全ての効果を有するモデル化オブジェクトのイメージを表示する代わりに、低品質のイメージ（degraded image）を表示する。この低品質のイメージは、表示が進行中の基本イメージである。同時に、システムは、設計者が、表示されたモデル化オブジェクトとまだ対話しているか否かを確認し、そして視覚効果を計算する。所定の時間の間、設計者がモデル化オブジェクトと対話せず、その所定の時間が経過すると、全ての効果を備える新たなイメージを表示する。ここで、上記所定の時間は、ヌル値とすることができ、例えば、ユーザによってマウスが解放されるとすぐに、新たなイメージを表示することができる。この伝統的な技法は、２つのレンダリングモードを備える。１つめのレンダリングモードは、表示されるイメージが全く視覚効果を備えない低品質のレンダリングであり、２つめのレンダリングモードは、表示されるイメージが全ての視覚効果を備える最終的なレンダリングである。
【００１４】
この伝統的な技法は、やはりいくつかの欠点を有する。特に、低品質のイメージと最終的なイメージとが急に遷移するため、設計者にとって人間工学的ではなく、また視覚的な不快感を生じさせることである。さらに、設計者には、視覚効果の計算の進行に関するフィードバックを全く与えられない。したがって、ＣＡＤシステムに対して実行される操作およびナビゲーションは流動性を欠く。すなわち、設計者は、待ち状態にある。  
低品質のイメージと最終的なイメージとの間の遷移を管理するために、いくつかの技法が開発されている。
【００１５】
第１の方法は、プログレスバーを表示することである。プログレスバーは、ダウンロード、ファイル転送、または計算などのタスクの進行を伝えるのに使用されるＧＵＩの構成要素である。したがって、設計者は、最終イメージの計算が終了するまでの残りの時間をグラフィクにより評価することができる。しかしながら、最終イメージの表示は、依然として急に行われるため、このことに関連する視覚的な不快感は回避されない。さらに、設計者は、最終イメージの表示を得るには、最終イメージの計算の終了を待たなければならないので、ＣＡＤシステムと設計者の間の対話は改善されない。
【００１６】
第２の方法は、モデル化オブジェクトの低品質のイメージから開始して段階的に最終イメージを構築することである。このために、低品質のイメージと最終イメージの間の遷移イメージを、連続的に計算して表示する。遷移イメージは、前に表示されるイメージと比べて少なくとも１つの改善された視覚効果を備えるイメージである。このプロセスは、最後のイメージが、最終イメージ、すなわち、全ての完全な効果を含むと終了する。したがって、低品質イメージの品質は、完全な視覚効果の計算が行われるまで段階的に改善される。このため、設計者は、最終イメージが表示されるまで品質が向上していくのを見ることができる。
【００１７】
しかしながら、遷移イメージは表示されるものの、低品質のイメージと最終イメージの間の遷移は、依然として乱暴であり、急に行われる。したがって、設計者は、低品質のイメージと最終イメージの間の遷移を見ているときに視覚的な不快感を覚える。
【発明の概要】
【発明が解決しようとする課題】
【００１８】
したがって、簡単に上述した既存の解決策の限界により、ユーザの視覚的な快適さを向上させる、コンピュータ上にオブジェクトを表示するための改善された方法が必要とされる。
【課題を解決するための手段】
【００１９】
本発明は、コンピュータスクリーン上にオブジェクトを表示するために、コンピュータによって実行される方法を提供する。この方法は、
第１のイメージを計算するステップ（Ｓ２０）、
第１のイメージを表示するステップ（Ｓ３０）、および
−  ｎ番目の遷移イメージを計算するステップ（Ｓ４０）と、
−  重み付けされた第１のイメージと、重み付けされたｎ番目の遷移イメージをマージすることによって、ｎ番目のマージ済みイメージを計算するステップ（Ｓ６０）と、
−  前記ｎ番目のマージ済みイメージを表示するステップ（Ｓ７０）と
をｋ回繰り返すステップを含む。ｎは、１からｋまでの範囲内であり、ｎおよびｋは、正の整数である。
【００２０】
本発明にかかる上記方法は、次の特徴の１つまたは複数を含む。
−  ｎ番目の遷移イメージの計算（Ｓ４０）は、（ｎ−１）番目の遷移イメージから開始すること。  
−  ｎ番目のマージ済みイメージを計算するステップ（Ｓ６０）は、第１のイメージのピクセル、およびｎ番目の遷移イメージのピクセルを変数とする関数ｆによって行われること。  
−  第１のイメージおよびｎ番目の遷移イメージは、重み付け関数である関数ｆによって重み付けされること。  
−  重み付け関数ｆが、
F(ImDeg,ImTrans(n),n)=α(n)・ImTrans(n)+(1-α(n))・ImDeg
として定義されること。ここで、ＩｍＤｅｇは、前記計算された第１のイメージであり、ImTrans(n)は、前記計算されたｎ番目の遷移イメージであり、α(n)は、０から１までの範囲内にあり、変数としてｎを有する関数であること。
−  上記繰り返すステップにおいて、ｋは、終了基準を満たすように選択されること。
−  表示されたマージ済みイメージが最終イメージであるとき、上記終了基準が満たされること。
−  ｋは、デフォルトまたはユーザによって選択されること。
【００２１】
本発明は、さらに、コンピュータスクリーン上にオブジェクトを表示するための装置を提案する。この装置は、上記の方法の各ステップを実装するための手段を備える。
【００２２】
本発明は、コンピュータ読取可能記憶媒体上に格納される、コンピュータスクリーン上にオブジェクトを表示するためのコンピュータプログラムにさらに関し、該コンピュータプログラムは、コンピュータに上記方法のステップを実行させるためのコード手段を備える。
【００２３】
以下では、限定ではなく例として、本発明を実現するためのシステムを添付の図面を参照して説明する。
【図面の簡単な説明】
【００２４】
【図１】ＣＡＤシステムにおける典型的なＧＵＩの概略図である。
【図２】当技術分野で公知の連続的なイメージの遷移の例を示す図である。
【図３】本発明に係るコンピュータスクリーン上にオブジェクトを表示するための方法を示すフローチャートである。
【図４】本発明を実行するために使用可能な関数を表すグラフである。
【図５】本発明に係る連続的なイメージの遷移の例を示す図である。
【図６】本発明を実行するように適合されたクライアントワークステーションアーキテクチャを示す概略図である。
【発明を実施するための形態】
【００２５】
本発明は、コンピュータスクリーン上にオブジェクトを表示するためのコンピュータによって実行される方法を対象とする。本発明に係る方法は、ユーザの視覚的な快適さを向上させることを目的とする。特に、本発明の目的の１つは、オブジェクトの低品質イメージと高品質イメージの間の遷移を向上させることである。
【００２６】
本発明の方法の最初のステップは、第１のイメージを計算することであり、これは、第１のイメージをレンダリングすることを意味する。典型的に、第１のイメージは、低品質のイメージである。低品質のイメージは、リアルタイムの視覚効果、すなわちＣＡＤシステムに応じて異なる可能性がある時間限度内では計算することができない視覚効果を全く備えていないイメージである。したがって、オブジェクトの低品質のイメージは、表示が進行中のオブジェクトのイメージと見なすことができる。次に、第１のイメージが、例えば、ＣＡＤシステムのＧＵＩ上に表示される。この第１のイメージは、３Ｄ（３次元）でモデル化オブジェクトとすることができるオブジェクトの表現である。次いで、次の１）〜３）のステップがｋ回繰り返される。  
１）ｎ番目の遷移イメージを計算する。実際に、ｎ番目の遷移イメージは、（ｎ−１）番目の遷移イメージと比べて少なくとも１つの改善された視覚効果を備えるイメージである。  
２）第１のイメージとｎ番目の遷移イメージをマージすることによって、ｎ番目のマージ済みイメージを計算する。第１のイメージおよびｎ番目の遷移イメージは、重み付けされ、したがって、第１のイメージおよびｎ番目の遷移イメージは、マージ済みイメージを計算するときに、より多くの影響、またはより少ない影響を有する。  
３）マージ済みイメージが計算される（すなわち、レンダリングされる）と、ｎ番目のマージ済みイメージが表示される。  
これらのステップ１）、２）、および３）は、ｋ回繰り返されるが、ｋは、正の整数である。さらに、ｎは、区間［１；ｋ］の範囲内にある正の整数である。
【００２７】
図１を参照すると、例示的なグラフィカルユーザインタフェース（すなわちＧＵＩ）１００が図示されているが、ＧＵＩ１００は、標準のメニューバー１１０、１２０、ならびに下部のツールバー１４０および横のツールバー１５０を有する典型的なＣＡＤのようなインタフェースとすることができる。上記メニューおよびツールバーは、当技術分野で知られているような、各アイコンが１つまたは複数のオペレーションまたは機能に関連付けられている、ユーザ選択可能なアイコンのセットを含む。
【００２８】
これらのアイコンの一部は、ＧＵＩ１００内に表示されるような、モデル化された製品２００または製品２００の部品を編集および／または操作するように適合されたソフトウェアツールに関連付けられている。以下の説明において、「製品（product）」、「部品（part）」、「組立て／組立部品（assembly）」などの用語は、簡潔性のために「部品」と呼ぶことがある。「部品」の概念は、実際、「オブジェクト」の概念に一般化することができ、ここで、オブジェクトは、設計された製品の「物理的」一部のみとすることもでき、あるいは、より一般的に、設計プロセスに関わっている（ただし、必ずしも最終製品内にある必要はない）任意のソフトウェアツールとすることもできることに留意されたい。
【００２９】
ソフトウェアツールを、複数のワークベンチにグループ化することができる。各ワークベンチは、ソフトウェアツールのサブセットを備える。特に、ワークベンチの１つは、モデル化された製品２００の形状の特徴を編集するのに適した編集ワークベンチである。操作の際、設計者は、例えばオブジェクト２００の一部を予め選択し、次いで、適切なアイコンを選択することによって、オペレーション（例えば、寸法、色などの変更）を開始すること、あるいは形状の制約（geometrical constraint）を編集することができる。例えば、典型的なＣＡＤのオペレーションは、スクリーン上に表示された３Ｄモデル化オブジェクトの穿孔（punching）または屈曲（folding）をモデル化することである。
【００３０】
さらに、この１つまたは複数のオペレーションまたは機能を、ＧＵＩ１００内に表示される、モデル化された製品２００または製品２００の部品のすぐ近くで選択することができる。このために、オペレーションまたは機能に関連付けられた、ユーザ選択可能なアイコン１７０が、セレクタ１６０（例えば、マウスなどの触覚デバイスのカーソル）の離隔に現れることが可能である。ユーザは、アイコン１７０の上でカーソル１６０を動かすことができ、これに応答して、アイコンのセット１８０が表示される。次に、ユーザは、アイコンのセット１８０のうちのアイコンの１つを選択し、これにより、該選択したアイコンに関連付けられた機能を実行する。さらに、アイコンのセット１８０は、意味的を示すように振舞う。すなわち、アイコンのセット１８０は、ＣＡＤシステムによって、ユーザが次に実行すると思われるオペレーションに応じて提示される。
【００３１】
ＧＵＩは、例えば、表示された製品２００に関連するデータ２５０を表示することができる。図１の例では、「特徴ツリー（feature tree）」として表示されるデータ２５０、およびこのデータ２５０の３Ｄ表現２００は、ブレーキのキャリパ（caliper）およびディスクを含むブレーキの組み立てに関係している。ＧＵＩは、例えば、オブジェクトの３次元定位（3D orientation）を容易にし、編集される製品に対するオペレーションのシミュレーションをトリガし、あるいは表示される製品２００の様々な属性をレンダリングするために、様々なタイプのグラフィックツール１３０、１６０をさらに示すことができる。
【００３２】
図２は、当技術分野で知られているような、連続するイメージの遷移の典型的な例を示している。球体２６の連続する表現２０、２１、２２、２３、２４、および２５は、図１を参照して説明したようなＧＵＩ内に表されている。連続する表現２１、２２、２３、２４、および２５は、該連続する表現２１、２２、２３、２４、および２５のそれぞれの間に徐々に計算される（したがって、改善される）、リアルタイムでない視覚効果（滑らかな陰影）を表示する。第１のイメージ２０では、球体２６の低品質のイメージが表示される。任意の視覚効果が、低品質のイメージ上で表現される。次いで、この低品質のイメージに追加するために、視覚効果（滑らかな陰影）が計算される。このために、第１の遷移イメージ２１が計算され、表示される。この第１の遷移イメージ２１は、視覚効果の第１の中間表現２７を備える。すなわち、第１の遷移イメージ２１は、部分的に計算された視覚効果が追加された低品質のイメージ２６を表示する。次に、視覚効果の改善された中間表現２８が計算され、第２の遷移イメージ２２に表示される。第２の遷移イメージ２２は、第１の遷移イメージ２１に対して、視覚効果の新たに改善された表現２８を追加した結果である。典型的に、この新たな中間表現２８は、視覚効果の第１の中間表現２７の計算結果に基づいて計算される。同様に、第３の遷移イメージ２３、第４の遷移イメージ２４、および第５の遷移イメージ２５が連続的に計算され、ＧＵＩ内に表示される。第５の遷移イメージ２５は、最終イメージであるので、特定の遷移イメージである。すなわち、イメージ２５は、低品質のイメージ２０に完全な視覚効果が追加されたものであり、したがって、このステップで、滑らかな陰影の計算が完了する。
【００３３】
図３は、本発明を実施するためにコンピュータスクリーン上にオブジェクトを表示する方法を示すフローチャートである。
【００３４】
実際、部分的製品（sub-product）または製品などのオブジェクトまたはオブジェクトの組立部品が選択される（Ｓ１０）。オブジェクトの選択は、ユーザの選択により実行されることがあり、ユーザは、例えば設計者である。ユーザは、キーボード、マウス、スタイラス、タッチスクリーンなどの触覚デバイスにより、この選択を行うことができる。例えば、２つボタンのマウスでは、オブジェクトを選択するのに左のボタンを使用することができる。このシステムは、デフォルトで、すなわち、ユーザの選択を必要とせずに、オブジェクトを識別することもできる。
【００３５】
典型的に、選択されたオブジェクトは、図１を参照して説明したＧＵＩ内のシーン（scene）に表示される。このシーンは、オブジェクト間の空間的な関係を表す空間（space）である。さらに、上記オブジェクトは、モデル化オブジェクト、または３次元（３Ｄ）モデル化オブジェクトとすることができる。３次元（３Ｄ）モデル化オブジェクトは、３次元（３Ｄ）空間におけるオブジェクトの描写（description）である。３Ｄ空間は、座標によって３次元空間におけるすべての点を表す形状によって数学的に表される物理的世界（physical universe）の形状モデルである。なお、３次元空間を表す他の方法も存在する。３Ｄモデル化オブジェクトは、基本的に、形状が生成される元となる仕様を指す。したがって、３Ｄモデル化オブジェクトは、３Ｄオブジェクトを示す数学的な描写、すなわち、三角形、線、曲線、表面など、様々な形状エンティティによって結ばれた３Ｄ空間内の点の集合である。３Ｄモデル化オブジェクトは、該３Ｄモデル化オブジェクトの３Ｄ表現（3D representation）によって表される。一般に、３Ｄ表現は、ＧＵＩ内に表示されるため、３Ｄ表現をシーン内に表示することができ、したがって、シーンは３Ｄシーンである。３Ｄで表示されるオブジェクトは、すべての角度から見ることができる。例えば、オブジェクトを、該オブジェクトの任意の軸を中心に、またはスクリーンの任意の軸を中心に、動かし（handle）回転させることができる。このことは、特に、３Ｄモデル化されていない２Ｄアイコンは考慮しない。
【００３６】
オブジェクトが選択されると、このオブジェクトの第１のイメージが計算される（Ｓ２０）。これは、オブジェクトの第１のレンダリングが計算されることを意味する。より一般的には、レンダリングは、通常、オブジェクトからイメージを生成する（または計算する）プロセスとして定義される。典型的に、オブジェクトのレンダリングは、このオブジェクトを表すデータを計算することによって得られる。その結果、コンピュータスクリーン上またはＧＵＩ上に表示することが可能な表現を得ることができる。図１を再び参照すると、モデル化された製品２００、または製品２００の部品のレンダリングが、ＧＵＩ１００内で表示されている。
【００３７】
典型的に、計算される第１のイメージは、低品質のイメージである。ＩｍＤｅｇと表記される低品質のイメージは、リアルタイムの視覚効果を全く備えないイメージである。したがって、オブジェクトの低品質のイメージは、表示が進行中であるオブジェクトのイメージと見なすことができる。オブジェクトのイメージは、しばしば、低品質のイメージと少なくとも１つの視覚効果の組合せである。
【００３８】
視覚効果は、オブジェクトとその環境との関係をエミュレートする。例えば、反射は、オブジェクトの所与の点における入射光と出射光である。陰影は、光源からの直接光が、オブジェクトによる遮断のために到達することができないエリアをエミュレートする。別の例として、ブルーム（bloom）視覚効果（グローとも呼ばれる）が、実世界のカメラのイメージングアーチファクトを生じさせ、イメージ内のオブジェクトの周囲に光の干渉縞（fringe）をもたらす。視覚効果は、前述した視覚効果に限定されず、数百もの視覚効果が低品質のイメージに適用され得る。
【００３９】
低品質のイメージの計算は、視覚効果を計算する必要がなく、少ない計算量しか必要としないため、低品質のイメージである第１のイメージを計算することは有利である。したがって、第１のイメージの表示時間が短縮される。
【００４０】
次に、第１のイメージ（例えば、ＩｍＤｅｇ）が格納され、表示される（Ｓ３０）。低品質のイメージＩｍＤｅｇの格納は、必須ではない。実際、イメージＩｍＤｅｇの計算が終わるとすぐに、イメージＩｍＤｅｇを表示することができる。しかし、イメージＩｍＤｅｇを格納することは有利である。このようにして、低品質のイメージの表示を遅らせる（temporize）だけでなく、後の段階でそのイメージＩｍＤｅｇを再び利用することも可能である。この場合、イメージＩｍＤｅｇを再計算する必要がないので、システムのリソースが節約される。
【００４１】
操作において、低品質のイメージＩｍＤｅｇをフレームバッファメモリに格納することもできる。該フレームバッファメモリは、オブジェクトの完全なイメージを含むメモリバッファからビデオ表示を駆動する、ビデオ出力デバイスである。フレームバッファメモリは、一般に、ＣＰＵメモリ空間に対する直接のメモリマッピングによりアクセスされるが、フレームバッファメモリにアクセスする他の方法もいくつか存在する。本発明は、いずれの種類のメモリにも限定されず、任意の適切なメモリを使用することができる。
【００４２】
第１のイメージ（例えば、ＩｍＤｅｇ）の表示が実行される。このために、当技術分野で公知の任意の方法を使用することができる。前述したとおり、イメージを計算するのに少ないリソースしか必要としない低品質のイメージの第１のイメージを表示することは、有利である。さらに、イメージをレンダリングするのに必要とされる時間がそれほど多くなく、このため、ユーザとの対話が改善される。
【００４３】
第１のイメージ（例えば、ＩｍＤｅｇ）が表示されると（Ｓ３０）、第１の遷移イメージが計算され（Ｓ４０）、格納される（Ｓ４２）。次いで、第１のマージ済みイメージが計算され（Ｓ６０）、格納され（Ｓ６２）、表示される（Ｓ７０）。次に、第２の遷移イメージが計算され、格納され、そして、第２のマージ済みイメージが計算され、格納され、表示される。このプロセスは繰り返し実行される。すなわち、ステップＳ４０、Ｓ４２、Ｓ４３、Ｓ６０、Ｓ６２、Ｓ７０は、ｋ回繰り返される。ｋは正の整数である。この反復プロセスを、以下のように一般化することができる。
【００４４】
ステップＳ４０で、ｎ番目の遷移イメージが計算される。（ＩｍＴｒａｎｓ（ｎ））と表記されるｎ番目の遷移イメージは、視覚効果の中間表現を備えるイメージである。言い換えると、ＩｍＴｒａｎｓ（ｎ）は、部分的に計算された視覚効果が追加された低品質のイメージを表示する。ｎ番目の遷移イメージは、（ｎ−１）番目遷移イメージと比べて改善されたイメージであり、実際、視覚効果の計算を完了するために、（ｎ−１）番目の遷移イメージの表示とｎ番目の遷移イメージの表示の間に視覚効果の計算が実行される。
【００４５】
好ましくは、ｎ番目の遷移イメージは、（ｎ−１）番目の遷移イメージから計算が開始される。したがって、ｎ番目の遷移イメージ（ＩｍＴｒａｎｓ（ｎ））は、反復プロセスによって得られたイメージであり、ｎ番目の遷移イメージ（ＩｍＴｒａｎｓ（ｎ））の視覚効果は、以前に計算された遷移イメージ（ＩｍＴｒａｎｓ（ｎ−１））の視覚効果の計算結果に依拠する。
【００４６】
それぞれｎ番目の遷移イメージは、例えばメモリ上に格納される（Ｓ４２）。このようにして、（ｎ−１）番目の遷移イメージに対する部分的に計算された視覚効果は、再び計算する必要がないため、ｎ番目の遷移イメージの計算時間が改善される。ｎ番目の遷移イメージを計算するのに消費されるシステムのリソースが少ないという点で有利である。
【００４７】
第１の遷移イメージ（（ＩｍＴｒａｎｓ（ｎ＝１））は、低品質のイメージＩｍＤｅｇから計算が開始されるので、特別なイメージであることに気付くであろう。低品質のイメージＩｍＤｅｇを、（ＩｍＴｒａｎｓ（ｎ＝０））と表記することもできる。前述したとおり、低品質のイメージＩｍＤｅｇを、低品質のイメージＩｍＤｅｇの計算（Ｓ２０）の後に格納する（Ｓ３０）と有利である。したがって、第１の遷移イメージ（（ＩｍＴｒａｎｓ（ｎ＝１））の計算に必要とされるのは、少なくとも１つの視覚効果を計算することだけ、したがって、システムのリソースの消費が低減される。
【００４８】
ｎ番目の遷移イメージの各計算に関して、重み付けされた第１のイメージ（例えば、ＩｍＤｅｇ）と、重み付けされたｎ番目の遷移イメージをマージすることによって、ｎ番目のマージ済みイメージを計算することができる（Ｓ６０）。低品質のイメージＩｍＤｅｇとｎ番目の遷移イメージＩｍＴｒａｎｓ（ｎ）のマージは、ｆと表記されるマージ関数によって行われ、このマージ関数ｆの出力が、ｎ番目のマージ済みイメージである。したがって、ＩｍＤｅｇとＩｍＴｒａｎｓ（ｎ）は、ＩｍＤｅｇとＩｍＴｒａｎｓ（ｎ）の構成要素（constituent parts）が互いに区別できないように組み合わされ、一体化される。
【００４９】
実際には、ステップＳ６０で計算されたｎ番目のマージ済みイメージは、格納され（Ｓ６２）、その後、コンピュータスクリーン上に表示される（Ｓ７０）。
【００５０】
好ましくは、ＩｍＤｅｇイメージのピクセルとＩｍＴｒａｎｓ（ｎ）イメージのピクセルは、マージ関数ｆの変数である。したがって、マージ関数ｆは、ＩｍＤｅｇイメージのピクセルとＩｍＴｒａｎｓ（ｎ）イメージのピクセルを入力として取り、出力イメージ、すなわちｎ番目のマージ済みイメージをもたらす。マージ関数は、当技術分野で周知であるように、ＩｍＤｅｇのピクセルとＩｍＴｒａｎｓ（ｎ）のピクセルを、ピクセルごとに乗算することにより、ｎ番目のマージ済みイメージを計算することできる。したがって、低品質のイメージＩｍＤｅｇのピクセルの値に、遷移イメージＩｍＴｒａｎｓ（ｎ）の対応するピクセルの値を掛る。ピクセル値は、ピクセルがどの程度明るいか、および／またはピクセルの色がどのような色であるかを表すことできる。典型的には、ピクセル値は、ＲＧＢ（赤、緑、青）色モデルに従って選択される。
【００５１】
なお、マージ関数は、ＩｍＤｅｇのピクセルとＩｍＴｒａｎｓ（ｎ）のピクセルを、ピクセルごとに加算することにより、ｎ番目のマージ済みイメージを計算することもできる。
【００５２】
第１のイメージ（例えば、ＩｍＤｅｇ）およびｎ番目の遷移イメージは、双方のイメージが個々の重みを有するように重み付けされる。それぞれの重みにより、低品質のイメージＩｍＤｅｇおよび遷移イメージＩｍＴｒａｎｓ（ｎ）は、マージ済みイメージを計算するときに、より多くの影響（influence）、またはより少ない影響を有する。ｎ番目のマージ済みイメージは、低品質のＩｍＤｅｇイメージと遷移ＩｍＴｒａｎｓ（ｎ）イメージを組み合わせた結果である。
【００５３】
実際、低品質のイメージＩｍＤｅｇおよび遷移イメージＩｍＴｒａｎｓ（ｎ）は、重み付け関数である関数ｆによって重み付けされる。重み付け関数は、要素のセットのうちの一部の要素に、該関数の結果において同じセット内の他の要素よりも大きい「重み」（または影響）を与える数学的関数である。したがって、重み付け関数は、低品質のイメージＩｍＤｅｇと遷移イメージＩｍＴｒａｎｓ（ｎ）の間の関係を補正する。すなわち、重み付け関数により、ＩｍＤｅｇとＩｍＴｒａｎｓ（ｎ）が、ｎ番目のマージ済みイメージに対して等しく寄与することはない。したがって、ＩｍＤｅｇまたはＩｍＴｒａｎｓ（ｎ）に優劣（prominence）を付けるように、ｎ番目のマージ済みイメージを計算することができる点で有利である。これにより、連続する２つのマージ済みイメージの間の遷移を平滑にすることができ、したがって、視覚効果の出現がユーザの目にそれほど障らないため、有利である。よって、本発明による方法は、低品質のイメージと最終イメージの間の全体的な遷移を平滑化することができる。
【００５４】
さらに、シーンがユーザによって操作されると、シーンの表示は、低品質のレンダリングと高度なレンダリングとの間でちらつく（flicker）可能性があり、また新たな操作が行われる前に最終レンダリングを表示することができない。重み付け関数を用いることにより、第１のマージ済みイメージは、低品質のイメージに近いものとなっており、このため、ユーザは、シーンを操作している間に高度な効果をほとんど見ることがない。つまり、重み付け関数により、低品質のレンダリングと最終レンダリングの間のちらつきが回避される。
【００５５】
実際には、マージ関数ｆは、次のように表される重み付け関数とすることができる。  
f(ImDeg,ImTrans(n),n)=α(n)・ImTrans(n)+(1-α(n))・ImDeg 
ここで、ＩｍＤｅｇは、計算された第１のイメージであり、ＩｍＴｒａｎｓ（ｎ）は、計算されたｎ番目の遷移イメージである。したがって、関数ｆは、イメージＩｍＤｅｇのピクセルとイメージＩｍＴｒａｎｓ（ｎ）のピクセルを入力として取り、出力を重み付けするように意図された関数α（ｎ）を、それぞれのピクセルに適用する。関数ｆの出力は、ｎ番目のマージ済みイメージである。
【００５６】
2011129124.tif 000003
【００５７】
前述のように、ステップＳ４０、Ｓ４２、Ｓ４３、Ｓ６０、Ｓ６２、およびＳ７０は、ｋ回繰り返され、ｋは、正の整数である。これらのステップのｋ回の繰り返しは、終了基準に合致すると停止し（Ｓ４３）、次いで、本発明の方法は終了する（Ｓ５０）。
【００５８】
終了基準を満たすようにｋを選択することができる。終了基準が満たされると（Ｓ４３）、ｋの値はｋ＝ｎとなる。したがって、ｎ番目の遷移イメージ（ＩｍＴｒａｎｓ（ｎ））が計算され（Ｓ４０）格納された（Ｓ４２）後に、ｎ番目のマージ済みイメージが計算され（Ｓ６０）、格納され（Ｓ６２）、表示される（Ｓ７０）。
【００５９】
好ましくは、表示されたマージ済みイメージが、最終イメージ、すなわち、全ての効果を備えるイメージであるときに、終了基準が満たされる。この場合、最終イメージは、ｎ番目の遷移イメージ（ＩｍＴｒａｎｓ（ｎ＝ｋ））である。
【００６０】
実際、ｋは、システムによってデフォルトで選択される。典型的に、このデフォルトのｋの値は、計算すべき視覚効果の数に応じて選択することができる。したがって、最終イメージが表示されると、本発明による方法は終了する。その結果、計算の数が最適化され、システムのリソースが節約される。さらに、システムによって選択されるデフォルトのｋの値を、システムの計算リソースに応じて選ぶこともできる。例えば、新しいシステムは、古いシステムより多くの利用可能なリソースを有するであろう。したがって、新しいシステムは、最終イメージを計算するために、より少ないステップしか必要とせず、この場合、ｋは、最終イメージの視覚効果の数より少ないことがある。
【００６１】
有利には、最終イメージの表示の速度を適合させるために、ユーザが値ｋを選択することができる。例えば、上述のように、新しいシステムでは、最終イメージが余りにも早く表示される可能性がある。したがって、ユーザは、ｋが最終イメージの視覚効果の数と等しくなるまで遷移イメージの数を増やすことによって、最終イメージの表示を遅くすることができる。その結果、シーンが、ユーザによってより良く理解される。
【００６２】
ユーザによる値ｋの選択は、プロセスが開始する前に行うことができるだけでなく、プロセス中に動的に行うこともできる。プロセス中に動的に行う場合、ユーザは、キーボード、マウス、スタイラスなどの触覚デバイスにより、値ｋの選択を行うことができる。例えば、２つボタンのマウスの場合、左ボタンを使用して、例えば、左ボタンを押し下げたままにすることによって、値ｋを増加させることができる。これに応答して、最終イメージを表示するために必要とされる時間が増加される。
【００６３】
図５は、本発明にかかる、連続するイメージの遷移の例を示す。第１のイメージ５０は、図２のイメージ２０と同様に低品質のイメージであり、球体５６の上方に配置された光源（図５には図示せず）によって照明された球体５６を示している。その後、本発明に従って、重み付け関数  f(ImDeg,ImTrans(n),n=α(n)・ImTrans(n)+(1-α(n))・ImDeg  により、連続的に遷移イメージが計算され、マージ済みイメージ５１、５２、５３、５４、および５５が計算され、表示される。関数α（ｎ）は図４に示されている。マージ済みイメージ５１、５２、５３、５４、および５５はそれぞれ、図２のイメージ２１、２２、２３、２４、および２５と同一の視覚効果（平滑化された陰影）を示している。第１のマージ済みイメージ５１は、視覚効果の第１の中間表現５７を備える。ＩｍＴｒａｎｓ（ｎ＝１）と表記される第１の遷移イメージを作成するために、平滑化された陰影５７は、部分的に計算され、低品質のイメージ５０に追加される。イメージ５１における視覚効果５７の外観（apparition）は、図２のイメージ２１上の同一の視覚効果２７の外観と比べて、より滑らかであり、実際、陰影５７は、陰影２７と比べてぼかされている。同様に、第２のマージ済みイメージ５２が表示される。第２のマージ済みイメージ５２は、視覚効果の新たな中間表現５８を備える。この中間表現５８は、以前の視覚効果の表現５７と比べて改善されており、この中間表現５８の計算は、前の表現５７の計算結果から開始されたものである。この場合も、イメージ５２の表示は、図２のイメージ２２の表示と比べて、より滑らかである。次に、第３のマージ済みイメージ５３、および第４のマージ済みイメージ５４が表示される。最後に、第５のマージ済みイメージ５５が表示され、このイメージ５５は、最終イメージである。この段階で、終了基準に合致し、プロセスは終了する。α（ｎ）の閾値が、α（ｎ＝５）＝１となるように選択されているので、第５のマージ済みイメージ（つまり、最終イメージ）が、第５の遷移イメージ（ＩｍＴｒａｎｓ（ｎ＝ｋ＝５））である。したがって、本発明の方法によると、２つの連続するイメージの間の遷移は、急ではなく乱暴に行われない。その結果、設計者に対する視覚的な快適性が向上されるとともに、設計者は、最終イメージ５５が表示されるまで品質の改善を見ることができる。
【００６４】
なお、図５に表された連続するイメージの数は、簡潔性のために限定されている。実際には、イメージ５０、５１、５２、５３、５４、および５５を、ｎ＝０、ｎ＝１、ｎ＝５、ｎ＝９、ｎ＝１７、およびｎ＝１２８というそれぞれの値に相当させることも可能である。
【００６５】
上述の方法を、コンピュータスクリーン上にオブジェクトを表示することが可能な任意の構成、または任意のシステムに適用することができることを理解されたい。本発明は、デジタル電子回路、またはコンピュータハードウェア、ファームウェア、ソフトウェア、もしくはこれらの組合せにおいて実装することもできる。本発明に係る装置を、プログラム可能なプロセッサによる実行のためにマシン読取可能記憶装置に具現化されるコンピュータプログラム（コンピュータプログラム生成物）により実装することができる。また、入力データに対して操作をすること、および出力を生成することによって本発明の機能を実行する命令で構成されるプログラムを実行する、プログラム可能なプロセッサによって、本発明に係る方法のステップを実行することもできる。
【００６６】
本発明は、有利には、データストレージシステムとの間でデータおよび命令の送受信を行うように結合された少なくとも１つのプログラム可能なプロセッサと、少なくとも１つの入力デバイスと、少なくとも１つの出力デバイスとを含むプログラム可能なシステムにおいて実行可能な、１つまたは複数のコンピュータプログラムで実装することができる。アプリケーションプログラムは、高レベルのプロシージャプログラミング言語またはオブジェクト指向プログラミング言語で、あるいは必要に応じて、アセンブリ言語または機械語で実装することができ、いずれにしても、この言語は、コンパイルまたはインタープリタ型の言語とすることができる。
【００６７】
図６は、クライアントコンピュータシステム、例えば、ユーザのワークステーションを示している。このクライアントコンピュータは、内部通信ＢＵＳ１０００に接続された中央処理ユニット（ＣＰＵ）１００１、および同様にＢＵＳ１０００に接続されたランダムアクセスメモリ（ＲＡＭ）１００７を備える。クライアントコンピュータは、さらに、ＢＵＳに接続されたビデオＲＡＭ１０１０に関連するグラフィカル処理ユニット（ＧＰＵ）１０１１を備える。ビデオＲＡＭ１０１０は、当技術分野ではフレームバッファとしても知られている。大容量ストレージデバイスコントローラ１００２は、ハードドライブ１００３などの大容量メモリデバイスへのアクセスを管理する。コンピュータプログラム命令およびデータを具現化するのに適した大容量メモリデバイスには、例えば、ＥＰＲＯＭデバイス、ＥＥＰＲＯＭデバイス、およびフラッシュメモリデバイスなどの半導体メモリデバイス、内部ハードディスクおよびリムーバブルディスクなどの磁気ディスク、光磁気ディスク、ならびにＣＤ−ＲＯＭディスク１００４を含め、すべての形態の不揮発性メモリが含まれる。上記メモリデバイスのうちの任意のメモリデバイスを、特別に設計されたＡＳＩＣ（特定用途向け集積回路）に提供し、あるいはＡＳＩＣに組み込むことができる。ネットワークアダプタ１００５は、ネットワーク１００６へのアクセスを管理する。クライアントコンピュータは、カーソル制御装置やキーボードなどの触覚デバイス１００９も含むことができる。クライアントコンピュータにおいて、カーソル制御装置を使用することにより、ユーザは、選択的にディスプレイ１００８上の任意の所望の位置にカーソルを置くことができる。さらに、カーソル制御装置により、ユーザは、様々なコマンドを選択し、制御信号を入力することができる。カーソル制御装置は、システムに制御信号を入力するための複数の信号生成デバイスを含む。典型的に、カーソル制御装置はマウスとすることができ、このマウスのボタンを使用して信号を生成することができる。
【００６８】
本発明の好ましい実施形態を説明してきた。本発明の精神および範囲を逸脱することなく、様々な変更を行うことができることが理解されよう。したがって、他の実装も特許請求の範囲に含まれる。例えば、任意の重み付け関数を使用することができ、該関数が線形関数である必要はない。重み付け関数は、初めのいくつかのマージ済みイメージに対しては低品質のイメージを優先し、その後、終わりのいくつかのマージ済みイメージに対しては遷移イメージを優先させることができる。
【図１】
2011129124.tif 000004
【図３】
2011129124.tif 000005
【図４】
2011129124.tif 000006
【図６】
2011129124.tif 000007
【図２】
2011129124.tif 000008
【図５】
2011129124.tif 000009
【外国語明細書】
2011129124000001.pdf