(57)【要約】  【課題】コンピュータ画面上で計算式を視覚的に自在に編集して計算結果を得る。  【解決手段】計算式処理装置１の計算式表示部２において、ユーザーの入力に基づき、計算式生成手段４（数値オブジェクト配置手段４ａおよび数値オブジェクト連結手段４ｂ）を介して計算式が生成される。計算式基礎データ記録部６は、計算式生成手段によって計算式表示部に生成される計算式の基礎データを常時蓄積している。計算処理手段８は、計算式表示部２に生成された計算式に基づいて計算処理を実行しその計算結果を出力するための手段である。【選択図】図１
2006099321.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータを、
数値データを含んだ複数の数値オブジェクトを計算式表示部に配置する数値オブジェクト配置手段と、
前記計算式表示部に表示された前記複数の数値オブジェクトのうち、第１の数値オブジェクトと第２の数値オブジェクトを演算種別を表す関係オブジェクトで連結する数値オブジェクト連結手段と、
を備えた、計算式表示部に計算式を生成する計算式生成手段、
前記数値オブジェクト配置手段および前記数値オブジェクト連結手段によって前記計算式表示部に生成される計算式の基礎データを記憶する計算式基礎データ記憶部、
前記計算式生成手段によって生成された計算式に基づいて計算処理を行う計算処理手段、
として機能させることを特徴とする計算式処理プログラム。
【請求項２】
請求項１の計算式処理プログラムにおいて、
前記関係オブジェクトの演算種別は、足算、引算、掛算または割算の何れかであり、
前記関係オブジェクトの演算種別が足算または掛算である場合、前記関係オブジェクトは第１の数値オブジェクトから第２の数値オブジェクトへの方向に依存しないことを示すように前記計算式表示部に表示され、
前記関係オブジェクトの種別が引算または割算の場合である場合、前記関係オブジェクトは第１の数値オブジェクトから第２の数値オブジェクトへの方向に依存することを示すように前記計算式表示部に表示される、
ことを特徴とするもの。
【請求項３】
請求項２の計算式処理プログラムにおいて、
第１の数値オブジェクトから第２の数値オブジェクトへの方向に依存することを示す前記関係オブジェクトが矢印で表示される、
ことを特徴とするもの。
【請求項４】
請求項３の計算式処理プログラムにおいて、
前記数値オブジェクト連結手段を、前記関係オブジェクトを連結した後に、前記矢印の方向を反転することができるように構成した、
ことを特徴とするもの。
【請求項５】
請求項１〜４の計算式処理プログラムにおいて、さらに、
前記計算処理手段が、計算処理により得られた計算結果を前記計算式表示部に出力する、
ことを特徴とするもの。
【請求項６】
請求項５の計算式処理プログラムにおいて、
前記計算結果は、前記関係オブジェクトに関連づけた数値オブジェクトとして計算式表示部に表示され、
前記数値オブジェクト連結手段は、前記計算結果を数値オブジェクトとして関係オブジェクトで連結する、
ことを特徴とするもの。
【請求項７】
請求項６の計算式処理プログラムにおいて、
前記数値オブジェクトとして連結された計算結果に属する数値オブジェクトおよび関係オブジェクトを、前記計算式表示部に表示するか、または非表示にするか否かを切り換えられるよう構成した、
ことを特徴とするもの。
【請求項８】
コンピュータを、
数値データを含んだ複数の数値オブジェクトを計算式表示部に配置する数値オブジェクト配置手段と、
前記計算式表示部に配置された複数の数値オブジェクトのうち、特定の領域に含まれる数値オブジェクトを加算処理の対象として連結する数値オブジェクト連結手段と、
を備えた、計算式表示部に計算式を生成する計算式生成手段、
前記数値オブジェクト配置手段および前記数値オブジェクト連結手段によって前記計算式表示部に生成される計算式の基礎データを記憶する計算式基礎データ記憶部、
前記計算式生成手段によって生成された計算式に基づいて計算処理を行う計算処理手段、
として機能させることを特徴とするプログラム。
【請求項９】
請求項８の計算式処理プログラムにおいて、さらに、
前記数値オブジェクト連結手段は、指定された計算式表示部の領域に含まれる複数のオブジェクトの中から特定のオブジェクトだけを数値オブジェクトとして抽出して連結する、
ことを特徴とするもの。
【請求項１０】
コンピュータの計算式表示部に描画された計算式に基づいて計算処理を行う計算式処理方法であって、
数値データを含んだ複数の数値オブジェクトを計算式表示部に配置し、前記計算式表示部に表示された前記複数の数値オブジェクトのうち、第１の数値オブジェクトと第２の数値オブジェクトを演算種別を表す関係オブジェクトで連結することにより、計算式表示部に計算式を生成するステップ、
前記数値オブジェクト配置手段および前記数値オブジェクト連結手段によって前記計算式表示部に生成される計算式の基礎データを記憶するステップ、
前記計算式生成手段によって生成された計算式に基づいて計算処理を行うステップ、
を備えたことを特徴とする計算式処理方法。
【請求項１１】
コンピュータの計算式表示部に描画された計算式に基づいて計算処理を行う計算式処理方法であって、
数値データを含んだ複数の数値オブジェクトを計算式表示部に配置し、前記計算式表示部に配置された複数の数値オブジェクトのうち、特定の領域に含まれる数値オブジェクトを加算処理の対象として連結することにより、計算式表示部に計算式を生成するステップ、
前記数値オブジェクト配置手段および前記数値オブジェクト連結手段によって前記計算式表示部に生成される計算式の基礎データを記憶するステップ、
前記計算式生成手段によって生成された計算式に基づいて計算処理を行うステップ、
を備えたことを特徴とする計算式処理方法。
【請求項１２】
コンピュータの計算式表示部に描画された計算式に基づいて計算処理を行う計算式処理装置であって、
数値データを含んだ複数の数値オブジェクトを計算式表示部に配置する数値オブジェクト配置手段と、
前記計算式表示部に表示された前記複数の数値オブジェクトのうち、第１の数値オブジェクトと第２の数値オブジェクトを演算種別を表す関係オブジェクトで連結する数値オブジェクト連結手段と、
を備えた、計算式表示部に計算式を生成する計算式生成手段、
前記数値オブジェクト配置手段および前記数値オブジェクト連結手段によって前記計算式表示部に生成される計算式の基礎データを記憶する計算式基礎データ記憶部、
前記計算式生成手段によって生成された計算式に基づいて計算処理を行う計算処理手段、
を備えたことを特徴とする計算式処理装置。
【請求項１３】
コンピュータの計算式表示部に描画された計算式に基づいて計算処理を行う計算式処理装置であって、
数値データを含んだ複数の数値オブジェクトを計算式表示部に配置する数値オブジェクト配置手段と、
前記計算式表示部に配置された複数の数値オブジェクトのうち、特定の領域に含まれる数値オブジェクトを加算処理の対象として連結する数値オブジェクト連結手段と、
を備えた、計算式表示部に計算式を生成する計算式生成手段、
前記数値オブジェクト配置手段および前記数値オブジェクト連結手段によって前記計算式表示部に生成される計算式の基礎データを記憶する計算式基礎データ記憶部、
前記計算式生成手段によって生成された計算式に基づいて計算処理を行う計算処理手段、
を備えたことを特徴とする計算式処理装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、コンピュータ画面上で視覚的に計算式を取扱う技術に関するものである。
【背景技術】
【０００２】
コンピュータ画面上において計算式を取り扱うことは、従来から行われている（特許文献１、特許文献２）。例えば、特許文献１には「モデル式内の変数間の因果関係をあらわす関係図をコンピュータ画面上に表示し、そのメーターを操作することで、変数への数値入力を簡単に入力すること」が開示されている。また、特許文献２には、「セル内に数値が格納された表の任意の数値項目に対して行う計算を、計算したい数字の入力されているセルと計算ボタンを組み合わせて行うこと」が開示されている。
【０００３】
【特許文献１】特開平０６−２９０１６３号公報
【０００４】
【特許文献２】特開平０９−１０６４３０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、特許文献１の技術は、予め定められたモデル式の変数とその計算結果を線で結んだだけに過ぎず、計算式を自在に編集して計算結果を得ることはできなかった。また、特許文献２の技術も同様に、数値を入力したセルが固定された位置にあるために計算式を自在に編集することはできなかった。
【０００６】
以上のように、従来はコンピュータ画面上で計算式を視覚的に自在に編集して計算結果を得ることができるものは存在しなかった。
【課題を解決するための手段】
【０００７】
（１）この発明の計算式処理プログラムは、
コンピュータを、
数値データを含んだ複数の数値オブジェクトを計算式表示部に配置する数値オブジェクト配置手段と、
前記計算式表示部に表示された前記複数の数値オブジェクトのうち、第１の数値オブジェクトと第２の数値オブジェクトを演算種別を表す関係オブジェクトで連結する数値オブジェクト連結手段と、
を備えた、計算式表示部に計算式を生成する計算式生成手段、
前記数値オブジェクト配置手段および前記数値オブジェクト連結手段によって前記計算式表示部に生成される計算式の基礎データを記憶する計算式基礎データ記憶部、
前記計算式生成手段によって生成された計算式に基づいて計算処理を行う計算処理手段、
として機能させることを特徴とする。
【０００８】
これにより、コンピュータ画面上で計算式を視覚的に生成・編集して、容易に計算結果を得ることが可能となる。
【０００９】
（２）この発明の計算式処理プログラムは、
前記関係オブジェクトの演算種別は、足算、引算、掛算または割算の何れかであり、
前記関係オブジェクトの演算種別が足算または掛算である場合、前記関係オブジェクトは第１の数値オブジェクトから第２の数値オブジェクトへの方向に依存しないことを示すように前記計算式表示部に表示され、
前記関係オブジェクトの種別が引算または割算の場合である場合、前記関係オブジェクトは第１の数値オブジェクトから第２の数値オブジェクトへの方向に依存することを示すように前記計算式表示部に表示される、
ことを特徴とする。
【００１０】
これにより、足算または掛算と引算または割算とを区別して表示することが可能となり、ユーザーがコンピュータ画面上に表示された計算式を適切に把握することができる。
【００１１】
（３）この発明の計算式処理プログラムは、
第１の数値オブジェクトから第２の数値オブジェクトへの方向に依存することを示す前記関係オブジェクトが、矢印で表示されることを特徴とする。
【００１２】
これにより、関係オブジェクトが引算または割算を示すことをユーザーが容易に把握することができる。
【００１３】
（４）この発明の計算式処理プログラムは、
前記数値オブジェクト連結手段が、前記関係オブジェクトを連結した後に、前記矢印の方向を反転することができるように構成したことを特徴とする。
【００１４】
これにより、一旦関係オブジェクトを生成した後であっても、計算式を容易に編集することができる。
【００１５】
（５）この発明の計算式処理プログラムは、
前記計算処理手段が、計算処理により得られた計算結果を前記計算式表示部に出力する、ことを特徴とする。
【００１６】
これにより、計算式を視覚的に生成したユーザーが、その計算結果をコンピュータ画面上で把握することができる。
【００１７】
（６）この発明の計算式処理プログラムは、
前記計算結果は、前記関係オブジェクトに関連づけた数値オブジェクトとして計算式表示部に表示され、
前記数値オブジェクト連結手段は、前記計算結果を数値オブジェクトとして関係オブジェクトで連結する、
ことを特徴とする。
【００１８】
これにより、コンピュータ画面上で計算式を視覚的、かつ、柔軟に生成・編集することが可能となる。
【００１９】
（７）この発明の計算式処理プログラムは、
前記数値オブジェクトとして連結された計算結果に属する数値オブジェクトおよび関係オブジェクトを、前記計算式表示部に表示するか、または非表示にするか否かを切り換えられるよう構成した、ことを特徴とする。
【００２０】
これにより、計算式を構成する要素が増大した場合でも、表示の複雑化を解消することが可能となる。
【００２１】
（８）この発明の計算式処理プログラムは、
コンピュータを、
数値データを含んだ複数の数値オブジェクトを計算式表示部に配置する数値オブジェクト配置手段と、
前記計算式表示部に配置された複数の数値オブジェクトのうち、特定の領域に含まれる数値オブジェクトを加算処理の対象として連結する数値オブジェクト連結手段と、
を備えた、計算式表示部に計算式を生成する計算式生成手段、
前記数値オブジェクト配置手段および前記数値オブジェクト連結手段によって前記計算式表示部に生成される計算式の基礎データを記憶する計算式基礎データ記憶部、
前記計算式生成手段によって生成された計算式に基づいて計算処理を行う計算処理手段、
として機能させることを特徴とする。
【００２２】
これにより、コンピュータ画面上で加算の計算式を視覚的に生成・編集することが可能となる。
【００２３】
（９）この発明の計算式処理プログラムは、
前記数値オブジェクト連結手段は、指定された計算式表示部の領域に含まれる複数のオブジェクトの中から特定のオブジェクトだけを数値オブジェクトとして抽出して連結する、ことを特徴とする。
【００２４】
これにより、簡単な操作により、計算対象となる数値オブジェクトを特定することが可能となる。
【００２５】
以下の実施形態において、「数値オブジェクト」とは、数値データを含んだ計算式の構成要素であって、関係オブジェクトに連結されることにより計算式を構成する要素をいう。具体的には、図８などに示す数値オブジェクトα、β、γが該当する。
【００２６】
「関係オブジェクト」とは、演算種別データを含んだ計算式の構成要素であって、数値オブジェクトを連結して計算式を構成するための要素をいう。具体的には、図９、図１４等において、直線や矢印で表示された関係オブジェクトR1、R2が該当する。また、関係オブジェクトの演算種別が引算または割算の場合には、第１の数値オブジェクトから第２の数値オブジェクトへの方向性を表すことができるような表示（例えば、矢印）により関係オブジェクトが表示される。
【発明を実施するための最良の形態】
【００２７】
１．計算式処理装置１の機能ブロック図（図１）
図１は、この発明の計算式処理装置１の全体構成を示す機能ブロック図である。図１に示すように、この発明の計算式処理装置１は、計算式表示部２、計算式生成手段４である数値オブジェクト配置手段４ａおよび数値オブジェクト連結手段４ｂ、計算式基礎データ記録部６、計算処理手段８を備えている。
【００２８】
図１に示す計算式処理装置１の計算式表示部２において、まず、ユーザーの入力に基づき、計算式生成手段４（数値オブジェクト配置手段４ａおよび数値オブジェクト連結手段４ｂ）を介して計算式が生成される。数値オブジェクト配置手段４ａは、計算式表示部２に数値データを含んだ複数の数値オブジェクトを配置するための手段である。数値オブジェクト連結手段４ｂは、計算式表示部２に配置された複数の数値オブジェクトのうち、第１の数値オブジェクトと第２の数値オブジェクトを、演算種別を表す関係オブジェクトで連結するための手段である。計算式基礎データ記録部６は、計算式生成手段である数値オブジェクト配置手段および数値オブジェクト連結手段によって計算式表示部に生成される計算式の基礎データを常時蓄積している。計算処理手段８は、計算式生成手段によって計算式表示部２に生成された計算式に基づいて計算処理を実行しその計算結果を計算式表示部２に出力するための手段である。
【００２９】
２．計算式処理装置１のハードウェア構成（図２〜図４）
図２に、この発明の計算式処理装置１のハードウェア構成を示す。図２に示すように、計算式処理装置１は、ＣＰＵ１０、計算式表示部２であるディスプレイ１２、ハードディスク１４、メモリ１６、キーボード／マウス１８、ＣＤ−ＲＯＭドライブ２０を備えている。
【００３０】
図２のハードディスク１４には、ディスプレイ１２上でユーザーが計算式を視覚的に作成し、計算処理を行うための計算式処理プログラム３０が記録されている。また、図２に示す計算式処理プログラム３０は、計算式基礎データ記憶部６である計算式要素ＤＢ３２および関係オブジェクト−数値オブジェクト対応テーブル３４を備えている。計算式処理プログラム３０は、これらを用いて、ＣＰＵ１０、ハードディスク１４、メモリ１６、キーボード／マウス１８などを有するコンピュータを計算式生成手段４（数値オブジェクト配置手段４ａ、数値オブジェクト連結手段４ｂ）、計算式基礎データ記憶部６、計算処理手段８として機能させるためのプログラムである。なお、計算式処理プログラム３０のハードディスク１４へのインストールは、ＣＤ−ＲＯＭドライブ２０を介してＣＤ−ＲＯＭ２２に記録されたデータを読み出して行われる。
【００３１】
つぎに、計算式作成処理を行う計算式処理プログラム３０がディスプレイ１２上に表示する計算式作成フィールドＸのインターフェイス等について説明する。この計算式処理プログラム３０は、図８に示すような計算式作成フィールドＸ、数値オブジェクトパレットＰ等をディスプレイ１２上に表示する。これにより、ユーザーは計算式作成フィールドＸ上で計算式の作成・編集を行うことができる。
【００３２】
ここで、計算式作成フィールドＸとは、数値オブジェクトの配置および連結を行って計算式を視覚的に生成・編集するためのウィンドウである。例えば、図８に示す計算式作成フィールドＸ上には、数値オブジェクトパレットＰからキーボード／マウス１８を介してドラッグ＆ドロップされた数値オブジェクトα、β、γが配置されており、これらの各数値オブジェクトにはユーザーによって数値データが入力されている。また、計算式作成フィールドＸの下部に設けらている関係オブジェクトボタンＢｒは、数値オブジェクト間を連結するときに押下されるボタンであり、＋ボタンＢ＋、−ボタンＢ−、×ボタンＢ×、÷ボタンＢ÷はそれぞれ各関係オブジェクトの演算種別を指定するときに押下されるボタンである。また、計算開始ボタンＢｓは、計算式作成フィールドＸ上に生成した計算式に基づいて、計算を開始するときに押下されるボタンである。
【００３３】
図３に、図２に示すハードディスク１４に記憶された計算式要素ＤＢ３２のデータ例を示す。図３に示すように、計算式要素ＤＢ３２には、計算式作成フィールドＸに配置されて既に計算式の構成要素となっている数値オブジェクトや関係オブジェクトの計算式要素について、それぞれＩＤ、種別、値のデータが記憶される。
【００３４】
例えば、図３のＩＤ＝「０１」の計算式要素は値「５８，０００」を持つ数値オブジェクト（種別が「数値」のもの）であり、図３のＩＤ＝「０３」の計算式要素は「引算」を表す関係オブジェクト（種別が「数値」以外のもの）であり、これらが計算式作成フィールドＸ上に配置又は生成されて計算式の構成要素となっていることを示している。なお、図３の計算式要素ＤＢ３２のデータは、後述する図９の計算式作成フィールドＸ上に生成された計算式に対応している。
【００３５】
図４に、ハードディスク１４に記憶された関係オブジェクト−数値オブジェクト対応テーブル３４のデータ例を示す。図４に示すように、関係オブジェクト−数値オブジェクト対応テーブル３４には、計算式作成フィールドＸ上に生成された各関係オブジェクトそれぞれについて、連結対象となっている第１および第２の数値オブジェクトの２つのＩＤが区別して記憶される。例えば、図４に示すＩＤ＝「０３」の関係オブジェクトには図３のＩＤＡ＝「０１」とＩＤＢ＝「０２」の数値オブジェクトが順に連結されていることを示している。なお、図４の関係オブジェクト−数値オブジェクト対応テーブル３４のデータは、後述する図９の計算式作成フィールドＸ上に生成された計算式に対応している。
【００３６】
３．計算式作成処理のフローチャート（図５）
以下に、計算式作成時において計算式処理プログラム３０（図２）が行う処理について、図５、図８などを用いて説明する。図５は、図８に示す計算式作成フィールドＸ上で計算式を生成する時に行われる処理を示すフローチャートである。図８は、ディスプレイ１２上に表示された計算式作成フィールドXの表示例を示す図である。
【００３７】
図８に示す計算式作成フィールドＸ上には、パレットＰから数値オブジェクトをドラッグ＆ドロップすることにより、数値オブジェクトα、β、γが既に配置され、各数値オブジェクトには数値データが入力された状態となっている。
【００３８】
上記のように数値オブジェクトが配置された状態（図８）において、ＣＰＵ１０は、図５に示すように、キーボード／マウス１８を介して関係オブジェクトボタンＢｒが押下されたか否かを判断している（図５のステップＳ１００）。関係オブジェクトボタンＢｒが押下されると（図５のステップＳ１００のＹＥＳ）、ＣＰＵ１０は、さらに、キーボード／マウス１８を介して第１の数値オブジェクトが選択されたか否かを判断する（図５のステップＳ１０２）。
【００３９】
第１の数値オブジェクトが選択された場合には（図５のステップＳ１０２のＹＥＳ）、選択された数値オブジェクトに対してＩＤが付与され、値や種別のデータと共に図３に示す計算式要素ＤＢ３２に記憶される（図５のステップＳ１０４）。
【００４０】
例えば、図８に示すように、カーソルＣ１により第１の数値オブジェクトαが選択されると、数値オブジェクトα（値＝「５８、０００」）に対してＩＤ＝「０１」が付与され、値「５８、０００」や種別「数値」のデータと共に、図３の計算式要素ＤＢ３２に記憶される。
【００４１】
さらに、ＣＰＵ１０は、キーボード／マウス１８を介して第２の数値オブジェクトが選択されたか否かを判断する（図５のステップＳ１０６）。第２の数値オブジェクトが選択された場合には（図５のステップＳ１０６のＹＥＳ）、上記と同様、選択された数値オブジェクトに対してＩＤが付与され、値や種別のデータと共に図３に示す計算式要素ＤＢ３２に記憶される（図５のステップＳ１０８）。
【００４２】
例えば、図８に示す第２の数値オブジェクトβが選択されると、数値オブジェクトβ（値＝「７、２００」）に対してＩＤ＝「０２」が付与され、値「７、２００」や種別「数値」のデータと共に図３の計算式要素ＤＢ３２に記憶される。
【００４３】
次に、ＣＰＵ１０は、キーボード／マウス１８を介して何れかの演算子ボタンが押下されたか否かを判断する（図５のステップＳ１１０）。
【００４４】
何れかの演算子ボタンが押下された場合には（図５のステップＳ１１０のＹＥＳ）、関係オブジェクトに対してＩＤが付与され、演算子の種別を示すデータと共に図３に示す計算式要素ＤＢ３２に記憶される。さらに、図４に示す関係オブジェクト−数値オブジェクト対応テーブル３４には、関係オブジェクトを連結する対象となった数値オブジェクト（第１、第２の数値オブジェクト）のＩＤが記憶される（図５のステップＳ１１２）。
【００４５】
例えば、図９において関係オブジェクトとして表示されることになる関係オブジェクトR1に対してＩＤ＝「０３」が付与されて、種別「引算」と共に図３の計算式要素ＤＢ３２に記憶される。さらに、図４の関係オブジェクト−数値オブジェクト対応テーブル３４には、関係オブジェクトＩＤ＝「０３」について第１の数値オブジェクトαのＩＤＡ＝「０１」と第２の数値オブジェクトβのＩＤＢ＝「０２」が記憶される。
【００４６】
上記の計算式要素ＤＢ３２、関係オブジェクト−数値オブジェクト対応テーブル３４への記憶と同時に、計算式作成フィールドＸ上に数値オブジェクトを連結する関係オブジェクトが描画される（図５のステップＳ１１２）。ここで、画面上に描画される関係オブジェクトには、押下した演算子ボタンに対応する演算子の表示が含まれる。例えば、図９に示すように、演算子ボタンＢ−がカーソルＣ２によりクリックされると、数値オブジェクトαと数値オブジェクトβを連結する関係オブジェクト（矢印）が符号「−」と共に、計算式作成フィールドＸ上に表示される。なお、演算子が「＋」もしくは「×」の場合には、方向に依存しないため、関係オブジェクトは直線で表示される。
【００４７】
なお、図９に示すように、関係オブジェクトを一旦生成した後（図５の図５のステップＳ１１２の後）であっても、図１０に示すように、矢印の方向を反転させることが可能である。これにより、引算、割算の場合の左辺・右辺の関係を反転させることができる。
【００４８】
具体的には、関係オブジェクトを生成した（図５のステップＳ１１２）後において、ＣＰＵ１０は、キーボード／マウス１８を介して関係オブジェクトが選択されたか否かを判断している（図５のステップＳ１１４）。関係オブジェクトが選択された場合には（図５のステップＳ１１４のＹＥＳ）、図４に示す関係オブジェクト−数値オブジェクト対応テーブル３４のＩＤＡとＩＤＢのＩＤデータが入れ替えて更新され、数値オブジェクトを連結する関係オブジェクト（矢印）の方向が反転して表示される（図５のステップＳ１１６）。
【００４９】
例えば、図９に示す計算式作成フィールドＸにおいて、カーソルＣ３により関係オブジェクトＲ１がクリックされると、図１０に示すように関係オブジェクト（矢印）の方向が反転表示される（図１０のＲ１’を参照）。なお、これにより、第１の数値オブジェクトαのＩＤＡ＝「０１」と第２の数値オブジェクトβのＩＤＢ＝「０２」が反転して、ＩＤＡ＝「０２」、ＩＤＢ＝「０１」となり、計算式が「５８，０００−７，２００」から「７，２００−５８，０００」に変更される。
【００５０】
以上のように、計算式作成フィールドＸ上で計算式（例えば、図８の計算式「５８，０００−７，２００」）が作成され、以降、計算開始ボタンＢｓの押下に基づいて演算処理が行われることとなる。
【００５１】
なお、上記実施形態においては、計算式に関係オブジェクトが１つだけ含まれているが、関係オブジェクトが複数含まれる計算式を生成するようにしてもよい。例えば、図９に示す数値オブジェクトβを、演算種別「足算」の関係オブジェクト（直線）により、さらに数値オブジェクトγと直列的に連結するようにしてもよい。この場合には、計算式「５８，０００−７，２００＋３０」が計算式作成フィールドＸに生成されることになる。
【００５２】
４．計算処理実行のフローチャート（図６、図７）
図６は、図５に示す計算式作成処理の後、計算式処理プログラム３０（図２）が計算結果を算出する処理を示すフローチャートである。図１１は、計算式作成フィールドＸ上に計算結果Ｓ１を表示した例を示す図である。
【００５３】
図５においてユーザーが計算式を作成した後、ＣＰＵ１０は、図６に示すように、計算開始ボタンＢｓ（図１１）が押下されるか否かを判断する（図６のステップＳ１１８）。計算開始ボタンＢｓが押下されたと判断した場合、ＣＰＵ１０は、計算式作成フィールドＸ上に生成された計算式に基づいて計算処理を行い、計算結果を算出する（図６のステップＳ１２０）。ここで得られた計算結果が計算式表示部２に出力され、計算式作成フィールドＸに表示されることになる（図６のステップＳ１２２）。
【００５４】
以下に、図７を用いて、図９の計算式作成フィールドＸに生成された計算式に基づいて行う計算処理の詳細について説明する。図７は、図６に示す計算結果算出ステップＳ１２０の詳細を示す図である。
【００５５】
ＣＰＵ１０は、まず、図６のステップＳ１１８の後、計算処理を行うために、計算式要素ＤＢ３２（図２）を参照して、関係オブジェクトを全て抽出する（図７のステップＳ１３０）。例えば、図３においては、種別が「数値」以外のＩＤ＝「０３」が関係オブジェクトとして抽出される。
【００５６】
さらに、ＣＰＵ１０は、関係オブジェクトの種別、および関係オブジェクトにより連結される数値オブジェクトの数値を読み出して計算式を生成し、コンピュータ処理可能なデータに変換する（図７のステップＳ１３２）。例えば、図３の計算式要素ＤＢ３２と図４の関係オブジェクト−数値オブジェクト対応テーブルを参照することにより、計算式「５８，０００−７，２００」が生成され、コンピュータ処理可能なデータに変換される。
【００５７】
ＣＰＵ１０は、変換した計算式に基づいて、演算処理を実行して（図７のステップＳ１３４）、計算結果をメモリ１６に記憶する（図７のステップＳ１３６）。例えば、「５８，０００−７，２００」の引算を行い「５０，８００」を算出し、図３に示す計算式要素ＤＢ３２に計算結果「５０，８００」をメモリ１６に記憶する。
【００５８】
ＣＰＵ１０は、さらに、図６のステップＳ１２２に移行して、算出した計算結果をディスプレイ１２に出力して表示する。例えば、図１１に示すように、計算式作成フィールドＸの計算結果Ｓ１に値「５０，８００」が表示される。
【００５９】
５．計算結果を数値オブジェクトとして取り扱う場合の実施形態
さらに、図１１に示す関連オブジェクトＲ１に関連づけて表示される計算結果Ｓ１を、数値オブジェクトとして取り扱うことも可能である。計算結果を数値オブジェクトとして取り扱う場合の実施形態について、図１２〜図１４を用いて以下に説明する。図１２は、この実施形態における計算式要素ＤＢ３２（図２）のデータ例を示す図である。図１３は、この実施形態における関係オブジェクト−数値オブジェクト対応テーブル３４のデータ例を示す図である。図１４はこの実施形態における計算式作成フィールドＸの表示例を示す図である。
【００６０】
図１４は、図１１に示す計算式作成フィールドＸの数値オブジェクトγと計算結果Ｓ１を、演算種別「掛算」の関係オブジェクト（直線）Ｒ２で連結した状態を示す図である。したがって、図１２の計算式要素ＤＢ３２には、数値オブジェクトγ（ＩＤ＝「０４」）および関係オブジェクトＲ２（ＩＤ＝「０５」）が、図２の計算式要素ＤＢ３２に加えて記憶されている。さらに、図１３の関係オブジェクト−数値オブジェクト対応テーブル３４には、関係オブジェクトＲ２（ＩＤ＝「０５」）の対象となる数値オブジェクトのＩＤＡ＝「０３」、ＩＤＢ＝「０４」がさらに記憶されており、ＩＤＡ＝「０３」であることから、関係オブジェクトＲ１に関する計算結果Ｓ１が数値オブジェクトとして取り扱われていることがわかる。なお、関係オブジェクトＲ２を連結するときの計算式処理プログラム３０が行う処理は、図３に示すフローチャートと同様の処理により行われる。
【００６１】
また、図１４に示す計算式要素ＤＢ３２に記憶される関係オブジェクト（ＩＤ＝「０３」）の値「５０，８００」は、計算式「５８，０００」（ＩＤＡ＝「０１」の値）−「７，２００」（ＩＤＢ＝「０２」の値）の計算結果としてメモリ１６に記憶された値である。
【００６２】
図１４に示すように、計算結果Ｓ１を数値オブジェクトγと連結した上で、計算開始ボタンＢｓを押下すれば、計算式作成フィールドＸ上に生成された計算式「５０，８００（５８，０００−７，２００の計算結果）×３０」について計算処理が行われ、その計算結果「１，５２４，０００」が計算結果Ｓ２に表示されることになる。
【００６３】
以上のように、計算結果を数値オブジェクトとして取り扱うことにより、ユーザーがコンピュータ画面上で計算式を視覚的、かつ、柔軟に生成・編集することが可能となる。
【００６４】
６．計算式が複雑化した場合の実施形態
上記の実施形態においては、計算式が比較的簡単な場合を例に説明したが、計算式が複雑化した場合には計算式作成フィールドＸ上の表示が見難くなり問題となる。かかる問題を解消するために、図１５に示すように、計算結果に属する（つまり、計算結果の元となった計算式要素）数値オブジェクトおよび関係式の表示を一定の操作（例えば、図１５の計算結果Ｓ１をダブルクリックする等）により省略することも可能である。図１５は、図１４に示す計算式作成フィールドＸにおいて、計算結果Ｓ１に属する数値オブジェクトα、βと引用文献Ｒ１（図１４）を非表示にした例を示す図である。
【００６５】
７．特定の領域を指定することにより加算処理を行う場合の実施形態
上記の実施形態においては、第１の数値オブジェクトと第２の数値オブジェクトを演算種別を表す関係オブジェクトで連結するようにしたが、特定の領域を指定することにより複数の数値オブジェクトを関係オブジェクトで連結し、これらの数値オブジェクトについて加算処理を行うようにしてもよい。
【００６６】
本実施形態について、以下に、図１６、図１７などを用いて説明する。なお、本実施形態におけるハードウェア構成は、図２に示すものと同じであり、ハードディスク１４には、計算式処理プログラム３０の他、さらにＣＡＤアプリケーション（図示せず）が記憶されている。
【００６７】
図１６は、ＣＡＤアプリケーションの表示画面を示す図であり、この表示画面上において、ＣＡＤアプリケーションと計算処理プログラムとが連携して計算式の処理を行う。なお、図１６には、複数のＣＡＤオブジェクトがレイアウトされた部屋の平面図が表示されている。
【００６８】
図１７は、この実施形態における計算式要素ＤＢ３２のデータ例を示す図である。図１７に示す計算式要素ＤＢ３２には、図１６に示す表示画面において、カーソルＣ４によって特定される領域Ｄに囲まれるＣＡＤオブジェクトのデータが記憶されている。
【００６９】
例えば、図１６の領域Ｄに囲まれたＣＡＤオブジェクトであるイス１０１〜１０６、観葉植物１０８、テーブル１１０についての各データ（名称、値、個数、加算フラグ）が記憶されている。これらの各データは計算式処理プログラム３０がＣＡＤアプリケーションに要求して取得する。一方、図１６の領域Ｄに囲まれていないＣＡＤオブジェクトであるソファー１１１、収納ユニット１２０のデータは、図１７に示す計算式要素ＤＢ３２には記憶されない。
【００７０】
なお、本実施形態においては、特定の領域に囲まれて計算式要素ＤＢ３２（図１７）に記憶された数値オブジェクトについて、順序に関係なく足算（加算）を行うことにより計算式を生成するようにしている。このため、演算の順序を記憶する関係オブジェクト−数値オブジェクト対応テーブル３４（図４）は必要がなく、計算式処理プログラム３０（図２）は、計算式要素ＤＢ３２のみを備えている。
【００７１】
また、図１７の計算式要素ＤＢ３２に記憶されたオブジェクトのうち、観葉植物１０８の加算フラグだけが「０」となっている。これは、観葉植物１０８を計算式を生成する時に数値オブジェクトとして抽出せず、その値を加算対象から除外するためである。なお、ユーザーは、観葉植物についても加算対象としたい場合には自ら加算フラグに「１」を入力することも可能である。
【００７２】
図１６に示す領域Ｄについて計算処理が開始されると、ＣＰＵ１０は、図１７の計算式要素ＤＢ３２から加算フラグ「１」のオブジェクトだけを数値オブジェクトとして抽出し、これらを全て加算（足算）の演算子「＋」で連結することにより計算式を生成する。
【００７３】
例えば、ユーザーにより計算開始の命令が与えられると、ＣＰＵ１０は、図１７の計算式要素ＤＢ３２から加算フラグが「０」である観葉植物１０８以外の数値オブジェクトの値を抽出して演算子「＋」で連結する。これにより、イス１０１〜１０６とテーブル１１０の値を加算する計算式「６０，０００＋６０，０００＋６０，０００＋６０，０００＋６０，０００＋６０，０００＋２２０，０００」が生成される。
【００７４】
さらに、ＣＰＵ１０は、この計算式に基づいて計算処理を行い、その計算結果の値「５８０，０００」を、図１６に示すように計算結果Ｓ３に出力して表示する。
【００７５】
これにより、コンピュータ画面上で加算の計算式を視覚的に生成・編集して、計算結果を得ることが可能となる。
【００７６】
なお、上記実施形態においては、図１７に記憶される各オブジェクトの数量は全て「１」であったが、数量が複数であってもよい。例えば、収納ユニット１２０は、図１６の平面図ではその数量は不明であるが、実際は、図１８のＡ（収納ユニット１２０の側面図）に示すように同種の収納ユニット１２０ａ、１２０ｂ、１２０ｃが３個重ねて配置されており、図１８のＢに示すような数量「３」、値「５，０００」、加算フラグ「１」のデータを有している。このため、例えば、図１６の領域Ｄ’を指定して、領域Ｄのオブジェクトに収納ユニット１２０を追加した場合には、計算式「６０，０００＋６０，０００＋６０，０００＋６０，０００＋６０，０００＋６０，０００＋２２０，０００＋５，０００×３」が計算式として生成され、前述の領域Ｄの計算式に「５，０００×３」の項が追加されることになる。
【００７７】
なお、上記実施形態においては、計算処理プログラム３０をＣＡＤアプリケーションとは別のプログラムとしているが、ＣＡＤアプリケーションにプラグインなどの機能プログラムとして組み込んで実現してもよい。
【００７８】
８．その他の実施形態
なお、上記実施形態においては、数値オブジェクトとして数値データを含むものを取り扱うこととしたが、数値データを含むものに限定されるものではなく、図１９に示すような三角関数などの関数の属性データを含むものも数値オブジェクトとして取り扱うこともできる。
【００７９】
例えば、図１９に示す三角関数パレットＰ’に示すように、サイン、コサイン、タンジェントなどの三角関数毎に異なる属性を示す形状の数値オブジェクトを計算式作成フィールドＸ’上に配置し、それぞれの値θを入力することにより、計算式を作成することも可能である。なお、図１９に示す、計算式作成フィールドＸ’上には、計算式「( sinπ/4+ cosπ/6 )／tanπ/10」が生成されており、その計算結果が「４．８４１６」であることを示している。
【００８０】
なお、上記の実施形態においては数値オブジェクトを枠線により数値を囲って表示するようにしたが、オブジェクトとして認識することが可能であれば、枠線を表示しないようにしてもよい。
【００８１】
さらに、上記の実施形態においては数値オブジェクトをパレットＰからドラッグ＆ドロップすることにより生成することとしたが、これに限定されるものではなく、ＯＣＲ等のソフトウェアを用いて画面上の表示から数値データを抽出して、数値オブジェクトを新たに生成するようにしてもよい。
【００８２】
また、関係オブジェクトオブジェクトの表示も直線、矢印に限定されず、関連性を表示することができればよい。特に、関係オブジェクトが引算や割算のように方向性に依存するものである場合には、方向性を表示することができるものであればよい。
【００８３】
なお、上記実施形態においては、関係オブジェクトの生成または領域の指定により数値オブジェクトの連結を行っているが、これらを組み合わせて実現することも可能である。例えば、図１６に示す領域指定により得られた計算結果Ｓ３を、さらに直線で表される足算の関係オブジェクトでソファー１１１や収納ユニット１２０に連結するようにしてもよい。
【００８４】
なお、上記実施形態においては、関係オブジェクト（矢印）の方向を反転させるときにＩＤAとＩＤＢのＩＤデータを入れ替えて更新するようにしたが、これに限定されるものではなく、その他の方法、例えば、関係オブジェクト−数値オブジェクト対応テーブルに順方向と逆方向を表すデータ項目を設け、当該データを書き換える等の方法により、関係オブジェクト（矢印）の方向を反転させるようにしてもよい。
【００８５】
なお、上記実施形態においては、計算式に基づいて算出した計算結果をコンピュータ画面上に表示するために出力することとしたが、計算結果を利用する他のプログラムに出力するようにしてもよい。
【図面の簡単な説明】
【００８６】
【図１】この発明の計算式処理装置１の全体構成を示す機能ブロック図である。
【図２】この発明の計算式処理装置１のハードウェア構成を示す図である。
【図３】ハードディスク１４に記憶された計算式要素ＤＢ３２のデータ例を示す図である。
【図４】ハードディスク１４に記憶された関係オブジェクト−数値オブジェクト対応テーブル３４のデータ例を示す図である。
【図５】計算式作成フィールドＸ上で計算式を生成する時に行われる処理を示すフローチャートである。
【図６】計算式作成処理の後、計算結果を算出するまでの処理を示すフローチャートである。
【図７】図６の計算結果算出ステップＳ１２０の詳細を示す図である。
【図８】計算式作成フィールドＸ上に数値オブジェクトを配置した表示例を示す図である。
【図９】計算式作成フィールドＸ上に関係オブジェクトを生成した表示例を示す図である。
【図１０】計算式作成フィールドＸ上に生成した関係オブジェクトを反転させた表示例を示す図である。
【図１１】計算式作成フィールドＸ上において計算結果Ｓ１を表示した例を示す図である。
【図１２】ハードディスク１４に記憶された計算式要素ＤＢ３２のデータ例を示す図である。
【図１３】ハードディスク１４に記憶された関係オブジェクト−数値オブジェクト対応テーブル３４のデータ例を示す図である。
【図１４】計算式作成フィールドＸ上における他の計算式の表示例を示す図である。
【図１５】計算結果Ｓ１の元となった計算式を非表示にした場合の表示例を示す図である。
【図１６】他の実施形態により計算式処理を行う場合の表示画面例を示す図である。
【図１７】他の実施形態により計算式処理を行う場合のオブジェクトデータ例を示す図である。
【図１８】表示画面に示されたオブジェクト１２０の側面図、データ例を示す図である。
【図１９】計算式作成フィールドＸ上に数値オブジェクトとして三角関数を用いた場合の表示例を示す図である。
【符号の説明】
【００８７】
１・・・・計算式処理装置
２・・・・計算式表示部
４・・・・計算式生成手段
４ａ・・・・数値オブジェクト配置手段
４ｂ・・・・数値オブジェクト連結手段
６・・・・計算式基礎データ記憶部
８・・・・計算処理手段
１０・・・・CPU
１２・・・・ディスプレイ
１４・・・・ハードディスク
１６・・・・メモリ
１８・・・・キーボード／マウス
２０・・・・CD-ROMドライブ
２２・・・・CD-ROM
３０・・・・計算処理プログラム
３２・・・・計算式要素DB
３４・・・・関係オブジェクト−数値オブジェクト対応テーブル
【図１】
2006099321.tif 000003
【図２】
2006099321.tif 000004
【図３】
2006099321.tif 000005
【図４】
2006099321.tif 000006
【図５】
2006099321.tif 000007
【図６】
2006099321.tif 000008
【図７】
2006099321.tif 000009
【図８】
2006099321.tif 000010
【図９】
2006099321.tif 000011
【図１０】
2006099321.tif 000012
【図１１】
2006099321.tif 000013
【図１２】
2006099321.tif 000014
【図１３】
2006099321.tif 000015
【図１４】
2006099321.tif 000016
【図１５】
2006099321.tif 000017
【図１６】
2006099321.tif 000018
【図１７】
2006099321.tif 000019
【図１８】
2006099321.tif 000020
【図１９】
2006099321.tif 000021