(57)【要約】【課題】　オブジェクトの位置及び形状に関する各種設定を容易にする。【解決手段】　ウインドウ４０内には、作成中の図面を表示する図面表示領域４１、マウスカーソルの位置の座標を画面表示する座標フィールド４２、操作対象となっているオブジェクトの現在のパラメータを表示するパラメータフィ−ルド４３が設けられている。カーソル制御部３１は、マウス１７からの入力を受け取り、ウインドウ４０内のマウスカーソル４１ａの位置を制御する。マウスカーソル４１ａの現在の位置を座標フィールド制御部３２に通知する。マウス１７の操作によってコマンドが選択されると、そのコマンドをコマンド処理部３３に通知するとともに、マウスカーソル４１ａの現在の位置を知らせる。逆に、座標フィールド制御部３２からマウスカーソル４１ａの座標情報を受け取ると、その位置へマウスカーソル４１ａを移動する。【選択図】　図３
2004086925.tif 000002
【特許請求の範囲】
【請求項１】
　図形を画面上に配置していくことにより図面を作成するＣＡＤシステムにおいて、
　所望の位置及び形状で対象図形を配置するためのコマンドを選択するコマンド選択手段と、
　画面上のカーソルを移動するカーソル移動手段と、
　前記コマンドが選択されると、画面上に既に配置されている既確定図形のうち、前記カーソルから所定の距離以内にあり且つ前記対象図形を重ねて配置できる関連図形を検出する関連図形検出手段と、
　前記コマンドが選択されると、前記関連図形が検出されるまでは前記カーソル上に前記対象図形を表示しており、前記関連図形が検出されると前記対象図形を前記関連図形上に表示し、前記コマンドの実行指令が出力された時の表示位置を前記対象図形の配置基準位置とする図形表示位置制御手段と、
　を有することを特徴とするＣＡＤシステム。
【請求項２】
　前記図形表示位置制御手段は、前記関連図形上で前記カーソルに最も接近した位置に前記対象図形を移動することを特徴とする請求項１記載のＣＡＤシステム。
【請求項３】
　図形を画面上に配置していくことにより図面を作成するＣＡＤシステムにおいて、
　所望の位置及び形状で対象図形を配置するためのコマンドを選択するコマンド選択手段と、
　前記コマンドが選択された際に前記対象図形の配置基準位置を確定する配置位置確定手段と、
　画面上のカーソルを移動するカーソル移動手段と、
　前記配置基準位置が確定した前記対象図形の位置または形状を、前記カーソルの位置に応じて前記配置基準位置を基準として変化させ、前記コマンドの実行指令が出力された時の位置及び形状で前記対象図形を配置する図形形状制御手段と、
　を有することを特徴とするＣＡＤシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
　本発明はオブジェクトに対応した図形を画面上に配置していくことにより図面を作成するＣＡＤシステムに関し、特に建築用図面の作成等に使用されるＣＡＤシステムに関する。
【背景技術】
【０００２】
　建築用のＣＡＤシステムでは、柱、壁、建具等をオブジェクトとして取り扱う。そして、各種オブジェクトを示す図形を画面上の所望の位置に配置することにより、建築用の図面を作成する。図形の配置場所の指定には、マウス等のポインティングデバイスを用いるのが一般的である。
【０００３】
　ところで、画面上に図形を配置する際には、詳細な設定事項が必要となる場合がある。例えば、柱の間に壁を配置するときに、柱の面と壁の面とが１つの平面を形成するように配置したい場合である。この場合、画面上では、柱を示す図形の辺と壁を示す図形の辺とが一直線上になるようにしなければならない。単純な方法として、壁を配置するときにマウス等のポインタの位置を微調整をしながら目的の場所を指定することもできるが、この方法ではマウス操作が難しく、所望の位置を指定するのに時間がかかってしまう。
【０００４】
　そこで、従来のＣＡＤシステムでは、寄り寸法を設定できるようにしている。寄り寸法の設定は、コマンド入力のモードで、キーボードからのコマンド入力によって行う。寄り寸法を設定すると、設定された値に応じて図形を配置する位置が基準点からずれる。従って、寄り寸法を適当な値とすることにより、柱を示す図形の辺と、壁を示す図形の辺とを一致させることができる。
【０００５】
　また、建築用の図面を作成する際には、建築特有の配置ルールに従って図面を作成する必要がある。例えば建具は、壁等の上にしか配置できない。従って、建築用の設計図面を作成する設計者は、このようなルールを意識しながら図形を配置すべき位置を指定する。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
　しかし、寄り寸法等の各種パラメータを指定する場合に、コマンドラインからその値を指定するには、多数あるパラメータの名称やその内容を知っていなければならない。しかも、パラメータの名称は単純な文字列に簡略化されており、その名称だけではパラメータの内容を理解することはできない。そのため、パラメータに関するある程度の以上の知識を有する者でなければ、ＣＡＤシステムを使いこなすことができなかった。
【０００７】
　また、建築用図面には特有の配置ルールがあるため、画面上に表示されている図形が何のオブジェクトを表したものであり、これから配置しようとするオブジェクトとの間にどのような関係があるのかを常に意識していなければならない。さらに、オブジェクトによっては、配置すべき位置以外に形状も設定する必要がある。例えば扉であれば、その扉がどの方向に開くのか等である。その結果、建築用の設計図面を作成する設計者にかかる負担が過大であった。
【０００８】
　本発明はこのような点に鑑みてなされたものであり、オブジェクトの位置及び形状に関する各種設定を容易に行うことができるＣＡＤシステムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
　本発明では上記課題を解決するために、所望の位置及び形状で対象図形を配置するためのコマンドを選択するコマンド選択手段と、画面上のカーソルを移動するカーソル移動手段と、前記コマンドが選択されると、画面上に既に配置されている既確定図形のうち、前記カーソルから所定の距離以内にあり且つ前記対象図形を重ねて配置できる関連図形を検出する関連図形検出手段と、前記コマンドが選択されると、前記関連図形が検出されるまでは前記カーソル上に前記対象図形を表示しており、前記関連図形が検出されると前記対象図形を前記関連図形上に表示し、前記コマンドの実行指令が出力された時の表示位置を前記対象図形の配置基準位置とする図形表示位置制御手段と、を有することを特徴とするＣＡＤシステムが提供される。
【００１０】
　この構成によれば、カーソルが関連図形と離れている間はカーソル上に対象図形が表示され、カーソルが関連図形に接近すると関連図形上に対象図形が移動する。この状態でコマンドの実行指令を入力することにより、対象図形を容易に関連図形上に配置することができる。
【００１１】
　また、所望の位置及び形状で対象図形を配置するためのコマンドを選択するコマンド選択手段と、操作対象である対象図形の配置基準位置を確定する配置位置確定手段と、画面上のカーソルを移動するカーソル移動手段と、前記配置基準位置が確定した前記対象図形の位置または形状を、前記カーソルの位置に応じて前記配置基準位置を基準として変化させ、前記コマンドの実行指令が出力された時の位置及び形状で前記対象図形を配置する図形形状制御手段と、を有することを特徴とするＣＡＤシステムが提供される。
【００１２】
　この構成によれば、カーソルの位置を移動することにより、配置基準位置が確定した状態の対象図形の位置や形状を変化させることができる。そのため、配置位置や形状の確定が容易になる。
【発明の効果】
【００１３】
　以上説明したように本発明では、選択されたコマンドの対象図形を表示する際に、その対象図形を重ねて配置できる関連図形がカーソルの近くにある場合には、カーソル上に表示していた図形を関連図形上に移動し、移動範囲を関連図形の上に限ったため、図形を配置する位置を容易に選択することができる。
【００１４】
　また、図形の配置基準位置が確定し、方向性を有する各種パラメータの指定方向が確定していない状態で、カーソルの位置に応じてその指定方向を変化させ同時に図形の形状又は位置を変化させるようにしたため、カーソルの移動によって容易に配置位置や形状を特定することができる。
【発明を実施するための最良の形態】
【００１５】
　以下、本発明の実施の形態を図面に基づいて説明する。
　図１はパラメータの数値入力を容易にしたＣＡＤシステムの構成図である。コマンド選択手段１は、所望の位置及び形状で対象図形を配置するためのコマンドを選択する。パラメータ管理手段２は、選択されたコマンドの実行に用いられるパラメータ２ａを保持しており、パラメータ２ａに設定されている値を表示画面３内のパラメータフィールド３ａに表示する。
【００１６】
　図面の作成者は、パラメータフィールド３ａを確認して選択したコマンドに必要なパラメータを認識する。そして、パラメータ入力手段５により、パラメータに対して所望の値を入力する。コマンド実行手段４は、コマンドの実行指令があると、パラメータ２ａに設定されている値を用いて対象図形の位置及び形状を確定し、表示画面３内の図面表示領域３ｂに対象図形を配置する。
【００１７】
　これにより、多数あるパラメータの名称やその内容を記憶していなくても、必要なパラメータの設定を的確に行うことができる。以下、この機能をポジショニングボックス機能と呼ぶこととする。
【００１８】
　次に、図１の内容を実施するためのＣＡＤシステムのハードウェア構成の一例を説明する。図２はＣＡＤシステムのハードウェアの構成を示すブロック図である。なお、この例では、システムはマルチウインドウシステムであり、ＣＡＤソフトは建築用のＣＡＤソフトであるものとする。
【００１９】
　このＣＡＤシステムは、プロセッサ（ＣＰＵ）１１を中心に構成されている。プロセッサ１１は、ＲＯＭ１２に格納されているプログラム群に従ってバス２２に接続された各装置の基本動作を制御する。また、プロセッサ１１は、ＲＡＭ１３にロードされたオペレーティングシステム（ＯＳ）に従って、各種データ処理を実行する。ＲＡＭ１３には、電源投入時にはＯＳがロードされ、建築用図面作成時にはＣＡＤソフトのプログラムがロードされる。また、ＲＡＭ１３には、作業中のプログラムの一時的な計算データ、表示データ等も格納される。
【００２０】
　グラフィック制御装置１４は、図形データや文字データ等のディジタル信号を表示用のラスタ信号に変換し、表示装置１５に送る。表示装置１５は、これらの図形や文字等を表示する。表示装置１５には、ＣＲＴあるいは液晶表示装置が使用される。
【００２１】
　キーボード１６は、数値キー、文字キー等から構成され、ＣＡＤソフトで定義されたオブジェクトに対するパラメータの入力や、各種ＣＡＤデータの表示指令等を行う。マウス１７は、表示装置１５上のマウスカーソルの位置を制御し、マウスカーソルの位置における各種指令を入力する。
【００２２】
　ハードディスクドライブ（ＨＤＤ）１９には、ＲＡＭ１３にロードすべきオペレーティングシステムのプログラムやＣＡＤソフトのプログラムに加え、ＣＡＤデータ等の各種データが格納されている。ＣＡＤデータは、ＣＡＤソフトで認識できるデータ形式で格納されている。フロッピィ・ディスク・ドライブ（ＦＤＤ）１８は、フロッピィ・ディスク１８ａに格納されたデータを読み出したり、作成したデータをフロッピィ・ディスク１８ａに書き込んだりする。
【００２３】
　プリンタ２０は、ＣＡＤソフトを用いて作成された図面等を用紙にプリントアウトする。プロッタ２１は、セットされたペンにより、用紙の上に手で描くようにして図面を作図する。
【００２４】
　このようなハードウェア構成を用いて、ポジショニングボックス機能を具体的に説明する。
　図３はポジショニングボックス機能の構成を示すブロック図である。ウインドウ４０内には、作成中の図面を表示する図面表示領域４１、マウスカーソルの位置の座標を画面表示する座標フィールド４２、操作対象となっているオブジェクトの現在のパラメータを表示するパラメータフィールド４３が設けられている。
【００２５】
　カーソル制御部３１は、マウス１７からの入力を受け取り、ウインドウ４０内のマウスカーソル４１ａの位置を制御する。そして、マウスカーソル４１ａの現在の位置を座標フィールド制御部３２に通知する。また、マウス１７の操作によってコマンドが選択されると、そのコマンドをコマンド処理部３３に通知するとともに、マウスカーソル４１ａの現在の位置を知らせる。逆に、座標フィールド制御部３２からマウスカーソル４１ａの座標情報を受け取ると、その位置へマウスカーソル４１ａを移動する。
【００２６】
　座標フィールド制御部３２は、座標データ保持領域と相対座標データ保持領域とを内部に有している。カーソル制御部３１からマウスカーソル４１ａの位置情報を受け取ると、そのデータを座標データ保持領域に設定するとともに前回指定した座標との差分（相対座標）を相対座標データ保持領域に設定する。さらに、設定した座標データと相対座標データとを、座標フィールド４２に表示する。また、キーボード１６から座標フィールド４２内の座標を指定して座標の更新指令が入力されると、その値を保持し座標フィールド４２に反映するとともに、更新された座標情報をカーソル制御部３１へ伝える。
【００２７】
　コマンド処理部３３は、カーソル制御部３１からコマンドが指令されると、そのコマンドに応じた図形４１ｂを図面表示領域４１内のマウスカーソル４１ａの位置に表示する。その際、選択されたコマンドに必要なパラメータの情報をパラメータフィールド制御部３４へ通知する。また、パラメータフィールド制御部３４からパラメータの変更値を受け取ると、その値に応じて図形４１ｂの形状を変更する。さらに、カーソル制御部３１からコマンドの確定指令を受け取ると、その時に設定されているパラメータに従ってコマンドを実行する。
【００２８】
　パラメータフィールド制御部３４は、パラメータを格納するデータ保持領域を有している。コマンド処理部３３から現在選択されているコマンドに必要なパラメータの入力項目名を取得すると、入力項目名をパラメータフィールド４３に表示する。その際、各パラメータのデフォルト値を取得しデータ保持領域に格納するとともに、その値をパラメータフィールド４３に表示する。また、キーボード１６からパラメータの更新指令が入力されると、更新された値をデータ保持領域に格納し、その値をパラメータフィールド４３に表示する。さらに、表示したパラメータの値をコマンド処理部３３に通知する。なお、コマンド処理部３３から各パラメータが入力可能か否かの情報も取得しており、キーボード１６からの入力が入力不可能なパラメータに対するものであった場合には、その入力を拒否する。
【００２９】
　図４はポジショニングボックス機能の処理手順を示すフローチャートである。この処理は、マウス操作によりイベントが入力された際に、座標フィールド制御部３２とパラメータフィールド制御部３４とが実行する処理を示している。
【００３０】
　〔Ｓ１〕カーソル制御部３１は、入力されたイベントの種類を判断する。カーソル移動であればステップＳ２に進み、コマンド選択であればステップＳ８に進み、コマンド実行開始であればステップＳ１６に進む。
【００３１】
　以下のステップＳ２からステップＳ７まではカーソル移動のイベントと判断された場合の処理であり、座標フィールド制御部３２が実行する。
　〔Ｓ２〕カーソルの位置情報を取得する。
【００３２】
　〔Ｓ３〕前のコマンド実行時の座標データ（前座標データ）を取得する。
　〔Ｓ４〕カーソル位置情報と前座標データとから相対座標を計算する。
　〔Ｓ５〕カーソル位置情報を座標データ保持領域に設定する。
【００３３】
　〔Ｓ６〕相対座標を相対座標データ保持領域に設定する。
　〔Ｓ７〕座標データ保持領域内のデータを座標フィールド４２の「座標」の表示領域に表示し、相対座標データ保持領域内のデータを「距離」の表示領域に表示する。その後、ステップＳ１に戻る。
【００３４】
　以下のステップＳ８からステップＳ１５まではコマンド選択のイベントと判断された場合の処理であり、パラメータフィールド制御部３４が実行する。
　〔Ｓ８〕選択されたコマンドに対する入力項目の入力項目名を取得する。
【００３５】
　〔Ｓ９〕入力項目のデフォルト値をコマンド処理部３３から取得する。
　〔Ｓ１０〕パラメータフィールド４３に入力項目名及びデフォルト値を表示し、コマンド処理部３３に伝達する。
【００３６】
　〔Ｓ１１〕入力を受け付け、その入力の種類を判別し、キーボード１６からのパラメータ入力であればステップＳ１２に進み、パラメータ確定操作（タブキー、リターンキー、シフトタブキー）入力時にはステップＳ１４に進む。また、コマンド実行開始等の他のイベントが発生した場合にはステップＳ１に戻る。
【００３７】
　〔Ｓ１２〕入力データをデータ保持領域に設定する。
　〔Ｓ１３〕データ保持領域の内容をパラメータフィールドに表示する。
　〔Ｓ１４〕パラメータフィールドからデータを取得する。
【００３８】
　〔Ｓ１５〕コマンド基本作図クラスを通して、パラメータフィールドに設定されているデータをコマンド処理部３３に伝達し、ステップＳ１１に進む。なお、このデータを受け取ったコマンド処理部３３は、そのパラメータの値に応じて画面表示している図形の形状を変化させる。
【００３９】
　次のステップＳ１６は、コマンド実行のイベントと判断された際の処理である。
　〔Ｓ１６〕座標フィールド制御部３２は通知済の座標フィールドの内容をコマンド処理部３３に伝達し、パラメータフィールド制御部３４は通知済のパラメータフィールドの内容をコマンド処理部３３に伝達する。コマンド処理部３３は、受け取ったデータに基づきコマンドを実行する。
【００４０】
　このようにして、マウスの操作によりコマンドを選択するとそのコマンドの実行に必要な入力項目名がパラメータフィールドに表示されるため、図面を作成する者が、そのコマンドに必要なパラメータを覚えておく必要がない。従って、図面作成者にかかる負担が軽減される。しかも、必要なパラメータが全て画面表示されているため、パラメータを設定するのを忘れたり、誤った値が設定されているのを見過ごしたり等のミスの発生を防止することができ、図面の作成効率が向上する。
【００４１】
　以下に、各種コマンドの実行例を示す。
　図５はＣＡＤソフトのウインドウ４０を示す図である。ウインドウ４０内の上部にはメニューバー４４があり、このメニューバー４４上にマウスカーソルを移動してマウスのボタンをクリックすることによりプルダウンメニューが開き、その中の項目を選択することにより各種の機能を実行することができる。このメニューバー４４の下には、ツールバー４５が設けられている。ツールバー４５は、メニューバー４４に設定されている機能のうち頻繁に使用する機能をアイコン化しており、目的のアイコン上でマウスのボタンをクリックすることにより、各種の機能を実行することができる。
【００４２】
　ツールバー４５の左下が図面表示領域４１である。この図では、ビルの１階の平面図が表示されている。図面表示領域４１の右側には、上から座標フィールド４２、パラメータフィールド４３、及びツール領域４６がある。座標フィールド４２は、絶対座標を示す領域（図中の「Ｘ座標」、「Ｙ座標」）と前回のコマンド実行位置からの相対座標を示す領域（図中の「Ｘ距離」、「Ｙ距離」）に分かれている。パラメータフィールド４３は、６つのパラメータ表示領域が設けられている。ツール領域４６は、コマンド実行の際の補助的な命令を入力するためのアイコンが各種設けられている。
【００４３】
　図６は柱を配置するためのコマンド選択時の画面を示す図である。なお、図中上下方向がＹ軸であり、左右方向がＸ軸である（以下の図７〜図１０においても同様）。メニューバー４４（図５に示す）内の建築作図のプルダウンメニューを開き、そのなかの柱の項目を選択することにより、柱を設定するためのコマンドが選択される（以下の説明における「壁」、「建具」においても同様）。柱のコマンドが選択されると、図面表示領域４１には柱のオブジェクトを示す図形５１が表示される。この柱は四角の柱である。
【００４４】
　一般的には、柱の設置位置は通り芯５２，５３を基準に設定する。そのため、パラメータの入力項目名は、「寸法Ｘ」、「寸法Ｙ」、「寄りＸ」、「寄りＹ」、及び「角度」であり、これらの入力項目名とその値がパラメータフィールド４３に表示されている。「寸法Ｘ」、「寸法Ｙ」は、柱の辺のＸ軸方向及びＹ軸方向の長さ（ｄ１Ｘ，ｄ１Ｙ）を示している。「寄りＸ」、「寄りＹ」は、通り芯からＸ軸方向、及びＹ軸方向に突出する長さ（ｄ２Ｘ，ｄ２Ｙ）を示している。「角度」は、基準点を中心として回転させる場合の回転角度を示している。
【００４５】
　また、この図では、クロスヘアーカーソルでマウスカーソル５４を表現している。クロスヘアーカーソルの縦方向の線５４ａと横方向の線５４ｂとの交点がマウスカーソル５４の位置であり、この位置の座標と、前座標データからの相対座標とが座標フィールド４２に表示されている。
【００４６】
　図７は壁を配置するためのコマンド選択時の画面を示す図である。
　壁を設定するためのコマンドが選択されると図面表示領域４１に壁を示す図形６１が表示される。壁も柱と同様に、通り芯６２〜６４を基準に設定される。そして、パラメータの入力項目名は、「壁厚」、「寄寸」、「１点目出」、「２点目出」であり、これらの入力項目名とその値がパラメータフィールド４３に表示されている。「壁厚」は壁の厚みｄ３を示している。「寄寸」は通り芯６２からはみ出る長さｄ４を示している。「１点目出」は、通り芯６３からはみ出る長さｄ５を示している。「２点目出」は、通り芯６４からはみ出る長さｄ６を示している。
【００４７】
　そして、マウスカーソル５４の位置が座標フィールド４２に表示されている。
　ここで、図７に示す壁の上に扉を設ける場合について説明する。図８は片側開きの建具を配置するためのコマンド選択時の画面を示す図である。片側開きの建具を設定するためのコマンドが選択されると、パラメータの入力項目として「開口巾１」、「開口巾２」、「枠厚」、「枠出」、「オフセット」がパラメータフィールド４３に表示される。「開口巾１」は図中の左側に開く扉の幅ｄ７である。「開口巾２」は図中の右側に開く扉の幅ｄ８である。「枠厚」は扉の枠の厚さｄ９である。「枠出」は、扉の枠が壁から出る長さｄ１０である。「オフセット」は、オフセットの基準点から配置基準点までの距離ｄ１１である。
【００４８】
　ここで、図８に示すパラメータの値がデフォルト値であるものとし、パラメータの値を変更した場合を説明する。図８では、「開口巾１」の値は「６００」、「開口巾２」の値は「８００」である。従って、建具の図形７１は扉が左右に開くような図形である。この状態でタブキーを押すとパラメータの入力が可能になる。そして「開口巾１」の値を「０」に変更する。図９はパラメータ変更後の画面を示す図である。建具の図形７１は変形し、一方にのみ扉が開くような形状になっている。この状態で、コマンドを実行すると図形７１の配置位置と形状が確定する。そして、同様の建具を配置するためのコマンドが選択され、同じ形状の図形７２を続けて配置できる。
【００４９】
　図１０は引違いの建具を配置するためのコマンド選択時の画面を示す図である。引違いの建具を設定するためのコマンドが選択されると、パラメータの入力項目として「開口巾」、「枠厚」、「枠出」、「オフセット」、「繰り返し」がパラメータフィールド４３に表示される。「開口巾」は扉の大きさｄ１２である。「枠厚」は枠の壁７３ａ，７３ｂの長さｄ１３である。「枠出」は枠の壁７３ａ，７３ｂの壁６１の表面から突き出ている部分の長さｄ１４である。「オフセット」はオフセットの基準点から配置基準点までの距離ｄ１５である。「繰り返し」は「引違い」を並べる個数である。なお、このとき２つの引違いの間の枠は１つになる。
【００５０】
　以上のように、選択されるコマンドに応じてパラメータフィールドの入力項目名も変化する。図面の作成者は、入力項目名を確認することによりどのようなパラメータを入力する必要があるのかを知ることができる。しかも、キーボードからの数値の入力によりパラメータの値を変更すると、その値がパラメータフィールドに表示されるとともに、図面表示領域に表示されている図形の形状もパラメータの値に従って変化するため、現在の設定値の適否を視覚的に容易に確認することができる。また、各パラメータはパラメータフィールド４３内に集約されており、座標も座標フィールド４２内に集約されているため、数値を確認し易い。　以上が主にパラメータの入力を簡略化して図形の配置を容易にするものであるが、マウスの操作により図形の形状や配置位置を容易に指定することができる。
【００５１】
　図１１はオブジェクトの位置及び形状の決定をポインティングデバイスの操作により行う本発明の原理構成図である。コマンド選択手段６は、所望の位置及び形状で対象図形３ｂｂを配置するためのコマンドを選択する。カーソル移動手段７は、表示画面３の図面表示領域３ｂ内に表示されているカーソル３ｂａを移動する。関連図形検出手段８は、コマンドが選択されると、画面上に既に配置されている既確定図形のうち、カーソル３ｂａから所定の距離以内にあり且つ前記既確定図形上に対象図形を配置できる関連図形３ｂｃを検出する。図形表示位置制御手段９は、関連図形３ｂｃが検出されるまではカーソル３ｂａ上に対象図形３ｂｂを表示しており、関連図形３ｂｃが検出されると対象図形３ｂｂを関連図形３ｂｃ上に表示する。
【００５２】
　これにより、簡単なカーソルの移動によって、対象図形を所望の図形の上に配置することができる。以下に、建具を配置する場合を例にとり、マウスの操作により図形を配置する場合について具体的に説明する。
【００５３】
　図１２は建具を配置する際の処理手順を示すフローチャートである。これは、建具配置のコマンドが選択された際に処理が開始される。この処理は、関連図形検出手段８が行う処理である。
【００５４】
　〔Ｓ２１〕マウス移動のイベントの発生を検出する。
　〔Ｓ２２〕マウスカーソル近くの図形を検索する。
　〔Ｓ２３〕検索された図形の属性を取得する。その図形が壁であれば、壁厚、長さを取得する。このとき、その図形の種類を判別するためにオブジェクトデータ内のオブジェクトタイプも取得する。
【００５５】
　〔Ｓ２４〕取得したオブジェクトタイプから図形が壁か否かを判断し、壁であればステップＳ２５へ進み、壁でなければ処理を終了する。
　〔Ｓ２５〕表示する形状を計算する。これは、検出された壁の壁厚を使用し、建具の枠の厚さを壁厚にあった厚さにするための計算である。
【００５６】
　〔Ｓ２６〕移動可能範囲を計算する。この移動可能範囲は、壁の長さに応じて決定される。
　〔Ｓ２７〕ドラッキング表示する。ここで、ドラッキング表示とは、壁を示す図形の表現形式を変えること、及び図形表示位置制御手段９が、マウスカーソルの位置に表示していた図形を壁を示す図形上に移動し、表示することである。例えば、黒色で表示されていた壁を水色で表示し、カーソルの動きにより、壁を示す図形上を、建具を示す図形が移動するようにして表示することである。
【００５７】
　いずれかの図形がラバーバンド表示されると、図形表示位置制御手段９は、マウスカーソルの位置に表示していた図形をラバーバンド表示されている図形上に移動する。
　マウスカーソル近くの図形の検索や、操作対象となっている図形を重ねることができるか否かは、オブジェクトデータに基づいて行う。各図形はオブジェクトデータを視覚的な図形に変えて画面表示したものである。従って、オブジェクトデータを調べることによりその図形の情報が得られる。
【００５８】
　図１３は建具作成時に生成されるデータの構造を示す図である。これは、引違いの建具を配置する場合である。オブジェクトデータ８０には、オブジェクト識別番号、オブジェクトタイプ、先頭プリミティブ、システム属性リンク、及びユーザ属性リンクの各データが含まれている。オブジェクト識別番号は、そのオブジェクトを識別するための固有の番号である。オブジェクトタイプは、そのオブジェクトが建具であることを示すコードである。先頭プリミティブは、先頭となるプリミティブデータ９１の位置を示している。システム属性リンクは、そのオブジェクトの属性を特定するためのシステム属性データ９０へのリンク情報を示している。ユーザ属性リンクは、ユーザごとにシステムの設定を変更する場合にそのユーザの属性を示すデータへのリンク情報を示している。
【００５９】
　システム属性データ９０は、各オブジェクトの配置位置や形状を確定する為に必要なパラメータの種類を示している。引違いの建具のシステム属性データには、開口幅、壁厚、枠厚、枠出等のデータが設定されている。
【００６０】
　プリミティブデータ９１、９２は、オブジェクトの図形を画面に表示するための基となる線等のデータである。つまり、建具等のオブジェクトを示す図形は複数のプリミティブデータの集合で表される。各プリミティブデータ９１，９２には、プリミティブ識別番号、ＮＥＸＴポインタ、ポイントデータリンク等の各データが含まれている。プリミティブ識別番号は、そのプリミティブデータ９１，９２を特定するための固有の番号である。ＮＥＸＴポインタは、次のプリミティブデータの位置を示している。ポイントデータリンクは、ポイントデータへのリンク情報を示している。
【００６１】
　ポイントデータ１００は、プリミティブデータ９１により基本的は図形を描くために必要な位置情報１１０，１２０，１３０を格納している。各位置情報１１０，１２０，１３０には、フラグ、Ｘ座標、及びＹ座標が格納されている。フラグは、その位置情報１１０，１２０，１３０の示す座標が有効か否かを示している。
【００６２】
　関連図形検出手段８は、マウスカーソルの近くの図形を検出するとその図形のデータを取得する。そのデータのオブジェクトタイプからその図形が壁か否かを判別する。また、ポイントデータからその図形の位置等を判別する。このようにして、操作の対象となる図形を重ねて配置することができる図形を検出できる。
【００６３】
　図１４は壁に建具を近づけた場合の図形の変化を示す図である。（Ａ）は建具１４１と壁１４３とが十分に離れている状態を示している。この時、壁１４３は黒の実線で描かれている。また、建具１４１はマウスカーソル１４２の位置に表示されている。この状態から、マウスカーソル１４２を移動することにより、建具１４１を壁１４３に接近させる。
【００６４】
　（Ｂ）は建具１４１と壁１４３とが接近した状態を示している。図中では壁１４３を点線で示しているが、実際には色を目立つ色に変えて表示する。建具１４１は、マウスカーソル１４２の位置から離れ壁１４３の上に表示されている。この建具１４１の位置は、マウスカーソル１４２から壁１４３に対して垂線を下ろした場合の、垂線と壁１４３との交点であるが、壁１４３の上からはみ出ることはない。つまり、壁１４３上でマウスカーソル１４２に最も近い位置に建具１４１が表示される。また、建具１４１の枠の厚さは、壁１４３壁厚から算出される。
【００６５】
　このように、建具１４１を壁１４３に近づけることにより、建具１４１が壁１４３上に移り、マウスカーソル１４２を壁１４３と並行に移動すると、マウスカーソル１４２の移動に従って建具１４１の位置も壁１４３の上を移動する。そして、マウスの左側のボタンをクリックすると、その時の位置に各パラメータの値を換算し建具１４１の配置基準位置が確定する。なお、ボタンをクリックせずにエスケープキーを押すと、建具１４１を壁１４３からフリーな状態にすることができる。
【００６６】
　ここで、配置基準位置とは図形を配置するための基準となる位置である。つまり、配置基準位置にパラメータの値による補正等を行うことにより、最終的な配置位置が確定する。
【００６７】
　建具を配置する配置基準位置が確定すると、次に配置の位置及び図形の形状を確定する。それには、配置基準位置の確定のために押したマウスのボタンをそのまま押し続けながらマウスカーソルの位置を移動することにより最終的な配置位置及び形状を選択することができる。
【００６８】
　図１５は配置形状の選択方法を説明する図である。（Ａ）は配置位置を決定した状態を示している。この例では、分かり易くするために、マウスカーソル１４２を壁１４３の上に移動してからマウスのボタンをクリックしたものとする。そして、ボタンを押したままマウスカーソル１４２を移動する。
【００６９】
　（Ｂ）はマウスカーソル１４２を左上に移動した状態を示している。この場合、建具１４２の扉は、図中の上方左側に開く。（Ｃ）はマウスカーソル１４２を右上に移動した状態を示している。この場合、建具１４２の扉は、図中の上方右側に開く。（Ｄ）はマウスカーソル１４２を左下に移動した状態を示している。この場合、建具１４２の扉は、図中の下方左側に開く。（Ｅ）はマウスカーソル１４２を右下に移動した状態を示している。この場合、建具１４２の扉は、図中の下方右側に開く。
【００７０】
　このように、マウスの移動だけで建具１４１の形状を変化させることができ、目的の形状になったときにマウスのボタンを放せば、その時の状態で配置位置及び形状が確定する。
【００７１】
　なお、上記の説明では建具を壁に配置する場合を説明したため、マウスカーソルの位置に応じて扉の開く方向が変化する例を説明したが、他の図形を配置する場合にも同様の操作ができる。つまり、図形を配置する際に設定されるパラメータには、方向が特定しないと図形の位置や形状が特定しないものがある。それらの方向の指定をマウスカーソルの移動で行うことができる。例えば、「寄り」が設定された壁を配置する場合には、マウスカーソルの位置に応じて寄りの方向を変えることができる。寄り等の方向性を有するパラメータの指定方向が決まることにより、最終的な配置位置が確定する。
【図面の簡単な説明】
【００７２】
【図１】パラメータの数値入力を容易にしたＣＡＤシステムの構成図である。
【図２】ＣＡＤシステムのハードウェアの構成を示すブロック図である。
【図３】ポジショニングボックス機能の構成を示すブロック図である。
【図４】ポジショニングボックス機能の処理手順を示すフローチャートである。
【図５】ＣＡＤソフトのウインドウを示す図である。
【図６】柱を配置するためのコマンド選択時の画面を示す図である。
【図７】壁を配置するためのコマンド選択時の画面を示す図である。
【図８】片側開きの建具を配置するためのコマンド選択時の画面を示す図である。
【図９】パラメータ変更後の画面を示す図である。
【図１０】引違いの建具を配置するためのコマンド選択時の画面を示す図である。
【図１１】オブジェクトの位置及び形状の決定をポインティングデバイスの操作により行う本発明の原理構成図である。
【図１２】建具を配置する際の処理手順を示すフローチャートである。
【図１３】建具作成時に生成されるデータの構造を示す図である。
【図１４】壁に建具を近づけた場合の図形の変化を示す図である。（Ａ）は建具と壁とが十分に離れている状態を示す図であり、（Ｂ）は建具と壁とが接近した状態を示す図である。
【図１５】配置形状の選択方法を説明する図である。（Ａ）は配置位置を決定した状態を示す図であり、（Ｂ）はマウスカーソルを左上に移動した状態を示す図であり、（Ｃ）はマウスカーソルを右上に移動した状態を示す図であり、（Ｄ）はマウスカーソルを左下に移動した状態を示す図であり、（Ｅ）はマウスカーソルを右下に移動した状態を示す図である。
【符号の説明】
【００７３】
　１，６　コマンド選択手段
　２　パラメータ管理手段
　２ａ　パラメータ
　３　表示画面
　３ａ　パラメータフィールド
　３ｂ　図面表示領域
　４　コマンド実行手段
　５　パラメータ入力手段
　７　カーソル移動手段
　８　関連図形検出手段
　９　図形表示位置制御手段
　３１　カーソル制御部
　３２　座標フィールド制御部
　３３　コマンド処理部
　３４　パラメータフィールド制御部
【図１】
2004086925.tif 000003
【図２】
2004086925.tif 000004
【図３】
2004086925.tif 000005
【図４】
2004086925.tif 000006
【図５】
2004086925.tif 000007
【図６】
2004086925.tif 000008
【図７】
2004086925.tif 000009
【図８】
2004086925.tif 000010
【図９】
2004086925.tif 000011
【図１０】
2004086925.tif 000012
【図１１】
2004086925.tif 000013
【図１２】
2004086925.tif 000014
【図１３】
2004086925.tif 000015
【図１４】
2004086925.tif 000016
【図１５】
2004086925.tif 000017