JP2016126795A - オブジェクトのセットの視点の選択 - Google Patents

オブジェクトのセットの視点の選択 Download PDF

Info

Publication number
JP2016126795A
JP2016126795A JP2015255063A JP2015255063A JP2016126795A JP 2016126795 A JP2016126795 A JP 2016126795A JP 2015255063 A JP2015255063 A JP 2015255063A JP 2015255063 A JP2015255063 A JP 2015255063A JP 2016126795 A JP2016126795 A JP 2016126795A
Authority
JP
Japan
Prior art keywords
assembly
objects
computer
simplified view
volume
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.)
Granted
Application number
JP2015255063A
Other languages
English (en)
Other versions
JP2016126795A5 (ja
JP6721333B2 (ja
Inventor
ダイデ ギョーム
Dayde Guillaume
ダイデ ギョーム
デルフィーノ クリストフ
Delfino Christophe
デルフィーノ クリストフ
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 JP2016126795A publication Critical patent/JP2016126795A/ja
Publication of JP2016126795A5 publication Critical patent/JP2016126795A5/ja
Application granted granted Critical
Publication of JP6721333B2 publication Critical patent/JP6721333B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/08Volume rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/20Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/24Indexing scheme for image data processing or generation, in general involving graphical user interfaces [GUIs]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/12Bounding box
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2219/00Indexing scheme for manipulating 3D models or images for computer graphics
    • G06T2219/20Indexing scheme for editing of 3D models
    • G06T2219/2016Rotation, translation, scaling

Abstract

【課題】3境界ボックスの中のオブジェクトのセットの視点を選択するためのコンピュータ実施方法を提供する。【解決手段】境界ボックスは、オブジェクトのセットが囲まれた少なくとも1つのボリュームを備える。この方法は、その少なくとも1つのボリュームの面を識別するステップと、識別された各面にオブジェクトのセットに対する視点を関連付けるステップと、ユーザアクションが行われると、1つの視点に関連付けられた面のうちの1つを選択するステップと、選択された面に関連付けられた視点に応じて、オブジェクトのセットのビューを表示するステップを備える。【選択図】図1

Description

本発明は、コンピュータプログラムおよびコンピュータシステムの分野に関し、より詳細には、オブジェクトのセットの視点を選択するための方法、システム、およびプログラムに関する。
いくつかのシステムおよびプログラムが、オブジェクトの設計、エンジニアリング、および製造に関する市場で提供されている。CADは、コンピュータ支援設計の頭字語であり、例えば、オブジェクトを設計するためのソフトウェアソリューションに関する。CAEは、コンピュータ支援エンジニアリングの頭字語であり、例えば、将来の製品の物理的な動作をシミュレートするためのソフトウェアソリューションに関する。CAMは、コンピュータ支援製造の頭字語であり、例えば、製造工程および製造作業を定義するためのソフトウェアソリューションに関する。そのようなコンピュータ支援設計システムにおいて、グラフィカルユーザインターフェースが、その技術の効率に関して重要な役割を果たす。これらの技術は、製品ライフサイクル管理(PLM)システム内に組み込まれる。PLMとは、製品の開発のために、構想から製品の寿命の終わりまで、拡張された事業の概念の中で、企業が製品データを共有すること、共通の工程を適用すること、および企業知識を活用することを助けるビジネス戦略を指す。
ダッソーシステムズ社(Dassaut Systems)によって(CATIA、ENOVIA、およびDELMIAの商標の下で)提供されるPLMソリューションは、製品エンジニアリング知識を編成するエンジニアリングハブ、製造エンジニアリング知識を管理する製造ハブ、ならびに事業統合、およびエンジニアリングハブと製造ハブの両方に対する接続を可能にする事業ハブを提供する。全体でこのシステムは、最適化された製品定義、製造準備、生産、およびサービスを駆動する動的で、知識ベースの製品作成および決定サポートを可能にするように製品、工程、リソースを結び付けるオープンなオブジェクトモデルをもたらす。
CADシステムにおいて、ユーザは、数千のオブジェクトを備えるオブジェクトのアセンブリを扱う。それに関して、ユーザは、アセンブリに対するビューの中心を、特定の領域に、特定の配向で容易に合わせることに関して困難に遭遇する。この問題に対する既知のソリューションは、3Dシーンにおけるロードされたアセンブリと一緒にX方向、Y方向、Z方向を有するグローバル基準フレームを提供することであり、グローバル基準フレームは、ユーザアクションが行われると、回転させることが可能であり、アセンブリに対する視点(viewpoint)は、基準フレームの回転に従う。したがって、ユーザは、アセンブリに対するビューを変更することが可能である。別の既知のソリューションは、モデルの特定の面に対するカメラアラインメントを提供するツールである。
しかし、これらのソリューションは、視点(point of view)を、アセンブリの特定の領域に対して揃える迅速なアクセスは提供しない。通常、第1の視点の変更が、ユーザによって3Dシーンにおいて手動で行われて、その後、正しい位置をポイントする必要がある。さらに、これらのソリューションは、一般的であり、最小のユーザ対話を用いて大きいアセンブリの専用のエリアに対する正確なビューを提供することをしない。
この背景において、オブジェクトの大きいアセンブリに対する視点の選択を改良する必要性が、依然として存在する。
したがって、境界ボックスの中のオブジェクトのセットの視点を選択するためのコンピュータ実施方法が提供される。境界ボックスは、オブジェクトのセットが囲まれた少なくとも1つのボリュームを備える。この方法は、その少なくとも1つのボリュームの面を識別すること、識別された各面にオブジェクトのセットに対する視点を関連付けること、ユーザアクションが行われると、1つの視点に関連付けられた面のうちの1つを選択すること、および選択された面に関連付けられた視点に応じてオブジェクトのセットのビューを表示することを備える。
この方法は、
その少なくとも1つのボリュームの面を識別するステップであって、その少なくとも1つのボリュームの輪郭を決定すること、その輪郭の内側で1つまたは複数の可視の面を識別すること、およびその輪郭の少なくとも1つの部分に関連付けられた1つまたは複数の不可視の面を識別することを含むステップを備えることができ、
それらの面のうちの1つを選択するステップは、その輪郭の一部分から所与の距離でユーザアクションを検出すること、近くでユーザアクションが検出されたその輪郭の一部分に関連付けられた不可視の面を選択することをさらに含み、
その境界ボックスおよびその少なくとも1つのボリュームは、直方体、立方体のうちの1つであり、
その少なくとも1つのボリュームの面を識別する前に、アセンブリを形成するオブジェクトのセットを提供するステップであって、そのセットのオブジェクトは、3次元モデル化されたオブジェクトであり、そのアセンブリは、3次元モデル化されたアセンブリであるステップ、その3次元モデル化されたアセンブリの簡略化されたビューを計算するステップであって、その計算され、簡略化されたビューは、縮小されたスケールを有するアセンブリを表現し、単一のメッシュを形成する1つの3次元オブジェクトのビューであるステップ、その簡略化されたビューを表示するステップであって、その少なくとも1つのボリュームは、その簡略化されたビュー上に表現され、その簡略化されたビューの3次元モデル化の表現を囲むステップを含み、
その3次元モデル化されたアセンブリの簡略化されたビューを計算するステップは、3次元モデル化されたオブジェクトのアセンブリに変換行列を関連付けることであって、その変換行列は、そのアセンブリの3次元モデル化されたオブジェクトの情報のセットを表現すること、およびその変換行列およびそのアセンブリから簡略化されたビューを計算することであって、その計算され、簡略化されたビューは、縮小されたスケールを有するアセンブリを表現し、単一のメッシュを形成する1つの3次元オブジェクトのビューであることを含み、
その変換行列によって表現される情報のセットは、少なくとも、3次元シーンにおけるオブジェクトの配向(x,y,z)であって、その3次元シーンのグローバルな配向を使用する配向と、倍率と、その3次元シーンにおけるその3次元モデル化されたオブジェクトの位置とを備え、
その簡略化されたビューは、オブジェクトのセットのビューが表示される3次元シーンとは異なる3次元シーンにおいて表示され、
1つの視点に関連付けられた面のうちの1つを選択するステップは、その少なくとも1つのボリュームが表現される簡略化されたビュー上で実行される。
前述した方法を実行するための命令を備えるコンピュータプログラムがさらに提供される。
そのコンピュータプログラムを記録しているコンピュータ可読記憶媒体がさらに提供される。
メモリおよびグラフィカルユーザインターフェースに結合されたプロセッサを備えるシステムであって、そのメモリは、コンピュータプログラムを記録しているシステムがさらに提供される。
次に、本発明の実施形態が、非限定的な例として、添付の図面を参照して説明される。
この方法の例を示すフローチャートである。 境界ボックスのセットを提供するための方法を示すフローチャートである。 境界ボックスのセットを提供するための方法を示すフローチャートである。 オブジェクトを囲む境界ボックスの表示の例を示すフローチャートである。 3Dモデル化されたオブジェクトの3Dモデル化されたアセンブリのビューの例を示す図である。 このシステムのグラフィカルユーザインターフェースの例を示す図である。 オブジェクトを囲む境界ボックスの例を示す図である。 オブジェクトを囲む境界ボックスの例を示す図である。 オブジェクトを囲む境界ボックスの例を示す図である。 境界ボックスの隠れた面の選択の例を示す図である。 境界ボックスの隠れた面の選択の例を示す図である。 本発明を実行するためのシステムの例を示す図である。
図1のフローチャートを参照すると、境界ボックスの中のオブジェクトのセットの視点を選択するためのコンピュータ実施方法が提案されており、その境界ボックスは、オブジェクトのそのセットが囲まれた少なくとも1つのボリュームを備える。それらのオブジェクトは、3次元(3D)モデル化されたオブジェクトであり、そのアセンブリは、3Dモデル化されたアセンブリである。この方法は、その少なくとも1つのボリュームの面を識別することを備える。この方法は、識別された各面にオブジェクトのセットに対する視点を関連付けることをさらに備える。その視点(または観点)は、面ごとに異なる。また、この方法は、1つの視点に関連付けられた面のうちの1つを選択することも備える。この選択は、通常、ユーザによって実行される。また、この方法は、その選択された面に関連付けられた視点に応じてオブジェクトのセットのビューを表示することも備える。
この方法は、オブジェクトの大きいアセンブリに対する視点の選択を改善する。実際、ユーザは、1つの視点を選択するためにアセンブリを領域に(すなわち、境界ボリュームに)分割することを活用し得る。詳細には、ユーザは、現在の視点を変更することなしにすべての適切な視点に対するアクセスを有し、ユーザは、オブジェクトのアセンブリのオブジェクトのいくつかを囲む境界ボックスのうちの1つの、1つの面を選択するだけでよい。このため、表示の良好なビューを得るためにビュー変更が実行される必要がないので、コンピューティングリソースが節約され、実際、ユーザは、一目ですべてのボリュームに対する可視性およびアクセスを有する。
この方法は、コンピュータ実施型である。このことは、この方法のステップ(または、実質的にすべてのステップ)が、少なくとも1つのコンピュータ、または任意の同様のシステムによって実行されることを意味する。このため、この方法のステップは、コンピュータによって、場合により、完全に自動的に、または半自動的に実行される。例において、この方法のステップの少なくともいくつかをトリガすることは、ユーザコンピュータの対話を介して実行され得る。要求されるユーザコンピュータの対話のレベルは、予測される自動性のレベルに依存することが可能であり、ユーザの所望を実施する必要性とのバランスがとられることが可能である。例において、このレベルは、ユーザ定義および/または事前定義によることが可能である。
例えば、3Dモデル化オブジェクトを提供するステップ(図1のS100)は、ユーザアクションが行われると、トリガされ得る。別の例として、選択するステップS140、S150もまた、ユーザアクションが行われると、実行される。
この方法のコンピュータ実施の典型的な例は、この目的に適応させられたシステムを用いてこの方法を実行することである。そのシステムは、メモリおよびグラフィカルユーザインターフェース(GUI)に結合されたプロセッサを備えることが可能であり、そのメモリは、この方法を実行するための命令を備えるコンピュータプログラムを記録している。また、そのメモリは、データベースを記憶することも可能である。そのメモリは、場合により、いくつかの別々の物理的な部分(例えば、プログラムのために1つの部分、および、場合により、データベースのために1つの部分)を備える、そのような記憶のために適応させられた任意のハードウェアである。
本発明の方法において、3Dモデル化オブジェクトのアセンブリのオブジェクトが、メモリ上に記憶され得る。また、計算された境界ボックスが、メモリ上に記憶されることも可能である。
「データベース」は、検索および取出しのために編成されたデータ(すなわち、情報)の任意のコレクションのことである。メモリ上に記憶される場合、データベースは、コンピュータによる迅速な検索および取出しを可能にする。データベースは、実際、様々なデータ処理動作と連携してデータの記憶、取出し、変更、および削除を円滑にするように構造化される。データベースは、それぞれが1つまたは複数のフィールドからなるレコードに細分され得るファイル、またはファイルのセットからなることが可能である。フィールドは、データ記憶の基本単位である。ユーザは、主にクエリを介してデータを取り出すことが可能である。キーワードおよびソートコマンドを使用して、ユーザは、使用されているデータベース管理システムの規則に従ってデータの特定の集合体を取り出すように、またはそのような集合体に関するレポートを作成するように多くのレコードの中のフィールドを迅速に検索すること、並べ替えること、グループ化すること、および選択することができる。
この方法は、一般に、例えば、部品、もしくは部品のアセンブリ、または、場合により、製品のアセンブリなどの製品を表す、モデル化オブジェクトを操作する。モデル化オブジェクトは、データベースの中に記憶されたデータによって定義される任意のオブジェクトである。ひいては、「モデル化オブジェクト」という表現は、データ自体を指す。システムのタイプにより、モデル化オブジェクトは、様々な種類のデータによって定義され得る。システムは、実際、CADシステム、CAEシステム、CAMシステム、PDMシステム、および/またはPLMシステムの任意の組合せであり得る。それらの様々なシステムにおいて、モデル化オブジェクトは、対応するデータによって定義される。したがって、CADオブジェクト、PLMオブジェクト、PDMオブジェクト、CAEオブジェクト、CAMオブジェクト、CADデータ、PLMデータ、PDMデータ、CAMデータ、CAEデータについて述べることが可能である。しかし、これらのシステムは、モデル化オブジェクトが、これらのシステムの任意の組合せに対応するデータによって定義され得るので、互いに排他的ではない。このため、システムは、後段で与えられるそのようなシステムの定義から明白となるように、CADシステムとPLMシステムの両方であり得る。
CADシステムは、CATIAなどの、モデル化オブジェクトを、そのモデル化オブジェクトのグラフィック表現に基づいて、少なくとも設計することに適応させられた任意のシステムのことである。この場合、モデル化オブジェクトを定義するデータは、モデル化オブジェクトの表現を可能にするデータを備える。CADシステムは、例えば、辺または線を使用し、一部の事例では、面または表面を用いて、CADモデル化オブジェクトの表現をもたらすことが可能である。線、辺、または表面は、様々な様態で、例えば、非一様有理Bスプライン(NURBS)において表現され得る。特に、CADファイルは、形状が生成され得る仕様を包含し、形状は、表現が生成されることを可能にする。モデル化オブジェクトの仕様は、単一のCADファイルの中に記憶されても、複数のCADファイルの中に記憶されてもよい。CADシステムにおいてモデル化オブジェクトを表現するファイルの通常のサイズは、1部品当たり1メガバイトの範囲内である。モデル化オブジェクトは、通常、数千の部品のアセンブリであり得る。
CADの内容において、モデル化オブジェクトは、通常、例えば、部品、もしくは部品のアセンブリなどの製品、または、場合により、製品のアセンブリを表現する、3Dモデル化オブジェクトであり得る。「3Dモデル化オブジェクト」は、3D表現を可能にするデータによってモデル化された任意のオブジェクトのことである。3D表現は、部品をすべての角度から見ることを可能にする。例えば、3Dモデル化オブジェクトは、3D表現される場合、そのオブジェクトの軸のうちの任意の軸、またはその表現が表示される画面における任意の軸を中心に扱われ、回転させることができる。このことは、3Dモデル化されていない、2Dアイコンをとりわけ除外する。3D表現の表示は、設計を円滑にする(すなわち、設計者が作業を統計的に実現する速度を増加させる)。製品の設計は、製造工程の一部であるので、このことは、産業における製造工程をスピードアップする。
CADシステムは、履歴ベースであり得る。この場合、モデル化オブジェクトは、幾何学的フィーチャの履歴を備えるデータによってさらに定義される。モデル化オブジェクトは、実際、標準のモデリングフィーチャ(例えば、押し出す(extrude)、外巻き(revolute)、カット、および/または円形など)および/または表面処理フィーチャ(例えば、スイープ(sweep)、ブレンド、ロフト(loft)、フィル(fill)、変形(deform)、平滑化(smoothing)など)を使用して現実の人(すなわち、設計者/ユーザ)によって設計され得る。そのようなモデリング機能をサポートする多くのCADシステムは、履歴ベースのシステムである。このことは、設計フィーチャの作成履歴が、通常、その幾何学的フィーチャを、入力リンクおよび出力リンクにより一緒に結び付ける非循環データフローを介して保存されることを意味する。履歴ベースのモデリングパラダイムは、80年代の初め以来、よく知られている。モデル化オブジェクトは、2つの永続的なデータ表現、すなわち、履歴およびB−rep(すなわち、境界表現)によって記述される。B−repは、履歴において定義された計算の結果である。モデル化オブジェクトが表現される場合にコンピュータの画面上に表示される部品の形状は、B−rep(のテセレーション(tessellation))である。部品の履歴は、設計意図である。基本的に、履歴は、モデル化オブジェクトが受けた操作に関する情報を収集する。B−repは、履歴と一緒に保存されて、複雑な部品を表示するのをより容易にすることが可能である。履歴は、設計意図による部品の設計変更を可能にするためにB−repと一緒に保存され得る。
PLMシステムは、物理的に製造された製品を表現するモデル化オブジェクトの管理に適応させられた任意のシステムのことである。このため、モデル化オブジェクトは、PLMシステムにおいて、物理的なオブジェクトの製造に適したデータによって定義される。これらは、通常、ディメンションの値および/または許容値で有り得る。オブジェクトの正確な製造のため、実際、そのような値を有する方がよい。
CAMは、コンピュータ支援製造を表す。CAMソリューションは、製品の製造データを管理することに適応させられた任意のソリューション、ハードウェアのソフトウェアのことである。製造データは、一般に、製造すべき製品、製造工程、および要求されるリソースと関係するデータを含む。CAMソリューションは、製品の製造工程全体を計画し、最適化するのに使用される。例えば、CAMソリューションは、CAMユーザに、実現可能性、製造工程の持続時間、または製造工程の特定のステップにおいて使用され得る、特定のロボットなどのリソースの数に関する情報を提供することができ、このため、管理、または要求される投資に関する決定を可能にする。CAMは、CAD工程および潜在的なCAE工程の後続の工程である。そのようなCAMソリューションは、DELMIA(登録商標)という商標の下でダッソーシステムズ社によって提供される。
CAEは、コンピュータ支援エンジニアリングを表す。CAEソリューションは、モデル化オブジェクトの物理的振舞いの解析に適応させられた任意のソリューション、ハードウェアのソフトウェアのことである。よく知られた、広く使用されるCAE技術が、モデル化オブジェクトを、数式により物理的振舞いが計算されて、シミュレートされることが可能な要素に分割することを通常、含む有限要素法(FEM)である。そのようなCAEソリューションは、SIMULIA(登録商標)という商標の下でダッソーシステムズ社によって提供される。別の進展しているCAE技術は、CAD形状データを用いない物理の様々な分野からの複数の構成要素からなる複雑なシステムのモデリングおよび解析を含む。CAEソリューションは、シミュレーションを可能にし、このため、製造されるべき製品の最適化、改良、および検証を可能にする。そのようなCAEソリューションは、DYMOLA(登録商標)という商標の下でダッソーシステムズ社によって提供される。
PDMは、製品データ管理を表す。PDMソリューションは、特定の製品と関係するすべてのタイプのデータを管理することに適応させられた任意のソリューション、ハードウェアのソフトウェアのことである。PDMソリューションは、製品のライフサイクルに関与するすべての当事者、すなわち、主にエンジニアであるが、プロジェクトマネージャ、財務担当者、販売担当者、および買い手も含む当事者によって使用され得る。PDMソリューションは、一般に、製品指向のデータベースに基づく。PDMソリューションは、当事者が、当事者の製品に関する一貫性のあるデータを共有することを可能にし、したがって、当事者が非常に異なるデータを使用することを防止する。そのようなPDMソリューションは、ENOVIA(登録商標)という商標の下でダッソーシステムズ社によって提供される。
興味深いことに、本発明は、CADシステム/CAEシステム/CAMシステム/PDMシステム、またはPLMシステムに限定されず、オブジェクトの3D表現を使用し、非CADユーザに専用であり得る任意のシステム、例えば、テクニカルイラストレーション、メンテナンス動作もしくは訓練動作、アセンブリプレゼンテーションを実行するためのシステム、対話型部品カタログなどの対話型アプリケーション、設計/作成システムなどと一緒に使用され得る。モデル化オブジェクトは、様々な種類のデータによって定義され得ることを理解されたい。
図6は、テクニカルイラストレーションを行うためのシステムのGUIの例を示す。本方法は、任意の種類のGUIと一緒に使用され得る。
GUI100は、標準のメニューバー110、120、ならびにボタン140およびサイドツールバーを有する典型的なCADのようなインターフェースであり得る。そのようなメニューバーおよびツールバーは、ユーザ選択可能なアイコンのセットを包含し、各アイコンは、当技術分野で知られているとおり、1または複数の動作または機能に関連付けられる。これらのアイコンのうちのいくつかは、GUI100において表示される3Dモデル化オブジェクト200を編集すること、および/またはそのような3Dモデル化オブジェクト200に対して作業することに適応させられたソフトウェアツールに関連付けられる。3Dモデル化オブジェクト200は、3Dモデル化オブジェクトの3Dモデル化されたアセンブリであることを理解されたい。それらのソフトウェアツールは、ワークベンチとなるようにグループ化され得る。各ワークベンチは、ソフトウェアツールのサブセットを備える。特に、ワークベンチのうちの1つは、モデル化された製品200の幾何学的フィーチャを編集することに適した編集ワークベンチである。操作の際、設計者が、例えば、オブジェクト200の一部分を事前選択し、その後、操作(例えば、テクニカルイラストレーションを完全なものにするための注釈を追加すること)を開始することが可能である。別の例として、設計者は、オブジェクト200の一部分を事前選択し、その後、適切なアイコンを選択することによって幾何学的制約を編集することが可能である。例えば、典型的なCAD操作が、画面上に表示された3Dモデル化オブジェクトの穴開けまたは折り畳みのモデリングである。
GUI100は、例えば、オブジェクトの3D配向を円滑にするため、編集された製品の操作のシミュレーションをトリガするため、または表示された製品200の様々な属性をレンダリングするために様々なタイプのグラフィックツール130、150をさらに示すことが可能である。カーソル160が、ユーザがそれらのグラフィックツールと対話することを可能にする触覚デバイスによって制御され得る。
図10は、システムの例を示し、このシステムは、クライアントコンピュータシステム、例えば、ユーザのワークステーションである。
この例のクライアントコンピュータは、内部通信バス1000に接続された中央処理装置(CPU)1010と、またそのバスに接続されたランダムアクセスメモリ(RAM)1070とを備える。クライアントコンピュータは、そのバスに接続されたビデオランダムアクセスメモリ1100に関連付けられたグラフィックスプロセシングユニット(GPU)1110をさらに備える。ビデオRAM1100は、当技術分野でフレームバッファとしても知られている。大容量ストレージデバイスコントローラ1020が、ハードドライブ1030などの大容量メモリデバイスに対するアクセスを管理する。コンピュータプログラム命令およびデータを実体化するのに適した大容量メモリデバイスは、例として、EPROM、EEPROM、およびフラッシュメモリデバイスなどの半導体メモリデバイス、内部ハードディスクおよびリムーバブルディスクなどの磁気ディスク、光磁気ディスク、ならびにCD−ROMディスク1040を含む、すべての形態の不揮発性メモリを含む。前述のメモリデバイスのうちのいずれかが、特別に設計されたASIC(特定用途向け集積回路)によって補足される、またはそのようなASICに組み込まれることが可能である。ネットワークアダプタ1050が、ネットワーク1060に対するアクセスを管理する。また、クライアントコンピュータは、カーソル制御デバイス、キーボードなどの触覚デバイス1090を含むことも可能である。カーソル制御デバイスは、クライアントコンピュータにおいて使用されて、ユーザが、ディスプレイ1080上の所望される任意の位置にカーソルを選択的に位置付けることを可能にする。さらに、カーソル制御デバイスは、ユーザが様々なコマンドを選択すること、および制御信号を入力することを可能にする。カーソル制御デバイスは、システムに制御信号を入力するためのいくつかの信号生成デバイスを含む。通常、カーソル制御デバイスは、マウスであってもよく、そのマウスのボタンが、それらの信号を生成するのに使用される。代替として、またはさらに、クライアントコンピュータシステムは、感応パッドおよび/または感応画面を備えることが可能である。
コンピュータプログラムは、コンピュータによって実行可能な命令を備えることが可能であり、それらの命令は、前述のシステムに方法を実行させるための手段を備える。プログラムは、システムのメモリを含む任意のデータ記憶媒体上に記録可能であり得る。プログラムは、例えば、デジタル電子回路として、もしくはコンピュータハードウェアとして、ファームウェアとして、ソフトウェアとして、または以上の組合せとして実施され得る。プログラムは、装置として、例えば、プログラマブルプロセッサによって実行されるようにマシン可読ストレージデバイスとして実体化された製品として実施され得る。方法ステップは、入力データを操作すること、および出力を生成することによって方法の機能を実行するように命令のプログラムを実行するプログラマブルプロセッサによって実行され得る。このため、プロセッサは、プログラマブルであり、データストレージシステム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスからデータおよび命令を受信するように、かつデータストレージシステム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスにデータおよび命令を送信するように結合されることが可能である。アプリケーションプログラムは、高レベルの手続きプログラミング言語もしくはオブジェクト指向プログラミング言語、または、所望される場合、アセンブリ言語もしくはマシン言語で実施されることが可能である。いずれにしても、言語は、コンパイルされる言語、または解釈される言語であり得る。プログラムは、完全インストールプログラムまたは更新プログラムであることが可能である。システムにプログラムを適用することは、いずれにしても、方法を実行するための命令をもたらす。
次に図1を参照すると、ステップS100で、3Dシーンにおいて3Dモデル化されたアセンブリを形成する3Dモデル化オブジェクトが提供される。3Dモデル化オブジェクトを提供することは、それらのオブジェクトが、本方法を実行するシステムに利用可能であることを意味する。3Dモデル化オブジェクトは、例えば、図10のシステムのディスプレイ1080上に表示され得る。
図5は、3Dモデル化オブジェクトの3Dモデル化されたアセンブリの例を示し、この場合は、自転車がモデル化される。図6は、GUI100上に表示された図5の自転車200を示す。3Dモデル化されたアセンブリは、3Dシーン内に表示される。3Dシーンは、3Dオブジェクトの間の空間的関係が記述される空間であり、例えば、その自転車を形成する3Dモデル化オブジェクトは、3Dシーンにおいて配置および配向される。
次に、図1のステップS110で、3Dモデル化されたアセンブリを包含するメイン境界ボックスが計算される。このことは、当技術分野で知られているとおりに実行される。その結果、ステップS100のすべての提供されるオブジェクトが、メイン境界ボックスの中に囲まれる。
そして、ステップS120で、その3Dシーンにおける少なくとも1つのボリュームが計算される。このボリュームは、ステップS110において計算されたメイン境界ボックスで囲まれる。計算されたボリュームは、3Dモデル化されたアセンブリの3Dモデル化されたオブジェクトのセットを囲む。
次に、ステップS120のボリュームを計算する例が、図2および図3を参照して説明される。
図2のステップS200で、ユーザが、ステップS100で提供された1つまたは複数の3Dモデル化オブジェクトの少なくとも1つのプロパティの選択を実行する。そのプロパティは、オブジェクトの材料パラメータなどのオブジェクトの物理的プロパティ、オブジェクトの色などのオブジェクトのレンダリングプロパティ、3Dモデル化されたアセンブリの製品構造におけるオブジェクトのレベル、3Dモデル化が記憶されるデータベースのプロパティ、すなわち、データベースがPLMデータベースで有り得ること、アセンブリのオブジェクトの任意の属性からユーザによって作成されたプロパティなどであり得るが、以上には限定されない。一般的に言えば、プロパティという用語は、オブジェクトの任意の特性を包含することが可能である。例えば、オブジェクトの生成日、3Dシーンにおけるオブジェクトの位置、オブジェクトに対して作業することを許された設計者(または他の任意の読取り/書込み/実行アクセス権など)が、1または複数のオブジェクトと関係する属性であり、したがって、オブジェクトのプロパティである。
次に、ステップS210で、3Dモデル化オブジェクトのグループが生成される。そのグループは、1または複数の3Dモデル化オブジェクトを備え得ることを理解されたい。そのグループのオブジェクトは、ユーザによって選択された1または複数のプロパティを満たす。例えば、ユーザが、「青いオブジェクト」というプロパティを選択した場合、青でレンダリングされた(または青でレンダリングされるべき)オブジェクトのグループが生成される。
オブジェクトは、2以上のプロパティがユーザによって選択された場合、いくつかのグループに属することが可能である。そのような事例において、オブジェクトが属し得るグループの数は、限られることが可能であり、例えば、オブジェクトは、3つより多くのグループに属することができない。このことは、グループの数を有利に制限する。さらに、オブジェクトのプロパティの間にプロパティ規則が存在することが可能である。いくつかのグループに属することが可能なオブジェクトは、最高の優先度を有するプロパティに関連付けられたグループに属する。
次に、ステップS220で、2以上の境界ボックスが計算される。これらの境界ボックスは、メイン境界ボックスの中に包含され、別の言い方をすれば、これらの境界ボックスは、メイン境界ボックスの中に完全に囲まれる。これらの2以上の境界ボックスのうちの1つは、ステップS210で生成されたグループに属する3Dモデル化オブジェクトを備える。
実際、境界ボックスの計算は、3Dシーンにおけるオブジェクトの位置に依拠する。例において、境界ボックスは、重み付けされたポイントのシステムにおいて重心を識別することによって計算される。第1のステップで、3Dシーンにおいてポイントのクラウドが計算され、それらのポイントは、生成されたグループの3Dモデル化オブジェクトの輪郭を表現する。次に、このことが、グループに属さないオブジェクトを含め、オブジェクトのすべてのグループに関して連続して実行される。このため、ポイントのクラウドは、グループに属するポイントを備え(例えば、ポイントに、それらのポイントが属するグループに応じて特定の色が与えられる)、そのクラウドのポイントに重み付けが、例えば、それらのポイントが由来したオブジェクトのボリューム、またはそのようなオブジェクトの三角形の数に応じて行われる。次に、所与のグループのそれぞれのポイントに関して、当技術分野で知られているとおり、重心が計算される。次に、3Dモデル化オブジェクトのグループに関する境界ボックスが計算され、その重心を、その境界ボックスによって定義されるボリュームの中心として用いる。このことが、各グループに関して実行される。重要なこととして、計算された境界ボックスの間の重なり合いまたは交差のリカバリは存在しない。
次に、図8aおよび図8bを参照すると、ユーザがプロパティとしてオブジェクトの色を選択した後、計算された境界ボックスの例が示されている。ユーザは、4つの色、すなわち、赤、緑、黄、およびピンクをプロパティとして選択している。このユーザ選択の結果として5つのグループが識別されており、第1のグループは、赤である前輪80に対応し、第2のグループは、緑である後輪82に対応し、第3のグループは、黄であるシート86であり、第4のグループは、ピンクであるハンドルバー88である。3Dモデル化されたオブジェクトの最後のグループは、自転車フレーム90であり、このグループは、暗黙に生成されており、プロパティとして選択された色を満たさないオブジェクトを備える。オブジェクトの各グループは、点線の円で囲まれている。図9bに示されるとおり、6つの境界ボックス800、810、820、830、840、850が計算されている。この例において、メイン境界ボックス(図示せず)によって定義されたボリューム全体が、計算された境界ボックスによって使用されなければならないこと、および計算された境界ボックスは、直方体であることがシステムの要件である。その6つの境界ボックスが、図9bに示されるとおり配置される結果となる。興味深いことに、境界ボックス830は、空の境界ボックスであり、すなわち、この境界ボックスの中にオブジェクトはまったく(完全にも、部分的にも)囲まれていない。境界ボックス830は、システムの以下の2つのさらなる要件に準拠する目的で生成されている。すなわち、(i)メイン境界ボックスの1方向に関して、メイン境界ボックスは、最大で2つの隣り合う重ね合わされた境界ボックスを備え、(ii)メイン境界ボックスのその1つの方向に関するその2つの隣り合う重ね合わされた境界ボックスの間のインターフェース(interface)が、そのメイン境界ボックスの中で層を形成し、その層は、その他の境界ボックスの広がりを制限する。このことは、メイン境界ボックスの規則的な分割を生成することを許容し、ユーザは、3Dモデル化されたアセンブリがどのように分割されているかを容易に理解することができる。図8bで、重ね合わされた境界ボックスの数は、(メイン境界ボックスの配向を提供する基準フレーム860の)方向「y」において2つに制限され、このことは、例えば、方向「x」に関しては該当しない。さらに、境界ボックス850および800は、方向「y」において層(図示せず)を生成し、この層には、他のいずれの境界ボックスも交差することが可能でない。したがって、他のすべての重ね合わされた境界ボックス840、810および830、820は、この層の両側にある。
次に図3を参照して、システムが、3次元モデル化されたアセンブリの1または複数のプロパティを自動的に選択する、ステップS120のボリュームの計算の例を説明する。
次に、ステップS300で、メイン境界ボックスによって包含される計算された境界ボックスの数nが、システムによって決定される。その数nは、3Dモデル化されたアセンブリのサイズに依存する。サイズという用語は、3Dモデル化されたアセンブリの、そのアセンブリの基準フレームに関するディメンション、すなわち、その3Dモデル化されたアセンブリの長さ、幅、および高さを意味する。このため、3Dモデル化オブジェクトのディメンションは、長方形直方体または立方体の境界ボックスの最小サイズを決定する。このため、メイン境界ボックスの中に囲まれた境界ボックスの数は、3Dモデル化されたアセンブリのディメンションから決定され得る。例えば、囲まれた境界ボックスの最小サイズは、メイン境界ボックスのサイズと囲まれた境界ボックスのサイズの比から決定され得る。実際には、その比は、囲まれる各境界ボックスがユーザによって直ちに識別可能になっている。
数nが決定されると、囲まれた境界ボックスのディメンションが計算され得る。実際には、n個の境界ボックスは、以下の規則にも準拠する。すなわち、(i)メイン境界ボックスの1つの方向に関して、メイン境界ボックスは、最大で2つの隣り合う重ね合わされた境界ボックスを備え、(ii)メイン境界ボックスのその1つの方向に関するその2つの隣り合う重ね合わされた境界ボックスの間のインターフェースが、そのメイン境界ボックスの中で層を形成し、その層は、その他の境界ボックスの広がりを制限し、(iii)メイン境界ボックスによって定義されたボリューム全体が、計算された境界ボックスによって使用されなければならず、かつ(iv)計算された境界ボックスは、直方体または立方体である。
図7は、システムによって決定されたメイン境界ボックスによって包含される境界ボックスの例を示す。12の立方体が、メイン境界ボックス(図示せず)の中に囲まれ、これらの12の境界ボックスは、同一のディメンションを有する。
図1を再び参照すると、ステップS130で、その少なくとも1つのボリュームの面が識別される。このことは、メイン境界ボックスの中に囲まれた各境界ボックスの面のリストが確立されることを意味する。ボリュームの面は、そのボリュームの境界の部分を形成し、少なくとも3つの辺によって限定される平面である。例えば、図7の各立方体は、6つの面を有し、各面は、4つの辺によって画定される。
面を識別することは、1つまたは複数の可視の面を識別すること、および1つまたは複数の不可視の面を識別することを備え得る。実際には、3Dシーンにおける3Dボリュームのレンダリングは、当技術分野において広く知られているとおり、2D空間(ディスプレイのピクセル)における投影である。可視の面だけがその2D空間上に表現される。別の言い方をすれば、可視の面は、最前部にある面である一方で、不可視の面は、後方部にある。
ステップS132で、少なくとも1つのボリュームの輪郭が決定される。輪郭は、ボリュームの可視の外形を画定する。ボリュームの輪郭は、通常、レンダリングステップにおけるボリュームの投影から得られる。
例えば、図9bが、透視図を用いて(例えば、図6のGUI100上に)レンダリングされる立方体の輪郭を破線で示す。
次に、ステップS134で、その輪郭の内側で1つまたは複数の可視の面が識別される。このことは、当技術分野で知られているとおりに実行される。
図9bにおいて、可視の面900(数字1)、910(数字2)、920(数字3)が識別される。
次に、ステップS136で、その輪郭の少なくとも1つの部分に関連付けられた1つまたは複数の不可視の面が識別される。
図9bにおいて、輪郭は、6つの辺からなる。各辺940、942、950、952、930、932が、その輪郭の一部分を形成し、2つの面、すなわち、1つの可視の面、および1つの不可視の面に関連付けられる。図9aは、図9bの展開された立方体を示し、不可視の面960、970、980が表現される。その輪郭に属する辺940が、可視の面900および不可視の面970に接続される。別の例として、その輪郭の辺932が、可視の面900および不可視の面980に接続される。不可視の面960が、その輪郭に属する辺950および辺952に接続される。
このため、方法のこのステップで、後方(background)にあり、その輪郭の一部分に関連付けられた不可視の面は、現時点で識別されている。ユーザアクションが行われると、1つの可視の、または不可視の識別された面が選択され得る。
次に、ステップS138で、識別された各面に関して視点が識別される。任意の視点が、選択された面に関連付けられ得る。視点は、位置、配向、および視野を有するソフトウェアオブジェクトであるカメラを用いて得られる。そのカメラは、当技術分野で知られているとおり、アセンブリが配置された3Dシーンのボリュームに対するビューを示すことを担う。視点(カメラ)は、3Dモデル化されたオブジェクトを有する3Dシーンに同様に配置された3Dオブジェクト(仮想物理オブジェクト)としてモデル化される。実際には、3Dモデル化されたオブジェクトのアセンブリに向けて視点のねらいを定める点は、選択された面の重心であり、選択された面に対して垂直である。このことは、オブジェクトのセットに対する新たなビューが、ディスプレイ、例えば、方法を実行するシステムのディスプレイの中心に位置付けられることを確実にする。視点の任意の構成が面に関連付けられ得ることを理解されたい。一般に、面に関連付けられた視点は、同様に構成され、したがって、ユーザは、ユーザ選択の結果として表示されるビューをより容易に理解することが可能である。さらに、このことは、方法を実行するシステム上のコンピューティングリソースの消費を制限する。
ステップS140で、ユーザが、図9a、図9bにおける可視の面、例えば、可視の面900を選択する。このことは、当技術分野で知られているとおりに実行される。例えば、ユーザが、マウスによって制御されるカーソル160を使用する。可視の面900のレンダリングは、マウスに対してユーザアクションが行われると、この可視の面が選択され得ることをユーザに示すために変更されてもよい。
ステップS160で、選択された面のボリュームの中に含まれるオブジェクトのセットのビューが表示され、このビューは、選択された面に関連付けられた観点から得られる。
ステップS150で、ユーザが、不可視の面のうちの1つを選択することを所望する。以上に見られるように、不可視の面は、ユーザが不可視の面を直接に選択することができないように後方にある。
ステップS152で、システムが、輪郭の一部分から所与の距離でユーザアクションを検出する。所与の距離という表現は、値の範囲を意味する。例えば、ユーザが、輪郭の一部分に向けてカーソルを動かすことが可能であり、カーソルと輪郭の間の距離を表現する値が、値のその範囲に属する場合、ユーザは、その部分に関してアクションを実行する可能性を有する。その距離は、ユークリッド距離、ピクセルの数などであり得るが、これに限定されない。その距離は、カーソルの終端、カーソルの重心、その部分を形成するピクセルのうちの1つから/まで測定され得るが、これに限定されない。このことは、当技術分野で知られているとおりに実行される。代替として、その部分の一方の側で、または両側でエリアを定義することが可能であり、ユーザがこのエリア内でアクションを実行すると、システムは、そのユーザアクションが行われたと考える。輪郭のその部分のレンダリングは、ユーザに、ユーザのユーザアクションが検出されたこと、例えば、カーソルがそのエリア内にあることを示すために変更されてもよい。
次に、ステップS154で、ユーザが、近くでユーザアクションが検出された輪郭の部分に関連付けられた不可視の面を選択する。このことは、当技術分野で知られているとおりに実行される。例えば、ユーザが、マウスによって制御されるカーソル160を使用し、そのカーソルが輪郭のその部分の上に乗ると、そのマウスをクリックする。
次に、ステップS160が、以上で説明されるように実行される。
計算された境界ボックス(メイン境界ボックスおよび囲まれた境界ボックス)は、ユーザに対して表現され得る。例えば、計算された境界ボックスは、3Dモデル化されたアセンブリ上に直接に示され得る。
代替として、計算された境界ボックスは、3Dモデル化されたアセンブリのビューの簡略化されたビュー上に示され得る。この目的のために、3Dモデル化されたアセンブリの簡略化されたビューが計算される。簡略化されたビューという表現は、そのビューのグラフィカル要素が、システムの見地から、アセンブリの個々のオブジェクトに応じて区分化されていないことを意味する。このことは、例えば、図5の自転車を形成するオブジェクト(例えば、車輪)が、表示された際に、簡略化されたビュー上でユーザによって選択され得ないことと関係する。別の言い方をすれば、簡略化されたビューにおいて表現されたオブジェクトのセットは、コンテンツアドレス指定可能ではなく、ユーザは、そのビューにおいて表示されたアセンブリを構成するいずれの個別のオブジェクトも選択することができない。このため、ユーザは、そのアセンブリの簡略化されたモデルを見る。
簡略化されたビューは、他のいずれの色も使用され得るものと理解して、淡色表示された白色モデルで有り得る。色は、好ましくは、統一され、このことは、簡略化されたビューを、GUI上で元のモデルと区別することを可能にし、提供される情報と関係するオブジェクトを強調する。さらに、簡略化されたビューの表現には材料またはテクスチャはまったく適用されない。このことは、簡略化されたビューのより迅速な計算およびレンダリングを可能にし、より少ないメモリしか要求されない。
簡略化されたビューの計算は、変換行列を3Dモデル化オブジェクトのアセンブリに関連付けるステップS310を備え得る。変換行列は、アセンブリの3Dモデル化オブジェクトに関する情報のセットを表現する。この内容において、関連付けという用語は、変換行列を表現するデータが、そのオブジェクトを表現するデータと一緒に記憶されることを意味し、そのデータは、(例えば、同一のファイルの中に)物理的に記憶されること、または(例えば、ファイルから第2のファイルに向かうポインタを用いて2つのファイルの中に)論理的に記憶されることが可能である。
この変換行列は、当技術分野で知られているとおり、2つの空間の間の線形変換を提供することを目的とする。例えば、この変換行列は、アセンブリの3D空間から簡略化されたビューの3D空間への変換を可能にする。この変換行列は、3D空間内のアセンブリに対する(もしくはサブアセンブリに対する、または3Dモデル化オブジェクトに対する)平行移動、回転、拡大縮小などの、ただし、以上には限定されない操作を実行することを可能にする。興味深いことに、この変換行列は、簡略化されたビューに対する操作がアセンブリに対して適用され得るように容易に反転させられ得る。
この変換行列によって表現される情報のセットは、3Dシーンにおけるアセンブリの少なくとも配向および配置(position)を備える。アセンブリの配向および配置は、当技術分野で知られているとおり、3Dシーンのグローバルフレーム(基準のフレームとも呼ばれる)に対するアセンブリに付けられた基準フレーム、例えば、3つの軸(x,y,z)のフレームの配向および配置として定義される。情報のセットは、縮小されたスケールでアセンブリを表現する簡略化されたビューを得るために使用されるのと同一(すなわち、同一の値)である倍率をさらに備える。
第1の3D空間内に位置するアセンブリと、第2の3D空間内に位置する簡略化されたビューの間でリンクを生成することが可能なように3Dモデル化オブジェクトのアセンブリと変換行列の間で関連付けが作成される。興味深いことに、アセンブリの各オブジェクトに1つの変換行列が関連付けられることが可能であり、このことは、アセンブリが、そのアセンブリにおけるオブジェクトと同じ数だけの変換行列に関連付けられることを意味し、1つの変換行列は、アセンブリのオブジェクトのうちの1つと関係する情報のセットを備える。別の言い方をすれば、アセンブリは、そのアセンブリの各オブジェクトに関する変換行列に関連付けられる。このことは、使用される粒度がオブジェクトであり、アセンブリを形成するオブジェクトのセットではないので、簡略化されたビューとアセンブリの間に生成されるリンクの精度を向上させることを有利にする。
次に、簡略化されたビューが、変換行列、および3Dモデル化オブジェクトのアセンブリから計算される。このことは、当技術分野において知られているとおりに実行される。計算された、簡略化されたビューは、縮小されたスケールで、例えば、1/10の倍率でアセンブリを表現する3Dオブジェクト(簡略化されたモデルとも呼ばれる)のビューである(簡略化されたビューは、オブジェクトのアセンブリの1/10の大きさである)。スケールを縮小することは、表現を単により小さくするように操作することであるズームアウトとは異なり、一方、スケールを縮小することには、アセンブリを形成するオブジェクトの変換(縮小)が実行されてから、表現を得ることと関係する。
さらに、その1つの3Dオブジェクト(または簡略化されたモデル)は、単一のメッシュを形成する。このことは、サブメッシュの集合体として1つだけのメッシュが得られることを意味し、各サブメッシュは、アセンブリのオブジェクトのメッシュである。このため、集合体表現が、次にレンダリングされるべきビューを形成するように処理される。メッシュの集成は、当技術分野で知られているとおりに実行される。メッシュという用語は、3Dにおいてモデル化オブジェクトの形状を定義する頂点、辺、および面のセットを意味する。実際には、面は、三角形、四辺形、または他の単純な凸多角形であり得る。このため、簡略化されたビューのメッシュは、アセンブリのメッシュと比べて簡略化されたメッシュ、簡略化されたビューを表示するためにより少ないメモリしか要求されない。
簡略化されたビューを計算するステップは、当技術分野で知られているとおり、しきい値サイズ(場合により、ユーザパラメータ設定される)またはSAG、すなわち、オブジェクトのテセレーション表現のために使用されるエントリパラメータなどの様々な基準に基づく簡略化が先行することが可能である。このため、集成中にセットのすべての部品が使用されなくてもよい(例えば、飛行機のリベットは、その飛行機全体が表示される場合、破棄される)。さらに、他の部品に包含される(したがって、覆い隠される)部品は、集成の際に使用されなくてもよい。オブジェクトのいくつかを破棄するのに他の基準、例えば、部品のユーザ選択可能なカテゴリが使用されてもよい。
興味深いことに、計算された、簡略化されたビューは、ビューを表示するのに要求されるメモリの点で重要な差を生じる。実際、簡略化されたビューは、通常、いくつかのメモリリソース(例えば、数キロバイト)を要求し、部品のすべての表現を包含するビューは、最大で数千メガバイトがコンピュータメモリにロードされることを要求し得る。スケール縮小、および単一のメッシュの計算のお蔭で、そのビューは、より迅速に計算され、レンダリングされる。
そして、計算するステップS300から得られた簡略化されたビューが、GUI上の3Dシーン内で表示される。簡略化されたビューが表示される3D空間は、アセンブリが表示される3D空間と同じではない。別の言い方をすれば、3Dモデル化オブジェクトのアセンブリは、第1の3Dシーンにおいて表示され、3Dモデル化オブジェクトのアセンブリの簡略化されたビューは、第2の3Dシーンにおいて表示され、両方のシーンは、同一のGUI上に表示される。別の言い方をすれば、簡略化されたビューは、表示されたアセンブリの3Dシーンとは異なる3Dシーンにおいて表示される。
実際には、このことは、図6に示されるとおり、GUI上に2つのウインドウを表示することによって実行される。自転車200、および簡略化されたモデルの簡略化されたビュー300が、同一のGUI100上で、ただし、異なる2つのウインドウ内に表示される。ウインドウ310は、簡略化されたビュー300が表示された3D空間を示し、ウインドウ210は、アセンブリ200が表示された3D空間を示し、これらの2つの3D空間は、同一ではなく、それぞれの3D空間独自のグローバルな配向を有する。
次に、計算された境界ボックスが、簡略化されたビュー上に表示される。簡略化されたビュー上の境界ボックスの位置は、変換行列を用いて計算される。実際には、3Dシーンにおける境界ボックスの座標と変換行列の(数学的)積が、簡略化されたビューの3Dシーンにおけるそれらの境界ボックスの新たな座標を提供する。例えば、図7(または図8b)の自転車が、3Dオブジェクトのセットの簡略化された表現を囲むいくつかのボリュームと一緒に、簡略化されたビューの例と見なされることがあり、この簡略化されたビューは、図6のウインドウ300の中で表示され得る。このため、ユーザは、簡略化されたビュー上で直接に視点の選択を実行することができ、そのビューは、メインウインドウ210の中で表示される。このようにして、ユーザは、現在の視点を変えることなしにすべての適切な視点に容易に、かつ直接にアクセスすることができ、ユーザは、簡略化された表現上で境界ボックスのうちの1つの、1つの面を選択するだけでよい。
本発明の好ましい実施形態が説明された。本発明の趣旨および範囲を逸脱することなく、様々な変形が行われ得ることが理解されよう。したがって、他の実装形態が、添付の特許請求の範囲に含まれる。

Claims (12)

  1. 境界ボックスの中のオブジェクトのセットの視点を選択するためのコンピュータ実施方法であって、前記境界ボックスは、前記オブジェクトのセットが囲まれた少なくとも1つのボリュームを備え、前記方法は、
    前記少なくとも1つのボリュームの面を識別するステップ(S130)と、
    識別された各面に前記オブジェクトのセットに対する視点を関連付けるステップと、
    ユーザアクションが行われると、1つの視点に関連付けられた面のうちの1つを選択するステップ(S140)と、
    前記選択された面に関連付けられた前記視点に応じて、前記オブジェクトのセットのビューを表示するステップ(S160)と
    を備えることを特徴とするコンピュータ実施方法。
  2. 前記少なくとも1つのボリュームの面を識別するステップは、
    前記少なくとも1つのボリュームの輪郭を決定するステップ(S132)と、
    前記輪郭の内側で1つまたは複数の可視の面を識別するステップ(S134)と、
    前記輪郭の少なくとも1つの部分に関連付けられた1つまたは複数の不可視の面を識別するステップ(S136)と
    を備えることを特徴とする請求項1に記載のコンピュータ実施方法。
  3. 前記面のうちの1つを選択するステップは、
    前記輪郭の一部分から所与の距離でユーザアクションを検出するステップ(S152)と、
    近くで前記ユーザアクションが検出された前記輪郭の前記一部分に関連付けられた前記不可視の面を選択するステップ(S154)と
    をさらに備えることを特徴とする請求項2に記載のコンピュータ実施方法。
  4. 前記境界ボックスおよび前記少なくとも1つのボリュームは、直方体、立方体のうちの1つであることを特徴とする請求項1から請求項3のいずれか1項に記載のコンピュータ実施方法。
  5. 前記少なくとも1つのボリュームの面を識別する前に、
    アセンブリを形成するオブジェクトのセットを提供するステップであって、前記オブジェクトのセットは3次元モデル化されたオブジェクトであり、前記アセンブリは3次元モデル化されたアセンブリである、ステップと、
    前記3次元モデル化されたアセンブリの簡略化されたビューを計算するステップであって、前記計算され、簡略化されたビューは、縮小されたスケールを有する前記アセンブリを表現し、かつ単一のメッシュを形成する1つの3次元オブジェクトのビューである、ステップと、
    前記簡略化されたビューを表示するステップであって、前記少なくとも1つのボリュームは、前記簡略化されたビュー上に表現され、前記簡略化されたビューの前記3次元モデル化の表現を囲む、ステップと
    を備えることを特徴とする請求項1から請求項4のいずれか1項に記載のコンピュータ実施方法。
  6. 前記3次元モデル化されたアセンブリの簡略化されたビューを計算するステップは、
    前記3次元モデル化されたオブジェクトのアセンブリに変換行列を関連付けるステップであって、前記変換行列は、前記アセンブリの前記3次元モデル化されたオブジェクトの情報のセットを表現する、ステップと、
    前記変換行列および前記アセンブリから前記簡略化されたビューを計算するステップであって、前記計算され、簡略化されたビューは、縮小されたスケールを有する前記アセンブリを表現し、かつ単一のメッシュを形成する前記1つの3次元オブジェクトのビューである、ステップと
    を備えることを特徴とする請求項5に記載のコンピュータ実施方法。
  7. 前記変換行列によって表現される情報のセットは、少なくとも、
    前記3次元シーンにおける前記オブジェクトの配向(x,y,z)であって、前記3次元シーンのグローバルな配向を用いる、前記配向と、
    倍率と、
    前記3次元シーンにおける前記3次元モデル化されたオブジェクトの位置と
    を備えることを特徴とする請求項6に記載のコンピュータ実施方法。
  8. 前記簡略化されたビューは、前記オブジェクトのセットのビューが表示される前記3次元シーンとは異なる3次元シーンにおいて表示されることを特徴とする請求項5から請求項7のいずれか1項に記載のコンピュータ実施方法。
  9. 前記1つの視点に関連付けられた面のうちの1つを選択するステップは、前記少なくとも1つのボリュームが表現される前記簡略化されたビュー上で実行されることを特徴とする請求項8に記載のコンピュータ実施方法。
  10. 請求項1から請求項9のいずれかに記載の方法を実行するための命令を備えるコンピュータプログラム。
  11. 請求項10に記載の前記コンピュータプログラムを記憶したことを特徴とするコンピュータ可読記憶媒体。
  12. メモリおよびグラフィカルユーザインターフェースに結合されたプロセッサを備えたコンピュータシステムであって、前記メモリは、請求項10に記載のコンピュータプログラムを記憶したことを特徴とするコンピュータシステム。
JP2015255063A 2014-12-30 2015-12-25 オブジェクトのセットの視点の選択 Active JP6721333B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP14307217.1 2014-12-30
EP14307217.1A EP3040946B1 (en) 2014-12-30 2014-12-30 Viewpoint selection in the rendering of a set of objects

Publications (3)

Publication Number Publication Date
JP2016126795A true JP2016126795A (ja) 2016-07-11
JP2016126795A5 JP2016126795A5 (ja) 2019-02-07
JP6721333B2 JP6721333B2 (ja) 2020-07-15

Family

ID=52423550

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015255063A Active JP6721333B2 (ja) 2014-12-30 2015-12-25 オブジェクトのセットの視点の選択

Country Status (6)

Country Link
US (1) US20160188159A1 (ja)
EP (1) EP3040946B1 (ja)
JP (1) JP6721333B2 (ja)
KR (1) KR20160082477A (ja)
CN (1) CN105760570B (ja)
CA (1) CA2916256A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10416836B2 (en) * 2016-07-11 2019-09-17 The Boeing Company Viewpoint navigation control for three-dimensional visualization using two-dimensional layouts
JP6415495B2 (ja) * 2016-08-09 2018-10-31 株式会社ミスミ 設計支援装置、設計支援システム、サーバ及び設計支援方法
KR20180051288A (ko) * 2016-11-08 2018-05-16 삼성전자주식회사 디스플레이 장치 및 그 제어 방법
US10115231B1 (en) * 2017-06-30 2018-10-30 Dreamworks Animation Llc Traversal selection of components for a geometric model
WO2020189903A1 (ko) * 2019-03-20 2020-09-24 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
EP3842911B1 (en) * 2019-12-26 2023-04-05 Dassault Systèmes A 3d interface with an improved object selection
EP3846014A1 (en) * 2019-12-30 2021-07-07 Dassault Systèmes Unlock of a 3d view
KR102599192B1 (ko) * 2022-04-19 2023-11-09 주식회사 인피닉 객체 검출 방법 및 이를 실행하기 위하여 기록매체에 기록된 컴퓨터 프로그램

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5588098A (en) * 1991-11-22 1996-12-24 Apple Computer, Inc. Method and apparatus for direct manipulation of 3-D objects on computer displays
JPH10143682A (ja) * 1996-11-15 1998-05-29 Meidensha Corp 三次元モデルの形状簡略化方法
JP2009069879A (ja) * 2007-09-10 2009-04-02 Ricoh Co Ltd パーツカタログ生成装置、パーツカタログ生成方法、パーツカタログ生成プログラムおよび記録媒体
JP2010287233A (ja) * 2009-06-10 2010-12-24 Dassault Systemes Plmデータベースのオブジェクトのアセンブリを表示するプロセス、プログラムおよび装置
JP2012221416A (ja) * 2011-04-13 2012-11-12 Hitachi Ltd 計算機システム、及び組立アニメーション生成方法
JP2013084241A (ja) * 2011-09-30 2013-05-09 Canon Marketing Japan Inc 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2014219975A (ja) * 2013-04-30 2014-11-20 ダッソー システムズDassault Systemes コンピュータによって実行され、三次元シーンにおいてアセンブリの三次元モデル化オブジェクトを操作するための方法

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5583977A (en) * 1993-10-21 1996-12-10 Taligent, Inc. Object-oriented curve manipulation system
US7216305B1 (en) * 2001-02-15 2007-05-08 Denny Jaeger Storage/display/action object for onscreen use
US7337401B2 (en) * 2002-12-18 2008-02-26 Microsoft Corporation User interface element representation with simplified view
GR1004581B (el) * 2003-05-21 2004-05-26 Κυβικο λογικο παιχνιδι
US7277572B2 (en) * 2003-10-10 2007-10-02 Macpearl Design Llc Three-dimensional interior design system
EP1804184B1 (en) * 2005-12-30 2017-06-28 Dassault Systèmes Process for selecting an object in a PLM database and apparatus implementing this process
US7782319B2 (en) * 2007-03-28 2010-08-24 Autodesk, Inc. Three-dimensional orientation indicator and controller
US8793619B2 (en) * 2008-03-03 2014-07-29 The United States Of America, As Represented By The Secretary Of The Navy Graphical user control for multidimensional datasets
US8132120B2 (en) * 2008-12-29 2012-03-06 Verizon Patent And Licensing Inc. Interface cube for mobile device
US9035944B2 (en) * 2010-08-06 2015-05-19 Intergraph Corporation 3-D model view manipulation apparatus
JP5712796B2 (ja) * 2011-06-02 2015-05-07 富士通株式会社 解析支援プログラム、解析支援方法および解析支援装置
US9582613B2 (en) * 2011-11-23 2017-02-28 Siemens Product Lifecycle Management Software Inc. Massive model visualization with spatial retrieval
CN103559742B (zh) * 2013-10-23 2017-05-10 Tcl集团股份有限公司 一种用于3d场景的焦点切换方法及系统
US20150279075A1 (en) * 2014-03-27 2015-10-01 Knockout Concepts, Llc Recording animation of rigid objects using a single 3d scanner
CN103942306B (zh) * 2014-04-18 2017-04-19 重庆市勘测院 三维城市模型自适应调度方法

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5588098A (en) * 1991-11-22 1996-12-24 Apple Computer, Inc. Method and apparatus for direct manipulation of 3-D objects on computer displays
JPH10143682A (ja) * 1996-11-15 1998-05-29 Meidensha Corp 三次元モデルの形状簡略化方法
JP2009069879A (ja) * 2007-09-10 2009-04-02 Ricoh Co Ltd パーツカタログ生成装置、パーツカタログ生成方法、パーツカタログ生成プログラムおよび記録媒体
JP2010287233A (ja) * 2009-06-10 2010-12-24 Dassault Systemes Plmデータベースのオブジェクトのアセンブリを表示するプロセス、プログラムおよび装置
JP2012221416A (ja) * 2011-04-13 2012-11-12 Hitachi Ltd 計算機システム、及び組立アニメーション生成方法
JP2013084241A (ja) * 2011-09-30 2013-05-09 Canon Marketing Japan Inc 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2014219975A (ja) * 2013-04-30 2014-11-20 ダッソー システムズDassault Systemes コンピュータによって実行され、三次元シーンにおいてアセンブリの三次元モデル化オブジェクトを操作するための方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
三宅芳博, 外1名: ""仮想環境用簡略マップの自動生成とその効果"", 電子情報通信学会技術研究報告, vol. 第105巻, 第433号, JPN6020002879, 17 November 2005 (2005-11-17), JP, pages 7 - 11, ISSN: 0004201278 *

Also Published As

Publication number Publication date
EP3040946B1 (en) 2019-11-13
KR20160082477A (ko) 2016-07-08
JP6721333B2 (ja) 2020-07-15
CN105760570B (zh) 2021-08-03
CN105760570A (zh) 2016-07-13
US20160188159A1 (en) 2016-06-30
EP3040946A1 (en) 2016-07-06
CA2916256A1 (en) 2016-06-30

Similar Documents

Publication Publication Date Title
JP6721332B2 (ja) 3dモデル化されたアセンブリ上で境界ボックスを生成すること
JP6721333B2 (ja) オブジェクトのセットの視点の選択
KR101955035B1 (ko) 기하학적 3차원 모델링된 오브젝트를 디자인하는 방법
US10592065B2 (en) Navigation through the hierarchical structure of a three-dimensional modeled assembly of parts
US11163915B2 (en) Three-dimensional modeled object
KR101925640B1 (ko) 3차원 장면에서 오브젝트들의 3차원 모델링된 어셈블리의 디자인
JP2012069108A (ja) データベースとインタラクションを行うcadシステムのセッション内のモデル化オブジェクトの設計
US8823706B2 (en) Method, program and product edition system for visualizing objects displayed on a computer screen
US20150269286A1 (en) Designing Industrial Products By Using Geometries Connected By Geometrical Constraints
US9483585B2 (en) Designing a staggered pattern of objects in a computer-aided design system
KR102055952B1 (ko) 오브젝트들의 원형 스태거드 패턴의 설계

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20181217

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20181217

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200114

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200128

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200415

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200618

R150 Certificate of patent or registration of utility model

Ref document number: 6721333

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250