IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ダッソー システムズ ソリッドワークス コーポレイションの特許一覧

特開2022-1715663Dモデルのビュー/状態のリンク付けとその更新の伝播
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2022171566
(43)【公開日】2022-11-11
(54)【発明の名称】3Dモデルのビュー/状態のリンク付けとその更新の伝播
(51)【国際特許分類】
   G06F 30/12 20200101AFI20221104BHJP
   G06F 30/10 20200101ALI20221104BHJP
【FI】
G06F30/12
G06F30/10 100
【審査請求】有
【請求項の数】20
【出願形態】OL
(21)【出願番号】P 2022049508
(22)【出願日】2022-03-25
(31)【優先権主張番号】17/246,483
(32)【優先日】2021-04-30
(33)【優先権主張国・地域又は機関】US
(71)【出願人】
【識別番号】500430693
【氏名又は名称】ダッソー システムズ ソリッドワークス コーポレイション
(74)【代理人】
【識別番号】110001243
【氏名又は名称】弁理士法人谷・阿部特許事務所
(72)【発明者】
【氏名】フェリペ マルティネス キロス
(72)【発明者】
【氏名】マシュー ロローノ
【テーマコード(参考)】
5B146
【Fターム(参考)】
5B146AA07
5B146DE06
5B146DG02
5B146DG07
5B146DL01
(57)【要約】
【課題】コンピュータ支援設計(CAD)システムおよび対応する方法は、三次元(3D)モデルのビュー/状態の変更を管理する。
【解決手段】方法は、CADシステムに設けられたユーザ入力に基づいて、CADシステム内の3Dモデルの親ビューを変更する。親ビューは、親ビューから作成された3Dモデルの子ビューにリンク付けされる。方法は、変更された親ビューに従って、子ビューを自動的に変更する。こうしたリンク付けされたビューおよび自動変更により、ユーザは、親ビューのビュー/状態を変更し、変更を自動的に子ビュー/状態に伝播することができる。さらに、こうした伝播が起こると、アノテーションの向き、位置、および可読方向も自動的に更新され、3Dモデルの設計に関するユーザ(例えば、設計エンジニア)の数分、数時間、およびさらには数日分の作業を節約する。
【選択図】図7
【特許請求の範囲】
【請求項1】
コンピュータ実装方法であって、
ユーザ入力に基づいて、コンピュータ支援製図(CAD)システム内で三次元(3D)モデルの親ビューを変更することであって、前記親ビューが3Dモデルの子ビューにリンク付けされ、前記子ビューが前記親ビューから作成され、前記ユーザ入力が前記CADシステムに設けられている、変更することと、
前記変更された親ビューに従って前記子ビューを自動的に変更することを含む、コンピュータ実装方法。
【請求項2】
前記親ビューが3Dビューであり、前記3Dビューが、前記3Dモデルの保存されたビューと、前記3Dモデルのプレゼンテーション状態とを含み、前記保存されたビューが、前記3Dモデルの検索可能なビューの向きを含み、前記プレゼンテーション状態が、前記3Dモデルの検索可能な状態であり、
前記親ビューを変更することが、前記保存されたビュー、プレゼンテーション状態、またはそれらの組み合わせを変更することを含み、
前記保存されたビュー、プレゼンテーション状態、またはそれらの組み合わせを変更することが、モデルの幾何学的形状、面の色、材料、ビューのズームレベル、前記検索可能なビューの向き、前記3Dモデルの他の特徴、またはそれらの組み合わせを変更することによって、前記3Dモデルの表示を変更することを含み、
前記3Dモデルの前記表示が、前記親ビューの起動に応答して画面に表示された前記3Dモデルの可視化である、請求項1に記載のコンピュータ実装方法。
【請求項3】
前記モデルの幾何学的形状を変更することが、前記表示内に提示された前記3Dモデルの少なくとも一部分を削除すること、前記少なくとも一部分の削除を解除すること、前記少なくとも一部分を表示もしくは非表示にすること、または前記モデルの幾何学的形状の構成を変更することを含む、請求項2に記載のコンピュータ実装方法。
【請求項4】
前記親ビューを作成することと、前記子ビューを作成することと、前記作成された子ビューを前記作成された親ビューにリンク付けさせることをさらに含み、前記作成された親ビューが一次ビューの向きを有し、前記作成された子ビューが、前記作成された親ビューの前記一次ビューの向きとロックされた関係を有する直交する方向またはその他のアクソノメトリック図法の方向に向けられ、前記子ビューを作成することが前記3Dモデルの投影から前記子ビューを作成することを含む、請求項1に記載のコンピュータ実装方法。
【請求項5】
前記子ビューが、前記親ビューに対する回転オフセットおよび角オフセットによってオフセットされ、前記親ビューを変更することが、前記親ビューの親ビューの向きに変更を適用することを含み、前記子ビューを変更することが、前記親ビューの向きへの前記変更に続いて、前記子ビューが前記親ビューに対する前記回転および角オフセットを維持するために、前記子ビューの子ビューの向きを空間的にオフセットすることを含む、請求項1に記載のコンピュータ実装方法。
【請求項6】
前記親ビューおよび子ビューが、3Dビューまたは二次元(2D)ビューであり、前記親ビューが、アノテーションの向きを有するアノテーションを含み、前記アノテーションの向きが、前記アノテーションを前記3Dモデルのモデルの幾何学的形状に付加し、前記3Dモデルの前記親ビューの親ビューの向きに整列させることを可能にし、前記アノテーションの向きが、前記アノテーションを前記親ビューの向きの可読方向と整列させることをさらに可能にし、前記親ビューを変更することが、前記親ビューの向きを新しい親ビューの向きに変更することを含み、前記コンピュータ実装方法がさらに、
前記親ビューの前記親ビューの向きが変更されたことを検出すること、
前記新しい親ビューの向きが、(i)前記アノテーションを前記モデルの幾何学的形状に付加されたままにすること、および(ii)前記アノテーションを前記可読方向と整列させて、前記アノテーションの可読性を可能にするように、前記アノテーションを前記新しい親ビューの向きと整列させること、を可能にするかどうかを判断すること、
前記判断が、前記新しい親ビューの向きが(i)および(ii)を可能にしないという結論を下す場合に、
色の変化、グラフィカルアイコン、またはアノテーションに対する他の視覚的変更を介して、アノテーションを視覚的に識別すること、
前記アノテーションを削除すること、
前記アノテーションを無視すること、または
前記子ビューまたは所定のビューが、(i)および(ii)を可能にする場合に、前記子ビューまたは所定のビューに前記アノテーションを自動的に移動させること、を含む、請求項1に記載のコンピュータ実装方法。
【請求項7】
新しい親ビューの向きが(i)および(ii)を可能にすると判断する場合に、前記コンピュータ実装方法が、(i)を維持しながら、(ii)を可能にする回転オフセットおよび角オフセットを介して、前記新しい親ビューの向きの新しいビュー方向に対して空間的にオフセットされる新しいアノテーションの向きに、前記アノテーションの向きを変更することをさらに含む、請求項6に記載のコンピュータ実装方法。
【請求項8】
前記親ビューに対するズームレベルのクエリを実行することをさらに含み、また、前記親ビュー内の前記アノテーションの表示を可能としないように、前記新しいアノテーションの向きが前記アノテーションを位置付けする場合に、前記コンピュータ実装方法が、前記3Dモデルから、前記モデルの幾何学的形状の外側およびクエリされた前記ズームレベル内で読取可能な様式でオフセットされるように、前記アノテーションを再配置することをさらに含み、前記再配置が、前記親ビューの起動に応答して、前記アノテーションを前記親ビューに表示することを可能にする、請求項7に記載のコンピュータ実装方法。
【請求項9】
前記親ビューが、前記3Dモデルの第一の保存されたビューおよび前記3Dモデルの第一のプレゼンテーション状態を含み、
前記子ビューが、前記3Dモデルの第二の保存されたビューおよび前記3Dモデルの第二のプレゼンテーション状態を含み、
前記親ビューを変更することが、前記第一の保存されたビュー、第一のプレゼンテーション状態、またはそれらの組み合わせを変更することを含み、
前記子ビューを変更することが、変更された前記の第一の保存されたビューおよび変更された第二のプレゼンテーション状態のそれぞれに応答し、そしてそれらに従って、前記第二の保存されたビューおよび第二のプレゼンテーション状態を変更することを含む、請求項1に記載のコンピュータ実装方法。
【請求項10】
前記第一および第二の保存されたビューが、前記3Dモデルのそれぞれの検索可能な向きを含み、前記第一および第二のプレゼンテーション状態が、前記3Dモデルのそれぞれの検索可能な状態を含む、請求項9に記載のコンピュータ実装方法。
【請求項11】
コンピュータ支援設計(CAD)システムであって、
メモリと、
前記CADシステムに設けられたユーザ入力に基づいて、三次元(3D)モデルの親ビューを変更するように構成されたプロセッサを含み、前記親ビューが3Dモデルの子ビューにリンク付けされ、前記子ビューが前記親ビューから作成され、前記3Dモデルが前記メモリに格納され、
プロセッサが変更された前記親ビューに従って、前記子ビューを自動的に変更するように構成される、CADシステム。
【請求項12】
前記親ビューが3Dビューであり、前記3Dビューが、前記3Dモデルの保存されたビューと、前記3Dモデルのプレゼンテーション状態とを含み、前記保存されたビューが、前記3Dモデルの検索可能なビューの向きを含み、前記プレゼンテーション状態が、前記3Dモデルの検索可能な状態であり、
前記親ビューを変更するために、前記プロセッサが、前記保存されたビュー、プレゼンテーション状態、またはそれらの組み合わせを変更するようにさらに構成され、
前記保存されたビュー、プレゼンテーション状態、またはそれらの組み合わせを変更するために、前記プロセッサが、モデルの幾何学的形状、面の色、材料、ビューのズームレベル、前記検索可能なビューの向き、前記3Dモデルのその他の特徴、またはそれらの組み合わせを変更することによって、前記3Dモデルの表示を変更するようにさらに構成され、
前記3Dモデルの前記表示が、前記親ビューの起動に応答して画面に表示された前記3Dモデルの可視化である、請求項11に記載のCADシステム。
【請求項13】
前記モデルの幾何学的形状を変更することが、前記表示内に提示された前記3Dモデルの少なくとも一部分を削除すること、前記少なくとも一部分の削除を解除すること、前記少なくとも一部分を表示もしくは非表示にすること、または前記モデルの幾何学的形状の構成を変更することを含む、請求項12に記載のCADシステム。
【請求項14】
前記プロセッサが、前記親ビューを作成し、子ビューを作成し、前記作成された子ビューを、前記作成された親ビューにリンク付けするようにさらに構成され、前記作成された親ビューが一次ビューの向きを有し、前記作成された子ビューが、前記の作成された親ビューの前記一次ビューの向きとロックされた関係を有する直交する方向またはその他のアクソノメトリック図法の方向に向けられ、前記子ビューを作成するために、前記プロセッサが、前記3Dモデルの投影から前記子ビューを作成するようにさらに構成される、請求項11に記載のCADシステム。
【請求項15】
前記子ビューが、前記親ビューに対する回転オフセットおよび角オフセットによってオフセットされ、前記親ビューを変更するために、前記プロセッサが、前記親ビューの親ビューの向きに変更を適用するようにさらに構成され、前記子ビューを変更するために、前記プロセッサが、前記親ビューの向きへの前記変更に続いて、前記子ビューが前記親ビューに対する前記回転および角オフセットに回転および角オフセットを維持するために維持するために、前記子ビューの子ビューの向きを空間的にオフセットするようにさらに構成される、請求項11に記載のCADシステム。
【請求項16】
前記親ビューおよび子ビューが、3Dビューまたは二次元(2D)ビューであり、前記親ビューが、アノテーションの向きを有するアノテーションを含み、前記アノテーションの向きが、前記アノテーションを前記3Dモデルのモデルの幾何学的形状に付加し、前記3Dモデルの親ビューの親ビューの向きに整列させることを可能にし、前記アノテーションの向きが、前記アノテーションを前記親ビューの向きの可読方向と整列させることをさらに可能にし、親ビューを変更するために、前記プロセッサが、前記親ビューの向きを新しい親ビューの向きに変更するようにさらに構成され、前記プロセッサが、
前記親ビューの前記親ビューの向きが変更されたことを検出し、
前記新しい親ビューの向きが、(i)前記アノテーションを前記モデルの幾何学的形状に付加されたままにすること、および(ii)前記アノテーションを前記可読方向と整列させて、前記アノテーションの可読性を可能にするように、前記アノテーションを前記新しい親ビューの向きと整列させること、を可能にするかどうかを判断するようにさらに構成され、
前記プロセッサが、前記新しい親ビューの向きが(i)および(ii)を可能にしないと判断した場合、前記プロセッサがさらに、(a)色の変化、グラフィカルアイコン、または前記アノテーションに対する他の視覚的変更を介して前記アノテーションを視覚的に識別する、(b)前記アノテーションを削除する、(c)前記アノテーションを無視する、または(d)子ビューもしくは所定のビューが(i)および(ii)を可能にする場合に、前記アノテーションを、前記子ビューまたは所定のビューに自動的に移動させるようさらに構成され、
前記判断が、前記新しい親ビューの向きが(i)および(ii)を可能にすると判断した場合に、前記プロセッサが(i)を維持しながら、(ii)を可能にする回転オフセットおよび角オフセットを介して、前記新しい親ビューの向きの新しいビュー方向に対して空間的にオフセットされる、新しいアノテーションの向きに前記アノテーションの向きを変更するようにさらに構成される、請求項11に記載のCADシステム。
【請求項17】
前記プロセッサが、前記親ビューに対するズームレベルに対してクエリを実行するようにさらに構成され、前記新しいアノテーションの向きが、前記親ビュー内の前記アノテーションの表示を可能としない方法で前記アノテーションを位置付けさせる場合に、前記プロセッサが、前記3Dモデルから、前記モデルの幾何学的形状の外側およびクエリされた前記ズームレベル内で読取可能な様式でオフセットされるように、前記アノテーションを再配置するようにさらに構成され、前記アノテーションが、前記親ビューの起動に応答して、前記アノテーションを前記親ビューに表示することを可能にするように再配置される、請求項16に記載のCADシステム。
【請求項18】
請求項11に記載のCADシステムであって、
前記親ビューが、前記3Dモデルの第一の保存されたビューおよび前記3Dモデルの第一のプレゼンテーション状態を含み、
前記子ビューが、前記3Dモデルの第二の保存されたビューおよび前記3Dモデルの第二のプレゼンテーション状態を含み、
前記親ビューを変更するために、前記プロセッサが、前記第一の保存されたビュー、第一のプレゼンテーション状態、またはそれらの組み合わせを変更するようにさらに構成され、
前記子ビューを変更するために、前記プロセッサが、それぞれ、変更された前記第一の保存されたビューおよび変更された第二のプレゼンテーション状態のそれぞれに応答して、そしてそれらに従って前記第二の保存されたビューおよび第二のプレゼンテーション状態を変更するようにさらに構成される、請求項11に記載のCADシステム。
【請求項19】
前記第一および第二の保存されたビューが、前記3Dモデルのそれぞれの検索可能な向きを含み、前記第一および第二のプレゼンテーション状態が、前記3Dモデルのそれぞれの検索可能な状態を含む、請求項18に記載のCADシステム。
【請求項20】
非一時的コンピュータ可読媒体であって、その上に一連の命令を符号化しており、プロセッサによってロードおよび実行される時、プロセッサが、
ユーザ入力に基づき、コンピュータ支援製図(CAD)システム内で三次元(3D)モデルの親ビューを変更し、前記親ビューが前記3Dモデルの子ビューにリンク付けされ、前記子ビューが前記親ビューから作成され、前記ユーザ入力が前記CADシステムに設けられ、
変更された親ビューに従って前記子ビューを自動的に変更する、非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、3Dモデルのビュー/状態のリンク付けとその更新の伝播に関し、より詳細には、コンピュータ支援設計(CAD)システムおよび対応する方法における3Dモデルのビュー/状態のリンク付けとその更新の伝播に関する。
【背景技術】
【0002】
本出願は、合衆国法典第35編第119条または第365条に基づき、2021年4月30日に出願された米国特許出願第17/246,483号に対する優先権を主張するものである。上記出願の全体の教授は、参照することによって本明細書に援用される。
【0003】
コンピュータ支援設計(CAD)ソフトウェアは、ユーザが複雑な三次元(3D)モデルを構築し、操作することを可能にする。多くの異なるモデリング手法を使用して、3Dモデルを生成することができる。そのような手法の1つは、3Dモデルが相互接続されたトポロジエンティティのコレクションであるトポロジ3Dモデルを提供するソリッドモデリング手法(例えば、頂点、エッジ、面など)である。トポロジエンティティには、エッジで囲まれたトポロジ面に対応するポイント、トリムカーブ、トリムサーフェスなど、対応するサポート幾何学的エンティティがある。3D CADシステムは、3Dモデルの構築と操作に使用するために、ソリッドモデリングとパラメトリックモデリング手法などの他のモデリング手法を組み合わせることができる。パラメトリックモデリング手法を使用して、モデルのさまざまなフィーチャやコンポーネントのさまざまなパラメータを定義し、さまざまなパラメータ間の関係に基づいて、これらのフィーチャとコンポーネントと間の関係を定義できる。このような3D CADシステムの一般的なユーザは、設計エンジニアと呼ばれることがある。
【0004】
設計エンジニアは、3Dモデルの物理的および美的側面を設計し、3Dモデリング手法に精通している。以下は、そのような設計エンジニアが3Dモデルを設計するために使用できる3D CADシステムを説明するときに使用できる特定の用語の定義である。
【0005】
・ 3Dモデル:3Dモデルは、CADプログラムにおける立体形状の表現を指す。モデル化されたオブジェクトには、3Dソリッドが含まれていないか、1つ以上含まれている場合があり、スケッチが含まれていないか、1つ以上含まれている場合がある。
【0006】
・ アセンブリ:自動車や飛行機など、複雑なモデル化されたオブジェクトを形成するパーツとコンポーネントとのコレクション。CADプログラムでは、アセンブリは、パーツ、フィーチャ、およびその他のアセンブリ(サブアセンブリ)が結合されたドキュメントによって表される。パーツおよびサブアセンブリは、アセンブリとは別のドキュメントに存在できる。
【0007】
・ 注釈付きモデル:製品を記述するモデル、アノテーション、属性の組み合わせ。
【0008】
・ 属性:最新のCADプログラムのほとんどには、任意の幾何学的エンティティに属性を付加する機能がある。属性には、幾何学的エンティティに関連する可能性のある追加データを含めることができる。
【0009】
・ ボディ:ソリッドボディは、トポロジカルデータおよびジオメトリデータを含む。ソリッドボディ内のトポロジカルデータ(例えば、面、エッジ、および頂点など)は、同一のソリッドボディ内に対応するジオメトリデータを有する。各頂点は点に対応する。各エッジは曲線に対応する。各面はサーフェスに対応する。
【0010】
・ コンポーネント(3Dモデルに関して):アセンブリ内の任意のパーツまたはサブアセンブリ。
【0011】
・ エッジ:フィーチャの単一の外側の境界。
【0012】
・ エンティティ:面、エッジ、頂点などの個別要素。
【0013】
・ 面:モデルまたはサーフェスの形状を定義するのに役立つ境界を持つ、モデルまたはサーフェスの選択可能な領域(平面またはその他)。例えば、長方形のソリッドには6つの面があり、円筒形のソリッドには3つの面がある。
【0014】
・ フィーチャ:他のフィーチャと組み合わせて、パーツまたはアセンブリを構成する個々の形状。3Dモデルは、フィレット、面取り、押し出し、カット、穴、抜き勾配などのCADフィーチャを作成することによって変更される。フィーチャは、本明細書ではCADフィーチャと互換的にと呼ばれることがある。
【0015】
・ フィーチャノード:フィーチャツリー内のフィーチャの表現は、フィーチャノードと呼ばれる。最新のCADプログラムのほとんどは、数字や英数字テキストなどの一意の識別子を各フィーチャノードに関連付けている。フィーチャツリーは、本明細書では互換的に仕様ツリーまたは単にツリーと呼ばれることがある。
【0016】
・ フィーチャツリー(すなわち、仕様ツリーまたはツリー):従来のCADプログラムでは、3Dモデルのフィーチャは、フィーチャツリーまたは仕様ツリーと呼ばれるツリーの形態で編成される。ツリーは、各フィーチャを一覧表示し、フィーチャが上位レベルと下位レベルにどのように関連するかを定義する。
【0017】
・ 幾何学的エンティティ:幾何学的エンティティは、線、曲線、平面、サーフェスなど、CADフィーチャ内のフィーチャノードまたは一部のエンティティを指す場合がある。最新のCADプログラムのほとんどは、一意の識別子を各幾何学的エンティティに関連付けている。一意識別子は、数字または英数字テキストであってもよい。
【0018】
・ 大規模設計レビュー:アセンブリの設計レビューを実施するときに役立つ機能を保持しながら、非常に大規模なアセンブリをすばやく開くことができるアセンブリレビューのモード。大規模設計レビューモードでは、ユーザは、例えば、アセンブリの設計ツリーをナビゲートし、距離を測定し、断面を作成し、コンポーネントを表示および非表示にし、ウォークスルーを作成、編集、および再生できる。大規模設計レビューモードは、「グラフィックモード」と呼ばれることもある。
【0019】
・ パーツ:フィーチャで構成される単一の3Dオブジェクト。一つのパーツは複数のボディを含むことができる。パーツは、アセンブリのコンポーネントになることができる。パーツの例としては、例えばボルト、ピン、プレートなどが挙げられる。
【0020】
・ 平面:平らな構造のジオメトリ。
【0021】
・ ポイント:3Dモデル内の単一の場所。
【0022】
・ プレゼンテーション状態:ビューアへの正式な表示のために配置された、検索可能なコレクションまたはモデル表示要素のセット。
【0023】
・ 解決済み:メモリに完全にロードされているアセンブリコンポーネントの状態。解決されると、コンポーネントのすべてのモデルデータが利用可能になるため、そのエンティティは、選択、参照、編集等ができる。
【0024】
・ サブアセンブリ:より大きなアセンブリの一部であるアセンブリ。例えば、自動車のステアリング機構は自動車のサブアセンブリである。
【0025】
・ サーフェス:エッジ境界のある厚さゼロの平面または3Dエンティティ。
【0026】
・ 保存されたビュー:格納された、または検索可能な特定の向きと、注釈付きモデルの倍率。
【0027】
・ 頂点:2つ以上のエッジが交差するポイント。頂点は、スケッチ、寸法記入、およびその他のCAD操作用に選択できる。
【0028】
上記に開示したように、CADシステムは、フィーチャベースの3D CADシステムであるソリッドモデリングシステムである。ここで、パーツの3Dモデルは、ボス、フィレット、面取り、カット、穴、シェル、ロフト、スイープなどの様々な特徴を使用して構築される。CADシステムは、パーツ、サブアセンブリ、およびアセンブリの内容を、CADデータファイルと呼ばれるデータファイルに保存する。フィーチャに加えて、そのようなCADデータファイルの内容は、設計プロファイル、レイアウト、内部コンポーネント(例えば、ボディ)、およびグラフィカルエンティティを含んでよい。
【発明の概要】
【0029】
本明細書に開示される実施形態の実施例は、3Dモデルの親ビュー/状態への変更が、コンピュータプロセッサを介して、それに連結された子ビュー/状態への自動更新を引き起こすことを可能にする、三次元(3D)コンピュータ支援設計(CAD)モデリング環境内の親(例えば、初期、一次、主要)および子(例えば、後続、二次)ビュー/状態をリンクする。そのようなビュー/状態が、3Dモデルの異なる表示を有するように更新される場合、その3Dモデル内の、その3Dモデルにリンクされている他のビュー/状態が、同じように更新される。さらに、例示的な実施形態は、それらのビュー/状態に対して整列され、適用されるアノテーションを自動的に再配置し、再配向する。このようにして、CADユーザ(例えば、設計エンジニア)は、さもなければ手動で3Dモデルを更新して費やされる数分、数時間、および数日分の作業を、節約することができる。
【0030】
例示的な実施形態によれば、コンピュータ実装方法は、ユーザ入力に基づいて、コンピュータ支援製図(CAD)システムの三次元(3D)モデルの親ビューを変更することを含む。親ビューは、3Dモデルの子ビューにリンク付けされる。子ビューは親ビューから作成される。ユーザ入力は、CADシステムに設けられている。コンピュータ実装方法は、変更された親ビューに従って自動的に子ビューを変更することをさらに含む。コンピュータ実装方法によって実行される各動作は、コンピュータプロセッサによって自動化された方法で実行されることを理解されたい。
【0031】
親ビューは、3Dビューであってもよい。3Dビューは、3Dモデルの保存されたビューおよび3Dモデルのプレゼンテーション状態を含みうる。保存されたビューは、3Dモデルの検索可能なビューの向き(例えば、非限定的な例として、正面、背面、右側面、左側面など)を含みうる。プレゼンテーション状態は、3Dモデルの検索可能な状態である。親ビューを変更することは、保存されたビュー、プレゼンテーション状態、またはそれらの組み合わせの変更を含みうる。保存されたビュー、プレゼンテーション状態、またはそれらの組み合わせを変更することは、モデルの幾何学的形状(例えば、面の色、材料、ビューのズームレベル、検索可能なビューの向き、3Dモデルの他のフィーチャ、またはそれらの組み合わせ)を変更することによって、3Dモデルの表示を変更することを含みうる。3Dモデルの表示は、親ビューの起動に応答して画面に表示された3Dモデルの可視化である。
【0032】
モデルの幾何学的形状(例えば、3D形状)を変更することは、表示装置内に提示された3Dモデルの少なくとも一部分を削除すること、少なくとも一部分の削除を解除すること、少なくとも一部分を表示または非表示にすること、またはモデルの幾何学的形状の構成を変更することを含みうる。
【0033】
コンピュータ実装方法は、親ビューの作成、子ビューの作成、および作成された子ビューと作成された親ビューとのリンク付けをさらに含んでもよい。作成された親ビューには、一次ビューの向きがあります。作成された子ビューは、作成された親ビューの一次ビューの向きとロックされた関係を有する、直交する方向またはその他のアクソノメトリック図法の方向にしてもよい。子ビューを作成することは、3Dモデルの投影から子ビューを作成することを含みうる。
【0034】
子ビューは、親ビューに対する回転オフセットおよび角オフセットによってオフセットされてもよい。親ビューを変更することは、親ビューの親ビューの向きに変更を適用することを含みうる。子ビューを変更することは、親ビューの向きへの変更後に、子ビューが親ビューに対する回転および角オフセットを維持するために、子ビューの子ビューの向きを空間的にオフセットすることを含みうる。
【0035】
親ビューおよび子ビューは、3Dビューまたは二次元(2D)ビューであってもよい。親ビューは、アノテーションの向きを有するアノテーション(例えば、非限定的な例として、水平、垂直など)を含んでもよい。アノテーションの向きは、アノテーションを3Dモデルのモデルの幾何学的形状に付加し、3Dモデルの親ビューの親ビューの向きに整列させることを可能にする。アノテーションの向きは、さらに、アノテーションを親ビューの向きの可読方向(例えば、非限定的な例として、ベクトル)に整列させることを可能にする。親ビューを変更することは、親ビューの向きを新しい親ビューの向きに変更することを含みうる。
【0036】
コンピュータ実装方法は、親ビューの親ビューの向きが変更されたことを検出すること、および新しい親ビューの向きが、(i)アノテーションをモデルの幾何学的形状に付加されたままにすること、および(ii)アノテーションを可読方向に整列させて、アノテーションの可読性を可能にするように、アノテーションを新しい親ビューの向きと整列させることを、可能にするかどうかを判断することをさらに含んでもよい。判断が、新しい親ビューの向きが(i)および(ii)を可能にしていないという結論を下す場合には、コンピュータ実装方法は、アノテーションに対する色の変化、グラフィカルアイコン(通常は印)またはその他の視覚的変更を介してアノテーションを視覚的に識別すること、アノテーションを削除すること、アノテーションを無視すること、または子ビューもしくは所定のビューが(i)および(ii)を可能にする場合に、子ビューもしくは所定のビューに、アノテーションを自動的(応答的)に移動させることをさらに含んでもよい。コンピュータ実装方法の識別、削除、無視、および移動の各動作は、コンピュータプロセッサによって自動的に実行されることを理解されたい。
【0037】
新しい親ビューの向きが(i)および(ii)を可能にすると判断した場合、コンピュータ実装方法は、アノテーションの向きを、(i)を維持しながら、(ii)を可能にする回転オフセットおよび角オフセットを介して、新しい親ビューの向きの新しいビュー方向に対して空間的にオフセットされる新しいアノテーションの向きに変更することをさらに含んでもよい。
【0038】
コンピュータ実装方法は、親ビューのズームレベルをクエリすることをさらに含んでもよい。新しいアノテーションの向きによって、親ビュー内のアノテーションの表示ができないようにアノテーションが位置付けられる場合、コンピュータ実装方法は、3Dモデルから、モデルの幾何学的形状の外側およびクエリされたズームレベル内で読取可能な様式でアノテーションがオフセットされるように、アノテーションを再配置することをさらに含んでもよい。再配置により、親ビューの起動に応答して、アノテーションを親ビューに表示することができる。
【0039】
親ビューは、3Dモデルの第一の保存されたビューおよび3Dモデルの第一のプレゼンテーション状態を含みうる。子ビューは、3Dモデルの第二の保存されたビューおよび3Dモデルの第二のプレゼンテーション状態を含みうる。親ビューを変更することは、第一の保存されたビュー、第一のプレゼンテーション状態、またはそれらの組み合わせの変更を含みうる。子ビューを変更することは、変更された第一の保存されたビューおよび変更された第二のプレゼンテーション状態のそれぞれに応答して、そしてそれらに従って、第二の保存されたビューおよび第二のプレゼンテーション状態を変更することを含みうる。
【0040】
第一および第二の保存されたビューは、3Dモデルのそれぞれの検索可能な向きを含みうる。第一および第二のプレゼンテーション状態は、3Dモデルのそれぞれの検索可能な状態を含みうる。
【0041】
別の例示的な実施形態によれば、コンピュータ支援設計(CAD)システムは、メモリおよびプロセッサを含む。プロセッサは、CADシステムに設けられたユーザ入力に基づいて、三次元(3D)モデルの親ビューを変更するように構成される。親ビューは、3Dモデルの子ビューにリンク付けされる。子ビューは親ビューから作成される。3Dモデルは、メモリに格納される。プロセッサは、変更された親ビューに従って、子ビューを自動的に変更するようにさらに構成される。
【0042】
代替システムの実施形態は、例示的な方法の実施形態に関連して上記に記載されたものと類似している。
【0043】
別の例示的な実施形態によれば、非一時的コンピュータ可読媒体は、その上に一連の命令を符号化しており、プロセッサによってロードおよび実行されると、ユーザ入力に基づいて、プロセッサにコンピュータ支援製図(CAD)システムの三次元(3D)モデルの親ビューを変更させる。親ビューは、3Dモデルの子ビューにリンク付けされる。子ビューは親ビューから作成される。ユーザ入力は、CADシステムに設けられている。一連の命令によってさらに、プロセッサは、変更された親ビューに従って子ビューを自動的に変更する。
【0044】
別の例示的な実施形態によれば、コンピュータ実装方法は、コンピュータ支援製図(CAD)システムでの三次元(3D)モデルのビューの元の向きが、新しい向きに変更されていることを検出することを含む。3Dモデルは、CADシステムで画定されるモデルの幾何学的形状(例えば、3D形状)を有する。ビューは、アノテーションがビュー内の3Dモデルのモデルの幾何学的形状に付加されることを可能にするように、元の向きと整列したアノテーションを含む。コンピュータ実装方法は、検出に応答して、アノテーションが新しい向きと整列しているかどうかを判断すること、およびアノテーションが新しい向きと整列していないという判断に基づいて、アノテーションをビュー内で自動的に再配置することをさらに含む。コンピュータ実装方法によって実行される各動作は、コンピュータプロセッサによって自動化された方法で実行されることを理解されたい。
【0045】
ビューは、3Dビューまたは二次元(2D)ビューであってもよい。ビューは、親ビューまたは子ビューであってもよい。子ビューは親ビューから作成され、親ビューにリンク付けされる。
【0046】
新しい向きは、可読方向と関連付けられる。再配置は、新しい向きが、(i)アノテーションをモデルの幾何学的形状に付加されたままにすること、および(ii)アノテーションを可読方向と整列させて、アノテーションの可読性を可能にするように、アノテーションを新しい向きと整列させることを、可能にするかどうかを判断することをさらに含んでもよい。新しい向きが(i)および(ii)を可能にしないと判断する場合、コンピュータ実装方法は、アノテーションを識別すること、アノテーションを削除すること、アノテーションを無視すること、またはアノテーションを移動させることのうちの1つを自動的(応答的)に実行することをさらに含んでもよい。コンピュータ実装方法の識別、削除、無視、および移動の各動作は、コンピュータプロセッサによって自動的に実行されることを理解されたい。識別は、色の変化、グラフィカルアイコン(概して印)、またはアノテーションに対する他の視覚的変更を介して、アノテーションを視覚的に識別することを含みうる。移動は、(i)および(ii)を可能にする3Dモデルの異なるビューにアノテーションを自動的に移動させることを含みうる。
【0047】
異なるビューにアノテーションを自動的に移動させることは、CADシステムの設定に基づいてもよい。設定は、CADシステムのユーザによって構成可能であってもよい。
【0048】
新しい向きが(i)および(ii)を可能にすると判断する場合、再配置は、(i)を維持しながら、(ii)を可能にする回転オフセットおよび角オフセットを介して、3Dモデルのビューの新しい向きに対して、空間的にオフセットされる新しいアノテーションの向きに、アノテーションの元のアノテーションの向きを変更することを含みうる。
【0049】
コンピュータ実装方法は、ビューのズームレベルをクエリすることをさらに含んでもよい。新しいアノテーションの向きによって、アノテーションをビュー内に表示できないように位置付けられる場合、再配置は、3Dモデルから、モデルの幾何学的形状の外側およびクエリされたズームレベル内で読取可能な様式で、アノテーションがオフセットされるように、アノテーションを再配置することを含んでもよい。再配置により、ビューの起動に応答して、アノテーションをビューに表示することができる。
【0050】
アノテーションは、ビュー内の3Dモデルのモデルの幾何学的形状に付加された複数のアノテーションのうちの所定のアノテーションであってもよい。判断および再配置の動作は、複数のアノテーションのうちの各アノテーションに対して実施してもよい。
【0051】
新しい向きによって、アノテーションが、3Dモデルのモデルの幾何学的形状内に配置されるか、または他の方法で、ビュー内で、視覚的に不明瞭になる場合、再配置は、読取可能な様式でモデルの幾何学的形状の外側で、3Dモデルのモデルの幾何学的形状に対してオフセットされるアノテーションの再配置を含みうる。
【0052】
コンピュータ実装方法は、ビューのズームレベルをクエリすることをさらに含んでもよい。3Dモデルのモデルの幾何学的形状に対して、読取可能な様式でアノテーションをオフセットするように再配置することは、ビューの起動に応答して、アノテーションが画面に表示されるようにクエリされるズームレベルに基づいてもよい。
【0053】
別の例示的な実施形態によれば、コンピュータ支援設計(CAD)システムは、メモリおよびプロセッサを含む。プロセッサは、CADシステムの三次元(3D)モデルのビューの元の向きが、新しい向きに変更されたことを検出するように構成される。3Dモデルは、メモリ内に定義されたモデルの幾何学的形状を有する。ビューは、アノテーションがビュー内の3Dモデルのモデルの幾何学的形状に付加されることを可能にするように、元の向きと整列したアノテーションを含む。プロセッサは、元の向きが変更されたと検出することに応答して、アノテーションが新しい向きと整列しているかどうかを判断し、アノテーションが新しい向きと整列していないと判断することに基づいて、アノテーションをビュー内で自動的に再配置するようにさらに構成される。
【0054】
代替システムの実施形態は、例示的な方法の実施形態に関連して上記に記載されたものと類似している。
【0055】
さらに別の例示的な実施形態によれば、非一時的コンピュータ可読媒体は、その上に一連の命令を符号化しており、プロセッサによってロードおよび実行されると、ユーザ入力に基づいて、プロセッサにコンピュータ支援製図(CAD)システムの三次元(3D)モデルのビューの元の向きが、新しい向きに変更したことを検出させる。3Dモデルは、CADシステムに定義されるモデルの幾何学的形状を有する。ビューは、アノテーションがビュー内の3Dモデルのモデルの幾何学的形状に付加されることを可能にするように、元の向きと整列したアノテーションを含む。一連の命令は、さらに元の向きが変更されたと検出することに応答して、プロセッサに、アノテーションが新しい向きと整列しているかどうかを判断し、アノテーションが新しい向きと整列していないと判断することに基づいて、アノテーションをビュー内で自動的に再配置させる。
【0056】
本明細書に開示される例示的な実施形態は、その上に具体化されたプログラムコードを備えた方法、装置、システム、またはコンピュータ可読媒体の形態で実施できることを理解されたい。
【0057】
特許または出願ファイルは、カラーで作成された少なくとも1つの図面を含む。カラー図面を含めた本特許または特許出願公報の写しは、要請に応じて、必要な料金の支払いがあった時点で、事務局から提供される。
【0058】
前述のことは、添付の図面に示されているように、例示的な実施形態の以下のより具体的な説明から明らかであり、同様の参照文字は、異なるビュー全体にわたって同じ部分を参照している。図面は必ずしも原寸に比例しておらず、代わりに実施形態を説明することに重点が置かれている。
【図面の簡単な説明】
【0059】
図1A】コンピュータ支援設計(CAD)システムの例示的な実施形態のブロック図である。
図1B図1AのCADシステムの例示的な実施形態のブロック図である。
図2】子ビューを作成するためのコンピュータ実装方法の例示的な実施形態のフロー図である。
図3】親ビューの向きを変更し、親ビューにリンク付けされた子ビューに影響を及ぼす、コンピュータ実装方法の例示的な実施形態のフロー図である。
図4】親ビューの向きを変更し、そのアノテーションに変更を生じさせる、コンピュータ実装方法の例示的な実施形態のフロー図である。
図5】親ビューおよび親ビューにリンク付けされた子ビューに対する変更の例示的な実施形態のブロック図である。
図6】FIG.6A-6Cは、親ビューおよび親ビューにリンク付けされた子ビューに対する変更のさらなる例示的な実施形態のブロック図である。
図7】コンピュータ実装方法の例示的な実施形態のフロー図である。
図8】コンピュータ実装方法の別の例示的な実施形態のフロー図である。
図9図9A~9Eは、親ビューおよび子ビューの例示的な実施形態のブロック図である。
図10-1】図10A~10Cは、本明細書に開示される例示的な実施形態による子ビューの作成のワークフローの例を示すブロック図である。
図10-2】図10D~10Gは、本明細書に開示される例示的な実施形態による子ビューの作成のワークフローの例を示すブロック図である。
図11-1】図11A~11Dは、本明細書に開示される例示的な実施形態による、その親ビューおよび子ビューの編集の非限定的なワークフローの例を示すブロック図である。
図11-2】図11E~11Gは、本明細書に開示される例示的な実施形態による、その親ビューおよび子ビューの編集の非限定的なワークフローの例を示すブロック図である。
図12図10A~Gおよび11A~Gに関連して開示される変更された親ビューおよび子ビューの例示的な実施形態のブロック図である。
図13】任意選択的に本明細書に開示される実施形態内のコンピュータの内部構造例のブロック図である。
【発明を実施するための形態】
【0060】
例示的な実施形態の説明は、以下の通りである。
【0061】
コンピュータ支援設計(CAD)システムの三次元(3D)モデルには、非限定的な例として、米国機械工学会(ASME)が発表した規格(例えば、ASME Y14.41およびASME Y14.47)で定義される保存されたビューおよびプレゼンテーション状態が含まれうる。保存されたビューは、3Dモデルの検索可能な向きである。プレゼンテーション状態は、3Dモデルの検索可能な状態である。こうした保存されたビューおよびプレゼンテーション状態は組み合わされうるが、これらのビュー/状態の各々はそれぞれ、当技術分野では、個別に検索可能であり、互いに独立している。そのようなビュー/状態が、3Dモデルの異なる表示を有するように更新される場合、その3Dモデル内の他のビュー/状態は、同じように更新されない。例えば、モデルの表示は、異なる表示された幾何学的形状(例えば、3D形状)を有するように変更されてもよい。こうした変更は、非限定的な例として、3Dモデルの要素の削除/非削除、要素の表示/非表示、構成、面の色、材料、ビューの向き、表示ズームレベルなどの変更を引き起こす、CADシステムへのユーザ入力に基づいてもよい。
【0062】
2D図面は、2Dシート上に3Dモデルの様々な要素を間接的に表示する別個のエンティティである。しかしながら、CADシステムにおいて3Dモデルで作業する場合、このような選別はない。3Dモデルで直接作業する時、現時点で可能な2D挙動のための類似物はない。したがって、いくつかの具体的に関連付けられたビュー/状態にわたって変更が必要な場合、ユーザは、3Dモデル内のすべてのビュー/状態を個別に更新しなければならない。さらに、2D図面では、親2Dビューまたは子2Dビューの2Dビューの向きが変更されると、2Dビュー内のアノテーションは新しい向きに変換されない。典型的な挙動は、ビューの向きが変更された後に、このようなアノテーションが単に2Dビューから削除されるというものである。また、ユーザは、ビュー/状態が変更されると、すべてのアノテーションの向きが古くなり、それらの位置および向きを更新しなければならない。例示的な実施形態は、有利にこのようなビュー/状態およびそのアノテーションの更新を自動的に実行し、CAD設計エンジニアの時間を節約し、手動の労力から生じる不正確さを防ぐ。
【0063】
2D図面実装からモデルベースの定義を採用する移行を行うユーザは、なおも2D図面上で慣れている挙動や機能についての類似物を期待する。現時点で、多くの挙動および機能について、類似物はない。3Dモデリング環境は、2D図面のものとは著しく異なる体験であるため、本明細書に開示される新しいソリューションは、こうした類似物を作成するニーズを満たすのに有用である。例示的な実施形態は、2D図面および3Dモデルの両方で以前から可能なものを超える新しい能力の3Dモデリング環境の強みをさらに活用する。
【0064】
例示的な実施形態は、3Dモデリング環境内のビュー/状態をリンク付けできないという問題を解決し、それらのビュー/状態に対して整列され、適用されるアノテーションを自動的に再配置および再配向することによって、ユーザをさらに支援する。この現在のギャップを埋めることで、最も複雑なケースでも、ユーザの数分、数時間、さらには数日分の作業を節約できる。
【0065】
図1Aは、非限定的な例として以下でさらに説明する図13のメモリ1308およびプロセッサ1318など、メモリおよびプロセッサを備えるコンピュータ支援設計(CAD)システム102の例示的な実施形態のブロック図である。CADシステム102は、三次元(3D)モデル106を有する表示画面103(すなわち、画面ビュー)、3Dモデルの親ビュー104、およびその上に表示される親ビュー104から作成された子ビュー110を含む。表示画面103上で視覚化されるこうした要素は、非限定的な例として、CADシステム102上で実行するCADアプリケーションを介して表示されうる。
【0066】
本開示の図に図示されるように、3Dモデル、親ビュー、および子ビューは、非限定的な例としてあることを理解されたい。図1Aの例示的な実施形態では、親ビュー104は3Dモデル106から作成され、3Dモデル106の正面図115を提示する。子ビュー110は、親ビュー104の既存の投影(例えば、3Dモデルのユーザ視点)、すなわち、非限定的な例として3Dモデル106の上面図107から作成される。例示的な実施形態によれば、プロセッサは、CADシステム102に設けられたユーザ入力108に基づいて、3Dモデル106の親ビュー104を変更するように構成される。ユーザ入力108は、非限定的な例として以下でさらに説明する、図13のI/Oインターフェース1304など、入力/出力(I/O)インターフェースを介してCADシステム102と接続して動作しうるキーボード114および/またはマウス116などの入力デバイスを介してユーザ112によって入力されてもよい。
【0067】
ユーザ入力108は、キーボード114および/またはマウス116を介して入力されることに限定されないことを理解されたい。図1Aを続けると、親ビュー104は、3Dモデル106の子ビュー110にリンク付け105されている。親ビュー104は、例えば、非限定的な例として、メモリ内の親ビュー104と子ビュー110の参照を関連付けることによってなど、公知または一般的な方法を使用して、子ビュー110にリンク105されていてもよい。こうした参照は、非限定的な例として、メモリ内の子ビュー110の識別子(ID)またはメモリアドレスであってもよい。子ビュー110は親ビュー104から作成される。3Dモデル106は、メモリに格納される。プロセッサは、図1Bに関して下記に開示されるものなど、変更された親ビュー104に従って、子ビュー110を自動的に変更するようにさらに構成される。
【0068】
図1Bは、図1AのCADシステム102の例示的な実施形態のブロック図である。図1Bの非限定的で例示的な実施形態では、表示画面103は、親ビュー104の変更された親ビュー104’を示す。変更された親ビュー104’は、親ビュー104を変更することによって生成されたものである。表示画面103は、変更された親ビュー104に従って、子ビュー110を自動的に変更することによって生成された、変更された子ビュー110’をさらに示す。図1Bの例示的な実施形態では、親ビュー104は、一つの投影、すなわち正面図115から別の投影、すなわち、上面図107に変更されたもので、これがその後、新しい正面図となる。
【0069】
子ビュー110は、変更された親ビュー104に従って自動的に変更される。例えば、子ビュー110について以前に選択された投影は、上面図107であった。正面図115は新しい底面図となり、前の上面図107は、変更された親ビュー104’に示されるように、親ビュー104の新しい正面図となったため、子ビュー110は、変更された子ビュー110’で新しい上面図を提示するように、すなわち、3Dモデル106の前の背面図を提示するように、同じように更新される。
【0070】
親ビュー104は、3Dビューであってもよい。3Dビューは、3Dモデル106の保存されたビュー(図示せず)および3Dモデル106のプレゼンテーション状態(図示せず)を含みうる。プレゼンテーション状態は、3Dモデル106の検索可能な状態であってもよい。親ビュー104を変更するために、プロセッサはさらに、保存されたビュー、プレゼンテーション状態、またはそれらの組み合わせを変更するように構成されていてもよい。3Dモデルの保存されたビューおよびプレゼンテーション状態は、当技術分野で既知であり、非限定的な例として、例えば、ASME Y14.41およびASME Y14.47などの規格でさらに定義される。
【0071】
例示的な実施形態によれば、親ビュー104は、非限定的な例として、以下にさらに開示される図5および6A~Cに示すものなど、アノテーションの向き(例えば、非限定的な例として、水平、垂直など)を有するアノテーションを含んでもよい。アノテーションの向きは、アノテーションを3Dモデル106のモデルの幾何学的形状に付加し、3Dモデル106の親ビューの親ビューの向き(例えば、非限定的な例として、正面、背面、上面など)に整列させることを可能にする。アノテーションの向きはさらに、アノテーションを親ビューの向きの可読方向(例えば、非限定的な例として、水平、垂直など)と整列させることを可能にする。親ビュー104を変更するために、プロセッサはさらに、図5および図6A~Cに関して、以下でさらに説明するように、親ビューの向きを新しい親ビューの向きに変更するように構成されていてもよい。プロセッサはさらに、親ビュー104の親ビューの向きが変更されたことを検出するように構成されていてもよい。プロセッサはさらに、新しい親ビューの向きが、(i)アノテーションをモデルの幾何学的形状に付加されたままにすること、および(ii)例えば、ユーザ112に画面に表示された時に、アノテーションを可読方向に整列させて、アノテーションの可読性を可能にするように、アノテーションを新しい親ビューの向きと整列させること、を可能にするかを判断するように構成されていてもよい。
【0072】
プロセッサが、新しい親ビューの向きが(i)および(ii)を可能にしないと判断した場合に、プロセッサはさらに、(a)色の変化、グラフィカルアイコン、またはアノテーション対するその他の視覚的変更を介してアノテーションを視覚的に識別する、(b)アノテーションを削除する、(c)アノテーションを無視する、または(d)子ビューまたは所定のビューが、(i)および(ii)を可能にする場合に、アノテーションを、自動的かつ応答的に、子ビューまたは所定のビューに移動(例えば、転写)させる、ように構成されていてもよい。判断によって新しい親ビューの向きが(i)および(ii)を可能にすると結論づけられた場合、プロセッサはさらに、(i)を維持しながら、(ii)を可能にする回転オフセットおよび角オフセットを介して、新しい親ビューの向きの新しいビュー方向に対して、空間的にオフセットされる新しいアノテーションの向きにアノテーションの向きを変更するように構成されていてもよい。(a)、(b)、(c)、および(d)の性能、ならびに本明細書に開示されるアノテーションのその他の整列は、ユーザ112がCADシステム102と手動でインターフェース接続して、アノテーションを手動で調整することによるものではないことを理解されたい。
【0073】
プロセッサは、親ビュー104についてのズームレベルに対してクエリを実行するようにさらに構成されていてもよい。新しいアノテーションの向きによって、親ビュー104内のアノテーションの表示ができないようにアノテーションが位置付けられる場合に、プロセッサはさらに、3Dモデルから、モデルの幾何学的形状の外側およびクエリされたズームレベル内で、読取可能な様式で、アノテーションがオフセットされるように、アノテーションを再配置するように構成されていてもよい。アノテーションは、親ビュー104の起動に応答して、アノテーションを親ビュー104に表示することを可能にするように再配置されてもよい。
【0074】
親ビュー104は、3Dモデル106の第一の保存されたビューおよび3Dモデル106の第一のプレゼンテーション状態を含みうる。子ビュー110は、3Dモデル106の第二の保存されたビューおよび3Dモデル106の第二のプレゼンテーション状態を含みうる。親ビュー104を変更するために、プロセッサはさらに、第一の保存されたビュー、第一のプレゼンテーション状態、またはそれらの組み合わせを変更するように構成されていてもよい。子ビュー110を変更するために、プロセッサはさらに、変更された親ビューの、それぞれ変更された第一の保存されたビューおよび変更された第一のプレゼンテーション状態のそれぞれに応答して、そしてそれらに従って、第二の保存されたビューおよび第二のプレゼンテーション状態を変更するように構成されていてもよい。第一および第二の保存されたビューは、3Dモデル106のそれぞれの検索可能な向きを含んでもよく、第一および第二のプレゼンテーション状態は、3Dモデル106のそれぞれの検索可能な状態を含んでもよい。
【0075】
CADシステム102の3Dモデリング環境では、子ビュー110は、図2に関して以下に開示されるように、コンピュータ実装方法200によって自動的に、親ビュー104から作成されてもよい。
【0076】
図2は、非限定的な例として上記で開示された子ビュー110など、子ビューを作成するためのコンピュータ実装方法200の例示的な実施形態のフロー図である。方法は、開始(202)し、別のビューにリンク付けされたビューを作成するコマンドを受信する(204)。コマンドは、非限定的な例として、上記で開示された図1Aのキーボード114を介してユーザ112によって入力されてもよい。このようなコマンドは、非限定的な例として、マイクまたはタッチスクリーンなどの別の電子入力デバイスを介してユーザ112によって入力されてもよいことを理解されたい。方法は、上記で開示された図1Aおよび1Bの親ビュー104のように、親ビューとして機能する既存ビューの選択を受信する(206)。方法は、206で選択された親ビューから子ビューを自動的に生成しうる(208)。その後、方法は例示的な実施形態では、終了する(210)。
【0077】
図1Bに戻って参照すると、親ビュー104およびそれから作成された子ビュー110は、3Dビューまたは二次元(2D)ビュー(例えば、2D図面)であってもよい。本明細書に開示されるように、ビューは、そのそれぞれのプレゼンテーション状態と組み合わされた表示を指すビュー/状態として互換的に呼ばれてもよい。そのそれぞれのプレゼンテーション状態と組み合わされた親ビュー104、およびそのそれぞれのプレゼンテーション状態と組み合わされた子ビュー110など、各ビュー/状態は、3Dモデル106内の独自の向きおよび他の特性を有する。ビュー/状態は、非限定的な例として、図4、5、および6A~Cに関して以下にさらに開示されるように、それぞれのアノテーションを含みうる。ユーザ112が、このようなビュー/状態(例えば、非限定的な例として、フィーチャツリー内)を、それらのビュー/状態に関連したアノテーションを編成したままで、再編成することを望む場合、ある例示的な実施形態では、それを自動的な様式で可能にする。そのため、ユーザ112は、各ビュー/状態の向き、他の特性、またはアノテーションを手動で、かつ個別に変更しなくてもよい。
【0078】
図3は、親ビューの向きを変更し、親ビューにリンク付けされた子ビューに(上記の図2で説明した方法200によるなど)影響を及ぼす、コンピュータ実装方法300の例示的な実施形態のフロー図である。方法300は、開始(301)し、プロセッサは、例えば、図1Aおよび1Bに関して上記で開示されたユーザ入力108など、CADシステム102へのユーザ入力に基づき、親ビューの向きを変更するコマンドを受信する(302)。これに応答して、ステップ304では、プロセッサは、親ビューの向きを変更させ、方法300について結果として得られる親ビューの向きを提供する。次にステップ306では、プロセッサは、親ビューにリンク付けされた子ビューにクエリを実行して、子ビューが更新されるべきであるとのフィードバックを表示するかどうかを判断しうる。例えば、子ビューは、304での親ビューの向きの変更のために、親ビューに対するその相対的な向きが維持されていないことを表示する関連するプレゼンテーション状態を有してもよく、こうした表示は、非限定的な例として、フィードバックとして機能しうる。子ビューが、その更新が必要であることを表示する場合、ステップ308では、方法は子ビューをロックしてもよく、結果としてステップ310で、プロセッサは、ステップ304で変更された親(すなわち、親ビュー)の向きに従って子ビューを更新する。方法300はその後、例示的な実施形態で終了する(312)。
【0079】
例示的な実施形態によれば、親ビュー/状態は、3Dモデリング環境内のコンピュータ実装方法によって作成されてもよく、その後、方法は子ビュー/状態を作成または割り当てすることができ、その親ビュー/状態は、親ビュー/状態の一次的な向き(例えば、正面図、上面図など)とロックされた関係で直交(またはその他のアクソノメトリック図法の方向)する方向にある。親ビュー/状態の向きが変更される時、コンピュータ実装方法の例示的な実施形態は、モデルおよび前の親ビュー/状態の向きをクエリし、次に、モデルおよび現在の親ビュー/状態の向きをクエリし、次に、オフセットと同じものに基づいて判断された角度および回転の差異を、すべての子ビュー/状態に適用してもよい。このようにして、子ビュー/状態は、親ビュー/状態に対する相対的な向きおよび回転を維持する。方法の例示的な実施形態は、子ビュー/状態の初期の向きをユーザ112が直接変更することを妨げる。
【0080】
例えば、図1Bを参照すると、親ビュー/状態は、親ビュー104を介して示されるように、3Dモデル106の正面図115を表示するように向けられていてもよく、次に、1つの子ビュー/状態が、3Dモデル106の左側面図111を表示するように向けられていてもよく、別の子ビュー/状態は、非限定的な例として、図1BのCADシステム102の表示画面103上に可視化された子ビュー110を介して示されるように、3Dモデル106の上面図107を表示してもよい。親ビュー/状態が取得される時、ユーザ112には、まず、非限定的な例として図1BのCADシステム102の表示画面103で可視化された親ビュー104によって表示されているように、画面に表示された3Dモデル106の正面図115が表示されうる。
【0081】
左側面図/状態が取得される時、ユーザ112には、画面に表示された3Dモデルの左側面図111が表示されうる。ユーザ112は、親ビュー104の向きを3Dモデル106の正面図115から3Dモデル106の左側面図111に変更するように(例えば、ユーザ入力108を介して)、親ビュー104の向きを変更させうる。この場合、左側面図/状態は、3Dモデル106の背面図になるように強制されるが、上面図/状態は、3Dモデル106の上面図107のままである。しかしながら、実施形態は、親ビュー/状態の新しい向きと整列するように、上面図/状態の向きを回転させる。上述されたように、それにリンク付けされた親ビュー/状態からの同じ回転および角オフセットが常に維持されるように、子ビュー/状態の向きを空間的にオフセットすることによって、これが達成されてもよい。
【0082】
例示的な実施形態によれば、子ビュー/状態は、表示された幾何学的形状(例えば、その関連する削除/非削除、表示/非表示、要素の構成などを伴う3D形状)、面の色、材料、ビューの向き、ビューのズームレベルなど、それぞれの親ビュー/状態の特徴と一致しうる。非限定的な例として、3Dモデル106の材料が、親ビュー/状態でステンレス鋼からアルミニウムに変更される場合、子ビュー/状態でそのように変更される。これは、同じモデル内の他の親ビュー/状態、およびそれらの子ビュー/状態を排除するためでもよい。例示的な実施形態によれば、CADシステム102内の構成可能な設定は、3Dモデル特性を、個別に検索可能なビュー/状態(すべて変更されるか、または何も変更されない)に無差別に変更することを可能にするか、または個々のビュー/状態のみに変更を適用しうる(各ビュー/状態は、ビュー/状態の親子関係なしに別々に管理される)。
【0083】
保存されたビューは、3Dモデル106の検索可能なビューの向きを含みうる。保存されたビュー、プレゼンテーション状態、またはそれらの組み合わせを変更するために、プロセッサは、モデルの幾何学的形状、面の色、材料、ビューのズームレベル、検索可能なビューの向き、3Dモデル106のその他のフィーチャ、またはそれらの組み合わせを変更することによって、3Dモデル106の表示を変更するようにさらに構成されていてもよい。3Dモデル106の表示は、非限定的な例として、表示画面103上に示すように、親ビュー104の起動に応答して、画面に表示された3Dモデル106の可視化であってもよい。
【0084】
モデルの幾何学的形状の変更は、ディスプレイ(例えば、表示画面103)内に提示される3Dモデル106の少なくとも一部分を削除すること、少なくとも一部分の削除を解除すること、少なくとも一部分を表示または非表示にすること、または非限定的な例として、3Dモデル106に関連付けられた3D形状、寸法、または他の幾何学的情報などのモデルの幾何学的形状の構成を変更することを含みうる。
【0085】
プロセッサはさらに、親ビュー104を作成し、子ビュー110を作成し、作成された子ビュー110を作成された親ビュー104にリンク付けするように構成されていてもよい。例えば、リンク付けは、図2の方法200を実行するプロセッサによって達成される。作成された親ビュー104は、一次ビューの向き(例えば、非限定的な例として、上面、正面、底面など)を有してもよい。作成された子ビュー110は、作成された親ビュー104の一次ビューの向きとロックされた関係を有する、直交する方向またはその他のアクソノメトリック図法の方向にしてもよい。子ビュー110を作成するために、プロセッサはさらに、3Dモデル106の投影から子ビュー110を作成するように構成されていてもよい。
【0086】
子ビュー110は、親ビュー104に対する回転オフセットおよび角オフセットによってオフセットされてもよい。親ビュー104を変更するために、プロセッサはさらに、親ビュー104の親ビューの向きに変更を適用するように構成されていてもよい。子ビュー110を変更するために、プロセッサは、親ビュー104の向きへの変更後に、子ビュー110が親ビュー104に対する回転および角オフセットを維持するために、子ビュー110の子ビューの向きを空間的にオフセットするようにさらに構成されていてもよい。例えば、プロセッサは、図3の方法300を実行して、変更されたまたは結果として生じる親ビューの向きに従って、子ビューのこうした更新を達成する。
【0087】
例示的な実施形態によれば、アノテーションは、任意の保存されたビュー(親または子)内に含まれてもよく、このようなアノテーションは、それぞれの向きを有する。各ビュー/状態内で、モデルの幾何学的形状に付加されるアノテーションがあってもよい。アノテーションがモデルの幾何学的形状に付加される時、典型的には、その幾何学的形状に付加され、ビュー/状態の向きの方向に対して読み取り可能なように整列される。ビュー/状態の向きが変更されると、ビュー/状態の元の向きに整列されたアノテーションは、ビュー/状態の現在の(または結果として生じる)向きにもはや整列されなくなることがある。
【0088】
したがって、各アノテーションについて、例示的な実施形態は、ビュー/状態の向きがいつ変更されたかを検出し、その後、アノテーションをクエリして、ビュー/状態の中のどのアノテーションが新しい向きに再配向されるべきか(どのアノテーションがそれらのビュー/状態の新しい向きに整列されていないか)、回転されるべきか(可読方向に対して)、およびビュー/状態内で再配置されるべきかを判断することができる。例示的な実施形態は、各アノテーションが付加される幾何学的形状を解析してもよい。各アノテーションについて、例示的な実施形態は、コンピュータプロセッサによって、アノテーションがモデルの幾何学的形状に付加された状態を維持するだけでなく、新しいビュー/状態の向きおよび可読方向にも整列することを可能にする向きを自動的に見つけうる。アノテーションとビュー/状態の新しい向きとの間に共通の向きがない場合、例示的な実施形態は、そのアノテーションを無視するか、または削除しうる。アノテーションとビュー/状態の新しい向きとの間に共通の向きがある場合、例示的な実施形態は、3Dモデル106の関連する幾何学的形状にアノテーションを付加したまま、上述のように同じ角度および回転オフセットを適用して、その共通の向きにアノテーションの向きを変更しうる。
【0089】
再配置/再配向された各アノテーションについて、例示的な実施形態は、モデルおよびビュー/状態のズームレベルをクエリし、その後、その新しい向き内のアノテーションの位置をクエリしてもよい。再配置/再配向されたアノテーションの新しい位置が、3Dモデル106の内側にあるか、またはその他の方法で幾何学的形状によって遮られている場合、または、アノテーションが、3Dモデル106から遠く離れて位置していて、アノテーションが画面に表示されていない場合には、例示的な実施形態は、そのビュー/状態が起動された時にアノテーションがスクリーン上に表示されるように、モデルの幾何学的形状の外側およびビュー/状態のズームレベル内で、3Dモデル106から読取可能な様式でオフセットされたように見えるように、アノテーションを自動的に再配置しうる。
【0090】
再配向できず、かつビュー/状態の新しい向きに整列されていないアノテーションについては、それらが削除されていない場合、例示的な実施形態は、アノテーションを異なる色で表示する、またはアノテーションをグラフィカルもしくはアイコンバッジで識別するなど、何らかの人間が読取可能な様式でこれらのアノテーションを識別しうる。例示的な実施形態は、これらのアノテーションを、それらの向きがサポートされうる他のビュー/状態に自動的に移動させるオプションを有する、CADシステム102内の構成可能な設定を提供しうる。
【0091】
図4は、親ビューの向きを変更し、そのアノテーションに変更を生じさせる、コンピュータ実装方法の例示的な実施形態のフロー図400である。例示的な実施形態では、アノテーションは、非限定的な例の寸法を指示する。こうした寸法は、図5に関して以下でさらに説明するように、それぞれの寸法線および寸法値を有し、単に寸法と呼ばれてもよい。方法は開始(401)し、ステップ402で、プロセッサは親ビューの向きを変更するコマンドを受信する。ステップ404に応答して、プロセッサは、親ビューの向きを元の向きから新しい向きに変更する。こうした変更は、上記で開示された図1Aおよび1Bのユーザ入力108など、ユーザから受信したユーザ入力に基づいていてもよい。方法400は、新しい向きが元の向きと同じ平面にあるかどうかをチェックし、判断しうる(406)。「はい」の場合、プロセッサはステップ408で、図5に関連して以下にさらに開示されるように、新しい向きを元の向きに対して90°回転させる。ステップ410では、プロセッサは、図5に関連して以下にさらに開示されるように、親ビューでの寸法を回転させる。
【0092】
図4の例示的な実施形態では、子ビューは親ビューにリンク付けされ、子ビューの投影は、図5に関連して以下に開示されるように、新しく更新された子投影に更新される。412で、方法400/プロセッサは、寸法が新しく更新された子投影に表示されるかどうかをチェックしうる。「はい」の場合、例示的な実施形態では、方法はその後、終了する(414)。
【0093】
しかしながら、寸法のいずれかが表示されない場合、416で方法400/プロセッサは、アノテーション平面を使用して、このような寸法のいずれかを90度回転させるかどうかをチェックしうる。「いいえ」の場合、方法400/プロセッサは420で、こうした寸法のいずれかを別のビューに転送するかどうかをチェックしうる。しかしながら、「はい」の場合、方法400/プロセッサは、(ステップ418で)アノテーション平面を使用して寸法を90度回転させ、(ステップ420で)寸法を別のビューに移すかどうかをチェックしてもよい。
【0094】
(ステップ420で)寸法を別のビューに移すかどうかのチェックが否定的に判断された場合、方法400/プロセッサはステップ424に進み、寸法を削除するか、または新しい寸法を作成するかをチェックする。「いいえ」の場合、方法400は終了する(414)。ところが、ステップ420で寸法を別のビューに転送するかどうかをチェックすることがポジティブに判断された場合、方法400/プロセッサは、(ステップ422で)寸法を別のビューに転送し、(ステップ424で)寸法を削除し、および/または新しい寸法を作成するかをチェックしてもよい。
【0095】
(424で)寸法を削除し、および/または新しい寸法を作成するかのチェックが、「いいえ」と判断された場合、例示的な実施形態では、方法はその後、終了する(414)。しかしながら、「はい」の場合、方法400/プロセッサは、例示的な実施形態では、(426で)寸法を削除し、および/または新しい寸法を作成し、その後、方法を終了する(414)。
【0096】
あるいは、新しい向きが上述の元の向きと同じ平面にあるかどうかについて406でチェックするが、「いいえ」と判断された場合、方法400/プロセッサは、(428で)親ビューのビューを変更し、(430で)新しい向きおよび投影の寸法が表示されるかどうかをチェックする。「いいえ」の場合、方法400/プロセッサは、ステップ416に関して上記で開示されたように進行する。ステップ430で「はい」の場合、例示的な実施形態では、方法はその後、終了する(414)。その向きが同じ平面で回転されるように変更された親ビューの例示的な実施形態については、図5に関連して下記に開示されている。
【0097】
図5は、例えば、上述の図2のリンク付け方法200によって、親ビュー504および親ビュー504にリンク付けされた子ビュー510に対する変更の例示的な実施形態のブロック図である。図5の例示的な実施形態では、親ビュー504は、所定のビュー、すなわち、非限定的な例として、上面図507、正面図515、左側面図511、底面図509、および右側面図513などの3Dモデル506の複数のビューのうち、正面図515から作成される。例示的な実施形態では、親ビュー504は、正面図515に適用される2つのアノテーション、すなわち、第一のアノテーション521aおよび第二のアノテーション521bを含む。第一のアノテーション521aは、3つのそれぞれの寸法線、すなわち、l1、l2、およびl3、ならびにそれらによって表されるそれぞれの寸法値(すなわち、Dim1)を含む。第二のアノテーション521bは、3つのそれぞれの寸法線、すなわち、l4、l5、およびl6、ならびにそれらによって表されるそれぞれの寸法値(すなわち、Dim2)を含む。
【0098】
図5の非限定的な例示的な実施形態では、子ビュー510は、親ビュー521aから作成されたもので、既存の投影、すなわち、3Dモデル506の上面図507から作成されている。子ビュー510は、アノテーション、すなわち、3つのそれぞれの寸法線、すなわち、l7、l8、およびl9、ならびにそれらによって表されるそれぞれの寸法値(すなわち、Dim3)を含む第三のアノテーション521cを含む。親ビュー504は、子ビュー510にリンク付けされ、子ビュー510は、変更された親ビュー504に従って自動的に変更され、変更された子ビュー510’を生成する。
【0099】
例えば、親ビュー504は、元の向きに関連付けられた同じ平面で親ビュー504を回転531することによって、図5の非限定的な例示的な実施形態で変更される。こうした変更は、図4に関連して上記で開示されているように、(410)でとられた動作のように、親ビューの回転と共に回転された第一のアノテーション521aおよび第二のアノテーション521bを含む、変更された親ビュー504’を生成する。
【0100】
次に、子ビュー510は、上面の向きについて自動的に更新532され、更新532によって、元の向きが新しい向きになり、ここで親ビュー504の回転により、3Dモデル506の右側面図513が現在の上面図/状態になる。しかしながら、子ビュー510のこうした更新は、それぞれの値Dim3および寸法線l8のみが子ビュー510に示されるため、第三のアノテーション521cは新しい投影533では適切に可視化されなくなる。
【0101】
したがって、プロセッサは、上述の図4の(412)などにおいて、第三のアノテーション521cが新しく更新された子投影(すなわち、新しい投影533)で可視化されているかどうかのチェックを行う。図5の例では、プロセッサは、第三のアノテーション521cが適切に可視化(表示)されていないと判断し、図4のステップ416および418に関連して上記で開示されているように、アノテーション平面内で第三のアノテーション521Cを自動的に90度回転535させる。結果として生じた変更された子ビュー510’は、3つのそれぞれの寸法線、すなわち、l7、l8、およびl9、ならびに同じく表されるそれぞれの寸法値(すなわち、Dim3)を含む第三のアノテーション521cを、画面に表示するために適切に可視化することができる。
【0102】
図6A~Cは、対象3Dモデル606の親ビュー604および親ビュー604にリンク付けされた子ビュー610に対する変更の追加的な例示的な実施形態のブロック図である。図6Aの非限定的で例示的な実施形態では、親ビュー604は、所定のビュー、すなわち、非限定的な例として、上面図607、正面図615、左側面図611、底面図609、および右側面図613など、対象3Dモデル606の複数のビューのうち、正面図615から作成される。例示的な実施形態では、親ビュー604は、正面図615に適用される2つのアノテーション、すなわち、第一のアノテーション621aおよび第二のアノテーション621bを含む。第一のアノテーション621aは、3つのそれぞれの寸法線、すなわち、l1、l2、およびl3、ならびにそれらによって表されるそれぞれの寸法値(すなわち、Dim1)を含む。第二のアノテーション621bは、3つのそれぞれの寸法線、すなわち、l4、l5、およびl6、ならびにそれらによって表されるそれぞれの寸法値(すなわち、Dim2)を含む。
【0103】
図6Aの例示的な実施形態では、子ビュー610は、親ビュー604から作成されたもので、既存の投影、すなわち、3Dモデル606の上面図607から作成されている。子ビュー610は、アノテーション、すなわち、3つのそれぞれの寸法線、すなわち、l7、l8、およびl9、ならびにそれらによって表されるそれぞれの寸法値(すなわち、Dim3)を含む第三のアノテーション621cを含む。親ビュー604は、子ビュー610にリンク付けされ、子ビュー610は、変更された親ビュー604に従って自動的に変更され、上述の図2、3、および5の方法200、300、および400を使用して、変更された子ビュー610’を生成する。
【0104】
例えば、親ビュー604は、図6Aの非限定的で例示的な実施形態では、図4の(428)に関して上述されたように、親ビュー604の向きを別の投影に変更する(631)ことによって変更される。こうした変更により、親ビュー604の元の向きが、3Dモデル606の正面図615から上面図607へと変更し、したがって、上面図607は、新しい向き、すなわち、変更された親ビュー604の新たな正面図/状態である。しかしながら、向きにおけるこうした変更631は、第一のアノテーション621aおよび第二のアノテーション621bが可視化されることを妨げる。さらに、変更された親ビュー604に従って自動的に変更される子ビュー610は、第三のアノテーション621cがもはや可視化されなくなる、変更された子ビュー610’を生成する。こうしたアノテーションは、図4に関連して上記で開示されているように、そして図6Bおよび図6Cに関連して下記で開示されているように、変更された親ビュー604’および変更された子ビュー610’内で自動的に再配置されうる。
【0105】
図6Bの非限定的で例示的な実施形態では、変更された親ビュー604’および変更された子ビュー610’のアノテーションの表示は、アノテーションを自動的に再配置することによって、可視化の目的で修復される。特に、こうした再配置は、第一のアノテーション621aのアノテーション平面を回転させること、第二のアノテーション621bを変更された親ビュー604’から変更された子ビュー610’に転送すること、および第三のアノテーション621cを、変更された子ビュー610’から変更された親ビュー604’に転送することを含む。アノテーションの表示を対処するためのこうしたオプションは、図4のステップ416、418、420、および422に関して上述したものである。
【0106】
また、図6Cの非限定的で例示的な実施形態では、アノテーションの表示は、第一のアノテーション621aおよび第二のアノテーション621bを変更された子ビュー610’に転送し、第三の寸法621cを変更された親ビュー604’に転送することにより、アノテーションを自動的に再配置することによって修復されることが示されている。
【0107】
図1Aおよび1Bに戻って参照すると、別の例示的な実施形態によれば、プロセッサは、CADシステム102の3Dモデル106のビュー(親ビュー104または子ビュー110など)の元の向きが、新しい向きに変更されていることを検出するように構成されてもよい。3Dモデル106は、コンピュータまたはシステムメモリ内で定義されたモデルの幾何学的形状を有する。ビューは、ビュー内の3Dモデル106のモデルの幾何学的形状にアノテーションを付加することを可能にするように、元の向きと整列したアノテーションを含む。プロセッサは、元の向きが変更されたと検出することに応答して、関連するアノテーションが新しい向きと整列しているかどうかを判断し、図5および図6A~Cに関連して上記で開示されているように、アノテーションが、新しい向きと整列していないと判断することに基づいて、アノテーションをビュー内で自動的に再配置するようにさらに構成される。
【0108】
ビューは、3Dモデル106を参照する2D図面であってもよい。したがって、2D図面内で、2Dビューの向きが変更される場合、アノテーションは、上記の詳細な技法を使用して、3Dビュー内にあるかのように、2Dビュー内で自動的に再配向および再配置されてもよい。
【0109】
例示的な実施形態によれば、新しい向きは、可読方向と関連付けられてもよい。そしてまた、プロセッサは、新しい向きが、(i)アノテーションをモデルの幾何学的形状に付加されたままにすること、および(ii)アノテーションを可読方向と整列させて、アノテーションの可読性を可能にするように、アノテーションを新しい向きと整列させること、を可能にするという判断に基づいて、アノテーションを再配置するようにさらに構成されていてもよい。
【0110】
プロセッサが、新しい向きが(i)および(ii)を可能にしないという判断に基づいて結論付けた場合に、プロセッサは、アノテーションを識別すること、アノテーションを削除すること、アノテーションを無視すること、またはアノテーションを移動させることのうちの一つを自動的に実行するようにさらに構成されていてもよい。識別は、色の変化、グラフィカルアイコン、またはアノテーションに対する他の視覚的変更を介して、ユーザ112に対して視覚的にアノテーションを識別することを含みうる。移動は、(i)および(ii)を可能にする3Dモデルの異なるビューにアノテーションを自動的に移動(例えば、転送)させることを含みうる。移動は、CADシステム102内の設定に基づいてもよい。設定は、CADシステム102のユーザ112によって構成可能であってもよい。識別、削除、無視、および移動の各動作は、プロセッサによって自動的に実行されることを理解されたい。
【0111】
プロセッサが、新しい向きが(i)および(ii)を可能にするという判断に基づいて結論付けた場合に、プロセッサは、(i)を維持しながら、(ii)を可能にする回転オフセットおよび角オフセットを介して、3Dモデル106のビューの新しい向きに対して、空間的にオフセットされる新しいアノテーションの向きに、アノテーションの元のアノテーションの向きを変更することに基づいて、アノテーションを自動的に再配置するように構成されていてもよい。
【0112】
プロセッサは、ビューのズームレベルに対してクエリを実行するようにさらに構成されていてもよい。図5および図6A-Cに関連して上記で開示されているように、新しいアノテーションの向きによって、アノテーションをビュー内に表示できないようにアノテーションを配置させる場合に、プロセッサは、3Dモデル106からモデルの幾何学的形状の外側およびクエリされたズームレベル内で、アノテーションが読取可能な様式でオフセットされるように、アノテーションを再配置して、ビューの起動に応答してビュー内にアノテーションを表示することを可能にするようにさらに構成されていてもよい。
【0113】
アノテーションは、ビュー内の3Dモデル106のモデルの幾何学的形状に付加された複数のアノテーションのうちの所定のアノテーションであってもよい。プロセッサは、非限定的な例として、図5および6A~Cに関連して上記で開示されているように、複数のアノテーションの各アノテーションについて、判断および再配置の動作を実行するようにさらに構成されていてもよい。
【0114】
新しい向きによって、アノテーションが、3Dモデル106のモデルの幾何学的形状内に配置されるか、または他の方法で、ビュー内で、視覚的に不明瞭になる場合、プロセッサは、読取可能な様式でモデルの幾何学的形状の外側で、3Dモデル106のモデルの幾何学的形状に対してオフセットされるアノテーションを再配置するようにさらに構成されていてもよい。
【0115】
プロセッサは、ビューのズームレベルに対してクエリを実行するようにさらに構成されていてもよい。アノテーションを自動的に再配置するために、プロセッサは、3Dモデル106のモデルの幾何学的形状に対してオフセットされるアノテーションを、ビューの起動に応答してアノテーションを画面に表示するようにクエリされるズームレベルに基づいて、読取可能な様式で再配置するようにさらに構成されていてもよい。
【0116】
こうして、上記に開示したように、例示的な実施形態は、親ビュー/状態と相互作用し、子ビュー/状態に自動的に変更を伝播する能力をユーザ112に提供する。追加的に、こうした伝播が起こると、アノテーション(ビュー/状態の以前の条件に整列するために、元々ユーザ112によって設定された、独自の向きおよび可読方向を有する)は、その向き、位置および可読方向を、ビュー/状態の新しい条件に整列するために自動的に更新させる。
【0117】
図7は、コンピュータ実装方法の例示的な実施形態のフロー図700である。方法は開始し(702)、ユーザ入力、3Dモデルの子ビューにリンク付けされている親ビュー(図2の方法200によるなど)、親ビューから作成された子ビュー、CADシステムに設けられたユーザ入力に基づいて、コンピュータ支援製図(CAD)システムの三次元(3D)モデルの親ビューを変更する(704)。ステップ706で、方法700は、変更された親ビュー(図3および4の方法300、400、ならびに図5および6A~6Cに記載される技法など)に従って、子ビューを自動的に変更し、その後、例示的な実施形態では方法700は終了する(708)。コンピュータ実装方法700によって実行される各動作は、コンピュータプロセッサによって自動化された方法で実行されることを理解されたい。
【0118】
図8は、コンピュータ実装方法の別の例示的な実施形態のフロー図800である。方法は開始し(802)、コンピュータ支援製図(CAD)システムの三次元(3D)モデルのビューの元の向きが、新しい向きに変更されていることを検出する(804)。3Dモデルは、CADシステムに画定されるモデルの幾何学的形状を有し、ビューは、アノテーションがビュー内の3Dモデルのモデルの幾何学的形状に付加されることを可能にするように、元の向きと整列したアノテーションを含む。次に、方法800は、804の検出に応答して、アノテーションが新しい向きと整列しているかどうかを判断し(806)、アノテーションが新しい向きと整列していないという判断に基づいて、アノテーションをビュー内で自動的に再配置する(808)。例示的な実施形態では、本方法はその後、終了する(810)。コンピュータ実装方法800によって実行される各動作802、804、806、808、810は、コンピュータプロセッサによって自動化された方法で実行されることを理解されたい。
【0119】
図9A~Eは、親ビューおよび子ビューの例示的な実施形態のブロック図である。図9Aの例示的な実施形態では、3Dモデル906は、上記で開示された図1Aおよび1BのCADシステム102などの、3D CADシステム内のプロセッサによって実行されるCADアプリケーションで操作されうることが示されている。図示された3Dモデル906は、非限定的な例であることを理解されたい。図9Aの例示的な実施形態では、上述のユーザ112などのユーザは、3Dモデル906の正面図915を親ビュー904aのそれぞれの投影(本明細書では、「駆動」ビューとも呼ぶ)として選択した。例示的な実施形態によれば、こうしたビューの角度が変更されると、プロセッサによって、選択された新しい向きの投影に対する更新が自動的に生じることになる。
【0120】
図9Aは、子ビュー910a(本明細書では、「被駆動」ビューとも呼ぶ)をさらに含む。例示的な実施形態によれば、親ビュー904aが変更する場合、子ビュー910aの向きはそのまま維持され、これは例示的な実施形態の上面向きである。ところが、可視化された幾何学的形状は、プロセッサによって親ビュー904aの新しい向きに自動的に更新される。子ビュー910aは、プロセッサによって親ビュー904aから作成され、例示的な実施形態では、選択された投影、すなわち、3Dモデル906の上面投影、すなわち、上面図907を有する。
【0121】
図1A、1B、および9Aを参照すると、ユーザ112が正面図915のビューの角度を変更した場合に、親ビュー904aは、元の向きに対して更新された新しい向きで正面図915を可視化する。親ビュー904aは、ユーザ112によって選択された新しい向きの投影を可視化するためにプロセッサによって更新される。駆動ビューへのこのような変更により、それに応答して被駆動ビューが自動的に更新される。被駆動ビュー、すなわち子ビュー910aにおいて、可視化(表示)された3Dモデル906の幾何学的形状は、下記に開示される図9Bで表示されるように、親ビュー904aの選択された新しい向きに基づき更新される。
【0122】
図9Bの例示的な実施形態では、親ビュー904bは、図9Aに関して上記で開示されているように、プロセッサによって生成され、正面図915を可視化する。図9Aおよび9Bを参照すると、親ビュー904bおよび子ビュー910bは、それぞれの初期/元の状態でのプロセッサによって生成される親ビュー904aおよび子ビュー910aを表す。子ビュー910bは、プロセッサによって既存の投影、すなわち、被駆動ビュー(すなわち子ビュー910b)についての3Dモデル906の上面投影である上面図907から作成される。
【0123】
ユーザは、非限定的な例としての例示的な実施形態における正面図915のその平面である、投影の平面内のある角度で親ビュー904bを回転することによってなどで、親ビュー904bを編集してもよい。こうした回転は、上記で開示された図1Aの表示画面103を介して、プロセッサによって可視化されうる。下記に開示される図9Cでは、正面図915は、その投影(すなわち、正面)と同じ平面で、親ビュー904bに対して90度回転される親ビュー904cで可視化される。したがって、親ビュー904cは、親ビュー904bの更新(変更)されたバージョンであるとみなされる。
【0124】
図9Cに示すように、子ビュー910c-1は、図9Aに関して上記で開示されているように、被駆動ビューが上面投影を可視化するように構成されていたため、上面向きに更新される。しかしながら、「Dim3」アノテーションは、子ビュー910c-1の新しい投影では可視化できず(例えば、それぞれの寸法線で)、したがって、プロセッサによって90度回転されるように自動的に更新され、ユーザに子ビュー910c-2で可視化される。
【0125】
図9Dの例示的な実施形態では、正面図915は、その投影(すなわち、正面)と同じ平面で、親ビュー904bに対して45度回転させる親ビュー904dで可視化される。したがって、親ビュー904dは、親ビュー904bの更新されたバージョンであるとみなされる。
【0126】
図9Cに示すように、子ビュー910d-1は、図9Aに関して開示されているように、被駆動ビューが上面投影を可視化するように構成されていたため、上面向きに更新される。しかしながら、Dim3アノテーションは、子ビュー910d-1の新しい投影では可視化できず、したがって、プロセッサによって45度回転されるように自動的に更新され、ユーザに子ビュー910c-2で可視化される。
【0127】
したがって、図9Cおよび図9Dは、同じ向きでの図9Bの親ビュー904bの回転(90°および45°での非限定的な例)と、子ビュー910bが、新しい向きに応答して自動的に更新されることを図示する。図9Eの例示的な実施形態では、親ビュー904bの変更された参照(面)を表示するために、親の向き(ビューの向き)の変更が変更する。こうした参照は、プロセッサによって、変更された親ビュー904eで可視化されているように別の投影に変更されている。変更は、上記で開示された図1Aおよび1Bのユーザ入力108など、ユーザ入力に応答して、プロセッサにより実行される。子ビュー910eは、プロセッサによって親ビューの新しい投影に更新された子ビュー910bを示し、更新された子ビュー910eにおいて可視化されている。子ビュー910eは、親ビューについて選択された投影に従って行われた子ビュー910bに対する更新を可視化する。したがって、子ビュー910eは、3Dモデル906の新しい上面図を可視化する。
【0128】
図9Bを参照すると、子ビュー910bは親ビュー904bに対する回転オフセットおよび角オフセットによってオフセットされ、親ビュー904bを変更することは、親ビューの親ビューの向きに変更を適用することを含む。さらに、子ビュー910bを変更することは、図9C~Eに示すように、親ビューの向きへの変更後に、子ビューが親ビューに対する回転および角オフセットを維持するために、子ビュー910bの子ビューの向きを空間的にオフセットすることを含みうる。
【0129】
図10A~Gは、本明細書に開示される例示的な実施形態による子ビューの作成の非限定的なワークフローの例を示すブロック図である。図1A~Bおよび図10A~Gを参照すると、こうしたワークフローの例は、CADシステム102で実行され、プロセッサによって表示画面103上に表示されうる図10Aのモデルビューダイアログ1088を介して、ユーザ112がユーザ入力108を提供することで開始される。プロセッサは、こうしたユーザ入力に基づいて、3Dモデル1006の第一の(初期)ビューを作成する。
【0130】
例えば、図10Bの例示的な実施形態では、ユーザ112は、モデルビューダイアログ1088のビュー選択フィールド1089に示されているように、3Dモデル1006の参照(面)、すなわち、例示的な実施形態の正面図1015を選択する。図10Cの例示的な実施形態では、正面図1015が(ユーザ入力108に応答して)プロセッサによって作成されたビュー内で可視化され、こうした作成されたビューは、下記に開示されるように図10Dに続くワークフローの例での親ビュー1004として採用される。
【0131】
図10Dの例示的な実施形態では、投影ビューダイアログ1090がプロセッサによって可視化され、ユーザ112がユーザ入力108を入力して、プロセッサに、子ビューとして使用するための3Dモデル1006の投影ビューの作成を開始させる。こうした作成は、図10Eに示すように親ビュー1004との関係を確立するために、以前に作成された親ビュー1004の選択1091を介してさらに可能である。親ビュー1004は、3Dモデル1006を表すツリー、およびそのビューから選択されてもよく、または投影ビューダイアログ1090などの表示画面103上の視覚的メカニズムから選択されてもよい。
【0132】
図10Fの例示的な実施形態では、投影オプションはが投影ビューダイアログ1090でアイコン(一般的に、印)によって視覚化されている複数の投影オプション1093(例えば、右側面、左側面、上面、底面、および背面などの直交ビューオプション)の中からユーザ112によって選択され、プロセッサは、親ビュー1004の選択した投影オプション1092のプレビュー1094を表示する。プロセッサは、選択した投影オプション1092に基づき、図10Gに表示された子ビュー1010を作成する。例示的な実施形態によれば、ユーザ112がユーザ入力108を入力して、プロセッサが親ビュー1004に変更を加える場合、子ビュー1010は、こうした親ビューとの間で作成された関係を維持する。例示的な実施形態によれば、ユーザ112はまた、図11A~Gに関して下記に開示されているように、子ビュー1010の投影を変更させることもできる。
【0133】
図11A~Gは、本明細書に開示される例示的な実施形態による親ビューおよびその子ビューを編集する非限定的なワークフローの例を示すブロック図である。こうしたワークフローは、図1A、1B、および11A-Gを参照しながら説明される。図11Aの例示的な実施形態では、親ビュー1104は、編集のために、モデルビューダイアログ1188を介してユーザ112によって選択される。モデルビューダイアログ1188は、プロセッサによって、例えば、表示画面103上に可視化される。図11Bの例示的な実施形態では、ユーザ112は、モデルビューダイアログ1188を使用して、3Dモデル1106の前の参照(面)を正面図1115から上面図1107に変更するため、親ビュー1104を編集する。編集された親ビュー1104は、プロセッサによって、変更された親ビュー1104’として可視化される。
【0134】
図11Eの例示的な実施形態では、ユーザ112は、投影ビューダイアログ1190と対話して、図11Fの投影ビューダイアログ1190で選択されているように、選択した投影オプション1192を新しい投影オプション1192’に変更させることにより、プロセッサに子ビュー1110を編集させる。図11Fの例示的な実施形態では、子ビュー1110に対する新しい投影オプション1192’のプレビュー1194が示されている。図11Gの例示的な実施形態では、子ビュー1110は、選択された新しい投影オプション1192’に基づいて変更された子ビュー1110’として表示される。
【0135】
図12は、10A~Gおよび11A~Gに関して上記で開示されたように、変更された親ビューおよび子ビューの例示的な実施形態のブロック図である。図12の親ビューおよび子ビューは、ユーザが図面の面(例えば、xDocumentで利用可能)に切り替えたことに基づいて示されている。図12の例示的な実施形態では、上記で開示されたワークフローによって当初作成されたように、図10Cおよび図10Gの親ビュー1004および子ビュー1010はそれぞれ、図12Aでは、親ビュー1204aおよび子ビュー1210aとしてそれぞれ図示されている。
【0136】
親ビュー1204bおよび子ビュー1210bは、ユーザ112が親ビュー1204aの参照(面)、すなわち、図11Aの親ビュー1004を変更した後、図11Dおよび図11Eの親ビュー1104’および子ビュー1110をそれぞれ可視化する。親ビュー1204cおよび子ビュー1210cは、図11Gに示すように3Dモデル1106の(新しい)底面を表すように、プロセッサによって、子ビュー1210b投影を変更する編集がなされた後で、ユーザ112に可視化されたものとして、親ビュー1204bおよび子ビュー1210bをそれぞれ図示する。
図13は、本開示の様々な実施形態が実装することができるコンピュータ1300の内部構造の例のブロック図である。コンピュータ1300は、システムバス1302を含み、ここで、バスはコンピュータまたはデジタル処理システムの構成要素間のデータ転送に使用される一連のハードウェアラインである。システムバス1302は本質的に、要素間の情報転送を可能なコンピュータシステム(例えば、プロセッサ、ディスク記憶装置、メモリ、入出力ポート、ネットワークポートなど)の異なる要素を接続する、共有導管である。システムバス1302に連結されるのは、様々な入出力デバイス(例えば、キーボード、マウス、ディスプレイモニター、プリンター、スピーカー、マイクロフォンなど)をコンピュータ1300に接続するためのI/Oデバイスインターフェース1304である。ネットワークインターフェース1306は、コンピュータ1300がネットワーク(例えば、グローバルコンピュータネットワーク、ワイドエリアネットワーク、ローカルエリアネットワークなど)に取付けられた様々な他のデバイスに接続することを可能にする。メモリ1308は、本開示の実施形態(例えば、方法200、300、400、700、800)を実施するために使用されうるコンピュータソフトウェア命令1310およびデータ1312のための揮発性または不揮発性ストレージを提供し、ここで、揮発性および不揮発性メモリは、非一時的媒体の一例である。ディスク記憶装置1314は、本開示の実施形態(例えば、方法200、300、400、700、800)を実施するために使用されうるコンピュータソフトウェア命令1310およびデータ1312のための不揮発性ストレージを提供する。中央処理装置1318もまた、システムバス1302に連結され、コンピュータ命令の実行を提供する。
【0137】
本明細書に開示されるさらなる例示的な実施形態は、コンピュータプログラム製品を使用して構成されてもよく、例えば、制御は、例示的な実施形態を実施するためにソフトウェアでプログラムされてもよい。さらなる例示的な実施形態は、プロセッサによって実行される命令を含む非一時的コンピュータ可読媒体を含んでよく、ロードされ実行されると、プロセッサに本明細書に記載の方法および技法を完了させる。ブロック図およびフロー図の要素は、上記で開示された図13の回路の1つまたは複数の構成を介するなどのソフトウェアまたはハードウェア、またはその同等物、ファームウェア、それらの組み合わせ、または将来決定される他の同様の実施、において実施されてよいことを理解されたい。
【0138】
さらに、本明細書に記載のブロック図およびフロー図の要素は、ソフトウェア、ハードウェア、またはファームウェアにおいて任意の方法で組み合わせられてもよく、または分割されてもよい。ソフトウェアで実装される場合、ソフトウェアは、本明細書に開示される例示的な実施形態に対応できる任意の言語で記述されてもよい。ソフトウェアは、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、コンパクトディスク読み出し専用メモリ(CD-ROM)など、任意の形式のコンピュータ可読媒体に格納されうる。動作において、汎用またはアプリケーション固有のプロセッサまたは処理コアは、当技術分野でよく理解されている方法でソフトウェアをロードおよび実行する。ブロック図およびフロー図は、より多くのまたはより少ない要素を含み、異なって配置または方向付けされ、または異なって表されることをさらに理解されたい。実施は、ブロック図、フロー図、および/またはネットワーク図、ならびに本明細書に開示される実施形態の実行を示すブロック図およびフロー図の数を指示することを理解されたい。
【0139】
例示的な実施形態が特に示され、説明されているが、当業者には、添付の特許請求の範囲に含まれる実施形態の範囲から逸脱することなく、形態および詳細の様々な変更を行うことができることが理解される。
【符号の説明】
【0140】
102 CADシステム
112 ユーザ
114 キーボード
116 マウス
図1A
図1B
図2
図3
図4
図5
図6
図7
図8
図9
図10-1】
図10-2】
図11-1】
図11-2】
図12
図13