JP3907463B2 - Cadデータを管理するためのプログラムを記録したコンピュータ読み取り可能な記録媒体およびプログラム - Google Patents
Cadデータを管理するためのプログラムを記録したコンピュータ読み取り可能な記録媒体およびプログラム Download PDFInfo
- Publication number
- JP3907463B2 JP3907463B2 JP2001370946A JP2001370946A JP3907463B2 JP 3907463 B2 JP3907463 B2 JP 3907463B2 JP 2001370946 A JP2001370946 A JP 2001370946A JP 2001370946 A JP2001370946 A JP 2001370946A JP 3907463 B2 JP3907463 B2 JP 3907463B2
- Authority
- JP
- Japan
- Prior art keywords
- cad data
- processing
- cad
- function
- processing request
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Lifetime
Links
Images
Landscapes
- Stored Programmes (AREA)
Description
【発明の属する技術分野】
本発明はCADデータを管理するためのプログラムを記録したコンピュータ読み取り可能な記録媒体およびCADデータを管理するためのプログラムに関し、特に種類の異なるCADデータを処理するためのプログラムを記録した記録媒体および種類の異なるCADデータを処理するためのプログラムに関する。
【0002】
【従来の技術】
機械図面作成の分野では、3次元CAD(Computer-Aided Design)の導入が進んでいる。現在、市場には様々な種類の3次元CADアプリケーションソフトウェア(以下、「CADアプリケーション」という)が存在している。各CADアプリケーションでは、それぞれの特徴を出すために独自の機能を有している。CADアプリケーションで取り扱うデータのデータ構造は、そのCADアプリケーションの有している機能に適合したデータ構造となる。したがって、CADアプリケーションは、その種類ごとに個別のデータ構造のCADデータを生成する。しかも、CADアプリケーションはそれぞれ個別の機能が随時追加されるため、種別の異なるCADアプリケーション同士で互いにデータの互換性を保つのは困難である。
【0003】
一般に、種別の異なるCADデータを管理するために、各CADデータに対して、そのデータのCAD種別を表す属性項目を持たせている。CADデータにアクセスする際には、そのCADデータの属性項目を参照してCAD種別を判断し、種別に応じたCADアプリケーションを起動する。そして、起動されたCADアプリケーションがCADデータのロード処理を行い、そのCADデータの内容が表示される。
【0004】
【発明が解決しようとする課題】
機械部品を製造するメーカなどでは、部品納入先が指定するCADデータで機械図面を納める必要がある。そのため、部品納入先が複数あれば、部品メーカ内では、複数のCADアプリケーションが使用される。また、多くの会社では、事業体ごとにそれぞれの設計業務に合ったCADアプリケーションを導入している。そのため、社内には、データ構造の異なるCADデータが、幾種類も存在する。全社のシステムを考えた場合、これら異なるCADデータを統合的に管理したいという要求がある。
【0005】
しかし、3次元CADデータの多くはアセンブリ情報などのファイル同士の関連情報を内部的に持っている。そのため、複数のCADデータを統合的に管理するシステムを作るには、各CADデータに対応するCADアプリケーション固有のAPI(Application Programming Interface)を使用して、各CADデータをロードできるようにしなければならない。このように、CADデータの種別ごとにCADアプリケーション固有のAPIを用いた統合管理用のアプリケーションを作成するのには、多大な手間を要する。
【0006】
そのため、種別の異なるCADデータを統合して管理できるシステムを、容易に構築できることが望まれている。
本発明はこのような点に鑑みてなされたものであり、任意の種別のCADデータの管理機能を容易に追加することができる、CADデータを管理するためのプログラムを記録したコンピュータ読み取り可能な記録媒体を提供することを目的とする。
【0007】
また、本発明の別の目的は、任意の種別のCADデータの管理機能を容易に追加することができる、CADデータを管理するためのプログラムを提供することである。
【0008】
【課題を解決するための手段】
本発明では上記課題を解決するために、図1に示す機能をコンピュータに実行させるための、CADデータを管理するためのプログラムを記録したコンピュータ読み取り可能な記録媒体が提供される。本発明の記録媒体に記録されたプログラムを実行するコンピュータは、次の構成を有している。CADデータ処理手段1a,1b,1cは、それぞれ所定の種別のCADデータを処理する。処理要求出力手段6は、CADデータ処理手段1a,1b,1cに依存しない形式でCADデータに対する処理を特定する処理要求の集合があらかじめ定義されており、CADデータ処理手段1a,1b,1cで処理可能な種別のCADデータを指定した操作入力に応答して、操作入力に対応する処理要求を出力する。連携手段7は、処理要求をCADデータ処理手段1a,1b,1cが解釈可能な命令に変換する関数があらかじめ定義されており、処理要求出力手段6から処理要求が出力されると、関数を実行して、CADデータ処理手段1a,1b,1cに処理要求によって特定される処理を実行させる。
【0009】
これにより、処理要求出力手段6に対して操作入力が行われると、処理要求出力手段6から操作入力に対応する処理要求が出力される。すると、連携手段7により、処理要求に対応する関数が実行され、CADデータ処理手段1a,1b,1cが解釈可能な命令に変換されて、処理が実行される。
【0010】
このように、処理要求に応じた関数を、連携手段7に定義するだけで、CADデータ処理手段1a,1b,1cに対して連携処理を実行させることが可能となる。その結果、任意の種別のCADデータの管理機能の追加が容易となる。
【0011】
また、上記課題を解決するために、CADデータを管理するためのプログラムであって、コンピュータを、所定の種別のCADデータを処理するCADデータ処理手段、前記CADデータ処理手段に依存しない形式でCADデータに対する処理を特定する処理要求の集合があらかじめ定義されており、前記CADデータ処理手段で処理可能な種別のCADデータを指定した操作入力に応答して、操作入力に対応する前記処理要求を出力する処理要求出力手段、前記処理要求を前記CADデータ処理手段が解釈可能な命令に変換する関数があらかじめ定義されており、前記処理要求出力手段から前記処理要求が出力されると、前記関数を実行して、前記CADデータ処理手段に前記処理要求によって特定される処理を実行させる連携手段、として機能させるためのプログラムが提供される。
【0012】
このようなプログラムをコンピュータに実行させれば、処理要求出力手段に対して操作入力が行われると、処理要求出力手段から操作入力に対応する処理要求が出力される。すると、連携手段により、処理要求に対応する関数が実行され、CADデータ処理手段が解釈可能な命令に変換されて、処理が実行される。
【0013】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して説明する。
図1は、本発明の原理構成図である。図1には、本発明に係るプログラムを記録した記録媒体を実行するコンピュータ(以下、CADデータ管理装置という)で実現される機能が示されている。このCADデータ管理装置は、複数の種別のCADデータを管理するものであり、以下の要素で構成される。
【0014】
CADデータ処理手段1a,1b,1cは、それぞれ異なる種別のCADデータの生成、編集等を行う機能を有している。CADデータ処理手段1a,1b,1cは、たとえば、3次元CADアプリケーションソフトウェア(CADアプリケーション)で提供されるCAD機能である。各CADデータ処理手段1a,1b,1cそれぞれに対応して、CADインタフェースモジュール2a,2b,2cが用意されている。CADインタフェースモジュール2a,2b,2cには、処理要求出力手段6から出力される可能性のある処理要求に応じた複数の関数が定義されている。
【0015】
ロード手段3は、CADインタフェースモジュール2a,2b,2cをメモリにロードし、連携手段7による連携処理を可能な状態にする。ポインタ登録手段4は、ロード手段3がロードした関数のメモリ内の位置を指し示すポインタをポインタテーブル5に登録する。処理要求出力手段6は、CADデータを指定した操作入力に応答して、指定されたCADデータを処理可能なCADデータ処理手段に対する処理要求を出力する。連携手段7は、処理要求出力手段6から出力された処理要求に対応する関数があらかじめ定義されており、関数に定義された処理を、指定されたCADデータを処理可能なCADデータ処理手段と連携して実行する。
【0016】
このように、処理要求出力手段6から出力された処理要求に対応する関数を、連携手段7がCADデータ処理手段1a,1b,1cと連携して処理するようにした。そのため、処理要求出力手段6に対して操作入力を行う作業者は、指定したCADデータの種別等を意識せずに、CADデータを処理可能なCADデータ処理部に対して処理を行わせることができる。つまり、統一されたユーザインタフェースを用いて、複数種のCADデータに対する処理要求を出すことが可能となる。
【0017】
しかも、連携手段7にロードさせる関数を、たとえばインタフェースモジュールの形で用意するだけで、新たに追加されたCADデータ処理手段にも対応させることができる。用意すべき関数は、処理要求出力手段6において出力される可能性のある処理要求に対応付けて用意すればよい。すなわち、新たなCADデータ処理部に対応するCADインタフェースモジュールであっても、処理要求出力手段6において出力する処理要求に合わせた処理を定義すればよい。これは、各CADデータ処理手段それぞれにおいて定義されているAPIを理解して、それぞれのAPIに合わせたアプリケーションを作成するよりも、容易な作業である。
【0018】
以下に、本発明の実施の形態について詳細に説明する。
図2は、本実施の形態のシステム構成例を示すブロック図である。本実施の形態では、複数のクライアントコンピュータ10,10aとサーバコンピュータ30とがネットワーク24を介して接続されている。ネットワーク24は、たとえばイントラネットやインターネットである。
【0019】
図3は、クライアントコンピュータの構成例を示す図である。クライアントコンピュータ10は、CPU11によって装置全体が制御されている。CPU11には、バス17を介してRAM12、ハードディスク装置(HDD)13、グラフィック処理装置14、入力インタフェース15、および通信インタフェース16が接続されている。
【0020】
RAM12は、CPU11に実行させるOS(Operating System)やCADプログラムの少なくとも一部が一時的に格納される。また、RAM12には、CPU11による処理に必要な各種データが格納される。HDD13は、OSやCADのプログラムが格納される。また、HDD13には、CADデータが格納される。
【0021】
グラフィック処理装置14には、モニタ21が接続されている。グラフィック処理装置14は、CPU11からの命令に従って、CAD図面等の画像をモニタ21の画面に表示させる。入力インタフェース15には、キーボード22とマウス23とが接続されている。入力インタフェース15は、キーボード22やマウス23から送られてくる信号を、バス17を介してCPU11に送信する。
【0022】
通信インタフェース16は、ネットワーク24に接続されている。ネットワーク24は、たとえばインターネットのような広域ネットワークである。通信インタフェース16は、ネットワーク24を介して、他のコンピュータとの間でデータの送受信を行う。
【0023】
なお、サーバコンピュータ30も図3に示したクライアントコンピュータと同様の構成である。ただし、サーバコンピュータ30のHDDには、3次元CADのCADデータが格納され、CADデータのデータベース(DB)が構築される。すなわち、サーバコンピュータ30は、CADデータのデータベースサーバとして機能する。
【0024】
以上のようなハードウェア構成によって、本実施の形態の処理機能を実現することができる。
図4は、本実施の形態の機能ブロック図である。図4に示すように、本実施の形態では、DB40にCADデータ41が格納されている。CADデータ41は、特定のCADアプリケーションによって生成されている。そして、各CADデータ41は、そのデータを生成したCADデータ処理部71〜73に応じたデータ構造を有している。したがって、異なるCADデータ処理部71〜73から生成されたCADデータ同士は、異なるデータ構造を有している。たとえば、図中「CAD#1」と示したCADデータは、「CAD#1」と示したCADデータ処理部71に応じたデータ構造である。
【0025】
インタフェース(I/F)モジュール保持部50は、各CADデータ処理部71〜73に対応するCADインタフェースモジュール51を保持している。CADインタフェースモジュール51には、CADデータ管理部60からの要求を各CADデータ処理部71〜73に伝えるための関数が定義されている。
【0026】
CADデータ管理部60は、DB40に格納されているCADデータ41の管理を行う。また、CADデータ管理部60には、表示装置81や入力装置82が接続されている。そして、CADデータ管理部60は、表示装置81や入力装置82を介して、DB40を管理するための操作環境をユーザに提供している。
【0027】
CADデータ管理部60は、インタフェースモジュールロード部61、ポインタ登録部62、データベース管理部63、およびGUI64で構成される。
インタフェースモジュールロード部61は、CADデータ管理部60が起動された際に、インタフェースモジュール保持部50からRAM12に、インタフェースモジュール51をロードする。どのようなインタフェースモジュール51をロードすべきかについては、たとえば、レジストリに登録されている。ここでレジストリとは、コンピュータ上で動作するOSやアプリケーションの動作に必要な情報が格納されたデータベースである。本実施の形態では、CADインタフェースモジュールがOSにインストールされる際に、インストールされたCADインタフェースモジュールに関する情報がレジストリに設定されているものとする。
【0028】
さらに、インタフェースモジュールロード部61は、環境設定ファイル(たとえば、拡張子が「ini」のファイル)からインタフェースモジュールの名前や格納場所等を取得し、該当するインタフェースモジュール51をCADインタフェースモジュール保持部50から取得する。インタフェースモジュールロード部61は、取得したインタフェースモジュール51をRAM12に格納する。
【0029】
ポインタ登録部62は、インタフェースモジュールロード部61のロード処理を監視し、インタフェースモジュール51の各関数が格納されたRAM12内の場所(アドレス)を取得する。ポインタ登録部62は、ロードしたインタフェースモジュール51の各関数の関数名とその関数が格納されたアドレスとの組を生成する。ポインタ登録部62は、生成した関数名とアドレスとの組に基づいて、関数テーブル12bを生成し、生成した関数テーブル12bをRAM12に格納する。さらにポインタ登録部62は、ロードされたインタフェースモジュールの関数テーブル12bが格納されたRAM12内のアドレスを取得する。ポインタ登録部62は、取得した関数テーブルのアドレスとロードされたインタフェースモジュールの種別との組を、インタフェーステーブル12aに登録する。
【0030】
データベース管理部63は、DB40に格納されたCADデータの構成を解析し、その内容をGUI64に送る。また、データベース管理部63は、GUI64からの処理要求に応答して、DB40内のファイル操作を行う。たとえば、部品の形状を表すデータが1つのファイルに格納されていた場合に、そのファイルの削除やコピーの生成等を行うことができる。
【0031】
GUI64は、データベース管理部63からのデータに基づいて、DB40内のCADデータの構成を示す画像を生成し、表示装置81に送信する。またGUI64は、入力装置82からの入力信号に応じたコマンドを生成する。GUI64は、DB40内のファイルを操作するコマンドを生成した場合には、そのコマンドをデータベース管理部63に送る。また、GUI64は、CADデータ処理部71〜73に対する処理を要求するコマンドを生成した場合には、そのコマンドを渡すべきCADデータ処理部71〜73に対応するCADインタフェース91〜93を起動する。そして、GUI64は、起動したCADインタフェース91〜93に対してコマンドを渡す。
【0032】
具体的には、GUI64は、処理すべきCADデータの属性種別に対応するCADデータ処理部を判断する。次に、GUI64は、そのCADデータ処理部に対応する関数テーブルへのポインタを、インタフェーステーブル12aより取得する。さらに、GUI64は、取得したポインタで指し示された関数テーブル12bを参照し、コマンドに含まれる関数へのポインタを取得する。そして、CADインタフェース91〜93は、取得したポインタで指し示された場所に格納された関数の実行要求を出す。その結果、CADインタフェース91〜93が起動され、実行要求で指定された関数が実行される。
【0033】
CADデータ処理部71〜73は、操作入力に応答して、3次元CADのCADデータを生成する。各CADデータ処理部71〜73は、それぞれ異なる機能を有している。また、各CADデータ処理部71〜73は、それぞれ異なるデータ構造のCADデータを生成する。また、CADデータ処理部71〜73は、CADインタフェース91〜93からの要求に応じて、CADインタフェース91〜93との連携処理を行う。
【0034】
表示装置81は、CADデータ管理部60等から送られる画像情報に基づいて、画像を表示する。表示装置81は、たとえば図3に示すモニタ21である。また、入力装置82は、CADにより図面を作成する作業者からの操作入力を受け付け、CADデータ管理部60に入力する。入力装置82は、たとえば図3に示すキーボード22やマウス23である。
【0035】
CADインタフェース91〜93は、それぞれ個別のCADデータ処理部71〜73に対応して設けられている。CADインタフェース91〜93は、インタフェースモジュールロード部61がRAM12にロードしたCADインタフェースモジュール内に定義された関数を実行するプロセスである。CADインタフェース91〜93は、GUI64から渡されたコマンドに応じた関数を実行する。具体的には、GUI64から関数の場所を示すポインタがCADインタフェース91〜93に渡される。そして、ポインタで示された場所に格納された関数を、CADインタフェース91〜93が実行する。
【0036】
なお、各CADインタフェース91〜93による関数の実行は、対応関係にあるCADデータ処理部71〜73との間で連携して行われる。連携処理の際には、各CADインタフェース91〜93からCADデータ処理部71〜73に対して、処理要求が出力される。どのような処理要求を出力するかは、関数内に定義されている。CADデータ処理部71〜73が、各CADインタフェース91〜93からの処理要求に応じた処理を実行することで、連携処理が行われる。
【0037】
なお、図4に示した構成要素の中で、DB40は、たとえば図2に示したサーバコンピュータ30が有する機能である。また、DB40以外の構成要素は、たとえばクライアントコンピュータ10,10aが有する機能である。このように、DB40をサーバコンピュータ30に設けることで、CADデータを複数のクライアントコンピュータで共用することができる。
【0038】
次に、本実施の形態を実行する際にRAM12に格納されるデータについて説明する。
図5は、RAMのメモリマップの例を示す図である。この図のメモリマップ12cに示すように、RAM12には、複数のCADインタフェースモジュール51a,51b、インタフェーステーブル12a、複数の関数テーブル12ba,12bbが格納されている。図5では、アドレスを16進数で表している。図の例では、CAD#1のCADインタフェースモジュール51aが、「0x0002000」番地から「0x0013FFF」番地までのメモリ空間に格納されている。CAD#2のCADインタフェースモジュール51bが、「0x0014000」番地から「0x0019FFF」番地までのメモリ空間に格納されている。
【0039】
なお、各CADインタフェースモジュール51a,51bは、それぞれが関数の集合体である。関数とは、所定の要求に対応する処理を実行し、応答を返すまでの処理手順が定義されたサブルーチンプログラムである。CADインタフェースモジュール51a,51bは、たとえば、ダイナミックリンクライブラリ(DLL)の形式のファイルであらかじめHDD等に格納されている。また、本実施の形態では、各関数をメソッドと呼ぶこととする。
【0040】
図の例では、各CADインタフェースモジュール51a,51bに対して、ロードメソッドやセーブメソッドが用意されている。ロードメソッドは、CADデータをCADデータ処理部にロード処理を行わせるための関数である。セーブメソッドは、CADデータ処理部に、編集されたCADデータのセーブ処理を行わせるための関数である。
【0041】
インタフェーステーブル12aは、「0x0120000」番地から「0x0120FFF」番地までのメモリ空間に格納されている。「CAD#1」の関数テーブル12baが、「0x0121000」番地から「0x0121FFF」番地までのメモリ空間に格納されている。「CAD#2」の関数テーブル12bbが、「0x0122000」番地から「0x0122FFF」番地までのメモリ空間に格納されている。
【0042】
RAM12に格納されたインタフェーステーブル12aと関数テーブル12ba,12bbとは、たとえば以下のようなデータ構成になる。
図6は、インタフェーステーブルの一例を示す図である。インタフェーステーブル12aには、I/F種別とポインタとの欄が設けられている。I/F種別の欄には、ロードされたCADインタフェースモジュールが対応しているCADデータ処理部の名称が登録されている。ポインタの欄には、I/F種別の欄に登録された名称に関連づけて、ロードされたCADインタフェースモジュールの関数テーブルの格納先アドレスが登録されている。この格納先アドレスは、関数テーブルが格納された領域の先頭アドレスである。
【0043】
図6の例では、I/F種別が「CAD#1」のCADインタフェースモジュールの関数テーブルが、「0x0121000」番地から始まるアドレスに格納されていることを示している。また、I/F種別が「CAD#2」のCADインタフェースモジュールの関数テーブルが、「0x0122000」番地から始まるアドレスに格納されていることを示している。
【0044】
図7は、関数テーブルの一例を示す図である。関数テーブル12ba,12bbには、メソッド(関数の名称)の欄とポインタの欄とが設けられている。メソッドの欄には、関数の種別が登録されている。図7の例では、ロードやセーブ等のメソッドが登録されている。ポインタの欄には、各関数が格納された領域の先頭アドレスを指し示すポインタが登録されている。図7に示す「CAD#1」に対応する関数テーブル12baでは、ロードメソッドへのポインタとして「0x0002000」が登録されている。セーブメソッドへのポインタとして「0x0004000」が登録されている。
【0045】
以上のような構成のシステムにおいて、本実施の形態の処理が実行される。まず、CADインタフェース91〜93のロード手順について説明する。
図8は、ロード処理手順を示すフローチャートである。以下、図8のフローチャートをステップ番号に沿って説明する。なお、本実施の形態では、CADデータ管理部60の機能がクライアントコンピュータで起動された際に、以下のロード処理が実行されるものとする。
【0046】
[ステップS11]インタフェースモジュールロード部61は、コンピュータのHDDに格納されているレジストリ情報を取得する。
[ステップS12]インタフェースモジュールロード部61は、取得したレジストリ情報の内容を解析し、ロードすべきCADインタフェースモジュールの一覧を取得する。
【0047】
[ステップS13]インタフェースモジュールロード部61は、各CADインタフェースモジュールに関する情報を、環境設定ファイル(たとえば「ini」の拡張子が付けられたテキストファイル)より取得する。環境設定ファイルは、たとえばCADインタフェースモジュール毎に設けられている。このステップで取得される情報は、CADインタフェースモジュールのファイル名(たとえば、拡張子が「dll」であるダイナミックリンクライブラリのファイル名)や、種別に関する情報である。ここで、種別とは、どのCADデータ処理部(CADアプリケーション)に対応するインタフェースなのかを示す情報である。
【0048】
[ステップS14]インタフェースモジュールロード部61は、インタフェースモジュール保持部50より、1つのCADインタフェースモジュールをRAM12にロードする。
[ステップS15]インタフェースモジュールロード部61は、ロードしたCADインタフェースモジュールの関数テーブルを登録すべき記憶領域をRAM12内に確保する。そして、インタフェースモジュールロード部61は、確保した記憶領域の先頭のアドレス(ポインタ)を、インタフェーステーブルに登録する。
【0049】
[ステップS16]インタフェースモジュールロード部61は、ロードしたCADインタフェースモジュールに含まれるメソッド(関数)が格納されたアドレス(ポインタ)を、関数テーブルに登録する。
[ステップS17]インタフェースモジュールロード部61は、登録すべきCADインタフェースモジュールが他にあるか否かを判断する。インタフェースモジュールロード部61は、登録すべきCADインタフェースモジュールがある場合には、処理をステップS13に進め、登録すべきCADインタフェースモジュールがない場合には、ロード処理を終了する。
【0050】
このような処理をCADデータ管理部60の起動時に実行することにより、CADデータ管理部60から各種CADデータ処理部へのコマンドの処理時間が高速化される。
【0051】
次に、CADデータ管理部60によるCADデータ処理部へのコマンド出力方法について説明する。本実施の形態では、CADデータ管理部60のGUI64が、入力装置82からの入力内容を解析して、コマンドを生成する。作業者は、画面に表示されるアセンブリ構成から任意のデータを選択することで、処理対象のオブジェクト(部品データやアセンブリデータ)を指定することが出来る。
【0052】
図9は、アセンブリの構成を表示する画面例を示す図である。この表示画面100の上部には複数のメニューが設けられている。ファイルメニュー101は、データのロード等を行うためのメニューである。編集メニュー102は、ファイルのコピー等の操作を行うためのメニューである。表示メニュー103は、画面の表示方法等を設定するためのメニューである。オブジェクトメニュー104は、オブジェクトに対する専有(他の作業者による更新等の操作を禁止すること)の設定や専有解除の設定等を行うためのメニューである。ここで、オブジェクトとは、CADデータで定義される製品の構成要素(ユニット、サブユニット、部品)を示す。ツールメニュー105は、メニューバーのカスタマイズ等を行うためのメニューである。ヘルプメニュー106は、オンラインマニュアルの表示等のヘルプ機能を起動するためのメニューである。
【0053】
メニューバーの左下には、データ構成表示部107が設けられている。データ構成表示部107には、DBに格納されているデータの構成が表示される。図9の例では「Assy」という名のアセンブリ107aの下位構造として、「SubAssy」という名のサブアセンブリ107bが存在していることが表示されている。
【0054】
データ構成表示部107の右側には、データ表示部108が設けられている。データ表示部108には、データ構成表示部107で選択されたアセンブリを構成するデータが表示される。図9の例では、データ構成表示部107においてサブアセンブリ107bが選択されており、データ表示部108には、サブアセンブリ107bを構成する部品データ108a,108bが表示されている。
【0055】
図9に示したようなCADデータの構成表示処理は、図4に示すデータベース管理部63とGUI64とによって行われる。すなわち、データベース管理部63がDB40内のCADデータ41の内容を解析する。解析の結果判明したCADデータの木構造に基づいて、GUI64が図9に示したような画像を表示装置81表示させる。
【0056】
作業者は、表示されたCADデータ中の1以上のオブジェクトを選択し、データのロード指令を入力することで、クライアントコンピュータに対して、選択したオブジェクトのデータをロードさせることができる。データのロード指令の入力は、たとえばCADデータ管理部60のGUI64が提供する表示画面100内のメニューを選択することで行われる。
【0057】
図10は、CADデータをロードする際の表示画面例を示す図である。この例では、マウス等のポインティングデバイスを用いてマウスカーソル111を移動させ、所望のコマンドを選択することで、ロード指令を入力することができる。
【0058】
メニューバーのファイルメニュー101を選択すると、開くコマンド101aや終了コマンド101bを含むプルダウンメニューが表示される。開くコマンド101aは、CADデータをロードするためのコマンドである。終了コマンド101bは、CADデータ管理部60の処理を終了させるためのコマンドである。
【0059】
作業者が開くコマンド101aを選択すると、ロード種別を指定するためのサブメニュー(ポップアップメニュー)が開く。このサブメニューには、全ロードコマンド101c、部分ロードコマンド101d、および再ロードコマンド101eが含まれている。
【0060】
全ロードコマンド101cは、選択されているアセンブリが属するCADデータの全てをコンピュータにロードさせるためのコマンドである。たとえば、サブアセンブリを選択した状態で全ロードコマンド101cが指定されると、選択されたサブアセンブリを含む製品の全てのCADデータ(最上位のアセンブリデータ、最上位のアセンブリデータ配下の各サブアセンブリデータや部品データ)がロードされる。
【0061】
部分ロードコマンド101dは、製品の一部のデータをコンピュータにロードさせるためのコマンドである。たとえば、サブアセンブリを選択して部分ロードコマンド101dが指定されると、選択されたサブアセンブリデータおよびそのサブアセンブリの下位構造のデータがロードされる。
【0062】
再ロードコマンド101eは、参照目的で開いたデータに関する最新版のデータをロードし直すためのコマンドである。たとえば、設計責任者がある部品データをロードし、その部品形状を画面に表示させている最中にも、その部品の作業者が、部品データに変更を加え改訂版を保存する場合がある。このとき、設計責任者が再ロードコマンド101eを指令することで、改訂版の部品データを画面に表示させることができる。
【0063】
全ロードコマンド101cが選択されると、さらにサブメニュー(ポップアップメニュー)が表示される。サブメニューには、最新の状態ロードコマンド101f、最新のマスタロードコマンド101g、および登録時の状態ロードコマンド101hが含まれる。
【0064】
最新の状態ロードコマンド101fが指定されると、ロードすべきオブジェクトに関する最新の版数のデータがロードされる。最新のマスタロードコマンド101gが指定されると、ロードすべきオブジェクトにおける承認されたデータの中で、最新の版数のデータがロードされる。登録時の状態ロードコマンド101hが指定されると、ロードすべきオブジェクトのアセンブリデータに含まれる登録時情報に示されている版数のデータがロードされる。
【0065】
なお、部分ロードコマンド101dが選択された場合にも、全ロードコマンド101cが選択された場合と同様のサブメニューが表示される。
以上のような画面により、作業者が所望のロードコマンドを選択することで、ロード指令を入力することが出来る。ロード指令が入力されると、GUI64によって、そのロード指令に応じたロードコマンドが生成される。そして、インタフェース呼び出し処理を実行される。
【0066】
図11は、インタフェース呼び出し処理手順を示すフローチャートである。以下に、図11の処理をステップ番号に沿って説明する。
[ステップS21]GUI64は、指定オブジェクトをDB40から取り出す。指定オブジェクトとは、画面上で作業者が指定したオブジェクトである。
[ステップS22]GUI64は、取り出した指定オブジェクトに含まれる情報の中から、アプリケーション種別属性を取り出す。アプリケーション種別属性とは、そのオブジェクトがどのCADデータ処理部(CADアプリケーション)で取り扱うことができるのかを示す情報である。
【0067】
作業者により指定されたコマンドに、指定オブジェクトおよびそのオブジェクトのアプリケーション種別属性をパラメータとして付加した情報が、インタフェースモジュールへの処理要求となる。
[ステップS23」GUI64は、インタフェーステーブル12aを参照し、処理要求に含まれるアプリケーション種別属性に対応するCADアプリケーションのポインタを取得する。このポインタは、CADアプリケーションに対応する関数テーブルの場所(先頭アドレス)を示している。
【0068】
[ステップS24]GUI64は、処理要求を解析し、処理すべき関数を決定する。処理要求が1つの関数で実行される場合には、その関数が処理すべき関数として決定される。処理要求が複数の関数で実行される場合には、まだ実行していない関数の中で最も先に実行すべき関数が、処理すべき関数として決定される。たとえば、ある関数(第1の関数)の戻り値を利用して、他の関数(第2の関数)に対して処理を実行させる場合がある。この場合、第1の関数が、先に実行すべき関数となる。
【0069】
[ステップS25]GUI64は、ステップS23で取得したポインタで指し示された場所の関数テーブルの中から、ステップS24で決定された処理すべき関数を検索する。そして、処理すべき関数へのポインタを取得する。
[ステップS26]GUI64は、ステップS25で取得したポインタに基づいて関数を呼び出す。関数が呼び出されると、その関数を実行するためのCADインタフェース(プロセス)がOSによって生成される。そして、生成されたCADインタフェースが関数の処理を、CADデータ処理部と連携して実行する。関数の戻り値は、GUI64に返される。
【0070】
[ステップS27]GUI64は、他に処理すべき関数があるか否かを判断し、処理すべき関数があればステップS24に処理を進め、処理すべき関数がなければ処理を終了する。
【0071】
以上のようにして、CADデータ管理部60に対して入力されたコマンドを、CADインタフェースを介して、CADデータ管理部60とCADデータ処理部とが連携して実行することができる。
【0072】
ところで、GUI64で入力可能なコマンドには、全てのCADデータ処理部71〜73で共通のコマンドと、各CADデータ処理部71〜73それぞれ固有のコマンドとがある。共通のコマンドについては、そのコマンドによる関数呼び出しの形式があらかじめ決められている。一方、固有のコマンドについては、GUI64において、予約外のコマンドを処理するためのモジュール(関数)を呼び出すように定義されている。予約外のコマンドのパラメータとして、その処理名を受け渡す。呼び出された関数は、パラメータとして受け取った処理名に応じた処理を実行する。これにより、CADデータ処理部71〜73それぞれに固有の処理が実行される。
【0073】
以上のように本実施の形態では、CADデータ管理部60から出力される関数への処理要求の種類は、あらかじめ決められている。したがって、CADインタフェースを開発する者は、CADデータ処理部の機能に応じて、各処理要求に応じた関数の処理内容を定義しておけばよい。
【0074】
関数の処理をCADインタフェースで実行させることにより、CADデータ管理部60とCADインタフェースとの間での取り決めが少なくてすむ。その結果、CADインタフェースの開発が容易となる。
【0075】
なお、上記実施の形態では、CADインタフェースが独立のプロセスとして起動されている。CADデータ管理部60と各CADインタフェースとの間では、プロセス間のメッセージ交換が行われる。それぞれのCADインタフェースが独立したプロセスで実行されることで、種別の異なる複数のCADデータを指定した処理要求を、CADデータごとに並列で処理することが可能となる。
【0076】
[応用例]
本実施の形態では、次のような応用例が考えられる。
[CADインタフェースモジュール問い合わせ方式]
上記の実施の形態では、CADデータに対して、そのCADデータの属性種別があらかじめ定義されているものとしている。これには、新たに登録するCADデータに対して、そのCADデータの属性種別を設定する必要がある。しかし、各インタフェースに対して、そのインタフェースモジュールが処理可能なデータか否かを判断するメソッド(関数)を用意することでも、選択されたCADデータに応じたCADインタフェースの選択が可能となる。
【0077】
たとえば、インタフェースモジュールの先頭に、「IsMydata」というメソッド(関数)を定義する。このメソッドは、そのインタフェースモジュールが処理可能なデータか否かを判断する関数である。そして、コマンドの入力が行われる、GUI64が各インタフェースモジュールの先頭にある「IsMydata」というメソッドに対して、選択されたオブジェクトを処理可能かどうかの問い合わせを行う。GUI64は、処理可能であるという応答を返してきたCADインタフェースに対して、コマンドの処理要求を渡す。
【0078】
図12は、CADインタフェースモジュール問い合わせの処理手順を示すフローチャートである。図12のフローチャートを、ステップ番号に沿って説明する。
【0079】
[ステップS31]GUI64は、指定オブジェクトをDB40から取り出す。指定オブジェクトとは、画面上で作業者が指定したオブジェクトである。
[ステップS32]GUI64は、取り出した指定オブジェクトに含まれる情報の中から、アプリケーション種別属性を取り出す。
【0080】
[ステップS33]GUI64は、インタフェーステーブルおよび各関数テーブルを参照し、各CADインタフェースモジュールの先頭に記憶されている、「IsMydata」メソッドの位置を取得する。そして、指定オブジェクトの処理が可能かどうかを、「IsMydata」メソッドに問い合わせる。これにより、各CADインタフェースが起動され、それぞれのCADインタフェースにおいて「IsMydata」メソッドが実行される。実行結果は、GUI64に返される。たとえば、指定オブジェクトを処理できる場合には「1」のデータが返され、指定オブジェクトを処理できない場合には「0」のデータが返されるようにする。
[ステップS34]GUI64は、処理可能と応答したCADインタフェースの1つを、処理要求の出力先として決定する。
【0081】
以上のように、CADインタフェースモジュールの先頭に置かれたメソッドを用いることで、各CADデータを処理可能なCADインタフェースを見つけることが可能となる。
【0082】
[CADドライブ方式]
上記の実施の形態では、CADインタフェースモジュールを「ダイナミックインクライブラリ(DLL)」形式のファイルで格納しているが、デバイスドライバの形式でCADインタフェースモジュールをOSに組み込むこともできる。
【0083】
たとえば、各クライアントコンピュータに対して、各CADデータ処理部(CADアプリケーション)に対応したインタフェースモジュールを、デバイスドライバとしてロードする。このとき、インタフェースモジュールに対しては、「Unknown Drive」としてドライブを割り当てる。CADデータ管理部60のGUI64は、各CADデータ処理部に対する処理要求を、そのCADデータ処理部に対応するドライブに対して依頼する。これにより、各CADデータ処理部に対応する処理を実行することが可能となる。
【0084】
[サーバ処理方式]
CADデータ処理部ごとに処理を実行するサーバを定義しておくことで、各CADデータ処理部に対応する処理を実行することも可能である。この場合、CADデータ管理部60のGUI64は、各CADデータ処理部に対する処理要求を、そのCAD種別に対応したサーバに依頼する。サーバでは、依頼された処理要求に応じた処理を実行し、処理結果をクライアントコンピュータのGUIに返す。
【0085】
[コマンドメニューの動的切り替え方式]
上記実施の形態のCADデータ管理部60は、複数の種別のCADデータの構成を解析し、その構成を画面に表示することができる。そして、所望のCADデータのオブジェクトを選択し、コマンドメニューからコマンドを指定することで、選択したオブジェクトを処理可能なCADデータ処理部に対して、指定したコマンドに応じた処理要求が出される。
【0086】
しかし、コマンドメニューの中には、一部のCADデータ処理部しか対応していないコマンドもある。そこで、選択されたオブジェクトの種別に対応するCADデータ処理部が対応していないコマンドを、画面上で選択できないようにすることもできる。
【0087】
たとえば、各CADデータ処理部で対応しているコマンドの一覧を、各CADデータ処理部のCADインタフェースモジュールの先頭に定義する。
図13は、対応コマンド一覧の例を示す図である。この例では、CADデータ処理部ごとに、対応コマンド一覧201,202が設けられている。たとえば、「CAD#1」のCADデータ処理部の対応コマンド一覧201には、「全ロード」、「部分ロード」、「再ロード」、「セーブ」等のコマンドに対応する機能を有していることが示されている。「CAD#2」のCADデータ処理部の対応コマンド一覧202には、「全ロード」、「再ロード」、「セーブ」等のコマンドに対応する機能を有していることが示されている。この例では、「CAD#2」のCADデータ処理部は、部分ロードに対応する機能を有していない。そのため、「CAD#2」のCADデータ処理部に対応するCADデータが選択された場合には、CADデータ管理部60のGUI64において、部分ロードのコマンドを選択できなうようにする。
【0088】
選択できないコマンドは、プルダウンメニューやポップアップメニューに表示されないようにしてもよい。また、選択できないコマンドの文字の色を背景の色に近づけることで、そのコマンドが選択できないことを、画面上で明示してもよい。
【0089】
図14は、コマンドメニュー表示処理のフローチャートである。以下に、図14の処理を、ステップ番号に沿って説明する。
[ステップS41]GUI64は、指定オブジェクトをDB40から取り出す。[ステップS42]GUI64は、DB40から、指定オブジェクトのアプリケーション種別属性の情報を取り出す。
【0090】
[ステップS43]GUI64は、作業者の操作入力に応じたポップアップメニューに含まれる表示対象コマンドのリストを取得する。
[ステップS44]GUI64は、指定オブジェクトに対応するCADインタフェースモジュールの対応コマンドテーブルを参照し、ステップS43で取得した各表示対象コマンドが実行可能か否かを判断する。対応コマンドテーブルに含まれるコマンドのみが、そのCADインタフェースモジュールにおいて実行可能なコマンドである。
[ステップS45]GUI64は、ステップS44の処理で、実行可能なコマンドとされたコマンドの表示のみを選択可能として、ポップアップメニューを画面に表示する。
【0091】
このようにして、選択されているCADデータの種別に応じて、ポップアップメニューの内容を動的に切り替えることが可能となる。
なお、各CADデータ処理部で対応している機能のメニュー一覧を取り出すためのメソッド(関数)を、CADインタフェースモジュールの先頭に定義してもよい。この場合、メニューを表示する際には、GUI64は、メニュー一覧を取り出すためのメソッドを呼び出して、戻り値としてメニュー一覧を得る。そして、GUI64は、この戻り値に基づいて、ポップアップメニューの内容を動的に切り替える。
【0092】
また、CADデータ管理部60において標準で表示されるように設定されているメニュー中のコマンドに関しては、個別にCADインタフェースに問い合わせるようにしてもよい。たとえば、各CADインタフェースには、コマンドに対応する処理の可否に関する問い合わせに応答するメソッド(関数)を定義しておく。そして、画面上にコマンドメニューを表示する際には、GUI64が、メニューに含まれるコマンドに対応する処理の可否を、選択されたオブジェクトに対応するCADインタフェースに問い合わせる。そして、GUI64は、処理可能という応答があったコマンドのみを選択可能な状態して、ポップアップメニュー等のコマンドメニューを表示する。
【0093】
[CAD種別に応じたメッセージ表示方式]
上記の実施の形態によれば、複数の属性種別のCADデータを、CADデータ管理部60のGUI64を介して処理することができる。ところが、同じものの呼び名が、CADデータ処理部(CADアプリケーション)毎に異なる場合がある。そこで、CADデータ管理部60において、CADデータの種別属性ごとにメッセージファイルを用意する。そして、GUI64は、CADデータの処理を行った際には、そのCADデータの種別属性に対応するメッセージファイルからメッセージを取得し、そのメッセージを表示する。
【0094】
これにより、CADデータ管理部60内において実行する処理であっても、処理対象となるオブジェクト(部品やアセンブリ)の種別属性に応じたメッセージを表示させることができる。
【0095】
[オブジェクト処理メニュー分離方式]
CADデータ管理部60の機能には、CADデータ処理部に関係しない機能が含まれる。たとえば、サーバへのアクセスに関する環境設定等の処理は、CADデータ処理部に依存せずに行うことができる。そこで、コマンドメニュー内のコマンドが、CADデータ処理部に関係があるか否かを識別する識別子を、メニュー定義ファイルとして用意しておいてもよい。そして、GUI64は、指定されたコマンドがCADデータ処理部に関係のない処理を要求するコマンドであれば、CADデータ処理部に対応するCADインタフェースモジュールとは別に用意した、固定のモジュールを呼び出して処理を実行させる。
【0096】
[記録媒体に記録されたプログラムでの実現]
なお、上記の処理機能は、コンピュータによって実現することができる。その場合、コンピュータに実行させるべき機能の処理内容は、コンピュータで読み取り可能な記録媒体に記録されたプログラムに記述されており、このプログラムをコンピュータで実行することにより、上記処理がコンピュータで実現される。コンピュータで読み取り可能な記録媒体としては、磁気記録装置や半導体メモリ等がある。市場へ流通させる場合には、CD−ROM(Compact Disk Read Only Memory)やフレキシブルディスク等の可搬型記録媒体にプログラムを格納して流通させることができる。また、ネットワークを介して接続されたコンピュータの記憶装置にプログラムを格納しておき、ネットワークを介して接続された他のコンピュータにプログラムを転送することもできる。コンピュータで実行する際には、コンピュータ内のハードディスク装置等にプログラムを格納しておき、メインメモリにロードして実行することができる。
【0097】
(付記1) CADデータを管理するためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記コンピュータを、
所定の種別のCADデータを処理するCADデータ処理手段と、
前記CADデータ処理手段で処理可能な種別のCADデータを指定した操作入力に応答して、前記CADデータ処理手段に対する処理要求を出力する処理要求出力手段と、
前記処理要求出力手段から出力された前記処理要求に対応する関数があらかじめ定義されており、前記関数に定義された処理を前記CADデータ処理手段と連携して実行する連携手段と、
として機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【0098】
(付記2) 複数の種別のCADデータを管理するためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記コンピュータを、
それぞれが所定の種別のCADデータを処理する複数のCADデータ処理手段と、
CADデータを指定した操作入力に応答して、前記複数のCADデータ処理手段の中の、前記指定されたCADデータを処理可能なCADデータ処理手段に対する処理要求を出力する処理要求出力手段と、
前記処理要求出力手段から出力された前記処理要求に対応する関数があらかじめ定義されており、前記関数に定義された処理を、前記指定されたCADデータを処理可能なCADデータ処理手段と連携して実行する連携手段と、
として機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【0099】
(付記3) 前記処理要求出力手段は、前記複数の種別のCADデータの構成を表示し、表示された構成の少なくとも一部を選択する操作入力に基づいて、指定されたCADデータを判断することを特徴とする付記2記載の記録媒体。
【0100】
(付記4) 前記処理要求出力手段から出力される可能性のある処理要求に対応する関数をメモリにロードするロード手段と、
前記ロード手段がロードした前記関数のメモリ内の位置を指し示すポインタを、ポインタテーブルに登録するポインタ登録手段とをさらに有し、
前記連携手段は、前記ポインタ登録手段により前記ポインタテーブルに登録された前記ポインタに基づいて、前記処理要求出力手段から出力された前記処理要求に対応する関数が登録されている場所を判断することを特徴とする付記2記載の記録媒体。
【0101】
(付記5) 前記ロード手段は、前記複数のCADデータ処理手段毎に、それぞれに対応する関数がまとめられたモジュールをロードすることを特徴とする付記4記載の記録媒体。
【0102】
(付記6) 前記複数のCADデータ処理手段毎の前記各モジュールの中には、それぞれのモジュールに含まれる関数で対応可能なCADデータの種別を応答する関数が含まれていることを特徴とする付記5記載の記録媒体。
【0103】
(付記7) 前記処理要求出力手段は、前記指定されたCADデータを処理可能なCADデータ処理手段に対して、実行可能な処理内容を問い合わせる処理要求を出力し、出力した処理要求に対する応答内容に応じて、画面上で選択可能なメニューの種別を切り替えることを特徴とする付記2記載の記録媒体。
【0104】
(付記8) CADデータを管理するためのCADデータ管理方法であって、所定の種別のCADデータを処理するCADデータ処理機能で処理可能な種別のCADデータを指定した操作入力に応答して、前記CADデータ処理機能に対する処理要求を出力し、
出力された前記処理要求に対応する関数があらかじめ定義されており、前記関数に定義された処理を前記CADデータ処理機能と連携して実行すること、
を特徴とするCADデータ管理方法。
【0105】
(付記9) 複数の種別のCADデータを管理するCADデータ管理方法であって、
それぞれが所定の種別のCADデータを処理する複数のCADデータ処理機能が用意されており、CADデータを指定した操作入力に応答して、前記複数のCADデータ処理機能の中の、前記指定されたCADデータを処理可能なCADデータ処理機能に対する処理要求を出力し、
出力された前記処理要求に対応する関数があらかじめ定義されており、前記関数に定義された処理を、前記指定されたCADデータを処理可能なCADデータ処理手段と連携して実行すること、
を特徴とするCADデータ管理方法。
【0106】
(付記10) CADデータを管理するCADデータ管理装置であって、
所定の種別のCADデータを処理するCADデータ処理手段と、
前記CADデータ処理手段で処理可能な種別のCADデータを指定した操作入力に応答して、前記CADデータ処理手段に対する処理要求を出力する処理要求出力手段と、
前記処理要求出力手段から出力される前記処理要求に対応する関数があらかじめ定義されており、前記関数に定義された処理を前記CADデータ処理手段と連携して実行する連携手段と、
を有することを特徴とするCADデータ管理装置。
【0107】
(付記11) 複数の種別のCADデータを管理するCADデータ管理装置であって、
それぞれが所定の種別のCADデータを処理する複数のCADデータ処理手段と、
CADデータを指定した操作入力に応答して、前記複数のCADデータ処理手段の中の、前記指定されたCADデータを処理可能なCADデータ処理手段に対する処理要求を出力する処理要求出力手段と、
前記処理要求出力手段から出力された前記処理要求に対応する関数があらかじめ定義されており、前記関数に定義された処理を、前記指定されたCADデータを処理可能なCADデータ処理手段と連携して実行する連携手段と、
を有することを特徴とするCADデータ管理装置。
【0108】
(付記12) CADデータを管理するためのプログラムであって、
コンピュータを、
所定の種別のCADデータを処理するCADデータ処理手段と、
前記CADデータ処理手段で処理可能な種別のCADデータを指定した操作入力に応答して、前記CADデータ処理手段に対する処理要求を出力する処理要求出力手段と、
前記処理要求出力手段から出力された前記処理要求に対応する関数があらかじめ定義されており、前記関数に定義された処理を前記CADデータ処理手段と連携して実行する連携手段と、
として機能させるためのプログラム。
【0109】
(付記13) 複数の種別のCADデータを管理するためのプログラムであって、
コンピュータを、
それぞれが所定の種別のCADデータを処理する複数のCADデータ処理手段と、
CADデータを指定した操作入力に応答して、前記複数のCADデータ処理手段の中の、前記指定されたCADデータを処理可能なCADデータ処理手段に対する処理要求を出力する処理要求出力手段と、
前記処理要求出力手段から出力された前記処理要求に対応する関数があらかじめ定義されており、前記関数に定義された処理を、前記指定されたCADデータを処理可能なCADデータ処理手段と連携して実行する連携手段と、
として機能させるためのプログラム。
【0110】
【発明の効果】
以上説明したように本発明では、処理要求出力手段から出力された処理要求に対応する関数を実行することで、連携手段がCADデータ処理手段に依存しない形式の処理要求をCADデータ処理手段が解釈可能な命令に変換するようにしたため、処理要求出力手段が出力する処理要求に応じた関数を連携手段に定義しておくだけで、CADデータの種別に応じたCADデータ処理手段に処理を行わせることができる。そのため、任意の種別のCADデータの管理機能を容易に追加することができる。
【図面の簡単な説明】
【図1】本発明の原理構成図である。
【図2】本実施の形態のシステム構成例を示すブロック図である。
【図3】クライアントコンピュータの構成例を示す図である。
【図4】本実施の形態の機能ブロック図である。
【図5】RAMのメモリマップの例を示す図である。
【図6】インタフェーステーブルの一例を示す図である。
【図7】関数テーブルの一例を示す図である。
【図8】ロード処理手順を示すフローチャートである。
【図9】アセンブリの構成を表示する画面例を示す図である。
【図10】CADデータをロードする際の表示画面例を示す図である。
【図11】インタフェース呼び出し処理手順を示すフローチャートである。
【図12】CADインタフェースモジュール問い合わせの処理手順を示すフローチャートである。
【図13】対応コマンド一覧の例を示す図である。
【図14】コマンドメニュー表示処理のフローチャートである。
【符号の説明】
1a,1b,1c CADデータ処理手段
2a,2b,2c インタフェース(I/F)モジュール
3 ロード手段
4 ポインタ登録手段
5 ポインタテーブル
6 処理要求出力手段
7 連携手段
10,10a クライアントコンピュータ
11 CPU
12 RAM
13 HDD
14 グラフィク処理装置
15 入力インタフェース
16 通信インタフェース
24 ネットワーク
30 サーバコンピュータ
Claims (7)
- CADデータを管理するためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記コンピュータを、
所定の種別のCADデータを処理するCADデータ処理手段、
前記CADデータ処理手段に依存しない形式でCADデータに対する処理を特定する処理要求の集合があらかじめ定義されており、前記CADデータ処理手段で処理可能な種別のCADデータを指定した操作入力に応答して、操作入力に対応する前記処理要求を出力する処理要求出力手段、
前記処理要求を前記CADデータ処理手段が解釈可能な命令に変換する関数があらかじめ定義されており、前記処理要求出力手段から前記処理要求が出力されると、前記関数を実行して、前記CADデータ処理手段に前記処理要求によって特定される処理を実行させる連携手段、
として機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。 - 複数の種別のCADデータを管理するためのプログラムを記録したコンピュータ読み取り可能な記録媒体であって、
前記コンピュータを、
それぞれが所定の種別のCADデータを処理する複数のCADデータ処理手段、
前記CADデータ処理手段に依存しない形式でCADデータに対する処理を特定する処理要求の集合があらかじめ定義されており、CADデータを指定した操作入力に応答して、操作入力に対応する前記処理要求を出力する処理要求出力手段、
前記処理要求を前記CADデータ処理手段が解釈可能な命令に変換する関数がそれぞれの前記処理要求出力手段についてあらかじめ定義されており、前記処理要求出力手段から前記処理要求が出力されると、前記関数を実行して、指定されたCADデータを処理可能な前記CADデータ処理手段に前記処理要求によって特定される処理を実行させる連携手段、
として機能させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。 - 前記処理要求出力手段は、前記複数の種別のCADデータの構成を表示し、表示された構成の少なくとも一部を選択する操作入力に基づいて、指定されたCADデータを判断することを特徴とする請求項2記載の記録媒体。
- 前記コンピュータを、更に、
前記処理要求出力手段から出力される可能性のある前記処理要求に対応する前記関数をメモリにロードするロード手段、
前記ロード手段がロードした前記関数のメモリ内の位置を指し示すポインタを、ポインタテーブルに登録するポインタ登録手段として機能させ、
前記連携手段は、前記ポインタ登録手段により前記ポインタテーブルに登録された前記ポインタに基づいて、前記処理要求出力手段から出力された前記処理要求に対応する前記関数が登録されている場所を判断することを特徴とする請求項2記載の記録媒体。 - 前記ロード手段は、前記複数のCADデータ処理手段毎に、それぞれに対応する前記関数がまとめられたモジュールをロードすることを特徴とする請求項4記載の記録媒体。
- CADデータを管理するためのプログラムであって、
コンピュータを、
所定の種別のCADデータを処理するCADデータ処理手段、
前記CADデータ処理手段に依存しない形式でCADデータに対する処理を特定する処理要求の集合があらかじめ定義されており、前記CADデータ処理手段で処理可能な種別のCADデータを指定した操作入力に応答して、操作入力に対応する前記処理要求を出力する処理要求出力手段、
前記処理要求を前記CADデータ処理手段が解釈可能な命令に変換する関数があらかじめ定義されており、前記処理要求出力手段から前記処理要求が出力されると、前記関数を 実行して、前記CADデータ処理手段に前記処理要求によって特定される処理を実行させる連携手段、
として機能させるためのプログラム。 - 複数の種別のCADデータを管理するためのプログラムであって、
コンピュータを、
それぞれが所定の種別のCADデータを処理する複数のCADデータ処理手段、
前記CADデータ処理手段に依存しない形式でCADデータに対する処理を特定する処理要求の集合があらかじめ定義されており、CADデータを指定した操作入力に応答して、操作入力に対応する前記処理要求を出力する処理要求出力手段、
前記処理要求を前記CADデータ処理手段が解釈可能な命令に変換する関数がそれぞれの前記処理要求出力手段についてあらかじめ定義されており、前記処理要求出力手段から前記処理要求が出力されると、前記関数を実行して、指定されたCADデータを処理可能な前記CADデータ処理手段に前記処理要求によって特定される処理を実行させる連携手段、
として機能させるためのプログラム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2001370946A JP3907463B2 (ja) | 2000-12-26 | 2001-12-05 | Cadデータを管理するためのプログラムを記録したコンピュータ読み取り可能な記録媒体およびプログラム |
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2000395662 | 2000-12-26 | ||
| JP2000-395662 | 2000-12-26 | ||
| JP2001370946A JP3907463B2 (ja) | 2000-12-26 | 2001-12-05 | Cadデータを管理するためのプログラムを記録したコンピュータ読み取り可能な記録媒体およびプログラム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2002259469A JP2002259469A (ja) | 2002-09-13 |
| JP3907463B2 true JP3907463B2 (ja) | 2007-04-18 |
Family
ID=26606703
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2001370946A Expired - Lifetime JP3907463B2 (ja) | 2000-12-26 | 2001-12-05 | Cadデータを管理するためのプログラムを記録したコンピュータ読み取り可能な記録媒体およびプログラム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP3907463B2 (ja) |
Families Citing this family (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR2945136A1 (fr) * | 2009-05-04 | 2010-11-05 | Turbomeca | Structure de donnees d'une nomenclature |
| KR101485561B1 (ko) * | 2010-12-21 | 2015-01-22 | 현대중공업 주식회사 | Am 캐드용 dll의 실시간 로딩 사용방법 |
| JP6932379B2 (ja) * | 2018-07-12 | 2021-09-08 | 株式会社Arblet | データ管理サーバ、データ管理方法及びデータ管理プログラム |
| JP7084894B2 (ja) * | 2019-06-26 | 2022-06-15 | 株式会社日立製作所 | リソース管理システム、リソース割当方法 |
-
2001
- 2001-12-05 JP JP2001370946A patent/JP3907463B2/ja not_active Expired - Lifetime
Also Published As
| Publication number | Publication date |
|---|---|
| JP2002259469A (ja) | 2002-09-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5063870B2 (ja) | 文脈アクション発行 | |
| US20020109725A1 (en) | Control apparatus and control method for starting application software on a computer, and multi-monitor computer, client-server system, and storage medium using the same | |
| JPH11296541A (ja) | 構造化データ管理システム及び構造化データ管理プログラムを記録したコンピュータ読み取り可能な記録媒体 | |
| JPH05241797A (ja) | ソフトウェア・アプリケーション・パッケージ準備支援データ処理システム | |
| JP2002024020A (ja) | 画面制御プログラム、動的表示情報取得プログラム、画面表示トランザクションプログラム、画面コンポーネントインタフェースプログラム、画面プログラム作成方法 | |
| US20010025287A1 (en) | Document integrated management apparatus and method | |
| US6571203B2 (en) | CAD-data management system having a plurality of interfaces corresponding to a plurality of CAD applications | |
| JPH09218780A (ja) | 文書処理システムのジョブチケットプログラム装置及び方法 | |
| EP1909170B1 (en) | Method and system for automatically generating a communication interface | |
| JP3907463B2 (ja) | Cadデータを管理するためのプログラムを記録したコンピュータ読み取り可能な記録媒体およびプログラム | |
| JP2000099317A (ja) | ユーザインタフェース設計装置及び方法 | |
| JP6157192B2 (ja) | 情報処理装置、制御方法およびコンピュータプログラム | |
| JP6331307B2 (ja) | 情報処理装置、情報処理装置の制御方法、およびプログラム | |
| JPH1196014A (ja) | プログラム部品配信装置および方法 | |
| JP2645016B2 (ja) | メニュー切替え処理方式 | |
| JP6531855B2 (ja) | 情報処理装置、情報処理装置の制御方法、およびプログラム | |
| JP2005078119A (ja) | ソフトウェア開発支援装置およびソフトウェア開発支援方法およびプログラムおよび記録媒体 | |
| JP2002157386A (ja) | ワークフロー管理方法および装置並びにその処理プログラム並びにその処理プログラムを格納した記録媒体 | |
| JP2015143975A (ja) | ワークフローシステム、ワークフロー管理装置、ワークフロー管理方法及びプログラム | |
| JP5790807B2 (ja) | 情報処理装置、情報処理方法、及びコンピュータプログラム | |
| JP4972497B2 (ja) | 業務管理処理システム、業務管理処理方法及び業務管理処理プログラム | |
| JP2004302522A (ja) | ショートカットボタンによるメニュー画面制御方法及びコンピュータプログラム | |
| JP2000010769A (ja) | ユーザインタフェース設計装置及び方法 | |
| JPH11134362A (ja) | データ表示制御システムおよびその記録媒体 | |
| JP2010009145A (ja) | ウェブページ生成システム及びウェブページ生成プログラム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040524 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20060926 |
|
| A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20061124 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20070116 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20070116 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 3907463 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110126 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110126 Year of fee payment: 4 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120126 Year of fee payment: 5 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130126 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130126 Year of fee payment: 6 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140126 Year of fee payment: 7 |
|
| EXPY | Cancellation because of completion of term |