JP2016045966A - 順次更新の実行 - Google Patents

順次更新の実行 Download PDF

Info

Publication number
JP2016045966A
JP2016045966A JP2015165963A JP2015165963A JP2016045966A JP 2016045966 A JP2016045966 A JP 2016045966A JP 2015165963 A JP2015165963 A JP 2015165963A JP 2015165963 A JP2015165963 A JP 2015165963A JP 2016045966 A JP2016045966 A JP 2016045966A
Authority
JP
Japan
Prior art keywords
graph
strong
relationship
relationships
procedural
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
JP2015165963A
Other languages
English (en)
Other versions
JP2016045966A5 (ja
JP6585423B2 (ja
Inventor
ラモー ジャン−フランソワ
Jean-Francois Rameau
ラモー ジャン−フランソワ
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 JP2016045966A publication Critical patent/JP2016045966A/ja
Publication of JP2016045966A5 publication Critical patent/JP2016045966A5/ja
Application granted granted Critical
Publication of JP6585423B2 publication Critical patent/JP6585423B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/17Mechanical parametric or variational design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/10Geometric CAD
    • G06F30/12Geometric CAD characterised by design entry means specially adapted for CAD, e.g. graphical user interfaces [GUI] specially adapted for CAD
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/206Drawing of charts or graphs
    • 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/10Constructive solid geometry [CSG] using solid primitives, e.g. cylinders, cubes

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Geometry (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Pure & Applied Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • Architecture (AREA)
  • Human Computer Interaction (AREA)
  • Processing Or Creating Images (AREA)

Abstract

【課題】3次元モデル化されたオブジェクトを設計する、コンピュータにより実行される方法を提供する。【解決手段】方法は、形状オブジェクトを表すノードおよび弧を有するモデリンググラフを提供するステップを備え、前記弧の各々は、弧のインシデントノードによって表される2つの形状オブジェクトをリンクする関係を表し、手続き型関係は、手続き型関係と同一の方向を有する単方向弧によって表され、関係は、双方向弧によって表される有効な関係をさらに含む。方法はまた、3Dモデル化されたオブジェクトを定義するデータの修正の際、強いグラフを判定するステップであって、強いグラフは、モデリンググラフの強い構成要素のグラフである、ステップと、強いグラフの探索に従って、3Dモデル化されたオブジェクトを更新するステップと、を備える。そのような方法は、3Dモデル化されたオブジェクトの設計を改善する。【選択図】図1

Description

本発明は、特に、車両設計、包装設計、機械設計、消費財および電子機器設計などの工業設計の分野に関する。
オブジェクトの設計、工学技術、および製造に対して、いくつかのシステムおよびプログラムが市場で供給されている。CADは、コンピュータ支援設計(Computer-Aided Design)の頭字語であり、たとえば、それは、オブジェクトを設計するためのソフトウェアソリューションに関する。CAEは、コンピュータ支援エンジニアリング(Computer-Aided Engineering)の頭字語であり、たとえば、それは、後の製品の物理的挙動をシミュレートするためのソフトウェアソリューションに関する。CAMは、コンピュータ支援製造(Computer-Aided Manufacturing)の頭字語であり、たとえば、それは、製造プロセスおよびオペレーションを定義するためのソフトウェアソリューションに関する。そのようなコンピュータ支援設計システムにおいて、グラフィカルユーザインタフェースは、技術の効率性に関して重要な役割を果たす。これらの技術は、製品ライフサイクル管理(PLM)システム内に組み込まれることがある。PLMは、拡大企業(extended enterprise)の概念にわたって、会社が、製品データを共有し、共通のプロセスを適用し、構想からそれらの寿命の終わりまで製品の開発のための企業の知識を活用することを支援する、ビジネス戦略を指す。
Dassault Systemesによって提供される(CATIA、ENOVIA、およびDELMIAの商標で)PLMソリューションは、製品エンジニアリングの知識を編成するエンジニアリングハブ(Engineering Hub)、製造エンジニアリングの知識を管理する製造ハブ(Manufacturing Hub)、ならびにエンジニアリングハブと製造ハブとの両方への企業統合および接続を可能にする企業ハブ(Enterprise Hub)を提供する。すべてが一緒になって、システムは、製品、プロセス、リソースを結び付けるオープンオブジェクトモデルを供給して、最適化された製品定義、製造準備、生産、およびサービスを推進する、動的で知識ベースの製品作成および決定支援を可能にする。
3次元モデル化されたオブジェクトの設計のために、異なるフレームワークが工業デザイナーに提供される。最も広く普及されたフレームワークでは、工業デザイナーは、手続き型関係(procedural relationships)を介して設計を行う。より正確には、工業デザイナーは、基礎形状(basic geometries)および手続きの履歴を定義し、それらは、手続きの履歴に従って階層的に接続されたより精巧なオブジェクトに基本的ジオメトリを変換して、意図された複雑なモデルを形成する。このフレームワークは、特に、それが、熟練されたデザイナーが設計を比較的速く行うことを可能にするので、最も好まれるフレームワークである。実際、適切な手続きを使用して、比較的少ないオペレーションで複雑なモデルを達成することができる。このトピックに関する参考文献は、たとえば、非特許文献1である。
別のフレームワークでは、工業デザイナーは、非手続き型関係(non-procedural relationships)を介して設計を行う。より正確には、工業デザイナーは、基礎形状を定義し、その後、形状間の友好な関係(live relationships)を定義して、制約の組に関する基礎形状の組が、意図された複雑なモデルを形成するようにする。
"Hanbook of solid modeling";Donald E Lacourse, Ed.:Mac Graw Hill Frank Harary, Graph Theory, Addison Wesley 1969 Wikipedia
この文脈においては、3Dモデル化されたオブジェクトを設計するための改良されたソリューションが依然として必要である。
したがって、工業製品を表す3次元モデル化されたオブジェクトを設計するためのコンピュータにより実行される方法が提供され、3次元モデル化されたオブジェクトは、複数の形状オブジェクトと、形状オブジェクトをリンクする関係とを含むデータによって定義され、形状オブジェクトをリンクする関係は、手続き型関係を含む。本方法は、モデリンググラフを提供するステップを含み、モデリンググラフは、形状オブジェクトを表すノードと、弧のインシデントノード(incident nodes of the arc)によって表される2つの形状オブジェクトをリンクする関係を各々が表す弧とを有し、手続き型関係は、手続き型関係と同じ向きを有する単方向弧によって表され、形状オブジェクトをリンクする関係は、双方向弧によって表される有効な関係をさらに含む。本方法はまた、3Dモデル化されたオブジェクトを定義するデータの修正の際、強いグラフ(strong graph)を判定するステップであって、強いグラフは、モデリンググラフの強い構成要素のグラフである、ステップと、強いグラフの探索(traversal)に従って、3Dモデル化されたオブジェクトを更新するステップとを含む。
本方法は、以下の1つまたは複数を備えてもよく、すなわち、
− 強いグラフの探索は、深さ優先探索(depth first traversal)であること、
− 強いグラフの探索の間、各強い構成要素は、モデリンググラフの残りと独立して解決されること、
− 強い構成要素を解決するとき、手続き型関係の出力である強い構成要素のノードによって表される各形状オブジェクトは、固定されて設定されること、
− 各強い構成要素は、方程式系ソルバ(equation system solver)によってもしくは反復ソルバによって解決されること、
− 有効な関係は、スタイリング関係(styling relationships)および/もしくは機械的関係(mechanical relationships)を含むことと、
− 工業製品は、機械パーツもしくは消費財であること、ならびに/または、
− 提供されたモデリンググラフは、モデリンググラフの各強い構成要素のすべての弧が双方向であるという基準を順守し、3Dモデル化されたオブジェクトを定義するデータの修正が、追加の前に3Dモデル化されたオブジェクトを定義するデータに含まれる形状オブジェクトの2つをリンクする関係を追加するステップを含むとき、方法は、追加されることになる関係によってリンクされることになる2つの形状オブジェクトを選択するステップであって、選択は基準に従って実行される、ステップを備えること、を含んでよい。
本方法を実行するための命令を含むコンピュータプログラムがさらに提供される。
コンピュータプログラムをその上に記録したコンピュータ可読記憶媒体がさらに提供される。
メモリおよびグラフィカルユーザインタフェースに結合されたプロセッサを備えるCADシステムであって、メモリはコンピュータプログラムを記録している、CADシステムがさらに提供される。
本方法によって設計された3次元オブジェクトがさらに提供される。
3次元オブジェクトを記憶しているデータファイルがさらに提供される。
3次元オブジェクトを記憶しているデータ構造がさらに提供される。
3次元オブジェクトによって表される工業製品がさらに提供される。
工業製品を製造するための方法であって、上記設計方法に従って工業製品を表す3次元オブジェクトを設計するステップと、設計された3次元オブジェクトに基づいて工業製品を製造するステップとを含む方法がさらに提供される。
次に、非限定的な例によって、添付の図面を参照して、本発明の実施形態が説明される。
方法の例のフローチャートを示す図である。 システムのグラフィカルユーザインタフェースの例を示す図である。 システムの例を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。 本方法を示す図である。
図1のフローチャートを参照すると、3次元モデル化されたオブジェクトを設計するためのコンピュータにより実行される方法が提示される。3Dモデル化されたオブジェクトは、工業製品を表す。3Dモデル化されたオブジェクトは、複数の形状オブジェクトと、形状オブジェクトをリンクする関係とを含むデータによって定義される。形状オブジェクトをリンクする関係は、手続き型関係および有効な関係を含む。方法は、モデリンググラフを提供するステップS10を含み、モデリンググラフは、形状オブジェクトを表すノードと、弧のインシデントノードによって表される2つの形状オブジェクトをリンクする関係を各々が表す弧とを有する。このグラフにおいて、手続き型関係は、手続き型関係と同じ向きを有する単方向弧によって表され、有効な関係は、双方向弧によって表される。提供するステップS10は、本方法の他のステップと異なるように表されるが、提供するステップは、モデリンググラフ(方法全体を通じて修正される可能性がある)が常に提供されるように、実際は、コンピュータによる実行の観点からバックグラウンドプロセスとして行われてもよい。
図1に表されるように、本方法は、3Dモデル化されたオブジェクトを定義するデータの修正S30の際、強いグラフを判定するステップS30を含んでよい。判定するステップは、たとえば、最初から(from scratch)、または本方法の前の繰り返しにおいて判定された強いグラフを更新/取得することから、実行されてよい。強いグラフは、モデリンググラフの強い構成要素のグラフである。本方法はまた、S30において、強いグラフの探索に従って、3Dモデル化されたオブジェクトを更新するステップを備える。修正S30、判定するステップS30、および更新するステップS30は、それらが単一のステップに重ね合わされるように理解されてもよく、必ずしも順次的でないので、同じブロックS30内に表される。
また、図1に表されるように、代わりに、提供するステップS10に続いて、追加の前に、3Dモデル化されたオブジェクトを定義するデータに含まれる(すなわち、追加される関係によってリンクされることになるオブジェクトがすでに存在する/すでにインスタンス化されている(instantiated)、すなわち、それらは、追加によって新たに作成されない)形状オブジェクトの2つ(すなわち少なくとも2つ)をリンクする(有効な、または手続き型)関係を追加するステップS20の際、追加されることになる関係によってリンクされることになる2つの形状オブジェクトを選択するステップS20が続いてもよい。再度、選択するステップS20および追加するステップS20は、それらが単一のステップに重ね合わされるように理解されてもよく、必ずしも順次的でないので、同じブロック内に表される。この場合、選択S20は、たとえば方法全体にわたって、グラフによって順守される特定の規準に従って実行される。この基準は、以下では、「S20の基準」または「S20に関連する基準」または「順次基準」と称されてもよい。特に、提供されたモデリンググラフは、モデリンググラフの各強い構成要素のすべての弧が双方向であるという基準を順守する。
また、図1に表されるように、ステップS20およびS30に続いて、繰り返しが続いてもよい。特に、S10およびS20の繰り返しに続いて、S10およびS30の繰り返しが続いてもよいように、S20における有効な関係または手続き型関係の追加ステップが、3Dモデル化されたオブジェクトを定義するデータの修正を構成し、そのS30のデータ修正の繰り返しは、そのS20の有効な関係または手続き型関係の追加ステップの繰り返しである。これは、概念的に、S20次いでS30の繰り返しに対応し、そのとき、S10がバックグラウンドプロセスである。この場合、S20は、3Dモデル化されたオブジェクトを定義するデータの修正は、S20に挙げられた特定の方法以外で実行されないというさらなる条件をそれが追加するという意味で、S30を指定する。たとえば、本方法は、S10およびS20の第1の繰り返し、次いでS10およびS30の第2の繰り返し、次いで任意選択で、S20またはS30が実行される他の繰り返しを備えてもよい。3Dモデル化されたオブジェクトを定義するほかのタイプのデータの修正(図示せず)、たとえば、既存の形状オブジェクトを入力として受け取り、新たな形状オブジェクトを出力として作成する手続き型関係を追加するステップ(すなわち、場合によっては、以下では「新たな手続き」を追加するステップと称される)、手続き型関係を削除するステップ、または有効な関係を削除するステップが、意図されてもよい。その場合、図1のフローチャートを参照して、本方法は、他のタイプの修正の際、S20を実行しない。この繰り返しのプロセスは、工業デザイナーが連続した方式で設計方法を実行することに対応する。実際、デザイナーは、手続き型または有効な関係を追加もしくは削除し、または、3Dモデル化されたオブジェクトを定義するデータの他の修正を行う。そのような修正があるたびに、S30が実行されてよい。修正が特に有効な関係または手続き型関係を追加するステップを備えるたびに、S20が実行されてもよく、場合によっては次いでS30が実行されてもよい。
S30が、前の修正の際の3Dモデル化されたオブジェクトの更新に対応することに留意されたい。そのような更新は、修正の即座の統合を可能にして、たとえば、その視覚的フィードバックをデザイナーに提供する(たとえば、修正が実行されながら、3Dモデル化されたオブジェクトが表示される場合)。しかしながら、そのような更新は必ずしもオンザフライで実行されない。実際、いかなる更新もなしに(したがって、必ずしも視覚的フィードバックなしに)、デザイナーが設計修正を頻繁に実行する。修正は蓄積してもよく、更新はその後に任意の時点で行われてもよい。そのような場合、本方法は、S10およびS20のいくつかの繰り返し(または、S20によって意図される以外の他の修正)を備える。そして、本方法は、場合によっては別のワークステーションで、別の日に、および/または別の人により、更新を実行するための、S10およびS30の繰り返しを備えてもよい。
そのような方法は、3Dモデル化されたオブジェクトの設計を改善する。特に、本方法は、手続き型関係と有効な関係との両方で3次元オブジェクトを設計することを可能にする。これは、デザイナーが複雑な形状を迅速に達成するために手続きを使用することができるように、手続き型関係のアーキテクチャ上の利点を工業デザイナーに提供するとともに、デザイナーが任意の時点で任意の制約を設定することができるように、有効な関係の柔軟性を工業デザイナーに提供する。本方法は、3Dモデル化されたオブジェクトの定義データの修正の際、その更新を実行する体系付けられた方法を提供することによって、ロバストな方法でこれら2つのフレームワークの統合を達成する。実際、本方法は、S30における強いグラフの探索に従って更新を体系的に実行してもよい。それを行うことがグラフ理論に依存することによって、本方法は比較的速く実行される。実際、3Dモデル化されたオブジェクトおよび関係をグラフによって表すこと、ならびに強いグラフの使用を介してその定義するデータの修正の際、3Dモデル化されたオブジェクトの更新を実行することは、特に、強いグラフを、方法の1つの繰り返しから別の繰り返しへと容易に更新することができるので、容易で速い更新を可能にする。たとえば、前の繰り返しの下位の結果(sub-results)が任意の繰り返しにおいて使用されてよい。したがって、繰り返されるときに、本方法はスムースな設計を可能にする。また重要なことに、本方法は、工業デザイナーにとって直感的かつ予測可能な更新を可能にする。実際、工業デザイナーは、広く普及した一貫性のある設計の選好を有する。特に、本発明者らによって行われたテストで確認されるように、工業デザイナーは、手続き型関係を含む3Dモデル化されたオブジェクトを定義するデータを修正するとき、手続き型関係の入力がデザイナーによって修正されない限り、更新によって修正/移動されないことを期待する。本方法は、強いグラフの探索によってこの要件を保証する。最後に、それが、モデリンググラフの各強い構成要素のすべての弧が双方向であるという基準を順守するその実施形態において(その基準は、2つの既存のオブジェクト間での有効な関係または手続き型関係が3Dモデル化されたオブジェクトに追加されるたびに、S20を体系的に実行するオプションによって保証される)、本方法は、既存の専用ソルバの再使用を可能にして、ロバストかつ迅速に更新を実行する(後で、すなわち、S30で)。実際、強い構成要素は、有効な関係(おそらくは、工業設計の文脈における各グループの同じ種類の)に関係付けられた形状オブジェクトのグループの分離を提供し、それによって、後でS30の例を詳述するときに述べられるように、既存の適切な有効なソルバ(live solver)および手続き実行/評価を交互に行うことによって、更新を実行することができる。これは、両方の種類の関係を扱うことができる専用ソルバを開発することよりも容易かつ体系的である。
本方法はコンピュータにより実行される。これは、本方法のステップ(または実質的にすべてのステップ)が、少なくとも1つのコンピュータまたは任意の同様のシステムによって実行されることを意味する。したがって、本方法のステップは、コンピュータによって、場合によって全自動的または半自動的に実行される。例では、本方法のステップのうち少なくとも一部のトリガは、ユーザとコンピュータの対話を通じて実行されてよい。要求されるユーザとコンピュータの対話のレベルは、予測される自動性のレベルに依存し、ユーザの希望を実装する必要性とのバランスをとってよい。例では、このレベルは、ユーザにより定義され、および/または事前定義されてもよい。
本方法のコンピュータにより実行されることの典型的な例は、この目的に適合されたシステムで本方法を実行することである。システムは、メモリおよびグラフィカルユーザインタフェース(GUI)に結合されたプロセッサを備えてよく、メモリは、本方法を実行するための命令を含むコンピュータプログラムを記録している。メモリはまた、データベースも記憶してもよい。メモリは、そのような記憶に適合された任意のハードウェアであり、場合によっては、いくつかの物理的な個別の部分(たとえば、プログラム用に1つ、場合によってはデータベース用に1つ)を備える。
本方法は、概して、モデル化されたオブジェクトを操作する。モデル化されたオブジェクトは、データベースに記憶されたデータによって定義される任意のオブジェクトである。拡張によって、「モデル化されたオブジェクト」という表現は、データそれ自体を指定する。本方法によって設計される3Dモデル化されたオブジェクトは、それらの定義するデータの中で、モデリンググラフを有する構造的な特異性を有し、モデリンググラフは、両方の種類の関係を表す弧を有する。S20の基準が順守される実装形態において、3Dモデル化されたオブジェクトは、グラフが基準を順守するというさらなる特異性を有する。3Dモデル化されたオブジェクトは、専用データ構造に、場合によってはデータファイルに記憶されてもよい。
システムのタイプに従って、モデル化されたオブジェクトは、異なる種類のデータによって定義されてよい。システムは、実際には、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システムにおけるモデル化されたオブジェクトを表すファイルの典型的なサイズは、パーツごとに1メガバイトの範囲内である。また、モデル化されたオブジェクトは、典型的には、数千のパーツの集合(assembly)である。
CADの文脈において、モデル化されたオブジェクトは、典型的には、たとえば、パーツもしくはパーツの集合などの製品、または場合によっては製品の集合を表す、3Dモデル化されたオブジェクトであってもよい。「3Dモデル化されたオブジェクト」によって、その3D表現を可能にするデータによってモデル化された任意のオブジェクトが意図される。3D表現は、パーツをすべての角度から見ることを可能にする。たとえば、3Dモデル化されたオブジェクトは、3Dで表されるとき、その軸のいずれかを中心にして、または表現が表示されるスクリーン内のいずれかの軸を中心にして、処理および回転されてもよい。これは、特に、3Dモデル化されていない2Dアイコンを除外する。3D表現の表示は、設計を容易にする(すなわち、設計者がその作業を統計的に遂行する速度を速める)。このことは、製品の設計が製造プロセスの一部であるので、産業における製造プロセスを加速させる。
3Dモデル化されたオブジェクトは、(たとえば機械)パーツもしくはパーツの集合またはより概して任意の剛体集合(たとえば移動機構)など、たとえばCADソフトウェアソリューションまたはCADシステムでその仮想設計の完了に続いて現実世界において製造されることになる製品の形状を表してもよい。CADソフトウェアソリューションは、航空宇宙、建築、建設、消費財、ハイテクデバイス、産業機器、海上、および/または沖合もしくは輸送を含む、様々かつ無制限の産業分野における製品の設計を可能にする。したがって、本方法によって設計された3Dモデル化されたオブジェクトは、工業製品を表し、工業製品は、地上車両の一部(たとえば、車および軽トラック機器、レーシングカー、オートバイ、トラックおよびモータ機器、トラックおよびバス、列車を含む)、飛行体の一部(たとえば、機体機器、航空宇宙機器、推進機器、防衛製品、エアライン機器、宇宙機器を含む)、船体の一部(たとえば、艦隊機器、商船、沖合機器、ヨットおよび作業船、舶用機器を含む)、機械の一部(たとえば、産業用製造機械、重可搬機械もしくは機器、設置された機器、産業機器製品、作製された金属製品、タイヤ製造製品を含む)、電気機械または電子機器の一部(たとえば、家庭電化製品、セキュリティおよび/もしくは制御および/もしくは計測製品、コンピューティングおよび通信機器、半導体、医療デバイスおよび機器を含む)、消費財(たとえば、家具、家庭および園芸製品、レジャー品、ファッション製品、耐久消費財小売製品、織物小売製品を含む)、包装(たとえば、食品および飲料および煙草、美容および介護、家庭製品包装を含む)であってもよい。本方法は、3Dモデル化されたオブジェクトが機械の一部または消費財を表すとき、特に効率的に適用する。実際、設計によって比較的要求されるこれらの分野では、工業デザイナーは、有効な関係によって提供される柔軟性から比較的多くの利益を得るので、本方法によって手続き型関係および有効な関係の混合が特に適切(relevant)である。
PLMシステムによって、物理的な製造された製品を表すモデル化されたオブジェクトの管理に適合された任意のシステムが意図される。PLMシステムでは、したがって、モデル化されたオブジェクトが、物理オブジェクトの製造に適したデータによって定義される。これらは、典型的には、寸法値(dimension values)および/または許容値(tolerance values)であってよい。オブジェクトの正確な製造のために、実際にそのような値を有することが好ましい。
CAMは、コンピュータ支援製造を表す。CAMソリューションによって、製品の製造データを管理するのに適合されたハードウェアまたはソフトウェアのいずれかのソリューションが意図される。製造データは概して、製造する製品、製造プロセス、および要求される資源に関係するデータを含む。CAMソリューションは、製品の製造プロセス全体を計画および最適化するために使用される。たとえば、それは、実行可能性、製造プロセスの期間、または製造プロセスの特定のステップで使用することができる特定のロボットなどのリソースの数についての情報を、CAMユーザに提供することができ、したがって、管理または要求される投資についての決定を可能にする。CAMは、CADプロセスおよび起こり得るCAEプロセスの後の後続プロセスである。そのようなCAMソリューションは、DELMIA(登録商標)という商標でDassault Systemesによって提供される。
CAEは、コンピュータ支援エンジニアリングを表す。CAEソリューションによって、モデル化されたオブジェクトの物理的挙動の解析に適合された任意のハードウェアまたはソフトウェアのソリューションが意図される。よく周知かつ広く使用されているCAE技術は、モデル化されたオブジェクトを、方程式を通じて物理的挙動を計算およびシミュレートすることができる要素に分割することを典型的に含む、有限要素法(FEM)である。そのようなCAEソリューションは、SIMULIA(登録商標)の商標の下、Dassault Systemesによって提供されている。別の高まっているCAE技術は、CAD形状データなしの異なる物理フィールドからの複数の構成要素からなる複合システムのモデリングおよび解析を含む。CAEソリューションは、製造する製品のシミュレーション、ならびに最適化、改善、および検証を可能にする。そのようなCAEソリューションは、DYMOLA(登録商標)の商標の下、Dassault Systemesによって提供されている。
PDMは、製品データ管理を表す。PDMソリューションによって、特定の製品に関係するすべてのタイプのデータを管理するのに適合された任意のハードウェアまたはソフトウェアのソリューションが意図される。PDMソリューションは、主としてエンジニアであるがプロジェクトマネージャ、財務担当者、販売員および購買者も含む、製品のライフサイクルに関与するすべての主体によって使用されてもよい。PDMソリューションは概して、製品指向データベースに基づいている。それは、それらの製品についての一貫したデータを主体が共有することを可能にし、したがって、異なるデータを主体が使用することを防止する。そのようなPDMソリューションは、ENOVIA(登録商標)の商標の下、Dassault Systemesによって提供されている。
図2は、システムのGUIの例を示し、システムはCADシステムである。
GUI2100は、標準メニューバー2110、2120ならびに下部ツールバー2140およびサイドツールバー2150を有する、典型的なCADに類似のインタフェースであってもよい。そのようなメニューバーおよびツールバーは、当技術分野で公知であるように、ユーザ選択可能アイコンの組を含み、各アイコンは1または複数の操作または関数に関連付けられる。これらのアイコンの一部は、GUI2100に表示された3Dモデル化されたオブジェクト2000を編集し、および/またはそれに対して作用するのに適合された、ソフトウェアツールに関連付けられ、GUI2100に表示された3Dモデル化されたオブジェクト2000は、たとえば、本方法を実行した結果である。ソフトウェアツールは、ワークベンチ(workbenches)にグループ化されてよい。各ワークベンチは、ソフトウェアツールのサブセットを備える。特に、ワークベンチのうちの1つは、モデル化された製品2000の形状的特性を編集するのに適した編集ワークベンチである。操作中、設計者は、たとえば、オブジェクト2000の一部を予め選択し、次いで、適切なアイコンを選択することによって、操作(たとえば、寸法、色などを変更する)を開始し、または形状的制約を編集してよい。たとえば、典型的なCAD操作は、画面上に表示された3Dモデル化されたオブジェクトの穴開け(punching)または折り畳み(folding)のモデリングである。
GUIは、たとえば、表示された製品2000に関係するデータ2500を表示してもよい。図2の例において、「特性ツリー(feature tree)」として表示されるデータ2500、およびそれらの3D表現2000は、ブレーキキャリパーおよびディスクを含むブレーキ組立に関する。GUIはさらに、たとえば、オブジェクトの3D配向を容易にし、編集された製品の操作のシミュレーションをトリガするために、様々なタイプのグラフィックツール2130、2070、2080を示し、または表示された製品2000の様々な属性をレンダリングしてよい。カーソル2060は、ユーザがグラフィックツールと対話することを可能にするように、触覚デバイスによって制御されてもよい。
図3は、システムの例を示し、システムは、クライアントコンピュータシステム、たとえば、ユーザのワークステーションである。
例示的なクライアントコンピュータは、内部通信バス1000に接続された中央処理装置(CPU)1010、やはりバスに接続されたランダムアクセスメモリ(RAM)1070を備える。クライアントコンピュータはさらに、バスに接続されたビデオランダムアクセスメモリ1100に関連付けられたグラフィカル処理ユニット(GPU)1110が設けられる。ビデオRAM1100はまた、当技術分野でフレームバッファとして知られている。大容量記憶デバイスコントローラ1020は、ハードドライブ1030などの大容量メモリデバイスへのアクセスを管理する。コンピュータプログラム命令およびデータを有形的に具体化するのに適した大容量メモリデバイスは、たとえば、EPROM、EEPROM、およびフラッシュメモリデバイスなどの半導体メモリデバイス、内部ハードディスクおよび取外し可能ディスクなどの磁気ディスク、光磁気ディスク、ならびにCD−ROMディスク1040を含む、すべての形式の不揮発性メモリを含む。上記のいずれは、特別に設計されたASIC(特定用途向け集積回路)によって補完され、またはそれに組み込まれてもよい。ネットワークアダプタ1050は、ネットワーク1060へのアクセスを管理する。クライアントコンピュータはまた、カーソル制御デバイスまたはキーボードなどの触覚デバイス1090を含んでもよい。カーソル制御デバイスは、クライアントコンピュータにおいて、ユーザがディスプレイ1080上の任意の所望の位置にカーソルを選択的に位置付けることを可能にするために使用される。加えて、カーソル制御デバイスは、ユーザが様々なコマンドを選択し、および制御信号を入力することを可能にする。カーソル制御デバイスは、システムに対する入力制御信号に対するいくつかの信号生成デバイスを含む。典型的には、カーソル制御デバイスはマウスであってよく、マウスのボタンは信号を生成するために使用される。代替または追加として、クライアントコンピュータシステムは、感知パッドおよび/または感知スクリーンを備えてよい。
コンピュータプログラムは、コンピュータによって実行可能な命令を備えてもよく、命令は、上記システムに本方法を実行させるための手段を含む。プログラムは、システムのメモリを含む任意のデータ記憶媒体に記録可能であってよい。プログラムは、たとえば、デジタル電子回路で、またはコンピュータハードウェア、ファームウェア、ソフトウェアで、またはこれらの組合せで実装されてよい。プログラムは、装置として、たとえば、プログラム可能プロセッサによる実行のための機械可読記憶デバイスに有形的に具体化された製品として実装されてもよい。方法ステップは、プログラム可能プロセッサが命令のプログラムを実行して、入力データを操作し、および出力を生成することによって本方法の機能を行うことによって、実行されてもよい。よって、プロセッサは、データストレージシステム、少なくとも1つの入力デバイス、および少なくとも1つの出力デバイスからデータおよび命令を受信し、ならびにそれらに命令を送信するようにプログラム可能であってもよく、または結合されてよい。アプリケーションプログラムは、ハイレベル手続き指向もしくはオブジェクト指向プログラミング言語で、または必要な場合にアセンブリ言語もしくは機械言語で実装されてよい。いずれの場合も、言語は、コンパイラ言語またはインタプリタ言語であってよい。プログラムは、完全インストールプログラムまたは更新プログラムであってよい。システム上のプログラムのアプリケーションは、いずれの場合も、本方法を実行するための命令となる。
「3Dモデル化されたオブジェクトを設計すること」は、3Dモデル化されたオブジェクトを作り上げるプロセスの少なくとも一部である任意の動作または一連の動作を指定する。したがって、本方法は、3Dモデル化されたオブジェクトを最初から作成することを含んでよい。代わりに、本方法は、前に作成された3Dモデル化されたオブジェクトを提供すること、次いでこの3Dモデル化されたオブジェクトを修正することを含んでもよい。コンピュータ支援形状設計を使用することによる仮想製品の設計が、形状を繋げる関係によって高度に強化される。CADシステムは、モデル全体を自動的に更新することができるように、設計変更を、関係付けられた形状へ、その関係を通じて伝えすことができる方法で設計意図を捉える。
CADの世界では、従来から2つの種類の関係が存在する。従来技術とは対照的に、本方法では、これら2つの種類が共存する。
第1の種類は、いわゆる「手続き型関係」であり、「履歴関係(historical relationship)」とも称される。それは、オブジェクトyが手続きfを通じて入力オブジェクトxから計算されるという事実を取り入れる。これは、記号的にy=f(x)と書かれ(fは数学的観点からの「写像」である)、出力オブジェクトyは、入力オブジェクトxによって一意に定義されることを意味し、したがって、出力オブジェクトyを変更する唯一の方法は、入力オブジェクトxをx’に変更し、手続きy’=f(x’)を使用することによってオブジェクトyの新しいバージョンy’を計算することである。手続き型関係は、入力オブジェクトから出力オブジェクトに向かって決定的に方向付けられ、この向きを変更する方法は存在しない。手続き型関係は、既存のオブジェクト上で事後的に作成されてもよい。たとえば、平面プロファイルから押し出された立体(solid)を計算することが、手続きによって実装されてもよい。得られた立体の形状を変更することは、手続きを編集し、入力データ、すなわちプロファイルの形状または深度値を変更することである。別の例は、自動車のフレームを定義する表面の穴であり、穴は、たとえば、窓を表す。手続きおよび非循環データフローを通じて互いから計算される一連の(chain of)オブジェクトが、「履歴ツリー」である。従来技術において履歴ツリーを更新することは、すべてのその入力オブジェクトが最新になるとすぐに各手続きを実行することである。ネットワークは非循環であるので、このプロセスは、有限数のステップの後に終了する。すべての従来技術の履歴ベースの形状モデラーは、この概念に基づいている。
第2の種類の関係は、「有効な関係」と称され、これは、本方法の文脈で、「非履歴関係(non-historical relationships)」または「非手続き型関係」を意味する。有効な関係は、曲線および表面に関係するスタイリング制約(styling constraints)(たとえば、接触(tangency)、適合、接続表面、端点一致、連結の平滑性)を含む。有効な関係はまた、寸法制約(たとえば、距離、角度、円半径、球半径、円筒半径)、および形状的制約(たとえば、一致、共面、接触、同軸、平行)を含む。有効な関係は、既存オブジェクト上で事後的に作成されてよく、それらは、本来的には方向付けられない。使用を容易にするため、それらは、方向付けられてもよいが、この方位は、CADシステムによってまたは工業デザイナーによって反転されてもよい。したがって、本方法では、それらは双方向の弧によって表される。有効な関係のネットワークは、従来技術における特殊化されたソルバによって解決される。それは、すべての関係を同時に考慮に入れ、それは、繰り返す数または組合せのアルゴリズムを実行して、たとえば、方程式の系の解を繰り返して探索することにより、解を計算してもよい。たとえば、2Dスケッチは専用化されたソルバによって計算され、同様に、剛体の3D組立も専用化されたソルバによって計算される。
したがって、本方法およびCADシステムでは、工業デザイナーは、以下の方法で3Dモデル化されたオブジェクトを設計してもよい。CADシステムは、形状オブジェクトのリスト、および形状オブジェクト間の関係を、デザイナーに提示する(任意のグラフィカルな方法で)。最初から設計する場合、工業デザイナーは、システムにより提供されたライブラリから選択される予め定められた初期形状(primitive shapes)(たとえば、明らかに非限定的例として、区分、円、楕円、円盤、球、長方形、平行六面体、円筒など)のインスタンスを宣言することによって、第1の形状オブジェクトを作成してもよい。工業デザイナーは、そのような初期形状の(長さ、位置などの)パラメータの値を定義してもよい。後に、デザイナーは、新しい形状オブジェクトを、既存のそれを使用することによって、または初期オブジェクトをさらにインスタンス化することによって構築してもよい。いずれの場合も、形状オブジェクトは、後述するように、典型的には相互に関係付けられた方法で3Dモデル化されたオブジェクトの形状を定義する(たとえばリストとして)別個に記憶されたデータのブロックである。形状オブジェクトの組は、典型的にはデザイナーに提示され、したがってデザイナーはそれらを区別することができる。
任意の時点で、工業デザイナーは、有効な関係、またはさらに1もしくは複数の既存の形状オブジェクトの間の手続き型関係を定義してよい。コンピュータ実装の観点から、これらの関係は、既存のオブジェクトのリストを修正しないが、それらは、既存のオブジェクトのパラメータの値に対して制約を課す(有効な関係によって影響される場合)。したがって、有効な関係は、それらが新しい形状を作成しないが既存の形状を修正するという意味で非手続き型関係である。有効な関係は、3Dモデル化されたオブジェクトの既存の形状オブジェクトにリンクされた制約である。それらは、「有効(live)」と言われるが、その理由は、デザイナーが、既存のオブジェクトの単純な操作によってそのような関係を有効に作成してもよく、工業デザイナーは直ちに結果を見てよいためである(新しい形状が追加される必要なく)。本方法の有効な関係は、スタイリング関係(たとえば、上述された接触、適合、接続表面、端点一致、接続平滑性関係)、機械的関係(たとえば、上述された寸法制約(たとえば、距離、角度、円半径、球半径、円筒半径)、および/または上述した形状的制約(たとえば、一致、共面、接触、同軸、平行))を含んでもよい。これらのタイプの有効な関係は、工業製品が機械パーツまたは消費財である文脈で特に有用であることを証明している。
任意の時点で、デザイナーは、1または複数の既存の形状オブジェクトを含む手続き型関係を定義してよい。手続き型関係は、典型的には、それらが1または複数の既存のオブジェクト(ユーザに提示された既存のオブジェクトの上述されたリストの)を取り、また、それらがそのリストに新しいオブジェクトを追加するという意味で、建設的であってもよい。有効な関係とは対照的に、手続き型関係は、通常は入力形状を修正しない(すなわち、手続き型関係は、その入力形状オブジェクトのパラメータの値に対して行動を有さない)。これらの出力オブジェクトは、入力オブジェクトを削除することが出力オブジェクトを必ず削除するように、それらが由来する入力オブジェクトに持続的に関係付けられる。手続き型関係によって作成されたオブジェクトは、次いで、後続の手続き型関係の入力としてそれら自体で使用されてよく、または、それらは有効な関係に関与されてよい。しかしながら、先に言及されたように、手続き型関係はまた、それにより定義された出力がそれにより定義された入力に対応する場合、既存オブジェクト間に追加されてもよい(そのような対応は、任意選択で手続き型関係の追加によって実施可能である)。
コンピュータデータの観点から、手続き型関係と有効な関係との間の差異が、方法およびシステムのコンピュータ実装に対する大きな影響を有することに留意することが重要である。実際、オブジェクト指向プログラミングを参照すると、これら2種類の関係は、それらが異なる方法で他のオブジェクト(本事例では形状オブジェクト)を含むで、全体的に異なる挙動を有するプログラムされたオブジェクト/クラス(class)である。これらの挙動は、工業的なコンテキストに特に関連する人間工学に影響を有する。本方法は、同じ3Dモデル化されたオブジェクトに対する2つのタイプの関係ひいては2つの挙動を可能にするという事実が、特に、非常に複雑でそれぞれが数十もしくは数百の特性を含む可能性がある機械パーツまたは消費財の場合に、有利である。
従来技術では、各種類の関係は、別々に評価または解決されてもよい。手続き型関係は、非循環データフローを更新することによって評価され、有効な関係は、専用アルゴリズムによって解決される。CADツールのますます良好な統合を理由に、工業デザイナーが、同じモデルの形状内で両方の種類の関係を作成する使用が存在する。問題は、これら2つの技術を混合するのが困難なことである。典型的な状況は、手続きy=f(x)の出力オブジェクトyが、第1の有効な関係を通じて別のオブジェクトzに接続され、それがさらに、第2の有効な関係を通じて手続きの入力オブジェクトxに接続される。オブジェクトxを編集し手続きf(・)を評価することが、オブジェクトyを変化させ、それが、オブジェクトzを変化させ、次いでオブジェクトxを変化させることができ、オブジェクトxは手続きf(・)の入力オブジェクトである。明らかに、この循環的データフローは、有効なソルバ単独で、および手続き評価単独では行えない解決技術に値する。問題は、全体的および許容可能なソリューションを提供する産業用アルゴリズムが存在しないことである。この結論は、プロトタイプを通じて出願人により行われた試験から得られる。計算された結果は、工業デザイナーの観点から予測不能、不安定、または不自然なあり方で挙動することがある。
明らかに、2つの不満足な状況の間に技術的ギャップが存在する。一方に、2つの別個の技術(要するに、手続き型対非手続き型)があり、他方に、これら2つの技術の完全な統合がある。本方法は、有効な関係および手続き型関係の異種ネットワークへの一定レベルの共存(cohabitation)を可能にする中間ソリューションを構成する。後で提示される例では、ネットワーク全体が有限数列(finite sequence)を通じて更新されて、ネットワークの適切なサブセット上で実行される手続き評価および有効な解決(live solving)を交互に行う。これは、以下では「順次更新(sequential update)」という表現によって参照され得る。
本方法の考えられる適用の例は、図4〜7を参照して次に論じられる。
寸法および形状的(機械的)制約の典型的な使用は、機械組立の設計である。図4は、CADシステムの画面上に表示されるように、ヘリコプタの尾部ロータを示す。この機械組立は、形状的関係とともに複数のパーツを含む。各機械パーツは、単一の固体物であり、各形状的関係は、2つの固体物の2つの(couple of)機能表面をリンクする。図5は、すべてのパーツが視認可能であるように組立の分解された構成を示す。この組立では、円筒表面1が円筒表面2と同軸である。円筒表面5は円筒表面6と同軸である。球面3は球面4と同心である。多くの他のそのような形状的関係が、工業デザイナーによって作成される。本方法のソルバは、組立全体がすべての関係に適合するように、すべての固体物の位置を計算する。
スタイリング制約の典型的使用は、車体設計である。図6は、車体の形状が曲線および表面を使用することにより設計されていることを示す。工業デザイナーは、まず曲線を作成し、次いで、曲線の閉じられた輪郭を選択することによって表面が作成される。工業デザイナーはまた、(couples of)2つの曲線または2つの表面をリンクするマッチングおよび接触(tangency)関係を作成する。曲線1から7は、図7のグラフに従ってスタイリング関係を通じて接続される。明確にするため、曲線1の端点は、点8および10であり、曲線2の端点は、点9および11であることを理解されたい。曲線1および3は、固定された曲線である。曲線6および7の端点は、曲線1の端点と共有される。曲線2の端点は、曲線6および曲線7上でそれぞれ制約される。曲線4の端点は、曲線1および曲線2上でそれぞれ制約される。曲線5の端点は、曲線2および曲線3上でそれぞれ制約される。最後に、曲線2上に位置する(lying on)曲線5の端点は、曲線2上に位置する曲線4の端点と一致し(coincident with)、この点において、曲線4と曲線5との間の接続が湾曲の連続(curvature continuous)である。スタイリングソルバは、たとえば、曲線5の端点を曲線3に沿ってスライドさせることによって、工業デザイナーが形状を変化させるとき、すべてのこれらの関係を維持することができる。
固体物モデリングの古典的な特徴が表1に列挙されている。本議論の文脈では、「特徴」は、入力オブジェクトと出力オブジェクトとの間の「手続き型関係」を表す。入力オブジェクトの特性は詳述される。出力オブジェクトは常に固体物である。表1の手続き型関係は、すべてまたは部分的に本方法によって意図されてもよい。
次にステップS30について論じられる。
先に述べられたように、3Dモデル化されたオブジェクトを定義するデータの修正は、既存の形状オブジェクトおよび/または既存の関係のパラメータの任意の修正であってもよい。それはまた、新しい形状オブジェクトもしくは新しい関係の追加(S20におけるように)、または既存の形状オブジェクトもしくは既存の関係の削除を指定してもよい。そのような修正の際、本方法は、いわゆる「強いグラフ」を判定する。強いグラフは一意であり、およびモデリンググラフの強い構成要素のグラフ(形状オブジェクトを表すノードと、弧のインシデントノードによって表される2つの形状オブジェクトをリンクする関係をそれぞれが表す弧とを有し、手続き型関係は、手続き型関係と同じ向きを有する単方向弧によって表され、有効な関係は、双方向弧によって表される)を指定する。強い構成要素は後で詳述され、またグラフ理論から知られている。グラフ理論による多くの結果が本議論で使用される。古典的な参照文献は、非特許文献2である。非特許文献3は、優先権出願が出願されたとき、強い構成要素概念の議論を提供している。
3Dモデル化されたオブジェクトの任意の修正の際、本方法は、オブジェクトの有効な更新(live update)を提供する。これは、3Dモデル化されたオブジェクトが工業デザイナーへ表現/表示された場合に、特に有用である。そのような場合、デザイナーは、修正の効果を直接見ることができる。更新は、先に述べられたように、後に行ってもよい。いずれの場合も、更新は、強いグラフに基づいて、より詳細には強いグラフの探索に従って、実行される。言い換えれば、強いグラフの弧は、本方法の更新S30の後に続き/更新S30によって参照される。さらに言い換えれば、本方法は、強いグラフの構造に従って、より具体的には強いグラフの弧の向きに従って、更新を実行する。後で詳述される特定の例では、強いグラフの探索は、周知の深さ優先探索である。これは、S20に関係付けられた基準の良好な使用で、高速かつロバストな更新を可能にする。特に、強いグラフの探索の間、各強い構成要素は、モデリンググラフの残部と独立して解決されてもよい。言い換えれば、本方法は、形状オブジェクトの構造およびそれらをリンクする関係を使用し、その構造は、モデリンググラフによって捕捉され、本方法は、この構造を、別の構造すなわち強いグラフに再編成する。次いで、本方法は、そのような解決と、異なる強い構成要素のオブジェクトをそれらの間でリンクする手続きの再実行(replay)とを適切に交互に行うことにより、個々に強い構成要素に対応する形状オブジェクトのグループを解決する。これは、有効な関係のみが実装されるモデルに対する専用ソルバの再使用を可能にする。たとえば、各強い構成要素は、方程式系ソルバ(すなわち、有効な関係の組を方程式の系に変換し、実質的に系を解決するソルバ)によって、または反復ソルバ(すなわち、有効な関係の組に関与される制約が実質的に順守される状態に到達するように、3Dモデル化されたオブジェクトのパラメータの値を反復的に試験するソルバ)によって解決されてもよい。これらのソルバは、従来技術で知られている。それらは、変動ソルバ(variational solvers)およびスタイリングソルバを含む。ソルバの性質は、用途、および解決されることになる強い構成要素に含まれる有効な関係の性質に応じて異なる。
したがって、本方法は、有効な関係と手続き型関係を混合するための制限である「順次基準(sequential criterion)」を定義する。制限は、S30を含む方法の例では、順次更新を実行することができることを保証する。さらに、S20を含む例における方法は、その順次基準が維持されるような方法で、関係のネットワークを編集する機構を提供する。
図8の図は、順次基準診断および順次更新のための上述された例の処理を示す。有向(モデリング)グラフおよび強いグラフは、本方法によって、計算を実行するために使用される特定のデータに変換される数学的概念である。図9の図は、ネットワークにおける友好な関係または手続き型関係の作成の間に順次基準を省略する(save)ための処理を示す。やはり、有向(モデリング)グラフおよび強いグラフは、本方法によって、計算を実行するために使用される特定のデータに変換される数学的概念である。
本方法は、データモデルおよび更新に関して、手続き型および非手続き型関係の真のレベルの統合を提供する。そして、工業デザイナーにとっての価値は、より柔軟および強力な設計システムならびに拡張された設計機能である。本発明によって定義される順次基準は、限定ではなく指針である。それは、工業デザイナーが異種ネットワークの利益を受けるのを支援し、また、複雑な循環的状況の手作業の管理を回避する。順次基準は、設計プロセスを通じてすべて安全に維持されてよく、常に順次更新を確実にする。これは、CADシステムの完全性および信頼性を助ける。本発明の別の利点は、既存の手続き評価および有効なソルバの可能な再使用である。新しいアルゴリズムは、更新シーケンスを定義および実行するオーバヘッドである。これは、実装を容易およびロバストにする。
次に、本方法をより良く理解するためにグラフ理論背景が提供される。
まず、本方法によって使用される有向グラフ(モデリンググラフは有向グラフである)が次に論じられる。
有向グラフは、4タプルG=(X,U,α,ω)であり、Xはノードの組、Uは弧の組であり、α:U→X、およびω:U→Xは接続関数である。式α(u)=xは、x∈Xが弧u∈Uの初期ノードであることを意味する。弧uは、ノードxの出力弧である。式ω(u)=yは、y∈Xが弧u∈Uの終端ノードであることを意味する。弧uは、ノードyの入力弧である。
これらの表記によれば、組ω-1(y)は、ノードyの入力弧の組であり、α-1(x)は、ノードxの出力弧の組であり、組α(ω-1(y))は、ノードyの入力ノードの組であり、組ω(α-1(y))は、ノードyの組の出力ノードである。
定義により、ルートノードγは、入力弧を有さず、つまりω-1(γ)=φを意味する。リーフノード1は、出力弧を有さず、つまりα-1(1)=φを意味する。
本方法によって使用される他のグラフ理論概念が次に論じられる。
サイクル:サイクルは、弧u1,…,unのリストであり、i=1,…,n−1についてω(ui)=α(ui+1)であり、ω(un)=α(u1)であるようにされる。サイクルは、同様にノードx1,…,xnのリストによって定義されてもよく、i=1,…,n−1について、α(ui)=xiおよびω(ui)=xi+1であるように弧ui、ならびにα(un)=xnおよびω(un)=x1であるように弧unが存在する。図10は、有向グラフを示す。ノードの組は、X={1,2,…,11}である。双方向を有する矢印は、逆方向を特徴付ける2つの矢印のグラフィカルな略記である。ノード3、10、11はサイクルを定義する。
部分グラフ:ノードのサブセットY⊂Xを仮定して、Gの対応する部分グラフHが、ノードYを接続するGのすべての弧によって定義される。形式的に、H=(Y,V,α,ω)、ただし、V={u∈U,α(u)∈Y,ω(u)∈Y)である。
有向非循環グラフ:定義により、有向非循環グラフはサイクルを含まない。
強い構成要素:強い構成要素の目標は、部分グラフがすべてのサイクルを含み、かつそれらが非循環方式でともに接続されるような方法で、有向グラフを部分グラフに編成することである。このグラフ理論概念は、有向グラフの循環および非循環特性を編成するのに最も効率的である。本方法のこの主要な特徴は、以下に詳述される。
形式的には、第1のステップは、ノードの組Xに関する関係ρを定義することである。xからyの弧の経路、およびyからxの弧の経路が存在する場合、2つのノードx,y∈Xが関連付けられ、それはxρyと表記される。明白に、ρは、同値関係(再帰(reflexive)、対称、推移)である。したがって、基本的代数により、関係ρは、組Xを同値クラス(equivalence classes)X1,…,Xpに分離し、Xの区画を定義する。これは、i≠jである場合、
およびXi∩Xj=φを意味する。
定義により、各Xiは、グラフGの強い構成要素である。もちろん、1つのXiから別のXjのノードへノードを接続する弧が存在してよいが、それらはいずれのサイクルにも属さない。
すべてのサイクルは、それぞれGiと表記される、Xiによって定義される部分グラフに捕捉される。
写像class(mapping class):X→{X1,…,Xp}は、x∈Xiである場合、class(x)によって定義される。この写像は、各xが厳密に1つのXiに属するので的確に定義される。
図11は、先のグラフの強い構成要素(点線で囲まれた)を示す。形式的に、X1={7}、X2={4,5}、X3={1,2,6,8}、およびX4={3,9,10,11}である。さらに、class(6)=X3、class(4)=X2などである。
強い構成要素の計算:強い構成要素は、以下のアルゴリズムによって計算されてもよい。コアアルゴリズムは、所与のノードを含む強い構成要素を計算する。開始する前に、すべてのノードがマークされず、強い構成要素のカウンタnはゼロである。
1.マークされないノードxが存在する場合、n=n+1、さもなければ、ステップ6に進む。
2.ノードxにマーク±nを設定する。
3.それらの元の向きでグラフの弧を使用することによって、ノードxから到達することができるすべてのノードに、マーク+nを設定する。
4.それらの逆の向きでグラフの弧を使用することによって、ノードxから到達することができるすべてのノードに、マーク−nを設定する。
5.±nがマークされたノードのリストを含む新しい強い構成要素を作成し、ステップ1に進む。
6.終了。
図12は、ノード3を含む(第1の)強い構成要素の計算を示す。最も左の図は、ステップ2の後のグラフであり、中央の図は、ステップ3の後のグラフであり、最も右の図は、ステップ4の後のグラフである。ノード3の強い構成要素は、{3,9,10,11}である。
強いグラフ:定義により、強いグラフSのノードは、強い構成要素Xiであり、強いグラフSの弧は、異なるサブセットXiからの2つのノードを接続するグラフGの弧である(いくつかのそのような弧は、場合によってはサブセットXiの同じペアについて存在し、したがって、いくつかの弧は、場合によっては強いグラフのノードの同じペアを接続する)。形式的に、S=(XS,US,αS,ωS)であり、
S={X1,…,Xp
S={u∈U,class(α(u))≠class(ω(u))}
αS=class(α(u))
ωS=class(ω(u))
である。
構成により、強いグラフは常に非循環である。
図13は、例の強いグラフを示す。
有向非循環グラフにおける親/子ノードおよび集合体(tribe):K=(Z,W,α,ω)を有向非循環グラフとし、z∈Zを、「選択されたノード」と名付けられた特定のノードとする。定義により、ノードz’∈Zは、zからz’のつながり(またはz’からzのつながり)が存在する場合、zの「子ノード」(または「親ノード」)である。定義により「集合体ノード」は、親ノードまたは子ノードである。
親ノードおよび子ノードは、グラフの弧をアクセスする(visit)ことにより容易に計算されてもよい。
図14は、有向非循環グラフの例を示し、選択されたノードは「a」である。「a」の子ノードは、「b」、「c」、および「d」であり、「a」の親ノードは、「e」および「g」である。結果として、「a」の集合体ノードは、「b」、「c」、「d」、「e」、および「g」である。
次に、有向グラフ(すなわちモデリンググラフ)を有する関係のネットワークのモデル化が論じられる。
形状および関係のネットワークがグラフによってモデル化される。グラフのノードは形状オブジェクトを表し、弧は関係を表す。
手続き型関係z=f(x,y)は、弧uおよびvが入力オブジェクトxおよびyを出力オブジェクトzに接続することによって表される。弧は、手続きfの入力オブジェクトx、yから手続きfの出力オブジェクトzに向かって方向付けられる。言い換えれば、α(u)=x、ω(u)=z、およびα(v)=y、ω(v)=zである。単一の手続きは、入力オブジェクトの数に応じて、いくつかの弧によってモデル化されてもよい。手続きの出力オブジェクトは、常に一意である。手続き型関係をモデル化する弧は、「手続き弧」と呼ばれる。これは、図15によって示されている。
CAD工業デザイナーの観点から、有効な関係は、方向付けられてもよく、または方向付けられなくてもよい。方向付けられるとき、それは、逆にされてもよく、または方向付けられないように設定されてもよい。方向付けられないとき、それは、任意の方法で方向付けられてもよい。これらの理由により、有効な関係は、以下のようにモデル化される。
2つの形状aおよびbを接続する有効な関係は、2つの弧v、wによって表される。1つはaからbに方向付けられ、他方はbからaに方向付けられる(双方向弧に相当する)。言い換えれば、α(v)=ω(w)=x、およびα(w)=ω(v)=yである。有効な関係をモデル化する弧は、「有効な弧(live arcs)」と称される。
このモデリングは、手続き型関係が常に方向付けられ、有効な関係とは反対に決して逆にされ得ないという事実を取り入れる。グラフィカルな観点から、単一の向きを有する矢印が手続き弧であり、二重に方向付けられた矢印が有効な弧である。本来的に、すべての有効な弧は強い構成要素に含まれる。
次に、本方法の例で適用することができる順次更新基準が論じられる。
手続き型および有効な関係のネットワークを仮定して、かつその関連付けられたグラフを仮定して、順次更新に対する基準は、手続き弧を強い構成要素に含めることができないということである。順次基準が満たされる場合、すべての手続き弧は強いグラフに属し、構成により、それらは非循環的な方法で接続される。
図16のグラフ例は、強い構成要素G4における手続き弧3→10を理由に、この基準に適合しない。それは、たとえば、この弧を除去することによって(図17に示されるように)、または有効な弧3←→10(図示せず)との交換によって、訂正されてもよい。
次に、本方法によってS30で適用することができる順次更新アルゴリズムの例が論じられる。
交互の連続した有効な解決(live solving)および手続き評価が、強いグラフS=(XS,US,αS,ωS)を探索することによって取得される。強いグラフの各ノードが、形状および有効な関係を表す初期グラフの部分グラフを定義することに留意されたい。
強いグラフが複数のリーフノードを特徴付ける場合、一意(および記号の)のリーフノードが、各リーフノードから追加されたリーフノードへの方向付けられた弧を作成することによって追加される。このように、強いグラフが一意のリーフノードを有することを常に想定することができる。
探索アルゴリズムは、特に深さ優先探索を実装するために、後入れ先出しリスト(以下ではLIFOリスト)を使用する。リストの最後に要素xを追加することは、Put(x)として記述される。リストの最後の要素を読み取ることは、Read(y)として記述される。命令Read(・)は、リスト内の要素の個数を変更しない。リストから最後の要素を除去することは、RemoveLastとして記述される。
順次更新アルゴリズムは、図18の図で説明される。それは、主に、リーフノードで開始する深さ優先探索であり、弧の逆の向きを使用する。以下で詳述される「ビルド(Build)」方法は、探索の間に呼び出される。初期化は、リスト内に強いグラフの一意のリーフノードを配置することである。開始する前に、すべてのノードは0でマークされ、これは、すべてのx∈Xsについてp(x):=0と表記される。大まかに言えば、p(x)=0は、「xにより定義された部分グラフがまだ解決されていない」を表し、p(x)=1は、「xにより定義された部分グラフが解決された」を表す。
例では、強い構成要素を解決するとき、手続き型関係(その入力ノードが前に解決された強い構成要素のうちの1つである手続き型関係を含む)の出力である強い構成要素のノードによって表される形状オブジェクトが、固定して設定される。これは、ロバストな解決、およびユーザが意図する比較的高い順守を可能にする。衝突は、何らかの方法で対処されてよい。
方法「ビルド」は、強いグラフSのノードy上で呼び出される。このノードは、実際、強い構成要素であり、元のグラフGのノードのサブセットであり、これは、y=Xiであることを意味する。組ωS -1(y)は、ノードyのすべての入力弧の組である。本来的に、それらは手続き弧である。組ω(ωS -1(y))は、手続き弧ωS -1(y)の終端ノードである元のグラフのノードの組である。方法「ビルド」は、以下の2つのアクションを実行する。
Build(y):手続き弧ωS -1(y)によってモデル化されたすべての手続きを評価する。組ω(ωS -1(y))は、この評価の出力オブジェクトを含む。
ω(ωS -1(y))のオブジェクトは固定され、かつ修正されなくてもよいことを考慮して、y=Xiによって定義された有効な部分グラフ(live sub-graph)を解決する。
順次更新アルゴリズムは、手続き方法が常にすべてのそれらの入力オブジェクトが評価または解決された後に評価されるように設計される。
アルゴリズムは例示的なグラフで実行される。読み取りやすくするために、初期グラフG(図19)と強いグラフS(図20)との両方が図示されている。LIFOリストはLで表記される。
(一意の)リーフノード{7}は、L=({7})となるようにリスト内に配置される。Lの最終要素{7}の入力ノード{4,5}は0でマークされるので、それは、L=({7},{4,5})となるようにリストに追加される。Lの最終要素{4,5}の入力ノード{1,2,6,8}は0でマークされるので、それは、L=({7},{4,5},{1,2,6,8})となるようにリストに追加される。
Lの最終要素{1,2,6,8}は、入力ノードを有しない。したがって、「ビルド」方法が{1,2,6,8}に適用され、これは、ノード1、2、6、8によって定義されるGの有効な部分グラフが解決されることを意味する。次いで、グラフSのノード{1,2,6,8}が1でマーク付けされ、L=({7},{4,5})となるようにLから除去される。
ここで、Lの最終要素{4,5}のすべての入力ノードが1でマークされ、したがって、「ビルド」方法が{4,5}に適用され、これは、
− 入力オブジェクト8から出力オブジェクト4を計算する弧8→4によってモデル化された手続きが評価される、
− オブジェクト4が固定されたことを考慮して、ノード4、5によって定義されたGの有効な部分グラフが解決される、
ことを意味する。
グラフSのノード{4,5}は、実際、1でマークされ、L=({7})となるようにLから除去されてよい。Lの最終要素{7}の入力ノード{3,9,10,11}は、0でマークされ、したがって、それがLに追加され、つまりL=({7},{3,9,10,11})となる。
Lの最終要素{3,9,10,11}のすべての入力ノードが1でマークされるので、「ビルド」方法が{3,9,10,11}に適用され、これは、
−入力オブジェクト6から出力オブジェクト3を計算する弧6→3によってモデル化された手続きが評価される、
−オブジェクト3が固定されたことを考慮して、ノード3、9、10、11によって定義されたGの有効な部分グラフが解決される、
ことを意味する。
次いで、グラフSのノード{3,9,10,11}は、1でマークされ、L=({7})となるようにLから除去される。
最後に、Lの最終要素{7}のすべての入力ノードが1でマークされ、したがって、「ビルド」方法が{7}に適用され、これは、入力オブジェクト5、8、11から出力オブジェクト7を計算する弧11→7、8→7、および5→7によってモデル化された手続きが評価されることを意味する。次いで、グラフSのノード{7}は、1でマークされ、L=φとなるようにLから除去される。
予想されるように、順次更新アルゴリズムは、交互の連続した手続き評価および有効な解決(解決されるときスターノードは固定される)を以下のように実行する。
1.解決:{1,2,6,8}
2.評価:8→4
3.解決:{4*,5}
4.評価:6→3
5.解決:{3*,9,10,11}
6.評価:5,8,11→7
次に、S20によってネットワーク編集(network edition)を通じて順次基準が省略される方法の例が論じられる。
ここで、問題は、関係のネットワークを工業デザイナーが編集するときに順次基準を維持することである。有効な関係を削除すること、または手続き型関係を削除することは、グラフ内に新しいサイクルを作成することができず、したがって、順次手順が省かれる。新しい手続きオブジェクトを作成することは、新しいノード(出力オブジェクトをモデル化する)、およびいくつかの先行ノード(入力オブジェクトをモデル化する)から新しいノードへ方向付けられた弧を追加することである。この動作は、新しいサイクルを作成することができず、したがって順次基準が省かれる。結果として、順次基準を無効にしてよい単なる動作は、有効な関係を追加すること、または事後的に既存のオブジェクト間に手続き型関係を追加することである。たとえば、図21のグラフにおけるノード4とノード1との間に有効な関係を追加することは、図22のグラフに示されるように、手続き弧8→4を含む強い構成要素{1,2,4,5,6,8}をもたらす。明らかに、順次手順が失われる。別の例では、図21のグラフにおけるノード7からノード4への手続き型関係を追加することは、図23に示されるように、手続き弧5→7および7→4を含む強い構成要素{4,5,7}をもたらす。明らかに、順次手順が失われる。
説明されたように、この例では、提供されたモデリンググラフは、モデリンググラフの各強い構成要素のすべての弧が双方向であるという基準を順守することが意図される。言い換えれば、同じ強い構成要素の形状オブジェクトは手続き型関係によって互いに関係付けられず、それによって、潜在的にそれらを含む手続き型関係が必然的に他の強い構成要素の形状オブジェクトを有することになる。この基準を保持するために、本方法は、S20で、既存のオブジェクト間に有効な関係または手続き型関係を追加する際、追加される有効な関係または手続き型関係によってリンクされることになる2つの形状オブジェクトの特定の選択を含む。選択S20は、基準に従って実行される。言い換えれば、システムは、有効な関係または手続き型関係を既存の形状オブジェクトの特定のペアに追加することを(少なくとも、2つのオブジェクトを入力として受け取るそれらの有効な関係または手続き型関係について)工業デザイナーに指示してよい。この指示は、厳格であってもよく(すなわち、ユーザは基準を破ることができない)、または単なる指導であってもよい(ユーザは、単に選択において援助され、所与のオブジェクトのペアの選択が基準に適合し、もしくはしない場合に、何らかの方法で通知される)。
例において、追加される有効な関係によってリンクされることになる2つの形状オブジェクトの選択は、すべての形状オブジェクトのうちから第1の形状オブジェクトを選択することを含む。これは、典型的には、ユーザによって手作業で(すなわちユーザ対話を介して)実行される。次いで、選択は、モデリンググラフ内ですべての形状オブジェクトを識別することを含み(システムによって自動的に)、形状オブジェクトに対し、それらと第1の形状オブジェクトとの間の有効な関係を追加することが基準を破ることになる。第1の形状オブジェクトの強い構成要素に含まれるすべてのノードのすべての集合体ノードを判定することを含む、そのような識別を実装するための効率的かつロバストな方法が、後で説明される。そして、本方法は、識別された形状オブジェクトに従って第2の形状オブジェクトを(典型的にはデザイナーによって、ユーザ対話を介して)選択することを含む。理解することができるように、選択以外のステップは完全に自動とすることができる。上述されたように選択が厳格な場合、第2のオブジェクトの選択は、基準を破るものとして識別されないモデリンググラフの形状オブジェクトに限定される。
よって、有効な関係を作成するための双方向の対話が、工業デザイナーに第1の要素および第2の要素を選択するように要求する。第1の要素が選択されるとすぐに、例におけるシステムは、選択された場合に順次基準を無効にするネットワークのすべての要素を識別することによって、適切な第2の要素の選択を予測することができる。グラフィカルユーザインタフェースの観点からは、これらの要素を選択不可能にし、かつ強調させないこと(under intensified)で十分である。そして、工業デザイナーに提案された選択は常に順次基準を省く。
ここで、第1の形状オブジェクトの強い構成要素に含まれるすべてのノードのすべての集合体ノードを判定することは、モデリンググラフの強いグラフを判定し、および強いグラフ内で、第1の形状オブジェクトの強い構成要素のすべての集合体ノードを判定することによって、高速かつロバストな方法で実行されてもよい。
グラフG内の選択されたノードx(ネットワークのユーザ選択された要素を表す)を仮定して、不適合ノードが以下のように識別されてもよい。
1.選択されたノードxを含む強いグラフSのノードClass(x)を取得する。
2.強いグラフSにおいて、Tribe(Class(x))と表記されるClass(x)の集合体ノードを計算する。
3.Ic(x)と表記される選択されたノードxと不適合なグラフGのノードが、以下のようにすべての集合体ノードの和集合である。
図24〜図28は、不適合ノードの識別を例示する。初期グラフGの選択されたノードは、図24に示されるようにx=11である。選択を含む強いグラフノードは、図25に示されるようにClass(11)={3,9,10,11}である。
強いグラフにおいて、{3,9,10,11}の不適合ノードは、図26に示されるように、{1,2,6,8}および{7}である。形式に従うと、これは以下を意味する。
Tribe(Class(11))=Tribe({3,9,10,11})={{1,2,6,8},{7}}
そして、不適合ノードは以下のようになる。
Ic(11)={1,2,6,8}∪{7}={1,2,6,7,8}
初期グラフ上の選択不可能な弧およびノードが、図27の最も左の図に示されている。図27の中央の図に示されるように第2のユーザ選択がノード5である場合、ノード11および5を接続する有効な関係が作成され、結果のグラフは図27の最も右の図である。
図28に示されるように、順次基準が省かれても、弧11←→5を作成することが強い構成要素を変化させることに注意されるべきである。
手続き関係を作成するための双方向の対話が、工業デザイナーに第1の要素および第2の要素を選択することを要求する。第1の要素が選択されるとすぐに、本方法は、選択された場合に順次基準を無効にするネットワークのすべての要素を識別することによって、適切な第2の要素の選択を予測することができる。グラフィカルユーザインタフェースの観点からは、これらの要素を選択不可能にし、強調させないことで十分である。そして、ユーザに提案された選択は常に順次基準を省く。xを、グラフG内の選択されたノード(ネットワークのユーザ選択された要素を表す)とする。選択された要素は、方向付けられた弧が作成される開始ノードであると仮定して。そして、不適合ノードは、以下のように識別される。
1.選択されたノードxを含む強いグラフSのノードClass(x)を取得する。
2.強いグラフSにおいて、Parent(Class(x))と表記されるClass(x)の親ノードを計算する。
3.Ic(x)と表記される選択されたノードxと不適合なグラフGのノードは、以下のように、すべての親ノードの和集合と共にClass(x)のノードである。
選択された要素が、作成されている方向付けられた弧の終端ノードである場合、親方法を子方法に置き換えることで、同じ方法が使用される。
図29〜図32は、不適合ノードの識別を例示する。初期グラフGの選択されたノードは、図29の最も左の図に示されるようにx=5であり、ユーザの意図は、ノード5で開始する方向付けられた弧を作成することである。選択を含む強いグラフノードは、図29の最も右の図に示されるようにClass(5)={4,5}である。強いグラフにおいて、{4,5}の不適合ノードは、{4,5}それ自体および{1,2,6,8}であり、その理由は、Parent(Class(5))=Parent({4,5})=({1,2,6,8})であり、および以下の式による。
初期グラフ上の選択不可能な弧およびノードが、図30の最も左の図に示されている。図30の最も右の図に示されるように第2のユーザ選択がノード11である場合、図31に示されるように、ノード5をノード11に接続する手続き型関係が作成される。図32に示されるように、弧5→11を作成することが強い構成要素を変化させないことに注意されるべきである。
典型的には以下のシナリオがシステムによって実行されてよい。
1.第1の作成ステップ
a.平面P1を作成する。
b.平面P2を作成する。
c.P1とP2との間の距離制約d1を作成する。これは、P1とP2を平行にする。
d.P2上にプロファイルK1をスケッチ(sketch)する。
e.拡張部分h1およびh2によってK1から固体物パッドS1を押し出す(extrude)。
f.平面P3を作成する。
g.P3とS1の側面との間の距離制約d2を作成する。システムは、平面P3のみを移動させる。
2.第1の修正ステップ
a.P1を固定する
b.距離値d1
に変更し、更新を求める。
c.P2、K1、S1は、システムによって変換された
である。
d.P3は、システムによって移動されない。
3. 第2の修正ステップ
a. P1を固定解除する
b. 距離値d2
に変更し、更新を要求する。
c. P3
変換されるべきである。すべての他の形状はシステムによって移動されない。
4.第2の作成ステップ
a.平面P4を作成する。
b.距離制約作成対話に進む。
c.S1の面を選択する。
d.P1、P2、およびP3は、システムで選択可能なように提供されない。P3は、システムで選択可能なように提供される。

Claims (15)

  1. 工業製品を表し、および複数の形状オブジェクトと、前記形状オブジェクトをリンクする関係とを含むデータにより定義された、3Dモデル化されたオブジェクトを設計するためのコンピュータにより実行される方法であって、前記形状オブジェクトをリンクする前記関係は、手続き型関係を含み、
    前記形状オブジェクトを表すノードおよび弧を有するモデリンググラフを提供するステップであって、前記弧の各々は、前記弧のインシデントノードによって表される2つの前記形状オブジェクトをリンクする前記関係を表し、前記手続き型関係は、前記手続き型関係と同一の方向を有する単方向弧によって表され、前記形状オブジェクトをリンクする前記関係は、双方向弧によって表される有効な関係をさらに含む、ステップと、
    前記3Dモデル化されたオブジェクトを定義する前記データの修正の際、
    強いグラフを判定するステップであって、前記強いグラフは、前記モデリンググラフの強い構成要素のグラフである、ステップと、
    前記強いグラフの探索に従って、前記3Dモデル化されたオブジェクトを更新するステップと
    を備えたことを特徴とする方法。
  2. 前記強いグラフの前記探索は、深さ優先探索であることを特徴とする請求項1に記載の方法。
  3. 前記強いグラフの前記探索の間、各強い構成要素は、前記モデリンググラフの残りと独立して解決されることを特徴とする請求項2に記載の方法。
  4. 強い構成要素を解決するとき、手続き型関係の出力である前記強い構成要素のノードによって表される各形状オブジェクトは固定して設定されることを特徴とする請求項3に記載の方法。
  5. 各強い構成要素は、方程式系ソルバまたは反復ソルバによって解決されることを特徴とする請求項3または4に記載の方法。
  6. 前記有効な関係は、スタイリング関係および/または機械的関係を含むことを特徴とする請求項1乃至5のいずれか一項に記載の方法。
  7. 前記工業製品は、機械パーツまたは消費財であることを特徴とする請求項6に記載の方法。
  8. 前記提供されたモデリンググラフは、前記モデリンググラフの各強い構成要素のすべての前記弧が双方向であるという基準を順守し、前記3Dモデル化されたオブジェクトを定義する前記データの前記修正が、追加の前に前記3Dモデル化されたオブジェクトを定義する前記データに含まれる前記形状オブジェクトの2つをリンクする関係を追加するステップを含むとき、前記方法は、追加されることになる前記関係によってリンクされることになる2つの形状オブジェクトを選択するステップを備え、前記選択は、前記基準に従って実行されることを特徴とする請求項1乃至7のいずれか一項に記載の方法。
  9. 請求項1乃至8のいずれか一項に記載の方法によって設計されることを特徴とする3次元オブジェクト。
  10. 請求項9に記載の前記3次元オブジェクトによって表されることを特徴とする工業製品。
  11. 工業製品を製造する方法であって、請求項1乃至8のいずれか一項に記載の方法に従って、前記工業製品を表す3次元オブジェクトを設計し、および前記設計された3次元オブジェクトに基づいて、前記工業製品を製造するステップを備えたことを特徴とする方法。
  12. 請求項1乃至8のいずれか一項に記載の方法を実行するための命令を備えたことを特徴とするコンピュータプログラム。
  13. 請求項12に記載の前記コンピュータプログラムを記憶したことを特徴とするデータ記憶媒体。
  14. メモリおよびグラフィカルユーザインタフェースに結合されたプロセッサを備え、前記メモリは、請求項12に記載の記憶されたコンピュータプログラムを有することを特徴とするCADシステム。
  15. 請求項9に従った3次元オブジェクトを記憶したことを特徴とするデータファイルまたはデータ構造。
JP2015165963A 2014-08-26 2015-08-25 順次更新の実行 Active JP6585423B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP14306317.0A EP2990970A1 (en) 2014-08-26 2014-08-26 Execution of sequential update
EP14306317.0 2014-08-26

Publications (3)

Publication Number Publication Date
JP2016045966A true JP2016045966A (ja) 2016-04-04
JP2016045966A5 JP2016045966A5 (ja) 2018-10-11
JP6585423B2 JP6585423B2 (ja) 2019-10-02

Family

ID=51542291

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015165963A Active JP6585423B2 (ja) 2014-08-26 2015-08-25 順次更新の実行

Country Status (6)

Country Link
US (1) US10534893B2 (ja)
EP (1) EP2990970A1 (ja)
JP (1) JP6585423B2 (ja)
KR (1) KR20160024825A (ja)
CN (1) CN105389412B (ja)
CA (1) CA2901829A1 (ja)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI555351B (zh) * 2015-06-17 2016-10-21 國立清華大學 用於非循環網路的網路可靠度計算方法及其系統
US10353916B2 (en) * 2016-03-25 2019-07-16 Bentley Systems, Incorporated Techniques for conversion of CAD descriptions
CN108733668B (zh) * 2017-04-13 2021-10-19 百度在线网络技术(北京)有限公司 用于查询数据的方法和装置
US20180314408A1 (en) * 2017-04-28 2018-11-01 General Electric Company Systems and methods for managing views of computer-aided design models
EP3416103A1 (en) * 2017-06-16 2018-12-19 Dassault Systèmes Dataset for learning a function taking images as inputs
EP3502930A1 (en) * 2017-12-22 2019-06-26 Dassault Systèmes Method for computing an unfolded part of a modeled bended part of a 3d object
US11886776B2 (en) * 2018-05-08 2024-01-30 Autodesk, Inc. Techniques for generating graph-based representations of complex mechanical assemblies
US11373015B2 (en) * 2018-07-16 2022-06-28 Dassault Systemes Solidworks Corporation Designing a 3D modeled object representing a mechanical structure
US20210240881A1 (en) * 2020-02-05 2021-08-05 Dassault Systemes Solidworks Corporation Predictive Modeling
CN112395701A (zh) * 2020-11-17 2021-02-23 三一重型装备有限公司 用于液压支架的三维设计方法
WO2024091228A1 (en) * 2022-10-26 2024-05-02 Siemens Industry Software Inc. Method and system for capturing and managing changes to a history-based part model

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS55166859A (en) * 1979-06-15 1980-12-26 Toshiba Corp Discharge lamp with built-in stabilizer
US5165015A (en) 1989-09-25 1992-11-17 Reliance Electric Industrial Company Electronic template system and method
JPH0789382B2 (ja) 1991-03-14 1995-09-27 インターナショナル・ビジネス・マシーンズ・コーポレイション 形状モデルを生成する方法及び装置
US5251290A (en) * 1991-03-25 1993-10-05 Schlumberger Technology Corporation Modeling method for sorting dependencies among geometric entities
EP1939772A1 (en) * 2006-12-28 2008-07-02 Dassault Systèmes Method and a computer program product for computer aided design of a product comprising a set of constrained objects
EP1939771A1 (en) 2006-12-28 2008-07-02 Dassault Systèmes Method and a computer program product for computer aided design of a product comprising a set of constrained objects
US20080172208A1 (en) * 2006-12-28 2008-07-17 Dassault Systems Method and computer program product of computer aided design of a product comprising a set of constrained objects
US8732236B2 (en) * 2008-12-05 2014-05-20 Social Communications Company Managing network communications between network nodes and stream transport protocol
US8473524B2 (en) * 2009-04-28 2013-06-25 Dassault Systemes Method and system for updating object data with respect to object specifications in a product life cycle management system
US9330204B2 (en) 2009-05-29 2016-05-03 Siemens Product Lifecycle Management Software Inc. CAD system and method for wireframe coupling
US8214069B2 (en) * 2009-10-23 2012-07-03 Certusoft, Inc. Automated hierarchical configuration of custom products with complex geometries: method and apparatus
EP2333682B1 (en) 2009-11-06 2020-05-20 Dassault Systèmes Method and system for designing an assembly of objects in a system of computer-aided design
EP2354986A1 (en) * 2009-12-31 2011-08-10 Dassault Systèmes Design of an assembly modeled by a graph
US20120109589A1 (en) * 2010-10-28 2012-05-03 Brian Thompson Methods and systems for direct-parametric interoperability in computer-aided design
JP6000267B2 (ja) * 2010-10-28 2016-09-28 パラメトリック テクノロジー コーポレーション コンピュータ支援設計のための方法およびシステム
EP2474929A1 (en) * 2010-12-30 2012-07-11 Dassault Systèmes Modeled object updating
EP2474928A1 (en) * 2010-12-30 2012-07-11 Dassault Systèmes Merging of modeled objects
CN103258349B (zh) * 2013-05-30 2015-09-30 西北大学 颅面复原用模型库及颅面复原方法

Also Published As

Publication number Publication date
CN105389412B (zh) 2021-02-09
EP2990970A1 (en) 2016-03-02
US10534893B2 (en) 2020-01-14
KR20160024825A (ko) 2016-03-07
CN105389412A (zh) 2016-03-09
JP6585423B2 (ja) 2019-10-02
CA2901829A1 (en) 2016-02-26
US20160063174A1 (en) 2016-03-03

Similar Documents

Publication Publication Date Title
JP6585423B2 (ja) 順次更新の実行
US11256832B2 (en) Replica selection
JP6687345B2 (ja) 順次更新の実行
JP6294072B2 (ja) 剛体運動によって変換される幾何学要素
US8983805B2 (en) Modeled object updating
JP6328930B2 (ja) 幾何学パターンを形成する面分のグループ
JP2019106177A (ja) 3d部品の付加製造
JP6850116B2 (ja) 切り欠きの検出
JP2018022476A (ja) モフォロジー基準によるデータベースの照会
US10409921B2 (en) Designing industrial products by using geometries connected by geometrical constraints
JP2020115340A (ja) 弱型定義を用いるモデリング
JP2017123171A (ja) 複数のグラフィックカードの管理
US12073526B2 (en) Flexible modeling using a weak type definition
JP2021131852A (ja) 機械部品の構造シミュレーション

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180827

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180827

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190723

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20190905

R150 Certificate of patent or registration of utility model

Ref document number: 6585423

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250