(57)【要約】【課題】ＣＡＤファイルの３次元図面と図面要素との連想性を保たせることのできる仕組みを提供すること。【解決手段】本発明のプログラムは、互いにファイル形式の異なる第１ＣＡＤファイルと第２ＣＡＤファイルとを記憶する記憶装置と通信可能な情報処理装置で実行可能なプログラムであって、コンピュータを、第１ＣＡＤファイルに含まれる図面要素を取得し、取得された図面要素に基づいて、第２ＣＡＤファイルの図面要素を生成するよう機能させるためのプログラム。【選択図】図４
2020003924.tif 000002
【特許請求の範囲】
【請求項１】
互いにファイル形式の異なる第１ＣＡＤファイルと第２ＣＡＤファイルとを記憶する記憶装置と通信可能な情報処理装置で実行可能なプログラムであって、
コンピュータを、
前記第１ＣＡＤファイルに含まれる図面要素を取得する取得手段と、
前記取得手段で取得された前記図面要素に基づいて、前記第２ＣＡＤファイルの図面要素を生成する生成手段
として機能させるためのプログラム。
【請求項２】
前記取得手段は、前記第１ＣＡＤファイルに含まれる前記図面要素に対応する位置情報を取得し、
前記生成手段は、前記位置情報に基づいて、前記第２ＣＡＤの図面要素を生成すること
を特徴とする請求項１に記載のプログラム。
【請求項３】
前記取得手段で取得される前記図面要素には、図面要素の種類を示す種類情報を含み、
前記生成手段で生成された前記第２ＣＡＤファイルの前記図面要素が、前記取得手段で取得された前記図面要素の前記種類で生成されているか否かを判定する判定手段と、
前記判定手段で前記第２ＣＡＤファイルの前記図面要素が前記種類で生成されていないと判定された場合に、前記第２ＣＡＤファイルの前記図面要素を削除する削除手段
として機能させるための請求項１または２に記載のプログラム。
【請求項４】
前記取得手段で取得される前記図面要素には、図面要素の値を含み、
前記判定手段は、前記生成手段で生成された前記第２ＣＡＤファイルの前記図面要素が、前記取得手段で取得された前記図面要素の前記値で生成されているか否かを判定し、
前記削除手段は、前記判定手段で前記第２ＣＡＤファイルの前記図面要素が前記値で生成されていないと判定された場合に、前記第２ＣＡＤファイルの前記図面要素を削除すること
を特徴とする請求項３に記載のプログラム。
【請求項５】
前記取得手段で取得される前記図面要素には、図面要素の位置を示す位置情報を含み、
前記判定手段は、前記生成手段で生成された前記第２ＣＡＤファイルの前記図面要素が、前記取得手段で取得された前記図面要素の前記位置に生成されているか否かを判定し、
前記削除手段は、前記判定手段で前記第２ＣＡＤファイルの前記図面要素が前記位置に生成されていないと判定された場合に、前記第２ＣＡＤファイルの前記図面要素を削除すること
を特徴とする請求項３または４に記載のプログラム。
【請求項６】
互いにファイル形式の異なる第１ＣＡＤファイルと第２ＣＡＤファイルとを記憶する記憶装置と通信可能な情報処理装置であって、
前記第１ＣＡＤファイルに含まれる図面要素を取得する取得手段と、
前記取得手段で取得された前記図面要素に基づいて、前記第２ＣＡＤファイルの図面要素を生成する生成手段と
を備えることを特徴とする情報処理装置。
【請求項７】
互いにファイル形式の異なる第１ＣＡＤファイルと第２ＣＡＤファイルとを記憶する記憶装置と通信可能な情報処理装置の制御方法であって、
前記第１ＣＡＤファイルに含まれる図面要素を取得する取得工程と、
前記取得工程で取得された前記図面要素に基づいて、前記第２ＣＡＤファイルの図面要素を生成する生成工程と
を含むことを特徴とする情報処理装置の制御方法。
【請求項８】
互いにファイル形式の異なる第１ＣＡＤファイルと第２ＣＡＤファイルとを記憶する記憶装置と通信可能な情報処理装置を含む情報処理システムであって、
前記第１ＣＡＤファイルに含まれる図面要素を取得する取得手段と、
前記取得手段で取得された前記図面要素に基づいて、前記第２ＣＡＤファイルの図面要素を生成する生成手段と
を備えることを特徴とする情報処理システム。
【請求項９】
互いにファイル形式の異なる第１ＣＡＤファイルと第２ＣＡＤファイルとを記憶する記憶装置と通信可能な情報処理装置を含む情報処理システムの制御方法であって、
前記第１ＣＡＤファイルに含まれる図面要素を取得する取得工程と、
前記取得工程で取得された前記図面要素に基づいて、前記第２ＣＡＤファイルの図面要素を生成する生成工程と
を含むことを特徴とする情報処理システムの制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
ＣＡＤファイルの３次元図面と図面要素との連想性を保たせることのできる情報処理装置、その制御方法、及びプログラム、並びに、情報処理システム、その制御方法に関する。
【背景技術】
【０００２】
ＣＡＤアプリケーションには対応するＣＡＤファイルのデータ形式がある。すなわち、ＣＡＤアプリケーションは、対応するＣＡＤファイルのデータ形式以外のデータ形式について互換性がない。
【０００３】
そのため、ユーザが、今まで使用していたＣＡＤアプリケーション（移行元）を別のＣＡＤアプリケーション（移行先）に変更する場合には、今まで使用していたＣＡＤアプリケーション（移行元）のＣＡＤファイルのデータ形式を別のＣＡＤアプリケーション（移行先）に対応するデータ形式へ変換する作業、いわゆるＣＡＤファイルを移行する作業が行われる。例えば、下記の特許文献１では、異なるデータ形式のＣＡＤファイルを変換することのできる仕組みが開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２０００−２４２６８６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
ＣＡＤファイルにおいては、そのＣＡＤファイルからなる製品の製造に必要な、寸法や公差情報、注記などの図面要素を付与するということが行われる。
【０００６】
一般的に、３次元ＣＡＤアプリケーションにおいては、ＣＡＤファイルの３次元図面を編集すると、編集箇所に対応する２次元図面の対応する部分の図面要素が更新されるといった、いわゆるＣＡＤファイルの３次元図面と図面要素との連想性が保たれる仕組みが設けられている。
【０００７】
しかしながら、ＣＡＤファイルの３次元図面と図面要素との連想性を保ったＣＡＤファイルの移行作業については、上記の特許文献１の仕組みでは考慮されていない。
【０００８】
本発明は、ＣＡＤファイルの３次元図面と図面要素との連想性を保たせることのできる仕組みを提供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明のプログラムは、互いにファイル形式の異なる第１ＣＡＤファイルと第２ＣＡＤファイルとを記憶する記憶装置と通信可能な情報処理装置で実行可能なプログラムであって、コンピュータを、前記第１ＣＡＤファイルに含まれる図面要素を取得する取得手段と、前記取得手段で取得された前記図面要素に基づいて、前記第２ＣＡＤファイルの図面要素を生成する生成手段として機能させることを特徴とする。
【発明の効果】
【００１０】
本発明によれば、ＣＡＤファイルの３次元図面と図面要素との連想性を保たせることが可能となる。
【図面の簡単な説明】
【００１１】
【図１】ＣＡＤシステムのシステム構成の一例を示す図である。
【図２】情報処理装置１００、サーバ２００のハードウェア構成を示す図である。
【図３】情報処理装置１００の機能部を示す機能構成図を示す図である。
【図４】本実施形態における詳細な処理について説明する。
【図５】ＣＡＤアプリケーションでの利用可能なファイル形式を模式的に説明する図である。
【図６】形状データと図面要素との連想性について模式的に説明する図である。
【図７】ステップＳ４０５の位置補正処理について詳細に説明するフローチャートである。
【図８】ステップＳ４０５の位置補正処理について模式的に説明する図である。
【図９】移行元図面要素抽出処理の詳細を示すフローチャートである。
【図１０】移行元図面要素抽出処理における要素情報取得の詳細を示すフローチャートである。
【図１１】図面要素複写処理の詳細を示すフローチャートである。
【図１２】移行元平面図（８０１）と移行先平面図（８１１）とを模式的に示す図である。
【図１３】注記１３０１を模式的に示す図である。
【図１４】図面要素複写処理における寸法挿入処理の詳細を示すフローチャートである。
【図１５】（寸法タイプが誤っている場合）を模式的に示す図である。
【図１６】（引き出し線の座標が一致しない場合）を模式的に示す図である。
【図１７】注記挿入処理の詳細を示すフローチャートである。
【図１８】寸法情報テーブル１８００、注記情報テーブル１８１０のデータテーブルを模式的に示す図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照して、本発明の実施の形態の一例について説明する。
【００１３】
図１は、本発明の実施形態におけるＣＡＤシステムのシステム構成の一例を示す図である。本発明のＣＡＤシステムは、情報処理装置１００、サーバ２００が設置されており、それら装置はＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等のネットワーク１０３を介して相互にデータ通信可能に接続されている。図１のネットワーク１０３上に接続される各種端末あるいはサーバの構成は一例であり、用途や目的に応じて様々な構成例があることは言うまでもない。
【００１４】
情報処理装置１００は、オペレーティングシステム上でＣＡＤアプリケーションと図面要素複写プログラムを実行する装置である。ＣＡＤアプリケーションと図面要素複写プログラムは後述する図２のＲＯＭ２０２または外部メモリ２１１に記憶されており、ユーザからの指示に応じて、ＣＰＵ２０１がＲＡＭ２０３に読み出して各種動作を行う。すなわち、２次元投影図面（設計図）を表示するアプリケーションとオペレーティングシステムを有する情報処理装置の一例を示す。
【００１５】
オペレーティングシステムは、情報処理装置１００を動作させるための基本的なアプリケーションである。オペレーティングシステム上でＣＡＤアプリケーションや図面要素複写プログラム、その他各種プログラムを動作させることができる。
【００１６】
ＣＡＤアプリケーションは、ユーザからの操作に応じて、設計物の立体形状を示す３次元図面（形状データ）の作成や構築、さらに３次元図面に基づく２次元投影図面の作成を行う。一般的に、ＣＡＤアプリケーションは、読み込み可能なファイル形式がＣＡＤアプリケーションごとに異なっている。そのため、ユーザがＣＡＤアプリケーションを従前使用していたものから新たなＣＡＤアプリケーションに変更する場合、従前使用していたＣＡＤアプリケーションのＣＡＤファイルを引き継ぐために、当該ＣＡＤアプリケーションに対応するファイル形式のＣＡＤファイルを、新たなＣＡＤアプリケーションで利用可能なファイル形式に変換する必要が生じる。
【００１７】
図５を用いて模式的に説明する。移行元の第１のＣＡＤアプリケーションで読み込み可能な第１のファイル形式のＣＡＤファイルは、そのままでは第２のＣＡＤアプリケーションで読み込むことはできない。一方、移行後の第２のＣＡＤアプリケーションで読み込み可能な第４のファイル形式のＣＡＤファイルは第１のＣＡＤアプリケーションで読み込むことができない。そこで、第１のファイル形式のＣＡＤファイルを中間２次元ＣＡＤファイルと、中間３次元ＣＡＤファイルとに変換する。中間２次元ＣＡＤファイルと中間３次元ＣＡＤファイルとは、第２のＣＡＤアプリケーションでも読み込み可能なファイル形式である。例えば、中間２次元ＣＡＤファイルは、ＤＸＦ形式のファイルであり、中間３次元ＣＡＤファイルは、Ｐａｒａｓｏｌｉｄ形式のファイルである。第１のファイル形式のＣＡＤファイルを中間２次元ＣＡＤファイルと、中間３次元ＣＡＤファイルとに変換してしまうと、移行元のＣＡＤファイル（第１のファイル形式）において保持されていた形状データと図面要素との連想性が失われてしまう。そのため、中間２次元ＣＡＤファイルと、中間３次元ＣＡＤファイルを用いて移行後のＣＡＤファイル（第４のファイル形式）に変換すると、第１のＣＡＤアプリケーションで保持されていたはずの連想性が失われてしまうという課題がある。
【００１８】
形状データ（３次元図面）と図面要素との連想性について、図６を用いて詳細に説明する。図６（Ａ）には、穴部６０１と穴部６０２との間の距離を示す寸法６０３が記されている。連想性がある状態とは、穴部６０１と穴部６０２との間の距離を変更するようＣＡＤファイルの３次元モデル（３次元図面）を修正した場合に、その修正に連動して寸法６０３も自動的に変更される状態である。例えば図６（Ｂ）に示すように、図６（Ａ）では寸法６０３が「３０」だった点、図６（Ｂ）では寸法６０３は、穴部６０１と穴部６０２との間の距離の変更に合わせて「３５」に変更される。すなわち、寸法６０３には穴部６０１と穴部６０２との対応付けがなされている。
【００１９】
一方で、連想性がない状態とは、本来寸法６０３が「３５」になるべきところ、図６（Ｃ）のように図面の修正に連動せず、「３０」のままになってしまう状態のことをいう。この場合、ユーザは図面の修正の都度、寸法の情報も併せて修正しなければならないという手間が生じてしまうという問題がある。すなわち、寸法６０３は穴部６０１と穴部６０２との対応付けがなされていない。
【００２０】
図面要素複写プログラムは、表示された元図面に配置されている寸法（図面要素）情報をＣＡＤアプリケーションから取得する。この取得には、図面要素複写プログラムがＣＡＤアプリケーションのＡＰＩ（Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍｍｉｎｇ  Ｉｎｔｅｒｆａｃｅ）を実行して取得する。取得した寸法（図面要素）情報をもとに、寸法（図面要素）の複写する位置を決定し、ＣＡＤアプリケーションのＡＰＩを用いて、寸法（図面要素）を表示させる。
【００２１】
このように、図面要素複写プログラムは、ＣＡＤアプリケーションに備えられた各種ＡＰＩを用いて指示を出力することが可能なプログラムである。図面要素複写プログラムは、ＣＡＤアプリケーションのアドオン（アドイン）であることが望ましい。
【００２２】
サーバ２００は、情報処理装置１００で作成された各種データ（３次元図面や２次元図面）を記憶管理する装置である。サーバ２００にはファイル管理アプリケーションが動作している。
【００２３】
尚、情報処理装置１００が、サーバ２００の構成を含んでもよいし、サーバ２００が情報処理装置１００の構成を含んでもよい。また、本実施形態においては、情報処理装置１００に各種データが記憶され、ユーザからの操作によって動作させる形態に基づいて説明を行う。
【００２４】
図２は、本発明の実施形態における情報処理装置１００、サーバ２００のハードウェア構成を示す図である。
【００２５】
ＣＰＵ２０１は、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。
【００２６】
また、ＲＯＭ２０２あるいは外部メモリ２１１（記憶）には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  ＯｕｔｐｕｔＳｙｓｔｅｍ）やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。ＲＡＭ２０３は、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。
【００２７】
ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＡＭ２０３にロードして、プログラムを実行することで各種動作を実現するものである。
【００２８】
また、入力コントローラ（入力Ｃ）２０５は、キーボード２０９や不図示のマウス等のポインティングデバイスからの入力を制御する。
【００２９】
ビデオコントローラ（ＶＣ）２０６は、液晶ディスプレイ２１０等の表示器への表示を制御する。これらは必要に応じて管理者が使用するものである。
【００３０】
メモリコントローラ（ＭＣ）２０７は、ブートプログラム、ブラウザソフトウエア、各種のアプリケーション、フォントデータ、ユーザファイル、編集ファイル、各種データ等を記憶するハードディスク（ＨＤ）やフロッピーディスク（登録商標  ＦＤ）或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるカード型メモリ等の外部メモリ２１１へのアクセスを制御する。
【００３１】
通信Ｉ／Ｆコントローラ（通信Ｉ／ＦＣ）２０８は、ネットワークを介して、外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いたインターネット通信等が可能である。
【００３２】
尚、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、液晶ディスプレイ２１０上での表示を可能としている。また、ＣＰＵ２０１は、液晶ディスプレイ２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００３３】
本発明の情報処理装置１００が後述する各種処理を実行するために用いられる各種プログラム等は外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、本発明に係わるプログラムが用いる定義ファイルや各種情報テーブルは外部メモリ２１１に格納されている。
【００３４】
次に、情報処理装置１００の機能部を示す機能構成図について、図３を用いて説明する。
【００３５】
情報処理装置１００は、取得部３０１、生成部３０２、判定部３０３、削除部３０４を備えている。取得部３０１はＣＡＤファイルに含まれる図面要素を取得する機能部である。生成部３０２は取得部３０１で取得された図面要素に基づいてＣＡＤファイルの図面要素を生成する機能部である。判定部３０３は図面要素が特定の種類で生成されているか否かを判定する機能部である。削除部３０４は図面要素を削除する機能部である。
【００３６】
以上で図３に示す情報処理装置１００の機能構成の説明を終了する。
【００３７】
次に、図４を用いて、本実施形態における詳細な処理について説明する。なお、以降での説明に際して３次元モデル（３次元図面とも称する）は移行先のＣＡＤアプリケーション上で正常に読込可能な状態であるものとし、その実現にあたっては既に公知の技術によるものとする。
【００３８】
図４は、図面要素複写処理における全体の処理を示すフローチャートである。
【００３９】
なお、各ステップの処理は、情報処理装置１００のＣＰＵ２０１が実行する。
【００４０】
ステップＳ４０１では、情報処理装置１００のＣＰＵ２０１が、ＣＡＤアプリケーションと当該ＣＡＤアプリケーションにアドオンされた図面要素複写プログラムとを起動させる。
【００４１】
ステップＳ４０２では、情報処理装置１００のＣＰＵ２０１が、移行先図面（第２ＣＡＤファイルに相当する）をステップＳ４０１で起動されたＣＡＤアプリケーション上で開く。
【００４２】
ステップＳ４０３では、情報処理装置１００のＣＰＵ２０１が、移行元図面（第１ＣＡＤファイルに相当する）をステップＳ４０１のＣＡＤアプリケーション上で開く。異なるＣＡＤアプリケーション間でも読込可能なファイル形式のＣＡＤファイルであればよいが、ここでは中間形式（例えばＤＸＦファイル形式）のファイルを想定する。
【００４３】
ステップＳ４０４では、情報処理装置１００のＣＰＵ２０１が、ユーザによる操作により、移行元図面に表示されている平面図（三面図や部分図）に相当する平面図を移行先の図面上へ配置する。なお平面図の表示スケールや表示形式（隠線表示など）は移行元図面に倣ってユーザにより設定されるものとする。
【００４４】
ステップＳ４０５では、情報処理装置１００のＣＰＵ２０１が、移行先平面図に配置した各平面図の表示位置と元図面の平面図の表示位置とが一致するよう、移行先平面図に対して各平面図の位置補正処理を行う。ステップＳ４０５の処理については、図７を用いて後述する。位置補正を行った後の図が、図８に示す模式図である。図７のフローチャートによれば、移行元平面図（８００）と移行先平面図（８１０）に含まれる平面図が略同一の位置に配置されるようになる。図８に示すように、８０１と８１１は略同様の位置に載置されている。略同一の位置に配置されることでステップＳ４０７での図面要素複写処理が適切に行えるようになる。
【００４５】
ステップＳ４０５の処理を、図７のフローチャートを用いて説明する。図７は、移行先平面図位置の補正処理の詳細を示すフローチャートである。
【００４６】
ステップＳ５０１では、情報処理装置１００のＣＰＵ２０１が、ユーザによるＣＡＤ操作により、移行元図面の任意平面図に対して形状輪郭線の交点から任意の点の選択を受け付ける。
【００４７】
ステップＳ５０２では、情報処理装置１００のＣＰＵ２０１が、ユーザによるＣＡＤ操作により、ステップＳ５０１で受け付けた選択箇所に相当する任意の点の選択を移行先図面の選択によって受け付ける。
【００４８】
ステップＳ５０３では、情報処理装置１００のＣＰＵ２０１が、ステップＳ５０１〜５０２で受け付け状態となった点に対する位置合わせ処理の実行指示を受け付ける。
【００４９】
ステップＳ５０４では、情報処理装置１００のＣＰＵ２０１が、移行元平面図で選択されている交点の座標をＣＡＤアプリケーションのＡＰＩによって取得する。座標系は移行元図面がＣＡＤアプリケーション上で有する座標系に準ずる。
【００５０】
ステップＳ５０５では、情報処理装置１００のＣＰＵ２０１が、移行先平面図で選択されている交点の座標をＣＡＤアプリケーションのＡＰＩによって取得する。座標系は移行先図面がＣＡＤ上で有する座標系に準ずる。
【００５１】
ステップＳ５０６では、情報処理装置１００のＣＰＵ２０１が、ステップＳ５０４〜５０５で取得された座標値の差分を算出する。
【００５２】
ステップＳ５０７では、情報処理装置１００のＣＰＵ２０１が、ステップＳ５０６で算出された差分をステップＳ５０５で取得された座標値に対する移動量としてＣＡＤアプリケーションのＡＰＩによって反映する。
【００５３】
ステップＳ５０８では、情報処理装置１００のＣＰＵ２０１が、ステップＳ５０１〜５０７までの処理の実行先として最後の平面図であるか否かを判定する。この判定は例えば、ユーザからの指示を受け付けることによって行われる。未処理の平面図が残されている場合（すなわち最後の平面図である場合）は処理をステップＳ５０１に戻す。最後の平面図であると判定された場合には処理を終了する。
【００５４】
以上で図７に示すフローチャートの説明を終了する。図４の説明に戻る。
【００５５】
ステップＳ４０６では、情報処理装置１００のＣＰＵ２０１が、移行元図面に対してＣＡＤアプリケーションのＡＰＩによる識別可能なオブジェクト、具体的には寸法や注記といった図面要素、の抽出処理を行う（取得手段に相当する）。ステップＳ４０６の処理については、図９を用いて説明する。
【００５６】
図９は、移行元図面要素抽出処理の詳細を示すフローチャートである。
【００５７】
ステップＳ６０１では、情報処理装置１００のＣＰＵ２０１が、移行元図面要素抽出処理を受け付ける。
【００５８】
ステップＳ６０２では、情報処理装置１００のＣＰＵ２０１が、移行元図面に含まれる図面要素をＣＡＤアプリケーションのＡＰＩを用いて取得する。なお、図面要素の取得順序によって本発明の処理結果は影響されない。本実施形態においては、図面要素は、寸法または注記を指す。
【００５９】
ステップＳ６０３では、情報処理装置１００のＣＰＵ２０１が、ステップＳ６０２で取得された図面要素の詳細な情報をＣＡＤアプリケーションのＡＰＩによって抽出する。具体的には、要素タイプ、座標値、値が挙げられる。ステップＳ６０３の処理については、図１０を用いて説明する。
【００６０】
図１０は、移行元図面要素抽出処理における図面要素情報取得の詳細を示すフローチャートである。
【００６１】
ステップＳ７０１では、情報処理装置１００のＣＰＵ２０１が、処理対象の図面要素に対してＣＡＤアプリケーションのＡＰＩを用いて、その図面要素の要素タイプを取得する。要素タイプとは、本実施形態では、対象の図面要素が寸法を示すタイプと、注記を示すタイプとを少なくとも含む。
【００６２】
ステップＳ７０２では、情報処理装置１００のＣＰＵ２０１が、ステップＳ７０１で取得された要素タイプが寸法タイプであるか否かの判定処理を行う。要素タイプが寸法であると判定された場合には処理をステップＳ７０３に進め、そうでない場合には処理をステップＳ７０４に進める。
【００６３】
ステップＳ７０３では、情報処理装置１００のＣＰＵ２０１が、処理中の図面要素に対してＣＡＤアプリケーションのＡＰＩを用いることで詳細な情報を取得し、図１８に示す寸法情報テーブル１８００へ格納する。取得される情報は、寸法タイプ１８０２（水平寸法や垂直寸法など）、寸法値１８０３、引き出し線先座標１８０４、１８０５（ＸＹ座標が２か所）、寸法テキスト表示座標１８０６（ＸＹ座標が１か所）が含まれる。寸法タイプ１８０２（水平寸法や垂直寸法など）は、当該寸法が水平寸法であるか垂直寸法であるかを示す情報である。寸法値１８０３は当該寸法の値を示す。引き出し線先座標１８０４、１８０５（ＸＹ座標が２か所）は寸法の位置を示す引き出し線の位置を示す位置情報である。寸法テキスト表示座標１８０６（ＸＹ座標が１か所）は、寸法の情報を表示する位置を示す位置情報である。
【００６４】
ステップＳ７０４では、情報処理装置１００のＣＰＵ２０１が、ステップＳ７０１で取得された要素タイプが注記タイプであるか否かの判定処理を行う。注記タイプであると判定された場合には処理をステップＳ７０５に進め、そうでない場合には処理を終了する。
【００６５】
ステップＳ７０５では、情報処理装置１００のＣＰＵ２０１が、処理中の図面要素に対してＣＡＤアプリケーションのＡＰＩを用いることで詳細な情報を取得し、図１８に示す注記情報テーブル１８１０へ格納する。注記情報テーブル１８１０へ格納される情報は、注記テキスト１８１２（テキスト情報）、引き出し線先座標１８１３（ＸＹ座標が２か所）、注記テキスト表示座標１８１４（ＸＹ座標が１か所）が含まれる。
【００６６】
以上で図１０の説明を終え、図９の説明に戻る。
【００６７】
ステップＳ６０４では、情報処理装置１００のＣＰＵ２０１が、ステップＳ６０２で取得した図面要素が、移行元図面上に含まれる最後の図面要素か否かを、ＣＡＤアプリケーションのＡＰＩによって判定する。最後の図面要素であると判定された場合には処理を終了させ、そうでない場合には処理をステップＳ６０５に進める。
【００６８】
ステップＳ６０５では、情報処理装置１００のＣＰＵ２０１が、移行元図面上に含まれる未処理の図面要素を取得し、処理をステップＳ６０３へ移行する。
【００６９】
以上図９のフローチャートの説明を終了する。図４の説明に戻る。
【００７０】
ステップＳ４０７では、情報処理装置１００のＣＰＵ２０１が、移行元図面に対してＣＡＤアプリケーションのＡＰＩによる配置可能なオブジェクト、具体的には寸法や注記といった図面要素の複写処理を行う（生成手段に相当する）。ステップＳ４０７の処理については、図１１を用いて説明する。
【００７１】
図１１は、図面要素複写処理の詳細を示すフローチャートである。
【００７２】
ステップＳ８０１では、情報処理装置１００のＣＰＵ２０１が、寸法情報テーブル１８００に格納されたレコードの一つを取得する。
【００７３】
ステップＳ８０２では、情報処理装置１００のＣＰＵ２０１が、処理対象の寸法情報に基づいて寸法の挿入処理（生成）を行う。ステップＳ８０２の処理については、図１４を用いて後述する。
【００７４】
図１４は、図面要素複写処理における寸法挿入処理の詳細を示すフローチャートである。
【００７５】
ステップＳ９０１では、情報処理装置１００のＣＰＵ２０１が、処理対象の寸法情報を基にＣＡＤアプリケーションのＡＰＩを用いることで寸法の配置処理を行う。具体的には、引き出し線先座標１８０４、１８０５に格納された座標に対応する２つのオブジェクト（エンティティ）を選択するためのＡＰＩを実行する。オブジェクトの選択は、当該座標と完全一致している必要はなく、当該座標に最も近いオブジェクトを選択してもよい。座標に基づきオブジェクトを選択することで、より簡便かつ適切に図面要素を転記することが可能となる。
当該２つのオブジェクトの間の寸法を挿入するべく、寸法を配置するためのＡＰＩに対して、引数として寸法タイプ１８０２（種類情報に相当する）を引き渡す。これにより、２つのオブジェクトと寸法タイプ１８０２に基づく寸法が配置される。ただしＡＰＩによるオブジェクトの選択を誤る可能性がある。この誤りにより寸法の配置結果が正しくないこともある。そのため配置結果が正しいものであるかを判定すべく、後述のステップで結果の妥当性が判定される。
【００７６】
寸法が妥当に配置された例について図１２を用いて説明する。
【００７７】
図１２には、移行元平面図（８０１）（第１ＣＡＤファイルに相当する）と移行先平面図（８１１）（第２ＣＡＤファイルに相当する）とが表示されている。移行元平面図（８０１）の寸法を、移行先平面図（８１１）に転記すべく、位置座標１２０１、位置座標１２０２に対応する、位置座標１２１１、位置座標１２１２に対応する２つのオブジェクトを特定し、特定されたオブジェクトの寸法１２１３を配置する。図１２に示すように正しく転記されていることが分かる。
【００７８】
結果が妥当でない場合についていくつかの例を挙げて説明する。
【００７９】
（寸法タイプが誤っている場合）
図１５を用いて説明する。移行元平面図（８０１）での位置座標１５０１、位置座標１５０２に対応する、移行先平面図（８１１）での位置座標１５１１、位置座標１５１２に対応する２つのオブジェクトの特定は正しいものの、寸法タイプが異なる場合である。図１５に示すように、移行元平面図（８０１）では、寸法１５０３が水平寸法として挿入されている。すなわち、水平寸法とは、２つのオブジェクトの間の距離を図１５に示すＸＹ軸のＸ軸方向の値を求めるものである。一方で、移行先平面図（８１１）では、Ｘ軸方向の水平寸法ではなく、Ｙ軸方向の垂直寸法として寸法１５１３が挿入されてしまっている。水平寸法とは、２つのオブジェクトの間の距離を図１５に示すＸＹ軸のＹ軸方向の値を求めるものである。
【００８０】
（オブジェクトの特定が誤っている場合）
移行元平面図（８０１）での位置座標１２０１、位置座標１２０２に対応する、移行先平面図（８１１）での位置座標１２１１、位置座標１２１２に対応する２つのオブジェクトの特定を誤ってしまう場合である。その場合、本来１２０３で表示される値（図面要素の値に相当する）と１２１３で表示される値とが一致すべきところ、相違してしまう。
【００８１】
（引き出し線の座標が一致しない場合）
図１６を用いて説明する。移行元平面図（８０１）と移行先平面図（８１１）とを比べると１６０３で表示される値と１６１３で表示される値が一致しているものの、移行元平面図（８０１）では、１６０２に示すオブジェクトが指定されているのに対して、移行先平面図（８１１）では、１６１２に示すオブジェクトが指定されてしまっている。すなわち、寸法１６１３の値は誤りがないものの、その寸法の値を導き出すための位置座標１６０１、位置座標１６０２に対応する２つのオブジェクトの特定を誤っているものである。
【００８２】
ステップＳ９０２では、情報処理装置１００のＣＰＵ２０１が、ステップＳ９０１で配置された寸法の寸法情報を、ステップＳ７０３と同様の手段によって取得する。
【００８３】
ステップＳ９０３では、情報処理装置１００のＣＰＵ２０１が、ステップＳ９０１で用いられた寸法タイプ１８０２とステップＳ９０２で取得された寸法タイプとが一致するか否かの判定を行う（判定手段に相当する）。これは上述の（寸法タイプが誤っている場合）に該当するか否かを判断するためである。このようにすることで寸法タイプが誤っている場合に該当の寸法が正しくないことを判断することができる。すなわち寸法が適切に生成されたかどうかを正しく判断することができるようになる。寸法タイプが一致すると判定された場合は処理をステップＳ９０４に進め、そうでない場合には処理をステップＳ９０７に進める。なお、ステップＳ９０３の処理は必要に応じて行わなくともよく必須の構成ではない。
【００８４】
ステップＳ９０４では、情報処理装置１００のＣＰＵ２０１が、ステップＳ９０１で用いた寸法情報の寸法値１８０３（図面要素の値に相当する）とステップＳ９０２で取得された寸法値とが一致するか否かの判定を行う（判定手段に相当する）。これにより（オブジェクトの特定を誤る場合）に該当するか否かを判断することができる。すなわち寸法が適切に生成されたかどうかを正しく判断することができるようになる。寸法値が一致すると判定された場合は処理をステップＳ９０５に進め、そうでない場合には処理をステップＳ９０７に進める。なお、ステップＳ９０４の処理は必要に応じて行わなくともよく必須の構成ではない。
【００８５】
ステップＳ９０５では、情報処理装置１００のＣＰＵ２０１が、ステップＳ９０１で用いた寸法情報テーブル１８００の引き出し線先座標１８０４、１８０５（図面要素の位置を示す位置情報に相当する）と、ステップＳ９０２で取得された引き出し線先座標とが一致するか否かの判定を行う（判定手段に相当する）。これにより、（引き出し線の座標が一致しない場合）に該当するか否かを判断することができる。すなわち寸法が適切に生成されたかどうかを正しく判断することができるようになる。引き出し線先座標が一致すると判定された場合は処理をステップＳ９０６に進め、そうでない場合には処理をステップＳ９０７に進める。なお、ステップＳ９０５の処理は必要に応じて行わなくともよく必須の構成ではない。
【００８６】
ステップＳ９０６では、情報処理装置１００のＣＰＵ２０１が、ステップＳ９０１で配置された寸法を、該当のレコードの寸法テキスト表示座標１８０６が示す位置へ移動させる。
【００８７】
ステップＳ９０７では、情報処理装置１００のＣＰＵ２０１が、ステップＳ９０１で配置された寸法を削除する。削除することにより、移行元平面図（８０１）と同じ寸法だけが、移行先平面図（８１１）に転記することができるという効果がある。
【００８８】
なお、この処理は必ずしも削除する処理に限定されるものではなく、正常に配置されなかった寸法を示唆するために特定のレイヤーへ格納される、ユーザに通知する、もしくは該当の寸法を特定の表示色へ設定が変更するなどしてもよい。
【００８９】
以上で図１４のフローチャートの説明を終え、図１１の説明に戻る。
【００９０】
ステップＳ８０３では、情報処理装置１００のＣＰＵ２０１が、処理中のレコードが寸法情報テーブル１８００に格納されている最後のレコードであるか否かの判定を行う。すなわち、寸法情報テーブル１８００に未処理のレコードが存在するか否かを判定する。最後のレコードであると判定された場合には処理をステップＳ８０５に進め、そうでない場合には処理をステップＳ８０４に進める。
【００９１】
ステップＳ８０４では、情報処理装置１００のＣＰＵ２０１が、寸法情報テーブル１８００に格納された次レコードを取得する。その後処理をステップＳ８０２に戻す。
【００９２】
ステップＳ８０５では、情報処理装置１００のＣＰＵ２０１が、注記情報テーブル１８１０に格納されたレコードの１つ目を取得する。
【００９３】
ステップＳ８０６では、情報処理装置１００のＣＰＵ２０１が、処理中の注記情報に基づいて注記の挿入処理を行う。ステップＳ８０６の処理については、図１７を用いて説明する。
【００９４】
注記とは、例えば図１３に示す注記１３０１である。
【００９５】
図１７は、ステップＳ８０６の注記挿入処理の詳細を示すフローチャートである。
【００９６】
ステップＳ１００１では、情報処理装置１００のＣＰＵ２０１が、処理中の注記情報テーブル１８１０のレコードを基にＣＡＤアプリケーションのＡＰＩを用いることで、注記の配置処理を行う。具体的には、引き出し線先座標１８１３に格納された座標（注記の場合はその性質から必ずしも引き出し線先座標を有しているとは限らない）に対応するオブジェクトを選択するためのＡＰＩを実行する。そして、注記を配置するＡＰＩに引数として注記テキスト１８１２を引き渡すことにより注記を配置する。ただし注記の配置結果が有効であるかを判定することは困難なため、後述のステップで結果の妥当性が判定される。
【００９７】
ステップＳ１００２では、情報処理装置１００のＣＰＵ２０１が、ステップＳ１００１で配置した注記オブジェクトの注記情報をステップＳ７０５と同様の手段によって取得する。
【００９８】
ステップＳ１００３では、情報処理装置１００のＣＰＵ２０１が、ステップＳ１００１で用いた注記情報の注記テキスト１８１２と、ステップＳ１００２で取得された注記テキスト１８１２とが一致するか否かの判定を行う。一致すると判定された場合には処理をステップＳ１００４に進め、そうでない場合には処理をステップＳ１００５に進める。
【００９９】
ステップＳ１００３の処理は、ステップＳ１００１で入力された値が正確な場合でも、ＣＡＤアプリケーションの機能性により、異なるテキストへ強制的に変換されてしまう場合があるためである。例えば図１３の注記１３０１と注記１３１１が異なるテキストとなっている場合などがある。
【０１００】
ステップＳ１００４では、情報処理装置１００のＣＰＵ２０１が、ステップＳ１００１で配置された注記を、注記情報テーブル１８１０の該当レコードの注記テキスト表示座標１８１４へ移動する。上述した移動は一例であり、この移動処理に限定されるものではないことは言うまでもない。
【０１０１】
ステップＳ１００５では、情報処理装置１００のＣＰＵ２０１が、ステップＳ１００１で配置された注記を削除する。なお、この処理は必ずしも削除する処理に限定されるものではなく、正常に配置されなかった注記を示唆するために特定のレイヤーへ格納される、ユーザに通知する、もしくは該当の注記を特定の表示色へ設定が変更するなどしてもよい。
【０１０２】
ステップＳ８０７では、情報処理装置１００のＣＰＵ２０１が、処理中のレコードが注記情報テーブル１８１０に格納されている最後のレコードであるか否かの判定を行う。最後のレコードであると判定された場合には処理を終了させ、そうでない場合には処理をステップＳ８０８に進める。
【０１０３】
ステップＳ８０８では、情報処理装置１００のＣＰＵ２０１が、注記情報テーブル１８１０に格納された未処理の次レコードを取得する。
【０１０４】
以上で図１１に示すフローチャートの説明を終了する。図４の説明に戻る。
【０１０５】
ステップＳ４０８では、情報処理装置１００のＣＰＵ２０１が、ステップＳ４０７までで更新された移行先図面のＣＡＤファイルを保存する。
【０１０６】
ステップＳ４０９では、情報処理装置１００のＣＰＵ２０１が、開かれている全てのＣＡＤファイルを閉じ、図面要素複写プログラムを終了する。
【０１０７】
以上説明したように、本実施形態によれば、ＣＡＤファイルの３次元図面と図面要素との連想性を保たせることが可能となる。
【０１０８】
すなわち、図面の内容（図面要素）を、第１のＣＡＤファイルから当該第１のＣＡＤファイルと異なる第２のＣＡＤファイルへ、３次元図面と図面要素との同期（連想性）を保ちながら容易に複写することができる。
【０１０９】
ＣＡＤアプリケーションのＡＰＩの機能性から全ての図面要素に対して有効とはならないまでも、図面要素を手作業によって複写行為を行う場合と本発明とを比較すれば、その作業に掛かる効率を大幅に上昇させることができる。作業効率の向上だけではなく、正確に複写できなかった図面要素を削除、または識別表示させることも容易に可能なため、より作業の効率化につながる。
【０１１０】
本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、１つの機器からなる装置に適用してもよい。なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置の情報処理装置が前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
【０１１１】
したがって、本発明の機能処理を情報処理装置で実現するために、前記情報処理装置にインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１１２】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等の形態であってもよい。
【０１１３】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【０１１４】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【０１１５】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理を情報処理装置で実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１１６】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行して情報処理装置にインストールさせて実現することも可能である。
【０１１７】
また、情報処理装置が、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、情報処理装置上で稼動しているＯＳなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１１８】
さらに、記録媒体から読み出されたプログラムが、情報処理装置に挿入された機能拡張ボードや情報処理装置に接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【０１１９】
なお、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【０１２０】
１００  情報処理装置
２００  サーバ
２０１  ＣＰＵ
２０２  ＲＡＭ
２０３  ＲＯＭ
２０４  システムバス
２０５  入力コントローラ
２０６  ビデオコントローラ
２０７  メモリコントローラ
２０８  通信Ｉ／Ｆコントローラ
２０９  キーボード
２１０  ディスプレイ
２１１  外部メモリ
【図１】
2020003924.tif 000003
【図２】
2020003924.tif 000004
【図３】
2020003924.tif 000005
【図４】
2020003924.tif 000006
【図５】
2020003924.tif 000007
【図６】
2020003924.tif 000008
【図７】
2020003924.tif 000009
【図８】
2020003924.tif 000010
【図９】
2020003924.tif 000011
【図１０】
2020003924.tif 000012
【図１１】
2020003924.tif 000013
【図１２】
2020003924.tif 000014
【図１３】
2020003924.tif 000015
【図１４】
2020003924.tif 000016
【図１５】
2020003924.tif 000017
【図１６】
2020003924.tif 000018
【図１７】
2020003924.tif 000019
【図１８】
2020003924.tif 000020