(57)【要約】  ３次元ＣＡＤモデルに対し、該３次元ＣＡＤモデルの変形後の一形態である変化状態と該変化状態に移行するために満たす条件との対応である変化論理を変化状態毎に記述する表形式データを作成する表作成部と、作成された表形式データに設定されている夫々の変化論理を所定のプログラム言語による記述に変換してモデル内蔵プログラムを作成するデータ変換部と、前記変換されたモデル内蔵プログラムを前記３次元ＣＡＤモデルに登録するモデル内蔵プログラムＩＯ部と、前記３次元ＣＡＤモデルを変形する操作を受け付けたとき、該操作と前記３次元ＣＡＤモデルに登録されているモデル内蔵プログラムに記述されている変化論理とに基づいて前記３次元ＣＡＤモデルを変形させる３次元ＣＡＤソフトウェア部と、を備える。
2010016148.tif 000002
【特許請求の範囲】
【請求項１】
３次元ＣＡＤモデルに対し、該３次元ＣＡＤモデルの変形後の一形態である変化状態と該変化状態に移行するために満たす条件との対応である変化論理を変化状態毎に記述する表形式データを作成する表作成部と、
前記作成された表形式データに設定されている夫々の変化論理を所定のプログラム言語による記述に変換してモデル内蔵プログラムを作成するデータ変換部と、
前記変換されたモデル内蔵プログラムを前記３次元ＣＡＤモデルに登録するモデル内蔵プログラムＩＯ部と、
前記３次元ＣＡＤモデルを変形する操作を受け付けたとき、該操作と前記３次元ＣＡＤモデルに登録されているモデル内蔵プログラムに記述されている変化論理とに基づいて前記３次元ＣＡＤモデルを変形させる３次元ＣＡＤソフトウェア部と、
を備えることを特徴とする３次元ＣＡＤモデル作成装置。
【請求項２】
前記データ変換部は、前記表形式データから前記モデル内蔵プログラムを作成するとき、前記表形式データの列の数および行の数を含む表の書式の情報である表データ情報を作成し、該表データ情報を前記プログラム言語のコメント書式を用いて前記モデル内蔵プログラムに記入する、
ことを特徴とする請求項１に記載の３次元ＣＡＤモデル作成装置。
【請求項３】
前記モデル内蔵プログラムＩＯ部は、３次元ＣＡＤモデルから該３次元ＣＡＤモデルに登録されているモデル内蔵プログラムを抽出し、
前記データ変換部は、前記抽出されたモデル内蔵プログラムに記入されている表データ情報に基づいて表の列の数および行の数を含む表の書式を決定するとともに、該書式が決定された表に前記所定のプログラム言語で記述されている夫々の変化論理を変換して記入して表形式データを作成する、
ことを特徴とする請求項２に記載の３次元ＣＡＤモデル作成装置。
【請求項４】
前記モデル内蔵プログラムＩＯ部は、前記登録されているモデル内蔵プログラムを抽出するとき、予め保持する表データ情報に関する設定に基づいて前記モデル内蔵プログラムに含まれる表データ情報を変更し、
前記データ変換部は、前記変更された表データ情報に基づいて、作成する表形式データの表の書式を決定する、
ことを特徴とする請求項３に記載の３次元ＣＡＤモデル作成装置。
【請求項５】
前記表形式データを表示する表示部をさらに備えることを特徴とする請求項１〜４のうちの何れか一つに記載の３次元ＣＡＤモデル作成装置。
【請求項６】
３次元ＣＡＤモデルに対し、変形後の一形態である変化状態と該変化状態に移行するために満たす条件との対応である変化論理を変化状態毎に記述する表形式データを作成する表作成手順と、
前記作成された表形式データに設定されている夫々の変化論理を所定のプログラム言語による記述に変換してモデル内蔵プログラムを作成するデータ変換手順と、
前記変換されたモデル内蔵プログラムを前記３次元ＣＡＤモデルに登録するモデル内蔵プログラムＩＯ手順と、
前記３次元ＣＡＤモデルを変形する操作を受け付けたとき、該操作と前記３次元ＣＡＤモデルに登録されているモデル内蔵プログラムに記述されている変化論理とに基づいて前記３次元ＣＡＤモデルを変形させる３次元ＣＡＤソフトウェア手順と、
を実現することを特徴とする３次元ＣＡＤモデル作成プログラム。
【請求項７】
３次元ＣＡＤモデルに対し、変形後の一形態である変化状態と該変化状態に移行するために満たす条件との対応である変化論理を変化状態毎に記述する、汎用の表計算ソフトウェアを用いて作成された表形式データを、該表形式データに設定されている夫々の変化論理を所定のプログラム言語による記述に変換してモデル内蔵プログラムを作成するデータ変換手順と、
前記変換されたモデル内蔵プログラムを前記３次元ＣＡＤモデルに登録するモデル内蔵プログラムＩＯ手順と、
前記３次元ＣＡＤモデルを変形する操作を受け付けたとき、該操作と前記３次元ＣＡＤモデルに登録されているモデル内蔵プログラムに記述されている変化論理とに基づいて前記３次元ＣＡＤモデルを変形させる３次元ＣＡＤソフトウェア手順と、
を実現することを特徴とする３次元ＣＡＤ作成プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パラメトリック変形機能と変化論理の設定を行う機能とを有する３次元ＣＡＤモデル作成装置およびプログラムに関するものである。
【背景技術】
【０００２】
一般的に、３次元ＣＡＤモデルを作成する近年の３次元ＣＡＤソフトウェアには、３次元ＣＡＤモデルを構成する形状要素の寸法パラメータ（以降、単にパラメータ）の値を変更すると、該当する形状要素の寸法を所望のように変形させることができるパラメトリック変形機能が実装されている。また、パラメトリック変形機能によれば、複数のパラメータに同一の変数を用いた同一または異なる数式を設定することにより、パラメータ間に依存関係を持たせることもできる。また、形状要素間の位置関係もパラメータとして使用することが可能である。【０００３】
さらに、近年の３次元ＣＡＤソフトウェアには、３次元ＣＡＤモデルにプログラムを持たせ、このプログラム（以下、モデル内蔵プログラムという）を設定することによって、複雑な分岐条件を設け、変形後の一形態である変化状態と該変化状態に移行するために満たすべき条件との対応である変化論理を設定する機能（以下、この機能をプログラム変形機能という）がある。この機能により、パラメータ間の依存関係を設定した数式や形状要素の有無などを例えば所望のパラメータに基づく条件分岐により変更することができる。【０００４】
パラメトリック変形機能を備えた３次元ＣＡＤに関連する技術として、パラメータ値の入力部を表形式にすることによりユーザ操作における視認性の改善を図る技術がある（例えば特許文献１、特許文献２参照）。また、表計算ソフトと３次元ＣＡＤソフトウェアとを連携させることによってパラメータの入力手段として表計算ソフトを使用できるようにする技術がある（例えば特許文献３参照）。【０００５】
【特許文献１】特開２００１−３３８００１号公報
【特許文献２】特開２００５−２９３０１４号公報
【特許文献３】特開２００５−７８２０７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００６】
上記するモデル内蔵プログラムは、ＢＡＳＩＣなどに代表されるようなプログラム言語でＩＦ文などを用いてテキストエディタで作成され、３次元ＣＡＤモデルに組み込まれる。しかしながら、３次元ＣＡＤソフトウェアを使用する建築設計者や機械設計者など多岐にわたる分野のユーザの全てが上記のようなプログラミングに精通しているとは限らない。このため、モデル内蔵プログラムの記述にミスが生じやすく、そのデバッグ環境も不十分であるため、実際の使用時にＣＡＤに入力されたパラメータの値に対して形状変形の誤作動を起こすことがあるという問題があった。【０００７】
また、モデル内蔵プログラムを作成したユーザ以外のユーザが３次元ＣＡＤモデルの保守や流用を行う場合に、そのモデルに定義されている変化論理を理解するには、モデル内蔵プログラムの記述を読み解いていかねばならず、効率が極端に悪いという問題があった。さらに、モデル内蔵プログラムの内容を説明するために仕様書を用意しても、該仕様書は人手による作成であるため、３次元ＣＡＤモデルと該仕様書との間に一意の対応関係を確保するのに労力を要するという問題があった。【０００８】
上記する特許文献１〜３の技術は、単にパラメータの入力を支援する技術であって、変化論理の設定を支援するための技術ではなかった。【０００９】
本発明は、上記に鑑みてなされたものであって、簡単に変化論理を設定できる３次元ＣＡＤモデル作成装置およびプログラムを得ることを目的とする。
【課題を解決するための手段】
【００１０】
上述した課題を解決し、目的を達成するために、本発明は、３次元ＣＡＤモデルに対し、該３次元ＣＡＤモデルの変形後の一形態である変化状態と該変化状態に移行するために満たす条件との対応である変化論理を変化状態毎に記述する表形式データを作成する表作成部と、前記作成された表形式データに設定されている夫々の変化論理を所定のプログラム言語による記述に変換してモデル内蔵プログラムを作成するデータ変換部と、前記変換されたモデル内蔵プログラムを前記３次元ＣＡＤモデルに登録するモデル内蔵プログラムＩＯ部と、前記３次元ＣＡＤモデルを変形する操作を受け付けたとき、該操作と前記３次元ＣＡＤモデルに登録されているモデル内蔵プログラムに記述されている変化論理とに基づいて前記３次元ＣＡＤモデルを変形させる３次元ＣＡＤソフトウェア部と、を備えることを特徴とすることを特徴とする。
【発明の効果】
【００１１】
この発明によれば、簡単に変化論理を設定できるという効果を奏する。
【図面の簡単な説明】
【００１２】
【図１】図１は、実施の形態１にかかる３次元ＣＡＤモデル作成装置の構成を示す図である。
【図２】図２は、パラメトリック変形の変化論理設定に関する表形式データの表示例である。
【図３】図３は、モデル内蔵プログラムデータのパラメトリック変形の変化論理設定部分の例である。
【図４】図４は、数式記述を含むパラメトリック変形の変化論理設定に関する表形式データの表示例およびモデル内蔵プログラムデータの例である。
【図５】図５は、記憶部における表形式データの記憶例である。
【図６】図６は、データ変換部がモデル内蔵プログラムデータを作成する動作を説明するフローチャートである。
【図７】図７は、データ変換部がモデル内蔵プログラムデータを作成する動作を説明するフローチャートである。
【図８】図８は、形状要素のリストを示す図である。
【図９】図９は、形状要素の有無についての変化論理の設定が記入された表形式データの表示例である。
【図１０】図１０は、形状要素の有無についての変化論理の設定が記入された表形式データの別の表示例である。
【図１１】図１１は、従来の３次元ＣＡＤソフトウェアの機能を説明する図である。
【符号の説明】
【００１３】
１  ３次元ＣＡＤモデル作成装置
２  記憶部
３  制御部
４  入力部
５  表示部
２１  ３次元ＣＡＤモデルデータ
２２  モデル内蔵プログラムデータ
２３  表形式データ
２４  モデル変化論理
３１  ３次元ＣＡＤソフトウェア部
３２  データ変換部
３３  表作成部
３４  モデル内蔵プログラムＩＯ部
１０１  表名記載行
１０２、１０３  終了インデックス
１０４  分岐結果列インデックス
１０５  説明行
１０６  変数名行
１０７  論理行
１０８  値設定行
２０１  表開始コメント行
２０２  表属性コメント行
２０３  論理記述行
２０４  条件分岐論理
２０５  条件分岐論理
２０６  表終了コメント行
３０１  形状要素リスト
３０２  追加行
４０１  値設定行
４０７  論理行
【発明を実施するための最良の形態】
【００１４】
理解を助けるために、まずパラメトリック変形機能およびプログラム変形機能について説明する。図１１は、従来の３次元ＣＡＤソフトウェアが備えるパラメトリック変形機能およびプログラム変形機能を使用する場合の例を説明する概念図である。【００１５】
図１１（ａ）は、従来の３次元ＣＡＤソフトウェアにより作成された３次元ＣＡＤモデルの構成の一例と、該モデルに対応するモデル内蔵プログラムの一例を示している。図１１（ａ）中、３次元ＣＡＤモデルの形状１は３次元ＣＡＤソフトウェアの操作者（ユーザ）が形状要素１、形状要素２、形状要素３、形状要素４、および形状要素５の５つの形状要素を順番に作成して３次元ＣＡＤデータに付与していくことにより出来上がる。【００１６】
本例において、形状要素１は６面体であって、幅、奥行き、高さという３つのパラメータを有する。例えば幅を示すパラメータにＡというパラメータ名が付与されている場合、パラメータＡを１００から２００に変更すると形状要素１の幅を１００から２００に変えるように変形させることができる。これにより、形状要素１の幅をパラメトリック変形させることができる。また、幅を示すパラメータ以外に、例えば奥行きを示すパラメータにＡを用いた数式を付与することにより、Ａを変更することにより幅と奥行とを連動させて変形させることができる。すなわち、幅と奥行きとの間に依存関係を持たせることができる。また、形状要素間の位置関係を変数にすることも可能であり、これによっても形状を変形させることができる。【００１７】
本例におけるモデル内蔵プログラムにおいて、１行目から９行目までの記述により、パラメータ間の依存関係の数式の分岐条件である、パラメトリック変形に関する変化論理が設定されている。すなわち、文字列を格納するパラメータ「ＳＩＺＥ」が使用され、「ＳＩＺＥ」に夫々「大きい」、「普通」、「小さい」が格納されると、条件分岐により、Ａの値が夫々３００、２００、１００となるように設定されている。１１行目から１７行目までの記述により、形状要素の有無に関する変化論理が設定されている。すなわち、形状要素１〜３は常時「有り」とし、形状要素４および５はＡの値が１５０を越える場合のみ「有り」とするように設定されている。【００１８】
図１１（ｂ）は、図１１（ａ）に示すモデル内蔵プログラムの設定により形状１がどのように変形されるかを説明する図である。図１１（ｂ）において、パラメータ「ＳＩＺＥ」の値を「普通」から「小さい」に変更すると、図１１（ａ）に示したモデル内蔵プログラムの動作によってパラメータＡの値が２００から１００に変更するとともに、パラメータＡの値の大きさによって条件分岐して形状要素４および形状要素５は当モデル内で無効となるため、形状１は形状１−１に変化する。同様に、パラメータ「ＳＩＺＥ」の値を「普通」から「大きい」に変更すると形状要素４および５はモデル内で有効のままパラメータＡの値のみが変化し、形状１は形状１−２に変化する。このように、プログラム変形機能により、パラメータ間の依存関係の変化および形状要素の有無を設定することができる。【００１９】
以上のようにパラメトリック変形機能およびプログラム変形機能を備えている従来の３次元ＣＡＤソフトウェアにおいて、ユーザがこれらの機能を使用する場合、例えばテキストエディタなどを用いて上述のモデル内蔵プログラムを直接作成するなど、著しく不便な方法を用いられていた。本発明の実施の形態は、表形式で入力された条件分岐や分岐結果からモデル内蔵プログラムを作成できるようにすることによって、プログラム言語に詳しくないユーザでも簡単にモデル内蔵プログラムを作成できるようにしたことが主たる特徴となっている。以下に、本発明にかかる３次元ＣＡＤモデル作成装置の実施の形態を図面に基づいて詳細に説明する。なお、この実施の形態によりこの発明が限定されるものではない。【００２０】
実施の形態１．
本実施の形態１による３次元ＣＡＤモデル作成装置においては、既に述べたパラメトリック変形機能およびプログラム変形機能を有する一般的に入手可能な３次元ＣＡＤソフトウェアを使用する。【００２１】
図１は、本発明にかかる３次元ＣＡＤモデル作成装置の実施の形態１の構成を示す図である。図１において、３次元ＣＡＤモデル作成装置１は、ＲＯＭ、ＲＡＭ、およびハードディスク装置などにより構成され、各種データを記憶する記憶部２と、ＣＰＵなどの演算装置に前記する３次元ＣＡＤソフトウェアを含むプログラムを実行させることにより本発明の実施の形態１にかかる動作や３次元ＣＡＤモデル作成装置１全体の制御動作などの動作を実行する制御部３と、ユーザの３次元ＣＡＤモデル作成装置１を操作する入力を受け付ける、キーボードやポインティングデバイスなどにより構成される入力部４と、ユーザに対して各種動作結果などを表示出力するＣＲＴや液晶ディスプレイなどにより構成される表示部５と、を備える。【００２２】
制御部３は、３次元ＣＡＤソフトウェア部３１、データ変換部３２、および表作成部３３をさらに備える。３次元ＣＡＤソフトウェア部３１は、前記する市販の３次元ＣＡＤソフトウェアが実行されることによって実現される。データ変換部３２および表作成部３３は、この市販の３次元ＣＡＤソフトウェアのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）などを利用して作成されたプログラムを３次元ＣＡＤソフトウェア部３１から呼び出すことによって実現されるものであってもよいし、市販の３次元ＣＡＤソフトウェアとは関連のない独自に作成されたプログラムによって実現されるものであってもよい。【００２３】
３次元ＣＡＤソフトウェア部３１は、ユーザによる入力に基づいて３次元ＣＡＤモデルを作成する。３次元ＣＡＤソフトウェア部３１により作成された３次元ＣＡＤモデルは、３次元ＣＡＤモデルデータ２１として記憶部２に記憶される。３次元ＣＡＤモデルデータ２１は、内部に自モデルに関する変化論理の設定であるモデル変化論理２４が組み込まれている。モデル変化論理２４は、後述するように表形式データ２３から変換されて作成されたモデル内蔵プログラムデータ２２が３次元ＣＡＤモデルデータ２１に登録されることによって組み込まれる。【００２４】
さらに、３次元ＣＡＤソフトウェア部３１は、３次元ＣＡＤソフトウェアが備えるパラメトリック変形機能およびプログラム変形機能により、ユーザによって所定のパラメータを変更する操作が入力されたとき、該入力とモデル変化論理２４とに基づいて３次元ＣＡＤモデルを変形させる。【００２５】
３次元ＣＡＤソフトウェア部３１は、記憶部２に記憶されているプログラム言語で変化論理が記述されているモデル内蔵プログラムデータ２２を３次元ＣＡＤモデルデータ２１に登録する動作と、３次元ＣＡＤモデルデータ２１に既に組み込まれたモデル変化論理２４からモデル内蔵プログラムデータ２２を記憶部２に抽出する動作と、を行うモデル内蔵プログラムＩＯ部３４をさらに有する。通常、市販の３次元ＣＡＤソフトウェアは、このようにモデル内蔵プログラムＩＯ部３４の機能を有している場合が多いが、モデル内蔵プログラムＩＯ部３４を有していない場合は該モデル内蔵プログラムＩＯ部３４を別途作成するようにすればよい。【００２６】
表作成部３３は、変形後の一形態である変化状態と該変化状態に移行するために満たすべき条件との対応である変化論理を変化状態毎に設定するするための表形式の入力画面を表示部５に表示させるとともに、該表示に基づいてユーザが入力部４を使用することにより入力される変化論理を表形式データ２３として記憶部２に記憶させる。また、作成済みの表形式データ２３を表示部５に表示させ、該表示に基づいてユーザが表形式データ２３を編集する入力を行うと、編集による変更を表形式データ２３に反映させる。【００２７】
データ変換部３２は、表形式データ２３を変換して所定のプログラム言語で記述されるモデル内蔵プログラムデータ２２を作成する動作と、モデル内蔵プログラムデータ２２を変換して表形式データ２３を作成する動作と、を行う。所定のプログラム言語とは、とくに限定されるものではなく、例えばＢＡＳＩＣなど、汎用のプログラム言語であってもよいし、独自に作成された言語であってもよい。作成された表形式データ２３は、記憶部２に記憶される。同様に、表形式データ２３から変換されて作成されたモデル内蔵プログラムデータ２２も、記憶部２に記憶される。【００２８】
記憶部２は、以上説明したように、モデル変化論理２４を有する３次元ＣＡＤモデルデータ２１と、モデル内蔵プログラムデータ２２と、表形式データ２３と、を記憶する。【００２９】
以上のように構成される本実施の形態１の３次元ＣＡＤモデル作成装置１において、表形式データ２３および該表形式データ２３に対応するモデル内蔵プログラムデータ２２の具体例と、データ変換部３２が表形式データ２３とモデル内蔵プログラムデータ２２とを相互に変換する動作とを説明する。ここで、図１１に示した例と同様に、モデル内蔵プログラムデータ２２はパラメトリック変形に関する変化論理を設定する部分と形状要素の有無に関する変化論理を設定する部分とを含んでいるとし、パラメトリック変形に関する変化論理設定部分と形状要素の有無に関する変化論理設定部分とに分けて具体例および動作を説明する。【００３０】
図２はパラメトリック変形の変化論理を設定する表形式データ２３の表示部５への表示例を示す図である。図２において、表形式データ２３の表の上部にその記述が表の名前を示す表名記載行１０１が設けられており、表の１列目セルの上部には「表名」等のわかりやすい固定的インデックス名が記述されており、その右横に「部品外形」という、本例の表形式データ２３の名前が記述されている。表形式データ２３の列および行の終了には、終了インデックス１０２および１０３が記述されている。本例では終了インデックス１０２および１０３として「ＥＮＤ」を用いたが、所定の記述に固定されていれば別の記述であってもよい。【００３１】
表形式データ２３の第１行目には、どの列から右側が条件分岐の結果を示す列であるかを示す分岐結果列インデックス１０４が記述されている。第２行目には、各列に割り付けられている変数名に関する説明を自由に記述できる説明行１０５が設けられている。この行において、左から１行目のセルは、「説明」等の固定的インデックス名が記述されている。【００３２】
表形式データ２３の第３行目には、各列に割り付けられたパラメータの名前を記載する変数名行１０６が設けられている。この行において、左から１行目のセルは「変数名」等の固定的インデックス名が記述されている。第４行目には、変数名行１０６に記述された各列のパラメータ名と、後述する値設定行１０８の各列の値とを関係付ける論理を記述する論理行１０７が設けられている。論理行１０７においては、分岐条件の列では＞や＜など多種類の比較演算子が必要に応じて選択され、各列に記述される。本例では分岐結果の列ですべて代入を表す「＝」が記載されているが、分岐結果の場合は論理のセルの記載が省略されていたら「＝」とするなどの変換ルールを設定し、記述を簡略化していくことも可能である。【００３３】
表形式データ２３の第５行目以下には、変数名行１０６に記述された各列のパラメータ名と、論理行１０７に記述された各列の論理と、により構成される論理式に値を設定する値設定行１０８が設けられている。該行１０８において、変形後の一形態である変化状態と該変化状態に移行するために満たすべき条件との対応である変化論理が記述される。本例において、例えば、第５行目の値設定行１０８に記述されている変化論理は、「ＳＩＺＥ」が「大きい」かつ「ＯＰＴＩＯＮ」が「なし」かつ「ＦＯＲＣＥ＞＝０」かつ「ＦＯＲＣＥ＜１００」である条件を満たす時は、「ＷＩＤＴＨ」の値は１０００で「ＤＥＰＴＨ」の値は３００で「ＨＥＩＧＨＴ」の値は２０という変化状態であるというように解釈される。【００３４】
図３は、モデル内蔵プログラムデータ２２の上記図２に示す表形式データ２３に対応する部分を説明する図である。ここでは、モデル内蔵プログラムデータ２２はＢＡＳＩＣに類似した言語で記述されるとする。ただし、等しいことを表す比較演算子と代入演算子の識別が明確になるように前者を「＝＝」、後者を「＝」と記述している。【００３５】
図３において、表名記載行１０１の記載内容を変換して記述した表開始コメント行２０１と、表形式データ２３の表の大きさや、分岐結果列インデックス１０４の列位置、説明行１０５、変数名行１０６及び論理行１０７の記載内容を変換して記述した表属性コメント行２０２と、値設定行１０８の記載内容を変換して記述した論理記述行２０３と、が設けられている。【００３６】
論理記述行２０３は、値設定行１０８の各行の記述と夫々対応する複数の条件分岐論理により構成されている。ここでは、欄の５行目の値設定行１０８および１２行目の値設定行１０８に夫々対応する条件分岐論理２０４および条件分岐論理２０５を示し、それ以外の値設定行１０８に関する記述は省略している。【００３７】
論理記述行２０３の後、表の終了を表す表終了コメント行２０６が記述されている。３次元ＣＡＤモデルデータ２１が複数の形状要素を有し、表作成部３３により複数の表形式データ２３が作成されている場合、モデル内蔵プログラムデータ２２内では表開始コメント行２０１から表終了コメント行２０６までが１つの表形式データ２３に対応し、各表開始コメント行２０１に記述される表の名前などをインデックスとして夫々の表形式データ２３に対応づくように記述される。もちろんインデックスとしては表番号等を別途設定してデータを持たせる等により表名以外をインデックスとして使用することが可能である。【００３８】
市販の３次元ＣＡＤソフトウェアは本発明の実施の形態１の適用を前提として作成されているわけではないので、このソフトウェアにより実現される３次元ＣＡＤソフトウェア部３１が備えるモデル内蔵プログラムＩＯ部３４が抽出するモデル内蔵プログラムデータ２２と表形式データ２３とを相互に対応づけるための専用の記述書式を有していない。このため、本実施の形態１においては、データ変換部３２は、表開始コメント行２０１のように、モデル内蔵プログラムデータ２２を作成するとき、プログラム言語におけるコメント記述書式を用いて、モデル内蔵プログラムデータ２２と表形式データ２３とを対応づけるために、表開始コメント行２０１、表属性コメント行２０２および表終了コメント行２０６（以降、この３つの行を表データ情報という）をモデル内蔵プログラムデータ２２に持たせるようにしている。このようにすることによって、データ変換部３２は、モデル内蔵プログラムデータ２２から表形式データ２３を作成するとき、コメント記述書式で記述された文が純粋なコメント記述なのか、表データ情報なのかを、「’ＨＹＯ：：」、すなわち表開始コメント行２０１で開始されているコメント行であるか否かによって判別することができる。さらに、データ変換部３２は、表データ情報のうちの列の数や行の数に関する情報を含む表属性コメント行２０２から、作成する表形式データ２３の大きさなどの書式を取得することができる。【００３９】
また、表データ情報に限らず、必要に応じて様々な情報をモデル内蔵プログラムデータ２２にコメント記述書式で記述することによって３次元ＣＡＤモデルデータ２１に持たせることが可能であることはいうまでもない。【００４０】
図２の例では、値設定行１０８に数値や文字列を記載しているが、図４（ａ）に示すような数式記述であっても良い。その場合、データ変換部３２による変換結果は図４(ｂ)に示すモデル内蔵プログラムデータ２２となる。【００４１】
図２における表形式データ２３の記憶部２への記憶例を図５に示す。図５に示すように、表形式データ２３を、各セルをカンマで区切ったＣＳＶ形式で記憶部２に記憶されるようにするとよい。ユーザが理解しやすいようテキストファイルで記述されるようにしているが、バイナリファイルであっても良く、また、デリミタもフィールドを区切ることができるものであればどのようなものであってもよい。【００４２】
続いて、データ変換部３２が図２に示すパラメトリック変形の変化論理に関する表形式データ２３から図３に示すモデル内蔵プログラムデータ２２を作成する動作を説明する。図６および図７は、該動作を説明するフローチャートである。【００４３】
まず、データ変換部３２は、図２に示す表形式データ２３を開き（ステップＳ１）、対応する３次元ＣＡＤモデルデータ２１のモデル内蔵プログラムデータ２２を開く（ステップＳ２）。続いて、データ変換部３２は、開かれている表形式データ２３から表名記載行１０１に記述されている表名を読み出し（ステップＳ３）、読み出した表名に基づいて、モデル内蔵プログラムデータ２２に表開始コメント行２０１を書き込む（ステップＳ４）。さらに、データ変換部３２は、表形式データ２３の１行目から４行目までの記述および終了インデックス１０２、１０３の位置を読み出す（ステップＳ５）。そして、データ変換部３２は、終了インデックス１０２、１０３の位置から表の列数と行数とを求めるとともに、分岐結果列インデックス１０４からどの列が分岐結果開始列かを求める（ステップＳ６）。そして、データ変換部３２は、求めた内容に基づいて表属性コメント行２０２をモデル内蔵プログラムデータ２２に記入する（ステップＳ７）。【００４４】
続いて、データ変換部３２は、表形式データ２３の読み出し行を１つ進める（ステップＳ８）。そして、データ変換部３２は、現在の読み出し行が表形式データ２３の最後の行か否かを判定し（ステップＳ９）、最後の行である場合（ステップＳ９、Ｙｅｓ）、表形式データ２３を閉じ（ステップＳ１０）、モデル内蔵プログラムデータ２２を閉じ（ステップＳ１１）、動作を終了する。【００４５】
現在の読み出し行が表形式データ２３の最後の行ではない場合（ステップＳ９、Ｎｏ）、データ変換部３２は、表形式データ２３の現在の読み出し行から１行分の値を読み出す（ステップＳ１２）。そして、図７において、データ変換部３２は、読み出した１行分の値の現在の読み出し列を２に設定し（ステップＳ１３）、ＩＦ文の数をカウントするＩＦカウンタをゼロに設定する（ステップＳ１４）。【００４６】
続いて、データ変換部３２は、現在の読み出し列が分岐結果列インデックス１０４より左にあるか否かを判定する（ステップＳ１５）。現在の読み出し列が分岐結果列インデックス１０４より左にある場合（ステップＳ１５、Ｙｅｓ）、データ変換部３２は、現在の読み出し行と列とで決まるセルが空白であるか否かをさらに判定する（ステップＳ１６）。セルが空白ではない場合（ステップＳ１６、Ｎｏ）、「ＩＦ」と現在の読み出し列の変数名と現在の読み出し列の論理と現在の読み出し行および列で決まるセルの値と「ＴＨＥＮ」とを一行につなげてモデル内蔵プログラムデータ２２に書き込む（ステップＳ１７）。そして、データ変換部３２は、ＩＦカウンタをインクリメントし（ステップＳ１８）、現在の読み出し列を１進め（ステップＳ１９）、ステップＳ１５に移行する。ステップＳ１６において、セルが空白である場合（ステップＳ１６、Ｙｅｓ）、ステップＳ１９に移行する。【００４７】
ステップＳ１５において、現在の読み出し列が分岐結果列インデックス１０４より左ではない場合（ステップＳ１５、Ｎｏ）、データ変換部３２は、現在の読み出し行と列とで決まるセルが空白であるか否かをさらに判定する（ステップＳ２０）。セルが空白ではない場合（ステップＳ２０、Ｎｏ）、現在の読み出し列の変数名と現在の読み出し列の論理と現在の読み出し行および読み出し列で決まるセルの値とをモデル内蔵プログラムデータ２２に書き込む（ステップＳ２１）。そして、データ変換部３２は、現在の読み出し列が表の最右列か否かを判定し（ステップＳ２２）、最右列ではない場合（ステップＳ２２、Ｎｏ）、ステップＳ１９に移行し、最右列である場合（ステップＳ２２、Ｙｅｓ）、ＩＦカウンタの値の数だけ「ＥＮＤＩＦ」をモデル内蔵プログラムデータ２２に書き込み、図６のステップＳ８に移行する。ステップＳ２０において、セルが空白である場合（ステップＳ２０、Ｙｅｓ）、ステップＳ２２に移行する。【００４８】
このように、本実施の形態１の３次元ＣＡＤモデル作成装置１のデータ変換部３２は、作成済みのパラメトリック変形の変化論理を設定する表形式データ２３から表データ情報を作成してモデル内蔵プログラムデータ２２に書き込むとともに、値設定行１０８を一行ずつ読み出し、夫々の値設定行１０８に対応する条件分岐の論理をモデル内蔵プログラムデータ２２にプログラム言語で書き込む。同様に、データ変換部３２は、図６および図７に示した動作と逆の論理で、表データ情報から表の大きさや表名などを設定するとともに、プログラム言語で記述されたモデル内蔵プログラムデータ２２のパラメトリック変形に関する条件分岐の論理を変換して値設定行１０８を作成する。このとき、データ変換部３２は、モデル内蔵プログラムデータ２２における表開始コメント行２０１と表属性コメント行２０２とで挟まれた部分から１つの表形式データ２３を作成する。【００４９】
次に、形状要素の有無に関する変化論理を設定する表形式データ２３およびモデル内蔵プログラムデータ２２の該表形式データ２３に対応する部分について説明する。表形式データ２３を用いて形状要素の有無に関する変化論理を設定する場合、前記するパラメトリック変形に関する変化論理を設定する表形式データ２３とは別の書式の表形式データ２３を使用する。【００５０】
まず、ユーザは表形式データ２３に３次元ＣＡＤモデルデータ２１に定義されている形状要素のＩＤのリストを記入する。図８は、形状要素のＩＤのリスト（形状要素リスト３０１）が記入されている表形式データ２３を示す図である。３次元ＣＡＤモデルデータ２１においては、通常、形状要素が登録されている順番も意味をもつため、図８における形状要素のＩＤは、その順番に従って記載されている。ここで、例えばデータ変換部３２がモデル内蔵プログラムＩＯ部３４を介して３次元ＣＡＤモデルデータ２１から該データ２１に登録されている形状要素を抽出して図８に示す形状要素のリストを作成するように構成すれば便利である。ユーザは、図８の表形式データ２３に希望する分岐条件の列を追加し、変化論理を設定する。【００５１】
図９は、形状要素の有無についての変化論理の設定が記入された表形式データ２３の表示の一例を説明する図である。形状要素の有無についての変化論理の表形式データ２３においては、例えば分岐条件を満たす場合は有、満たさない場合は無、というように、分岐結果が２種類しかないので、図２に示したパラメータに関する変化論理の表形式データ２３の場合とは異なり、分岐結果の列を省略し、分岐条件を満たす場合は有の変化状態を示すという規則に基づいて作成されるようにしている。もちろん、形状要素の有無についての変化論理の表形式データ２３に分岐結果を示す列を用意されるようにしてもよい。【００５２】
図９に示す表形式データ２３において、ＡＮＤの論理で接続される複数の条件が満たされるときに一つの形状要素を有りとする場合、該形状要素のＡＮＤで接続される複数の分岐条件は一つの行の複数の分岐条件の列を使用して記述される。ＯＲの論理で接続される複数の条件が満たされるとき形状要素を有りとする場合、該形状要素の夫々の分岐条件は夫々異なる複数の行を使用して記述される。例えば、追加行３０２は、形状要素３の分岐条件を表現するために追加された行である。すなわち、形状要素３の変化論理は、「ＳＩＺＥ」が「大きい」であるか、または「ＯＰＴＩＯＮ」が「あり」であるか、のうちの少なくとも１つを満たす場合、３次元ＣＡＤモデルデータ２１内で有りという変化状態となるように設定されている。【００５３】
続いて、図９に示した表形式データ２３をモデル内蔵プログラムデータ２２に変換する場合のデータ変換部３２による変化論理解釈について説明する。データ変換部３２は、パラメトリック変形の変化論理に関する表形式データ２３からモデル内蔵プログラムデータ２２を作成する場合と同様に、形状要素の有無の変化論理を設定する表形式データ２３を変換する場合も表データ情報を作成するとともに形状要素リスト３０１を一行ずつ読み出して変換を行う。【００５４】
形状要素１の行には一切条件の記載がないが、こうした行においてはその要素は３次元ＣＡＤモデルデータ２１内で無条件に有りにすると解釈し、解釈した内容をモデル内蔵プログラムデータ２２に記入する。形状要素２の行に関しては、データ変換部３２は、「ＯＰＴＩＯＮ」が「あり」の場合に形状要素２が３次元ＣＡＤモデルデータ２１において有りになるようにモデル内蔵プログラムデータ２２に記入する。【００５５】
追加行がある場合は、データ変換部３２は、追加行の直前に読み出して変換した分岐条件と追加行から読み出して変換した分岐条件とをＯＲの論理で接続するように変換する。形状要素３の行は２行あるので、ＯＲの扱いとなり、「ＳＩＺＥ」が「大きい」である場合かまたは「ＯＰＴＩＯＮ」が「あり」の場合のうち少なくとも１つを満たす場合に形状要素３は有りと解釈する。形状要素７の行では、データ変換部３２は、「ＦＯＲＣＥ＞＝０」である場合かつ「ＦＯＲＣＥ＜１００」である場合に形状要素７が有りになると解釈する。【００５６】
このように、データ変換部３２は、形状要素の有無に関する表形式データ２３を変換してモデル内蔵プログラムデータ２２における形状要素の有無に関する変化論理設定部分に書き込む。また、データ変換部３２は、前述したモデル内蔵プログラムデータ２２のパラメトリック変形に関する変化論理設定部分からパラメトリック変形に関する表形式データ２３を作成する動作と同様に、モデル内蔵プログラムデータ２２における形状要素の有無に関する変化論理設定部分から形状要素の有無に関する表形式データ２３を作成する。【００５７】
なお、本例では一切条件の記載がない行についてモデル内蔵プログラムデータ内で無条件に有りにしているが、「−」のような特定の表記をもって無条件に有りを表現することにしてもよい。【００５８】
また、図１０に示すように、図９に示した表形式データ２３の表示例とは異なる書式が用いられるようにしてもよい。図１０に示す表形式データ２３の表示例では論理行４０７に変数名とその値まですべて記述され、値設定行４０１にはその条件に該当する場合には「○」が記述されることで分岐条件を表形式に表現されている。「×」が記述されることで論理行に記述された条件の否定が指定されるようにしてもよい。また、「無条件」という論理行を設けられ、該論理行に「○」が記述されることにより、該当する形状要素をモデル内蔵プログラムデータ２２内で無条件に有りとされるようにしてもよい。【００５９】
また、図９および図１０の表示例では、分岐条件が複数で、ＡＮＤやＯＲの条件を伴う場合、表における列方向でＡＮＤの解釈を行い行方向でＯＲの解釈を行わせているが、行方向でＡＮＤの解釈を行い列方向でＯＲの解釈を行うようにしてもよい。【００６０】
また、形状要素の有無に関する変化論理を設定するとき、複数の形状要素からなる構成部品について有無を設定できるようにしてもよい。【００６１】
また、以上の説明においては、パラメトリック変形に関する変化論理の表形式データ２３と形状要素の有無に関する変化論理の表形式データ２３とを書式を分け、データ変換部３２は一つのモデル内蔵プログラム２２から夫々別の表形式データ２３を作成するようにしたが、データ変換部３２は、パラメトリック変形に関する変化論理の表形式データ２３と形状要素の有無に関する変化論理の表形式データ２３とを接続した一つの表形式データ２３を一つのモデル内蔵プログラム２２から作成するようにしてもよい。【００６２】
以上のように、本実施の形態１によれば、表形式データに入力された変化論理を変換してプログラム言語で記述されるモデル内蔵プログラムを作成するように構成したので、該プログラム言語に詳しくないユーザであってもモデル内蔵プログラムを作成することができる。また、このように作成されたモデル内蔵プログラムから視認性のよい表形式データに変換するように構成したので、変化論理が設定された３次元ＣＡＤモデルの流用などを第３者が行う場合にも該変化論理を理解しやすくすることができる。また、表形式データとモデル内蔵プログラムとの間に一意な対応関係が確保されているので、表形式データを、３次元ＣＡＤモデルを説明する仕様書として利用できる。【００６３】
実施の形態２．
本実施の形態２では、表作成部３３に市販の表計算ソフトウェアが使用され、表形式データ２３は該表計算ソフトウェアによる保存フォーマットのデータ形式で記憶部２に記憶されるようにする。データ変換部３２は、該保存フォーマットで記憶部２に記憶されている表形式データ２３とモデル内蔵プログラムデータ２２とを相互に変換する。【００６４】
例えば複数の表形式データ２３を夫々異なるシートとし、これらのシートを１つのファイル内に保存できる表計算ソフトウェアが表作成部３３として用いられると、図２、図９、および図１０の各表形式データ２３を１つのファイルとして保存できるようになる。また、図２、図９、および図１０の各表形式データ２３を１つの表計算ソフトウェアファイル内に配置するなど、モデル内蔵プログラムデータ２２内の各対象機能記述部に対応させたシートを配置することができ、より整理された表形式データ２３を構成することができるようになる。【００６５】
このように、実施の形態２によれば、表作成部として市販の表計算ソフトウェアを使用するようにしたので、表作成部を作成する必要がなく、効率的に３次元ＣＡＤモデル作成装置の作成できるようになるとともに、ユーザは該市販の表計算ソフトウェアが有する種々の機能を利用することができるようになる。【００６６】
実施の形態３．
実施の形態１にかかる制御部３においては、市販の３次元ＣＡＤソフトウェアにより実現される３次元ＣＡＤソフトウェア部３１と、追加されたプログラムにより実現されるデータ変換部３２および表作成部３３とを有する構成としたが、データ変換部３２および表作成部３３を実現するプログラムを内蔵する３次元ＣＡＤソフトウェアを作成し、該３次元ソフトウェアをＣＰＵなどにより構成される制御装置に実行させることにより３次元ＣＡＤソフトウェア部３１とデータ変換部３２と表作成部３３とを実現するようにしてもよいことはいうまでもない。【００６７】
このとき、ユーザにより環境設定ファイルなどから表データ情報の書式設定ができるようにし、モデル内蔵プログラムＩＯ部３４が３次元ＣＡＤモデルデータ２１からモデル内蔵プログラムデータ２２を抽出する際に、前記する書式設定に基づいて３次元ＣＡＤモデルデータ２１に表データ情報を変更できる機能を設ける。【００６８】
このように構成することにより、本実施の形態３によれば、ユーザは３次元ＣＡＤモデルデータから所望の書式の表形式データを取り出すことができ、ユーザにとって３次元ＣＡＤモデルデータの変化論理を理解しやすくすることができる。
【産業上の利用可能性】
【００６９】
以上のように、本発明にかかる３次元ＣＡＤモデル作成装置は、パラメトリック変形機能と変化論理の設定を行う機能とを有する３次元ＣＡＤモデル作成装置に適用して好適である。
【図１】
2010016148.tif 000003
【図２】
2010016148.tif 000004
【図３】
2010016148.tif 000005
【図４】
2010016148.tif 000006
【図５】
2010016148.tif 000007
【図６】
2010016148.tif 000008
【図７】
2010016148.tif 000009
【図８】
2010016148.tif 000010
【図９】
2010016148.tif 000011
【図１０】
2010016148.tif 000012
【図１１】
2010016148.tif 000013
【国際調査報告】
2010016148.tif 000014
2010016148.tif 000015