(57)【特許請求の範囲】
【請求項１】
３次元モデルと、前記３次元モデルの形状を変更するための情報に基づき形状変更された部分の色を決定する条件を記憶する記憶手段を備える情報処理装置を制御するためのプログラムであって、
前記情報処理装置を、
前記３次元モデルにおける、前記情報に基づき形状変更された部分の色の変更の制御を、当該色の変更を指示するユーザの手動操作によって行う手動設定と、前記情報の追加に応じて自動で行う自動設定のどちらで行うかを設定する設定手段と、
前記設定手段により手動設定がされており且つ前記手動操作がされた場合に、前記条件を満たす前記情報に基づいて形状変更された部分に当該条件により決定される色を付し、前記自動設定がされており且つ前記条件を満たす前記情報が追加された場合に、当該情報に基づいて形状が変更された部分に当該条件により決定される色を自動で付するべく制御する制御手段として機能させるためのプログラム。
【請求項２】
前記情報処理装置を、
前記設定手段において前記手動設定がされている場合は、色の変更を指示するユーザの手動操作に応じて、当該手動操作を受け付けた３次元モデルにおける前記形状を変更するための情報が前記記憶手段に記憶された条件を満たす情報か判定し、前記設定手段において前記自動設定がされている場合は、前記形状の変更のための情報の追加に応じて、追加された３次元モデルにおける前記形状を変更するための情報が前記記憶手段に記憶された条件を満たす情報か判定する判定手段として機能させ、
前記制御手段を、前記判定手段において条件を満たすと判定された前記情報に基づいて形状が変更された部分に当該条件により決定される色を自動で付するべく制御する手段として機能させるための請求項１に記載のプログラム。
【請求項３】
前記制御手段を、前記手動設定がされており且つ前記手動操作がされた場合に、前記条件を満たす形状変更の種類である前記情報に基づいて形状変更された部分に、当該条件により決定される色を付し、前記自動設定がされており且つ前記条件を満たす前記形状変更の種類である前記情報が追加された場合に、当該情報に基づいて形状が変更された部分に当該条件により決定される色を自動で付するべく制御する手段として機能させるための請求項１又は２に記載のプログラム。
【請求項４】
前記形状変更の種類とは、前記情報が前記３次元モデルに穴を空ける形状変更をする旨を示す情報であって、
前記形状変更された部分の色とは、当該情報に基づき形状変更され空けられる穴の色であり、
前記制御手段を、前記情報が穴を空ける種類の情報である場合に前記条件を満たすものとし、当該情報に基づいて形状変更され空けられる穴に当該条件により決定される色を付するべく制御する手段として機能させるための請求項３に記載のプログラム。
【請求項５】
前記３次元モデルの形状を変更するための情報とは、フィーチャとして管理されている、形状変更の設定を示す情報であって、
前記制御手段を、
前記設定手段により手動設定がされており且つ前記手動操作がされた場合に、前記条件を満たすフィーチャに基づいて形状変更された部分に当該条件により決定される色を付し、前記自動設定がされており且つ前記条件を満たすフィーチャが追加された場合に、当該情報に基づいて形状が変更された部分に当該条件により決定される色を自動で付するべく制御する手段として機能させるための請求項１乃至４のいずれか１項に記載のプログラム。
【請求項６】
前記情報処理装置を、
同じ前記条件を満たす前記３次元モデルの形状を変更するための情報に基づいて形状変更された部分の中に異なる色の部分があるか判定する色判定手段と、
前記色判定手段で、同じ条件を満たす前記形状を変更するための情報に基づいて形状変更された部分の中に異なる色の部分があると判定された場合に、当該同じ条件を満たす前記形状を変更するための情報に基づいて形状変更された部分の中に異なる色の部分がある旨を通知する通知手段として機能させるための請求項１乃至５のいずれか１項に記載のプログラム。
【請求項７】
３次元モデルと、前記３次元モデルの形状を変更するための情報に基づき形状変更された部分の色を決定する条件を記憶する記憶手段を備える情報処理装置であって、
前記３次元モデルにおける、前記情報に基づき形状変更された部分の色の変更の制御を、当該色の変更を指示するユーザの手動操作によって行う手動設定と、前記情報の追加に応じて自動で行う自動設定のどちらで行うかを設定する設定手段と、
前記設定手段により手動設定がされており且つ前記手動操作がされた場合に、前記条件を満たす前記情報に基づいて形状変更された部分に当該条件により決定される色を付し、前記自動設定がされており且つ前記条件を満たす前記情報が追加された場合に、当該情報に基づいて形状が変更された部分に当該条件により決定される色を自動で付するべく制御する制御手段と、
を備えることを特徴とする情報処理装置。
【請求項８】
３次元モデルと、前記３次元モデルの形状を変更するための情報に基づき形状変更された部分の色を決定する条件を記憶する記憶手段を備える情報処理装置の制御方法であって、
前記３次元モデルにおける、前記情報に基づき形状変更された部分の色の変更の制御を、当該色の変更を指示するユーザの手動操作によって行う手動設定と、前記情報の追加に応じて自動で行う自動設定のどちらで行うかを設定する設定工程と、
前記設定工程により手動設定がされており且つ前記手動操作がされた場合に、前記条件を満たす前記情報に基づいて形状変更された部分に当該条件により決定される色を付し、前記自動設定がされており且つ前記条件を満たす前記情報が追加された場合に、当該情報に基づいて形状が変更された部分に当該条件により決定される色を自動で付するべく制御する制御工程と、
を含む制御方法。
【請求項９】
３次元モデルと、前記３次元モデルの形状を変更するための情報に基づき形状変更された部分の色を決定する条件を記憶する記憶手段を備えるサーバ装置と、前記３次元モデルを表示する表示部を備える情報処理装置とを含む情報処理システムを制御するプログラムであって、
前記情報処理システムを、
前記３次元モデルにおける、前記情報に基づき形状変更された部分の色の変更の制御を、当該色の変更を指示するユーザの手動操作によって行う手動設定と、前記情報の追加に応じて自動で行う自動設定のどちらで行うかを設定する設定手段と、
前記設定手段により手動設定がされており且つ前記手動操作がされた場合に、前記条件を満たす前記情報に基づいて形状変更された部分に当該条件により決定される色を付し、前記自動設定がされており且つ前記条件を満たす前記情報が追加された場合に、当該情報に基づいて形状が変更された部分に当該条件により決定される色を自動で付するべく制御する制御手段として機能させるためのプログラム。
【請求項１０】
３次元モデルと、前記３次元モデルの形状を変更するための情報に基づき形状変更された部分の色を決定する条件を記憶する記憶手段を備えるサーバ装置と、前記３次元モデルを表示する表示部を備える情報処理装置とを含む情報処理システムであって、
前記３次元モデルにおける、前記情報に基づき形状変更された部分の色の変更の制御を、当該色の変更を指示するユーザの手動操作によって行う手動設定と、前記情報の追加に応じて自動で行う自動設定のどちらで行うかを設定する設定手段と、
前記設定手段により手動設定がされており且つ前記手動操作がされた場合に、前記条件を満たす前記情報に基づいて形状変更された部分に当該条件により決定される色を付し、前記自動設定がされており且つ前記条件を満たす前記情報が追加された場合に、当該情報に基づいて形状が変更された部分に当該条件により決定される色を自動で付するべく制御する制御手段と、
を備えることを特徴とする情報処理システム。
【請求項１１】
３次元モデルと、前記３次元モデルの形状を変更するための情報に基づき形状変更された部分の色を決定する条件を記憶する記憶手段を備えるサーバ装置と、前記３次元モデルを表示する表示部を備える情報処理装置とを含む情報処理システムの制御方法であって、
前記３次元モデルにおける、前記情報に基づき形状変更された部分の色の変更の制御を、当該色の変更を指示するユーザの手動操作によって行う手動設定と、前記情報の追加に応じて自動で行う自動設定のどちらで行うかを設定する設定工程と、
前記設定工程により手動設定がされており且つ前記手動操作がされた場合に、前記条件を満たす前記情報に基づいて形状変更された部分に当該条件により決定される色を付し、前記自動設定がされており且つ前記条件を満たす前記情報が追加された場合に、当該情報に基づいて形状が変更された部分に当該条件により決定される色を自動で付するべく制御する制御工程と、
を含む制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置、情報処理システム、その制御方法及びプログラムに関する。
【背景技術】
【０００２】
製造業などにおいて、設計工程に３次元モデルを編集する３次元ＣＡＤ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｄｅｓｉｇｎ／以降、ＣＡＤと記載）ソフトウェアの導入が進む中、製造工程ではＣＡＭ（Ｃｏｍｐｕｔｅｒ  Ａｉｄｅｄ  Ｍａｎｕｆａｃｔｕｒｉｎｇ／以降、ＣＡＭと記載）ソフトウェアに対してモデルファイルを適用することで製品の加工定義を効率的に行う取り組みが行われている。モデルファイルには様々な位置情報や寸法情報が保存されているが、ＣＡＤソフトとＣＡＭソフトの親和性が十分でない場合、モデルファイルを作成する寸法や、寸法に含まれる公差情報などはＣＡＤソフトからＣＡＭソフトへ正しく共有することができない場合がある。
【０００３】
ＣＡＤソフトでモデルファイルの情報を２次元図面に印刷出力し、ＣＡＭソフト側でモデルファイルを取り込んだ後、設計工程のユーザが２次元図面を確認しながらＣＡＭソフト上でモデルファイルの任意の部位へ寸法を入力することで、ＣＡＭソフトにおいてもモデルに正確な寸法の情報を記録することができるが、当該入力の作業は手間である。
【０００４】
しかしＣＡＤソフトとＣＡＭソフトの組み合わせによっては、寸法の情報は共有できないが、色の情報は正常に共有（取り込み）できる場合もある。上述した入力作業を簡略化するため、例えば穴の寸法については、設計工程のユーザと製造工程のユーザとの間でどの種類の穴にはどの色を着色するかを予め取り決めておき、ＣＡＤソフト側で穴の種類ごとに着色をしてからモデルファイルをＣＡＭソフトに共有することが行われている。ＣＡＭソフト側で一定の加工定義に対比した色彩を定義しておくことで、上記の着色作業により着色されている部位に加工定義を施したのと同等の効果を得ることができる。
【０００５】
例えば特許文献１には、モデルそのものの重量や材料等の属性情報に応じてモデルそのものの色を変更することが記載されている。
【先行技術文献】
【特許文献】
【０００６】
【特許文献１】特開２００３−２７１６７７号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
しかしながら、例えばフィーチャによって作成・定義されている穴（モデルに配置されている穴）はモデルそのものとは異なるため、穴の色を変更するためにはモデル自体の色彩設定とは別に、ユーザが手動で着色の操作・作業をしなければならない。設計者、加工者のいずれが着色作業を行うとしても、着色箇所が多数に存在する場合にはそれ相応の時間と労力を必要とする。
【０００８】
本発明は、３次元モデルにおいて形状変更された部分の色を容易に変更可能な仕組みを供することを目的とする。
【課題を解決するための手段】
【０００９】
本発明は、３次元モデルと、前記３次元モデルの形状を変更するための情報に基づき形状変更された部分の色を決定する条件を記憶する記憶手段を備える情報処理装置を制御するためのプログラムであって、前記情報処理装置を、前記３次元モデルにおける、前記情報に基づき形状変更された部分の色の変更の制御を、当該色の変更を指示するユーザの手動操作によって行う手動設定と、前記情報の追加に応じて自動で行う自動設定のどちらで行うかを設定する設定手段と、前記設定手段により手動設定がされており且つ前記手動操作がされた場合に、前記条件を満たす前記情報に基づいて形状変更された部分に当該条件により決定される色を付し、前記自動設定がされており且つ前記条件を満たす前記情報が追加された場合に、当該情報に基づいて形状が変更された部分に当該条件により決定される色を自動で付するべく制御する制御手段として機能させるためのプログラムである。
【発明の効果】
【００１０】
本発明によれば、３次元モデルにおいて形状変更された部分の色を容易に変更可能な仕組みを提供することができる。
【図面の簡単な説明】
【００１１】
【図１】本発明の実施形態における、各種装置とソフトウェアの関係の一例を示す図である。
【図２】本発明の実施形態における、各種装置のハードウェア構成の一例を示す図である。
【図３】本発明の実施形態における、各種装置の機能構成の一例を示す図である。
【図４】本発明の実施形態における、処理の概要を示すフローチャートである。
【図５】本発明の実施形態における、配色テーブル更新処理の詳細を示すフローチャートである。
【図６】本発明の実施形態における、一括着色処理の詳細を示すフローチャートである。
【図７】本発明の実施形態における、脱色処理の詳細を示すフローチャートである。
【図８】本発明の実施形態における、配色テーブルの構成の一例を示す図である。
【図９】本発明の実施形態における、メインダイアログの構成の一例を示す図である。
【図１０】本発明の実施形態における、設定ダイアログの構成の一例を示す図である。
【図１１】本発明の実施形態における、設定ダイアログ及び配色テーブルのレコード追加の様子を示す図である。
【図１２】本発明の実施形態における、設定ダイアログ及び配色テーブルのレコード変更の様子を示す図である。
【図１３】本発明の実施形態における、設定ダイアログ及び配色テーブルのレコード順序変更の様子を示す図である。
【図１４】本発明の実施形態における、設定ダイアログ及び配色テーブルのレコード削除の様子を示す図である。
【図１５】本発明の実施形態における、着色処理の様子を示す図である。
【図１６】本発明の実施形態における、一括着色処理の様子を示す図である。
【図１７】本発明の実施形態における、脱色処理の様子を示す図である。
【図１８】本発明の実施形態における、脱色処理の様子を示す図である。
【図１９】本発明の実施形態における、フィーチャのタイプ及びフィーチャの構成情報の構成の一例を示す図である。
【図２０】本発明の第２の実施形態における、処理の流れを示すフローチャートである。
【図２１】本発明の第２の実施形態における、通知画面の構成の一例を示す図である。
【発明を実施するための形態】
【００１２】
以下、図面を参照して、本発明の実施の形態の一例について説明する。
【００１３】
まず図１を参照して、本発明の実施形態における、各種装置とソフトウェアの関係について説明する。
【００１４】
ＰＣ１００（情報処理装置）にはＣＡＤソフトがインストールされている。また、色付けツールが記憶されており、ＣＡＤソフトにアドオンされているものとする。
【００１５】
尚、ＣＡＤソフトでは穴形状を作成するコマンドが幾つか盛り込まれているが、その中には穴の規格や種類、具体的にはＪＩＳや座ぐり穴、を設定することで穴形状を作成するコマンドが存在する。このコマンドで作成された部位と穴情報（穴のパラメータ）はＣＡＤソフト上では1つのフィーチャ（穴フィーチャ）として記憶・管理されるものである。
【００１６】
ＰＣ１１０には、ＣＡＭソフトがインストールされている。また、ＰＣ１００とＰＣ１１０はネットワーク（例えばＬＡＮ１０１）で接続されている。
【００１７】
本実施形態の説明においては、ＰＣ１１０がＣＡＭソフトを用いて読み取り可能であるモデルの色の情報を、ＰＣ１００がＣＡＤソフト及びアドオンされている色付けツールを用いてモデルファイルに付与する。
【００１８】
モデルファイル（ＣＡＤファイル）は、例えばユーザ操作に応じて、ＬＡＮ１０１を介してＰＣ１００、ＰＣ１１０間で送受信が可能であるものとする。以上が図１の説明である。
【００１９】
次に図２を参照して、本発明の実施形態における、各種装置のハードウェア構成の一例について説明する。
【００２０】
図２は、図１に示したＰＣ１００、ＰＣ１１０に適用可能なハードウェア構成を示すブロック図である。
【００２１】
図２において、２０１はＣＰＵで、システムバス２０４に接続される各デバイスやコントローラを統括的に制御する。また、ＲＯＭ２０２あるいは外部メモリ２１１には、ＣＰＵ２０１の制御プログラムであるＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  ／  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）やオペレーティングシステムプログラム（以下、ＯＳ）や、各サーバ或いは各ＰＣの実行する機能を実現するために必要な後述する各種プログラム等が記憶されている。
【００２２】
２０３はＲＡＭで、ＣＰＵ２０１の主メモリ、ワークエリア等として機能する。ＣＰＵ２０１は、処理の実行に際して必要なプログラム等をＲＯＭ２０２あるいは外部メモリ２１１からＲＡＭ２０３にロードして、該ロードしたプログラムを実行することで各種動作を実現するものである。
【００２３】
また、２０５は入力コントローラで、キーボード（ＫＢ）２０９や不図示のマウス等のポインティングデバイス等からの入力を制御する。２０６はビデオコントローラで、ＣＲＴディスプレイ（ＣＲＴ）２１０等の表示器への表示を制御する。なお、図２では、ＣＲＴ２１０と記載しているが、表示器はＣＲＴだけでなく、液晶ディスプレイ等の他の表示器であってもよい。これらは必要に応じて管理者が使用するものである。
【００２４】
２０７はメモリコントローラで、ブートプログラム，各種のアプリケーション，フォントデータ，ユーザファイル，編集ファイル，各種データ等を記憶するハードディスク（ＨＤ）や、フレキシブルディスク（ＦＤ）、或いはＰＣＭＣＩＡカードスロットにアダプタを介して接続されるコンパクトフラッシュ（登録商標）メモリ等の外部メモリ２１１へのアクセスを制御する。
【００２５】
２０８は通信Ｉ／Ｆコントローラで、ネットワーク（例えば、図１に示したＬＡＮ１０１）を介して外部機器と接続・通信するものであり、ネットワークでの通信制御処理を実行する。例えば、ＴＣＰ／ＩＰを用いた通信等が可能である。
【００２６】
なお、ＣＰＵ２０１は、例えばＲＡＭ２０３内の表示情報用領域へアウトラインフォントの展開（ラスタライズ）処理を実行することにより、ＣＲＴ２１０上での表示を可能としている。また、ＣＰＵ２０１は、ＣＲＴ２１０上の不図示のマウスカーソル等でのユーザ指示を可能とする。
【００２７】
本発明を実現するための後述する各種プログラムは、外部メモリ２１１に記録されており、必要に応じてＲＡＭ２０３にロードされることによりＣＰＵ２０１によって実行されるものである。さらに、上記プログラムの実行時に用いられる定義ファイル及び各種情報テーブル等も、外部メモリ２１１に格納されており、これらについての詳細な説明も後述する。以上が図２の説明である。
【００２８】
次に図３を参照して、本発明の実施形態における、各種装置の機能構成の一例について説明する。
【００２９】
ＣＡＤソフトのＣＡＤファイル編集部３１１は、ＣＡＤソフト起動中にＣＡＤファイル（３次元モデル）の編集操作に応じて、モデルの編集を実行する処理部である。例えば穴フィーチャの作成（穴フィーチャの実行による穴の面の作成）を実行する。ＣＡＤソフトのフィーチャ記憶部３１２は、図１９に示すようなフィーチャの情報を外部メモリ上に記憶管理する処理部である。図１９については後述する。
【００３０】
ＣＡＤソフトの色付け指示受付部３１３は、色付けツールの色付け指示部３２４から対象のフィーチャへの色付け（着色）の指示を受け付ける処理部である。ＣＡＤソフトの色付け処理実行部３１４は、色付け指示受付部３１３で受け付けた指示に従って、対象のフィーチャ（フィーチャによって作成・定義されている面（例：穴の内側の面））に、指定された色を着色する処理部である。
【００３１】
色付けツールのルール記憶部３２１は、図８に示すようなフィーチャへの色付け（着色）のルールを外部メモリに記憶・管理する。色付けツールのフィーチャ取得部３２２は、ＣＡＤソフトにフィーチャの情報を要求して取得する取得部である。
【００３２】
色付けツールの色付け対象フィーチャ特定部３２３は、フィーチャ取得部３２２で取得したフィーチャのうち、ルール記憶部３２１で記憶管理されるルールの条件を満たすフィーチャを、着色する対象として特定する特定部である。色付けツールの色付け指示部３２４は、色付け対象フィーチャ特定部３２３で特定されたフィーチャの着色をＣＡＤソフトに指示する処理部である。
【００３３】
ＣＡＭソフトのＣＡＤファイル読込み部３３１は、ＰＣ１００から取得したＣＡＤファイルを読み込む読込み部である。ＣＡＭソフトの色情報取得部３３２は、フィーチャに設定された色の情報を取得して、ＣＡＭソフトのＣＡＤファイル表示部３３３は、色情報取得部３３２で取得した色をフィーチャ傘下の面（フィーチャが参照する面（例：穴の内側の面））に表示する。以上が図３の説明である。
【００３４】
ここでは、ＣＡＤソフトとＣＡＭソフトの親和性が不十分であり、ＣＡＤソフトで作成・編集したＣＡＤファイルの情報全てをＣＡＭソフトで読み出すことはできないが、当該ＣＡＭソフトがＣＡＤファイルの色の情報を読み出して表示画面上に表示・表現可能であるものとする。
【００３５】
＜第１の実施形態＞
【００３６】
以下、図４〜図７を参照して、本発明の処理の流れについて説明する。図４〜図７の各ステップ（各処理）は、ＰＣ１００のＣＰＵ２０１が、ＰＣ１００にインストールされたＣＡＤソフトまたは色付けツールの機能を用いて実行するものとする。
【００３７】
まず図４を参照して、本発明の実施形態における、処理の概要について説明する。
【００３８】
ステップＳ４０１では、操作者によるコマンド起動処理を受け付けることによって処理の対象となる３ＤモデルをＣＡＤソフト上で表示し、また、当該ＣＡＤソフトの画面において色付けツールの起動操作を受け付けることによって色付けツールを起動する（ステップＳ４０１）。
【００３９】
起動した色付けツールは、図８に示す配色テーブル８００を外部メモリ上に作成して記憶する。なお、予め定めた外部データファイル（配色テーブル８００に情報を取り込み可能な、例えば色付けツールが管理するＰＣ１００の所定の記憶領域に記憶されているファイル）を取得できる場合には、当該外部ファイルを取得して外部ファイル内の情報を配色テーブル８００へ格納する。外部ファイルがない場合は、各項目がブランクのままとする。
【００４０】
ここで図８を参照して、本発明の実施形態における、配色テーブルの構成の一例について説明する。
【００４１】
配色テーブル８００は、レコードＮｏを格納するＮｏ８０１、穴の種類を格納する穴タイプ８０２、穴の通し穴直径の下限値を格納する通し穴直径Ｍｉｎ８０３、穴の通し穴直径の上限値を格納する通し穴直径Ｍａｘ８０４、穴タイプが座ぐり穴の場合に座ぐり部直径の下限値を格納する座ぐり穴直径Ｍｉｎ８０５、穴タイプが座ぐり穴の場合に座ぐり部直径の上限値を格納する座ぐり穴直径Ｍａｘ８０６、穴タイプが座ぐり穴の場合に座ぐり部深さの下限値を格納する座ぐり深さＭｉｎ８０７、穴タイプが座ぐり穴の場合に座ぐり部深さの上限値を格納する座ぐり部深さＭａｘ８０８、モデルファイルへ色付けする際の色彩情報を格納する配色８０９等から構成される。
【００４２】
つまり、色付けツールは、８０２〜８０８の条件に合致する穴フィーチャにより作成された穴に対して、８０９に示す色を着色する。以上が図８の説明である。
【００４３】
図４の説明に戻る。色付けツールは、ステップＳ４０２において図９のメインダイアログ９００を表示画面に表示する（ステップＳ４０２）。メインダイアログ９００は、「自動着色」、「着色」「脱色」「設定」「終了」のいずれの処理を実行するかを選択させる画面である。
【００４４】
色付けツールは、「設定」ボタン９０１の押下を受け付けたか判定する（ステップＳ４０３）。「設定」ボタン９０１の押下を受け付けた場合は処理をステップＳ４１１に移行し、配色テーブル更新処理を行う。配色テーブル更新処理の詳細は図５の説明で後述する。「設定」ボタン９０１の押下を受け付けなかった場合は、処理をステップＳ４０４へ処理を移行する。
【００４５】
色付けツールは、ステップＳ４０４で、「着色」ボタン９０２の押下を受け付けたか判定する（ステップＳ４０４）。「着色」ボタン９０２の押下を受け付けた場合は処理をステップＳ４１２に移行し、一括着色処理を行う。一括着色処理の詳細は図６の説明で後述する。「着色」ボタン９０２の押下を受け付けなかった場合は処理をステップＳ４０５へ移行する。
【００４６】
色付けツールは、ステップＳ４０５で、「脱色」ボタン６０３の押下を受け付けたか判定する（ステップＳ４０５）。「脱色」ボタン６０３の押下を受け付けた場合には処理をステップＳ６１３に移行して、脱色処理を行う。脱色処理の詳細については図７の説明で後述する。「脱色」ボタン６０３の押下を受け付けなかった場合はステップＳ４０６へ処理を移行する。
【００４７】
色付けツールは、ステップＳ４０６で、操作者（ユーザ）がＣＡＤソフトを操作することによってモデルファイルへ新たに追加される穴フィーチャが追加されたか判定する（ステップＳ４０６／検知する）。具体的にはＣＡＤソフトのＡＰＩを用いることによりモデルファイルへフィーチャが追加（作成）されたことを示すイベント情報を取得し、当該イベント情報から追加されたフィーチャの内部ＩＤを取得し、フィーチャのタイプ、具体的には押し出し、押し出しカット、フィレット及び穴といったＣＡＤソフト固有のフィーチャのタイプ（図１９に図示）、を取得することにより追加されたフィーチャタイプが穴であるか否かの判定を行う。判定の結果、フィーチャタイプが穴であれば、穴フィーチャが作成されたものとして処理をステップＳ４０７へ移行し、フィーチャタイプが穴でなければ処理をステップＳ４１０へ移行する。
【００４８】
色付けツールは、ステップＳ４０７において、ステップＳ４０６で特定したフィーチャについてＣＡＤソフトのＡＰＩを用いることにより構成情報（パラメータ／図１９に図示）を取得し（当該フィーチャの構成情報をＣＡＤソフトに要求して、ＣＡＤソフトから構成情報の応答を受け付けることで構成情報を取得し／ステップＳ４０７）、処理をステップＳ４０８へ移行する。
【００４９】
構成情報の具体例として、例えば穴タイプ（穴や皿穴といった穴の種類に関する情報）、穴直径（通し穴直径）、座ぐり直径（座ぐり穴固有の座ぐり部直径）、座ぐり深さ（座ぐり穴固有の座ぐり部深さ）などがある。
【００５０】
なお、穴タイプが異なればフィーチャのパラメータが異なるため、取得することができないパラメータも存在する。具体的には通し穴直径は穴と皿穴に共通するパラメータであるが、座ぐり穴直径と座ぐり深さは穴のパラメータに含まれない。
【００５１】
色付けツールは、ステップＳ４０７で取得したパラメータとステップＳ４０７時点で外部メモリに記憶されている配色テーブル８００の８０２〜８０８との照合処理を行い、該当するレコードがあるか判定する（ステップＳ４０８）。該当するレコードがない場合（作成された穴フィーチャが配色テーブルの条件に合致しない場合／作成された穴フィーチャが配色テーブルの条件を満たさない場合）、処理をステップＳ４０２に戻す。該当するレコードがある場合（作成された穴フィーチャが配色テーブルの条件に合致する場合／作成された穴フィーチャが配色テーブルの条件を満たす場合）、処理をステップＳ４０９に移行する。
【００５２】
ここで配色テーブル８００を用いた照合処理の具体的内容について説明する。
【００５３】
照合にはステップＳ４０７で取得したフィーチャパラメータと配色テーブル８００とを用いる。照合の順序は配色テーブルのレコードＮｏの１から昇順である。
【００５４】
初めに穴タイプ８０２の値を用いて一致の照合を行い、一致する場合には通し穴直径Ｍｉｎ８０３と通し穴直径Ｍａｘ８０４、座ぐり穴直径Ｍｉｎ８０５と座ぐり穴直径Ｍａｘ８０６、座ぐり深さＭｉｎ８０７と座ぐり深さＭａｘ８０８をそれぞれ用いることにより、取得したフィーチャパラメータから、作成された穴フィーチャがレコードの条件を満たすか（条件に一致するか）の照合を行う。
【００５５】
具体的には穴タイプ８０２が「穴」で一致した場合、通し穴直径Ｍｉｎ８０３と通し穴直径Ｍａｘ８０４の値を用いて通し穴直径の照合範囲を設定し、フィーチャパラメータの通し穴直径がこの照合範囲に適合する（おさまる）場合は一致と見做し、適合しない場合は不一致と見做す。穴タイプが「穴」の場合には座ぐり穴直径及び座ぐり深さは照合項目に含まれないため当該レコードで照合一致（条件を満たす）と判定し、配色８０９に格納されている色彩情報を取得して、処理をステップＳ４０９へ移行する。
【００５６】
色付けツールは、当該レコードで不一致と見做した場合は次のレコードＮｏのレコードを取得して同様の照合処理を実施し、最終レコードに至っても照合一致と判定されなかった場合は処理をステップＳ４０２へ移行する。穴タイプが座ぐり穴の場合には、通し穴直径に加えて座ぐり穴直径と座ぐり深さの照合を順次行い、全てにおいて一致した場合に当該レコードで照合一致と判定する。
【００５７】
色付けツールは、ステップＳ４０９で、図９の自動着色９０４のチェックがオンか判定し、チェックがオンになっている場合に、ＣＡＤソフトのＡＰＩを用いてステップＳ４０６で受け付けた穴フィーチャの穴に対してステップＳ４０８で配色テーブル８００の該当レコードから取得した色彩情報を着色する（ステップＳ４０９／フィーチャの色の変更処理を行う）。自動着色９０４は、ユーザの手動操作（「着色」ボタン９０２の押下受付）に応じて穴の色を一括変更する手動設定と、ＣＡＤソフトにおけるフィーチャの作成・追加によって追加・作成されたフィーチャの穴の色を自動で変更する処理を行う自動設定とを切り替えて設定するためのチェックボックスである。手動設定がされているか自動設定がされているかの設定の情報は不図示の設定管理テーブル（ＰＣ１００の外部メモリに記憶）において管理されているものとする。着色処理の様子を図１５に示す。
【００５８】
具体的には穴フィーチャを構成する表面（穴フィーチャにより作成された穴）に限定して着色する処理を行う。一般的にＣＡＤソフトではモデルファイルの面情報を（１）「面」＞（２）「フィーチャ」＞（３）「モデル全体」、といった優先順位で管理している。色付けツールは、ＣＡＤソフトのＡＰＩを用いて（２）「フィーチャ」を色付けの対象に指定し、ステップＳ４０８で条件に一致した色彩で、当該条件に合致した穴フィーチャの色付けをＣＡＤソフトに指示する。そして、当該指示を受け付けたＣＡＤソフトが当該フィーチャに対する色付けツールで指定された色彩情報の示す色の着色（色付け）を実行する。着色前後のフィーチャの状態の一例を図１９に示す。なお、図１９では、フィーチャの構成情報を穴フィーチャの構成情報に限定して例示している。また、着色後のフィーチャの構成情報の記載を省略している。
【００５９】
自動着色９０４のチェックがオフの場合は着色を行わずに、処理をステップ４１０へ移行するものとする。
【００６０】
図１１にステップＳ４０６〜４０９の処理結果の一例として、配色テーブル８００のレコード内容とモデルファイルにおける穴の着色の様子を示す。
【００６１】
色付けツールは、ステップＳ４１０で「終了」ボタン６０５の押下を受け付けたか判定し（ステップＳ４１０）、「終了」ボタン６０５の押下を受け付けていないと判定した場合は処理をステップＳ４０２に戻し、「終了」ボタン６０５の押下を受け付けたと判定した場合は、配色テーブル８００の情報を外部データへ格納してコマンド終了処理を実行し、当該色付けツールを終了する。以上が図４の説明である。
【００６２】
次に図５を参照して、本発明の実施形態における、配色テーブル更新処理の詳細について説明する。配色テーブル更新処理は、例えば図４のステップＳ４１１の処理である。
【００６３】
色付けツールは、配色設定を行うための設定ダイアログの画面を生成して、図８に示す配色テーブル８００の情報を、Ｎｏ８０１が若い順に設定グリッド１００１に挿入（一覧表示）した画面を生成して表示する（ステップＳ５０１）。
【００６４】
具体的にはレコードＮｏ８０１の値が１のレコードから昇順で、設定グリッド１００１のヘッダに対応した配色テーブルヘッダのプロパティ値を設定グリッド１００１に表示する。通し穴直径Ｍｉｎ８０３及び通し穴直径Ｍａｘ８０４は設定グリッド１００１の通し穴直径に設けたグリッドの左側に通し穴直径Ｍｉｎ８０３のプロパティ値、右側に通し穴直径Ｍａｘ８０４のプロパティ値をそれぞれ表示し、座ぐり穴直径についても座ぐり穴直径Ｍｉｎ８０５及び座ぐり穴直径Ｍａｘ８０６のプロパティ値をそれぞれ左右に、座ぐり深さについても座ぐり深さＭｉｎ８０７及び座ぐり深さＭａｘ８０８のプロパティ値をそれぞれ左右に表示する。
【００６５】
なお、穴タイプが「穴」の場合は配色テーブルの座ぐり穴直径Ｍｉｎ８０５、座ぐり穴直径Ｍａｘ８０６、座ぐり深さＭｉｎ８０７及び座ぐり深さＭａｘ８０８にマイナス値を格納し、マイナス値は設定グリッド１００１の対応したグリッドには値を表示しない。また、マイナス値の格納されている項目は、マイナス値が設定されているレコードにおいて、図４のステップＳ４０８、及び、後述する図６のステップＳ６０４における穴フィーチャと配色テーブルの照合（穴フィーチャの穴が配色テーブルの条件を満たすかの判定処理）には用いないものとする。
【００６６】
またグリッド上で任意のレコードの選択操作（例えば選択対象のレコード上でのマウスクリック操作）を受け付けることにより図１０に示す穴タイプ１００２〜色１００９の表示を更新する。具体的には、例えば図１０の１０２０に示すように、穴タイプ１００２へ選択中のレコードの穴タイプ８０２、通し穴直径１００３へ選択中のレコードの通し穴直径Ｍｉｎ８０３、通し穴直径１００４へ選択中のレコードの通し穴直径Ｍａｘ８０４、座ぐり穴直径１００５へ選択中のレコードの座ぐり穴直径Ｍｉｎ８０５、座ぐり穴直径１００６へ選択中のレコードの座ぐり穴直径Ｍａｘ８０６、座ぐり深さ１００７へ選択中のレコードの座ぐり深さＭｉｎ８０７、座ぐり深さ１００８へ選択中のレコードの座ぐり深さＭａｘ８０８を、それぞれ表示する。
【００６７】
ステップＳ５０２では、色付けツールは、ユーザ操作による設定ダイアログ１０００の１００２〜１００９のパラメータの入力を受け付けたか判定する（ステップＳ５０２）。パラメータの入力を受け付けたと判定した場合は、入力操作にしたがって、入力された値を１００２〜１００９の各項目に入力を受け付けた値を反映する（表示する／ステップＳ５１１）。
【００６８】
穴タイプ１００２〜座ぐり深さ１００８は直接入力を受け付け、色１００９は色指定ボタン１０１０の押下を受け付けることにより、複数の所定の色から採用する色を選択可能な不図示の色の選択ダイアログを表示し、当該色の選択ダイアログで色の選択・指定を受け付け、当該選択された色を色１００９へ表示する。
【００６９】
色付けツールは、ステップＳ５０２でパラメータの入力を受け付けていないと判定した場合は、配色テーブルへのレコード追加の操作（指示）を受け付けたか判定する（ステップＳ５０３）。具体的には図１０に示す「追加」ボタン１０１１の押下を受け付けたか判定し、当該「追加」ボタン１０１１の押下を受け付けた場合、穴タイプ１００２〜色１００９に表示されている値を設定グリッド１００１の末尾、及び配色テーブル８００の末尾に新規レコードとして追加する処理を行う（ステップＳ５０７）。設定ダイアログ及び配色テーブルのレコード追加の様子を図１１に示す。
【００７０】
「追加」ボタン１０１１の押下を受け付けなかった場合は、色付けツールは、選択中のレコードの値を変更する操作（変更指示）を受け付けたか判定する（ステップＳ５０４）。具体的には図１０に示す「更新」ボタン１０１２の押下を受け付けた場合、変更指示を受け付けたと判定する。「更新」ボタン１０１２の押下を受け付けた場合、当該押下受け付け時に穴タイプ１００２〜色１００９に表示する値を設定グリッド１００１で選択されているレコードのプロパティ、及び、配色テーブル８００中の該当レコードに反映して配色テーブル８００を更新する処理を行う（ステップＳ５０８）。具体的には設定グリッド１００１に反映を行ったレコードＮｏに該当する配色テーブル８００のレコードに対して、ステップＳ５０４と同様のプロパティ値を格納し、ステップＳ５０２へ処理を移行する。設定ダイアログ及び配色テーブルのレコード変更の様子を図１２に示す。
【００７１】
色付けツールは、ステップＳ５０４で、選択中のレコードの値を変更する操作（変更指示）を受け付けていないと判定した場合、配色テーブルのレコードの順序変更の操作（順序変更指示）を受け付けたか判定する（ステップＳ５０５）。
【００７２】
具体的には図１０に示す設定ダイアログ１０００において、設定グリッド１００１行のドラッグアンドドロップ操作によってドラッグしたレコードを他のレコードの前又は後ろに移動する（ドロップする）ような表示上の順序変更の操作を受け付けた場合、操作受け付け対象レコードの表示順序を設定グリッド１００１上で反映して表示し、当該反映した情報に基づいて配色テーブル８００のレコードの順序変更処理を行う（ステップＳ５０９）。設定ダイアログ及び配色テーブルのレコード順序変更の様子を図１３に示す。
【００７３】
つまり、設定グリッド１００１に反映を行ったレコードＮｏの順序を配色テーブル８００のレコードに対して反映する（同様の順番（順序）になるよう順序変更する）。
【００７４】
色付けツールは、配色テーブルのレコードの順序変更の操作（順序変更指示）を受け付けていない場合、配色テーブルのレコード削除の操作（削除指示）を受け付けたか判定する（ステップＳ５０６）。図１０に示す削除ボタン１０１３の押下を受け付けた場合に削除指示を受け付けたものと判断する。配色テーブルのレコード削除の操作を受け付けた場合、設定グリッド１００１で選択中のレコードを設定グリッド１００１から削除し、設定グリッド１００１から削除したレコードのレコードＮｏに該当する配色テーブル８００上のレコードを、配色テーブル８００上から削除する処理を行う（ステップＳ５１０）。設定ダイアログ及び配色テーブルのレコード削除の様子を図１４に示す。以上が図５の説明である。
【００７５】
次に図６を参照して、本発明の実施形態における、一括着色処理の詳細について説明する。一括着色処理は、例えば図４のステップＳ４１２の処理である。
【００７６】
色付けツールは、ＣＡＤソフトのＡＰＩを用いてモデルファイルを構成する複数のフィーチャ情報の１番目の内部ＩＤを取得する（ステップＳ６０１）。具体的には、色付けツールがＣＡＤソフトに対して、ＣＡＤソフトが管理するフィーチャ情報の一覧のうち最上位のフィーチャ（少なくともフィーチャのタイプの情報を含むフィーチャ）を要求し、ＣＡＤソフトが当該要求を受け付けて、要求された当該フィーチャのタイプを色付けツールに応答・送信し、色付けツールが当該タイプの情報を取得する。
【００７７】
色付けツールは、ステップＳ６０１で取得したフィーチャのタイプを参照して図４のステップＳ４０６で上述した方法を用いて、フィーチャタイプが穴であるか否かの判定を行う（ステップＳ６０２）。フィーチャタイプが穴であれば処理をステップＳ６０３に移行し、フィーチャタイプが穴でなかった場合は処理をステップＳ６０６に移行する。
【００７８】
ステップＳ６０３では、色付けツールは、ステップＳ６０２でフィーチャタイプが穴であると判定された穴フィーチャのパラメータ（構成情報）を、図４のステップＳ４０７で上述した方法を用いて取得し（ステップＳ６０３）、処理をステップＳ６０４に移行する。
【００７９】
ステップＳ６０４で色付けツールは、ステップＳ６０２で取得したパラメータを参照し、ステップＳ６０１で取得した穴フィーチャのパラメータに該当する配色テーブル８００のレコードがあるか（取得した穴が配色テーブルの条件に合致するか／取得した穴が配色テーブルの条件を満たすか）を、図４のステップＳ４０８で上述した方法を用いて判定する（ステップＳ６０４）。該当する配色テーブル８００のレコードがある場合は、該当すると判定された配色テーブル８００の配色８０９の色を、ステップＳ６０１で取得した穴フィーチャの穴に対して着色する処理を行う（ステップＳ６０５）。当該着色の処理は、例えば図４のステップＳ４０９の説明で上述した通りである。
【００８０】
色付けツールは、ステップＳ６０１で取得した穴フィーチャのパラメータに該当する配色テーブル８００のレコードがない場合は処理をステップＳ６０６に移行する。
【００８１】
ステップＳ６０６で色付けツールは、ＣＡＤソフトのＡＰＩを用いることにより処理中のフィーチャがモデルファイルを構成するフィーチャのうち最終フィーチャであるか否かの判定処理を行う（ステップＳ６０６）。具体的には、例えば、ＣＡＤソフトに対して次のフィーチャの存否を問い合わせ、ＣＡＤソフトが次のフィーチャの存否を回答する。色付けツールが当該回答を受け付け、次のフィーチャが存在する場合には処理中のフィーチャが最終フィーチャでないと判定し、次のフィーチャが存在しない場合には処理中のフィーチャが最終フィーチャであると判定する。
【００８２】
次のフィーチャが存在する場合には、色付けツールは当該次のフィーチャの構成情報をＣＡＤソフトに要求して、ＣＡＤソフトが当該次のフィーチャの構成情報を色付けツールに返信し、色付けツールが当該構成情報を取得して（ステップＳ６０７）処理をステップＳ６０２に移行する。次のフィーチャが存在しない場合には処理を終了する。一括着色処理の様子を図１６に示す。以上が図６の説明である。
【００８３】
次に図７を参照して、本発明の実施形態における、脱色処理の詳細について説明する。脱色処理は、例えば図４のステップＳ４１３の処理である。
【００８４】
ステップＳ７０１〜Ｓ７０４及びステップＳ７０６の処理は、図６のステップＳ６０１〜Ｓ６０４及びステップＳ６０６の処理とそれぞれ同じであるため、ここでは詳細な説明を割愛する。尚、各判定ステップにおける判定結果に応じた処理の移行先は図７に示す通りである。また、図７のステップＳ７０４においては、配色テーブル８００を用いた穴フィーチャが配色テーブルの条件に合致するか否かの判定において、配色テーブル８００の配色８０９の情報は取得しないものとする。
【００８５】
色付けツールは、ステップＳ７０４で、ステップＳ７０１で取得した穴フィーチャが配色テーブル８００の条件に合致すると判定した場合に、当該条件に合致した穴フィーチャにより作成された穴の色を脱色する脱色処理を行い（ステップＳ７０５）、処理をステップＳ７０６に移行する。
【００８６】
具体的にはＣＡＤソフトのＡＰＩを用いて穴フィーチャを構成する表面に限定して色彩情報の削除処理を行う。例えば、色付けツールが、脱色対象の穴の穴フィーチャの色彩情報の削除指示をＣＡＤソフトに対して送信し、ＣＡＤソフトが当該色彩情報の削除の指示を受け付けて、対象の穴フィーチャに対応する色彩情報の削除を実行する。
【００８７】
ＣＡＤソフトで管理されているモデルファイルは、（１）「面」＞（２）「フィーチャ」＞（３）「モデル全体」、といった優先順位で管理されている。（２）「フィーチャ」（穴フィーチャ）の色彩情報を削除することで、穴フィーチャに対して設定された色彩情報は無くなるため、（３）「モデル全体」に設定されている色彩情報によって穴フィーチャの穴部分の色が表示されることとなる。以上が図７の説明である。脱色処理の様子を図１７及び図１８に示す。
【００８８】
以上説明したように、本発明によれば、フィーチャによって作成された対象物の色を効率よく変更可能な仕組みを提供することができる。
【００８９】
例えば、配色テーブルの情報に基づいてＣＡＤソフト上の穴フィーチャの穴について自動的に着色・脱色することができるため、ユーザによる着色作業の省力化と着色漏れや誤操作による誤った着色の防止に貢献することができる。
【００９０】
＜第２の実施形態＞
【００９１】
次に図２０を参照して、本発明の第２の実施形態における処理の流れについて説明する。第２の実施形態の説明において、図１〜図１９の処理、画面、データ構成のうち第１の実施形態と共通する処理、画面、データ構成の説明は割愛する。
【００９２】
第２の実施形態においては、ＣＡＤファイルを保存する場合に、フィーチャによって作成された対象物の色を効率よく変更可能な仕組みを提供する。
【００９３】
例えば、「着色」ボタン９０２の押下に応じて穴フィーチャに着色する処理を実行した後、当該着色に用いられた配色テーブルのレコード（ルール）の配色が変更され、後に「自動着色」９０４にチェックが入れられて、当該レコードのルールに合致する穴（穴フィーチャ）が生成された場合、複数の同じ種類（例えば同じ規格）の穴に対して異なる色が着色されることになる。
【００９４】
同じ種類の穴であるにも関わらず異なる色が着色された状態でＣＡＤファイルが他者（例えばＣＡＭソフトを用いてＣＡＤファイルを展開・閲覧するユーザ）に渡った場合、当該着色された色に基づいて、同じ種類の穴であるにも関わらず違う種類の穴と勘違いされてしまう可能性がある。
【００９５】
よって、第２の実施形態においては、ＣＡＤファイルを保存する場合に、同じ種類の穴で異なる色が着色された穴がないかチェックし、ユーザに通知する。
【００９６】
具体的には、色付けツールがＣＡＤソフトのファイル保存の処理を監視し、ＣＡＤソフトにおいてファイル保存の操作（保存指示）がされたか判定する（ステップＳ２００１／保存指示検知手段に該当）。例えば「上書き保存」のボタンの押下を受け付けた場合、ファイル保存の操作がされたと判定して処理をステップＳ２００２に移行する。ファイル保存の操作がされない場合は処理を終了する。
【００９７】
色付けツールは、第１の実施形態において説明した自動着色機能のＯＮ／ＯＦＦを判定する（ステップＳ２００２）。自動着色の機能がＯＦＦの場合は（図９の自動着色９０４にチェックが入っていない場合は）処理を終了する。自動着色の機能がＯＮの場合は（図９の自動着色９０４にチェックが入っている場合は）処理をステップＳ６０１に移行する。
【００９８】
図２０に示すステップＳ６０１〜Ｓ６０７の処理は、図６のステップＳ６０１〜Ｓ６０７の処理と同じ処理であるため説明は割愛する。
【００９９】
色付けツールは、ステップＳ６０４で、取得した穴フィーチャの穴が配色テーブルの条件を満たすと判定した場合に、処理をステップＳ２００３に移行する。
【０１００】
ステップＳ２００３で色付けツールは、図１９に示すようなフィーチャをＣＡＤソフトに要求し、ＣＡＤソフトから応答されたフィーチャを取得して、フィーチャ情報／フィーチャの構成情報に基づいて、ステップＳ６０１で取得した処理中のフィーチャの穴と同じタイプ、直径、深さ（同じ種類の穴）で、異なる配色がされている穴フィーチャがあるか判定する（ステップＳ２００３／色判定手段に該当）。つまり、処理中の穴フィーチャの穴が合致した条件を持つ配色テーブルの条件に合致する他の穴フィーチャの穴のうち、配色の値が異なる穴フィーチャがあるかを判定する。
【０１０１】
同じ種類の穴で異なる配色がされている穴フィーチャがある場合、処理中の穴フィーチャの識別情報（ＩＤ）を、“同じ種類の穴で複数の異なる色が着色されている穴”としてメモリ上に記憶する（ステップＳ２００４）。同じ種類の穴で異なる配色がされている穴フィーチャがない場合、処理をステップＳ６０６に移行する。
【０１０２】
色付けツールは、ステップＳ６０６で、処理中のフィーチャが最終フィーチャであると判定した場合、ステップＳ２００４で記憶した“同じ種類の穴で複数の異なる色が着色されている穴”をユーザに通知する（ステップＳ２００５）。具体的には、図２１に示すように、同じ種類の穴で複数の異なる色が着色されている穴の識別情報（ここでは穴の規格）を挿入した通知画面を生成して表示画面に表示する。
【０１０３】
そして、色付けツールは、同じ種類の穴に着色された異なる複数の色を１つの色に統一する旨の指示を受け付けたか判定する（ステップＳ２００６）。図２１の「キャンセル」ボタンが押下された場合は、統一の指示がされていないと判断し、保存をキャンセルするよう色付けツールがＣＡＤソフトに指示し、ファイルの保存をキャンセルする。また、図２１の全てのチェックボックスにチェックが入っていない状態で「保存実行」ボタンの押下を受け付けた場合、統一の指示がされていないと判断し、色を統一せずに現状のままファイルの保存をすべく、色付けツールがＣＡＤソフトにファイルの保存処理の実行を指示し、ＣＡＤソフトがファイルの保存を行う。
【０１０４】
図２１のチェックボックスにチェックが入れられた状態で「保存実行」ボタンが押下された場合は、チェックボックスにチェックが入っている種類の穴（穴フィーチャ）に対して図６の着色処理を実行して（ステップＳ２００７）ファイルを保存する。
【０１０５】
前述した図６の説明では、全ての穴フィーチャに対してステップＳ６０２〜Ｓ６０６の処理を実行したが、ステップＳ２００７においては、ステップＳ６０１で取得するのは、「保存実行」ボタン押下時に図２１でチェックボックスにチェックがされていた規格の穴フィーチャで１番目のフィーチャである。また、ステップＳ６０７で取得する次のフィーチャは、次の、「保存実行」ボタン押下時に図２１でチェックボックスにチェックがされていた規格の穴フィーチャである。また、ステップＳ６０７では、「保存実行」ボタン押下時に図２１でチェックボックスにチェックがされていた規格の穴フィーチャの中で最終のフィーチャか判定するものとする。
【０１０６】
色付けツールは、チェックボックスにチェックが入っている規格が複数ある場合、各規格の穴フィーチャに対してステップＳ２００７の処理を実行し、穴フィーチャの穴の色を最新の配色テーブルの配色に更新した後、当該配色を更新したＣＡＤファイルの保存の実行をＣＡＤソフトに指示し、ＣＡＤソフトが当該指示を受け付けてＣＡＤファイルの保存を実行し、処理を終了する。以上が図２０の説明である。
【０１０７】
以上説明したように、第２の実施形態によれば、ＣＡＤファイルを保存する場合に、フィーチャによって作成された対象物の色を効率よく変更可能な仕組みを提供することができる。
【０１０８】
また、ＣＡＤファイルを保存する場合に、同じ種類の穴で異なる色が着色された穴がないかチェックし、ユーザに通知することができる。
【０１０９】
また、ユーザが意図せず、同じ種類のフィーチャに対して異なる色を着色していた場合に通知することができる。
【０１１０】
具体的には、自動着色の機能がＯＮである場合に、同じ種類の穴で異なる色が着色された穴の存在をユーザに通知することができる。
【０１１１】
尚、ＰＣ１００のＣＰＵ２０１は、色付けルーツで着色されてＣＡＤソフトで保存されたＣＡＤファイルをユーザ操作に応じてＰＣ１１０に送信する。また、ＰＣ１１０のＣＰＵ２０１は当該ＣＡＤファイルを受信して外部メモリに記憶し、ＣＡＭソフトの機能を用いて当該ＣＡＤファイルを展開して表示画面上に表示する。この際、ＣＡＭソフトがＣＡＤファイルのフィーチャの色の情報（配色）を読み出して、当該フィーチャによって定義・
表現される面（例えば穴の内側の面）に対して当該色を着色して表示する。
【０１１２】
以上説明したように、本発明によれば、フィーチャによって作成された対象物の色を効率よく変更可能な仕組みを提供することができる。
【０１１３】
また、本発明の実施形態の説明において、色付けツールはフィーチャ（フィーチャという単位で管理されている面（例えば穴の内面））に対して着色するよう、ＣＡＤソフトに指示する動作をするものとした。これにより、モデルに設定された穴の全てについて１つ１つ直径、深さ、形状をルールと照合して色付けすることによる処理負荷の軽減、処理時間の短縮ができる。
【０１１４】
また、モデルによっては、同じ直径・深さの穴が複数あるように見えるが、ある穴は部品をはめ込むための「穴」であり、ある穴はモデルのデザインとしての単純な「空洞」であることがある。つまり、似た形状の穴だが別の性格を持つ穴であることがある。穴に対し打て、単純に直径・深さの条件で着色をしてしまうと、上述したような異なる性格の穴に同じ色が着色されてしまう。よって、特に当該モデルの作成者ではない、例えば当該モデルのＣＡＤファイルを受け取って参照するＣＡＭソフトのユーザが、当該異なる性格の穴が同じ穴であると勘違いしてしまうという問題がある。なお、ユーザがフィーチャを用いて穴を作成する場合、明示的に、例えば部品をはめ込む「穴」を作成する場合が多い。よって、本発明ではフィーチャを対象にフィーチャによって定義された穴の内面に着色を行っており、フィーチャで管理されていない穴のような形状の空洞（穴）については着色をしないことによって、上述した異なる性格の穴を区別できるようにしている。
【０１１５】
尚、本発明は、例えば、システム、装置、方法、プログラム若しくは記憶媒体等としての実施形態も可能であり、具体的には、複数の機器から構成されるシステムに適用してもよいし、また、１つの機器からなる装置に適用してもよい。
【０１１６】
具体的には、ＰＣ１００とＰＣ１１０が一体であり、ＣＡＤソフト、ＣＡＭソフト、色付けツールが同じＰＣに記憶され、上述した実施形態の各処理（例えば図３で説明した各機能部の処理や、図４〜図２１を用いて説明した各ステップの処理）を実行するようにしてもよい。
【０１１７】
また、ＣＡＤファイルを保存する場所はＰＣ１００、ＰＣ１１０として説明したが、例えばＰＣ１００、ＰＣ１１０とは別のサーバ装置等の所定の記憶領域にＣＡＤファイルを格納するようにしてもよい。この場合、例えば当該サーバ装置にＰＣ１００がアクセスして当該サーバ装置にインストールされたＣＡＤソフト及び色付けツールの機能を用いてＣＡＤファイルを展開し、図４〜図２１の各画面の情報をサーバで生成してＰＣ１００に送信することでＰＣ１００が当該画面を表示し、ＰＣ１００で受け付けた操作指示の内容をサーバ装置に伝達することでサーバ装置が図４〜図２１の各ステップの処理を実行するようにしてもよい。また、ＣＡＭソフトをサーバ装置にインストールし、ＰＣ１１０が、当該サーバ装置のＣＡＤソフトをリモートで起動して操作することで、ＣＡＤファイルの展開、ＣＡＤファイルのフィーチャの色の読み出し、表示の処理を行うようにしてもよい。つまり複数の装置を用いた情報処理システムとして本発明を実現するようにしてもよい。
【０１１８】
なお、上述した実施形態の説明において、図１９ではフィーチャ自体に配色の情報が対応付けて記憶されているが、例えば、フィーチャによって生成・定義された穴の面（フィーチャに対応付けてＣＡＤファイルに記憶されているフィーチャの下に紐付く面）に対して配色の情報を対応付けて記憶することが考えられる。よって、図４のステップＳ４０９、図６のステップＳ６０５、図２０のステップＳ２００７の着色処理を実行する場合に、色付けツールが、色付け対象のフィーチャの下に紐付く面の情報をＣＡＤソフトに問い合わせ、当該面に対して、色付けツールで当該フィーチャに合致した配色テーブルのルールの配色（色彩）を着色するようＣＡＤソフトに指示し、ＣＡＤソフトが当該指示を受け付けて、着色対象の面に対して色付けツールから指示された色を着色するようにしてもよい。
【０１１９】
なお、本発明は、前述した実施形態の機能を実現するソフトウェアのプログラムを、システム或いは装置に直接、或いは遠隔から供給するものを含む。そして、そのシステム或いは装置のコンピュータが前記供給されたプログラムコードを読み出して実行することによっても達成される場合も本発明に含まれる。
【０１２０】
したがって、本発明の機能処理をコンピュータで実現するために、前記コンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、本発明は、本発明の機能処理を実現するためのコンピュータプログラム自体も含まれる。
【０１２１】
プログラムを供給するための記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。また、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【０１２２】
その他、プログラムの供給方法としては、クライアントコンピュータのブラウザを用いてインターネットのホームページに接続する。そして、前記ホームページから本発明のコンピュータプログラムそのもの、若しくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードすることによっても供給できる。
【０１２３】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードすることによっても実現可能である。つまり、本発明の機能処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明に含まれるものである。
【０１２４】
また、本発明のプログラムを暗号化してＣＤ−ＲＯＭ等の記憶媒体に格納してユーザに配布し、所定の条件をクリアしたユーザに対し、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせる。そして、ダウンロードした鍵情報を使用することにより暗号化されたプログラムを実行してコンピュータにインストールさせて実現することも可能である。
【０１２５】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現される。その他、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現され得る。
【０１２６】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれる。その後、そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行い、その処理によっても前述した実施形態の機能が実現される。
【０１２７】
尚、前述した実施形態は、本発明を実施するにあたっての具体化の例を示したものに過ぎず、これらによって本発明の技術的範囲が限定的に解釈されてはならないものである。
即ち、本発明はその技術思想、又はその主要な特徴から逸脱することなく、様々な形で実施することができる。
【符号の説明】
【０１２８】
１００  ＰＣ
１０１  ＬＡＮ
１１０  ＰＣ
【図１】
0006365397.tif 000002
【図２】
0006365397.tif 000003
【図３】
0006365397.tif 000004
【図４】
0006365397.tif 000005
【図５】
0006365397.tif 000006
【図６】
0006365397.tif 000007
【図７】
0006365397.tif 000008
【図８】
0006365397.tif 000009
【図９】
0006365397.tif 000010
【図１０】
0006365397.tif 000011
【図１１】
0006365397.tif 000012
【図１２】
0006365397.tif 000013
【図１３】
0006365397.tif 000014
【図１４】
0006365397.tif 000015
【図１５】
0006365397.tif 000016
【図１６】
0006365397.tif 000017
【図１７】
0006365397.tif 000018
【図１８】
0006365397.tif 000019
【図１９】
0006365397.tif 000020
【図２０】
0006365397.tif 000021
【図２１】
0006365397.tif 000022