(57)【要約】【課題】  ＧＵＩに基づく直感的な操作で数式等の情報入力ができる情報入力システム及び情報入力プログラムを提供する。【解決手段】  ポインティングデバイスによって選択されディスプレイ上に表示される記号オブジェクト、その配置領域Ｄｘ、当該記号オブジェクトの周辺に所定の拡がりを持つ周辺領域Ａｘ（Ａｘ１〜Ａｘ６）及び、当該周辺領域に対応して他のオブジェクトを適合させて表示するための情報を有するパーツオブジェクトをオブジェクト生成手段によって生成する。また、ディスプレイ上のパーツオブジェクトＡの周辺領域に、他のパーツオブジェクトＢが前記ポインティングデバイスにより引き寄せられ、パーツオブジェクトＡの周辺領域内に入ると、パーツオブジェクトＢをパーツオブジェクトＡと関連付け、上記情報に基づいて、ポインタの位置に対応した所定の表示形態にパーツオブジェクトＢを適合させるオブジェクト管理手段を設ける。【選択図】      図３
2006235918.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータと、ポインティングデバイスを含む入力装置と、ディスプレイとを備えた情報入力システムにおいて、前記コンピュータは、
前記ポインティングデバイスによって選択され前記ディスプレイ上に表示される記号オブジェクト、その配置領域、当該記号オブジェクトの周辺に所定の拡がりを持つ周辺領域、及び、当該周辺領域に対応して他のオブジェクトを適合させて表示するための情報、を有するパーツオブジェクトを生成するオブジェクト生成手段と、
前記ディスプレイ上のパーツオブジェクトＡの周辺領域に、他のパーツオブジェクトＢが前記ポインティングデバイスにより引き寄せられ、パーツオブジェクトＡの周辺領域内に入ると、パーツオブジェクトＢをパーツオブジェクトＡと関連付け、前記情報に基づいて、ポインタの位置に対応した所定の表示形態にパーツオブジェクトＢを適合させるオブジェクト管理手段と
を備えたことを特徴とする情報入力システム。
【請求項２】
前記オブジェクト管理手段は、適合させたパーツオブジェクトＢが関連付けられた位置に応じて、パーツオブジェクトＢにパーツオブジェクトＡと同一又は異なる深さの情報を付与し、当該深さの情報がパーツオブジェクトＡと同一である場合、パーツオブジェクトＢとパーツオブジェクトＡとを互いに隣接オブジェクトとして関連付け、前記オブジェクト生成手段は、パーツオブジェクトＡから隣接関係によって辿ることのできるパーツオブジェクトを一体的に収める器領域を持つパーツオブジェクトＣを生成する請求項１記載の情報入力システム。
【請求項３】
前記オブジェクト管理手段は、適合させたパーツオブジェクトＢが関連付けられた位置に応じて、パーツオブジェクトＢにパーツオブジェクトＡと同一又は異なる深さの情報を付与し、当該深さの情報がパーツオブジェクトＡとは異なる場合、パーツオブジェクトＢをパーツオブジェクトＡの子オブジェクトとして関連付け、パーツオブジェクトＡの周辺領域を拡張して新たな周辺領域を構成する請求項１記載の情報入力システム。
【請求項４】
前記オブジェクト管理手段は、適合させたパーツオブジェクトＢを前記入力装置の確定操作によって所定の位置に収め、他方、確定操作されずにパーツオブジェクトＢがパーツオブジェクトＡの周辺領域から引き離されたときは関連付けを解除する請求項１記載の情報入力システム。
【請求項５】
ポインティングデバイスを含む入力装置及びディスプレイと接続されたコンピュータを、
前記ポインティングデバイスによって選択され前記ディスプレイ上に表示される記号オブジェクト、その配置領域、当該記号オブジェクトの周辺に所定の拡がりを持つ周辺領域、及び、当該周辺領域に対応して他のオブジェクトを適合させて表示するための情報、を有するパーツオブジェクトを生成するオブジェクト生成手段、及び、
前記ディスプレイ上のパーツオブジェクトＡの周辺領域に、他のパーツオブジェクトＢが前記ポインティングデバイスにより引き寄せられ、パーツオブジェクトＡの周辺領域内に入ると、パーツオブジェクトＢをパーツオブジェクトＡと関連付け、前記情報に基づいて、ポインタの位置に対応した所定の表示形態にパーツオブジェクトＢを適合させるオブジェクト管理手段
として機能させるための情報入力プログラム。
【請求項６】
前記オブジェクト管理手段は、適合させたパーツオブジェクトＢが関連付けられた位置に応じて、パーツオブジェクトＢにパーツオブジェクトＡと同一又は異なる深さの情報を付与し、当該深さの情報がパーツオブジェクトＡと同一である場合、パーツオブジェクトＢとパーツオブジェクトＡとを互いに隣接オブジェクトとして関連付け、前記オブジェクト生成手段は、パーツオブジェクトＡから隣接関係によって辿ることのできるパーツオブジェクトを一体的に収める器領域を持つパーツオブジェクトＣを生成する請求項５記載の情報入力プログラム。
【請求項７】
前記オブジェクト管理手段は、適合させたパーツオブジェクトＢが関連付けられた位置に応じて、パーツオブジェクトＢにパーツオブジェクトＡと同一又は異なる深さの情報を付与し、当該深さの情報がパーツオブジェクトＡとは異なる場合、パーツオブジェクトＢをパーツオブジェクトＡの子オブジェクトとして関連付け、パーツオブジェクトＡの周辺領域を拡張して新たな周辺領域を構成する請求項５記載の情報入力プログラム。
【請求項８】
前記オブジェクト管理手段は、適合させたパーツオブジェクトＢを前記入力装置の確定操作によって所定の位置に収め、他方、確定操作されずにパーツオブジェクトＢがパーツオブジェクトＡの周辺領域から引き離されたときは関連付けを解除する請求項５記載の情報入力プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、パソコン等のコンピュータにおいて、ＧＵＩ(Graphical User Interface)操作によって記号（例えば数字、文字、数学記号）、数式等の情報入力を行う情報入力システム及び情報入力プログラムに関する。
【背景技術】
【０００２】
情報入力のうち例えば数式入力について、従来、一般に使用されているワードプロセッサでも数式入力は可能であるが、各種数学表現を含む複雑な数式入力には専用のソフト（例えばMathType（非特許文献１）、Mathematica（非特許文献２）、Scientific WorkPlace（非特許文献３））が使用されている。
【０００３】
【非特許文献１】MathType ホームページ、［平成１７年２月８日検索］、インターネット＜URL: http://www.mathtype.com/jp/＞
【非特許文献２】Mathematica Wolfram Research, Inc.［平成１７年２月８日検索］、インターネット＜URL: http://www.wolfram.co.jp/products/mathematica/index.html＞
【非特許文献３】LaTeX文書作成ツール Scientific WorkPlace、［平成１７年２月８日検索］、インターネット＜URL: http://www.lightstone.co.jp/products/swp/swp.htm＞
【発明の開示】
【発明が解決しようとする課題】
【０００４】
上記のような従来の数式入力ソフトでは、例えば「ｘ２」と入力するには、まず画面上で入力位置を指定して、キーボードによってｘを入力する。次に、その右上に指数の挿入ポイントを作成し、これによって初めて指数入力が可能となる。そして、キーボードによって２を当該挿入ポイントに挿入してｘ２の入力が完了する。また、不要になった挿入ポイントは削除する必要がある。このような挿入ポイントの作成は、それ自体が数式入力作業ではないため、入力しようとする数式に対する意識の中断を招き、不便である。また、このような操作は、主にキーボードによって行われるため、ＧＵＩを有効に活用しているとは言えない。このことは、例えば平方根や分数の入力についても同様である。
上記のような従来の問題点に鑑み、本発明は、ＧＵＩに基づく直感的な操作で数式等の情報入力ができる情報入力システム及び情報入力プログラムを提供することを目的とする。
【課題を解決するための手段】
【０００５】
本発明は、コンピュータと、ポインティングデバイスを含む入力装置と、ディスプレイとを備えた情報入力システムにおいて、コンピュータに以下の手段を備えたものである。また、本発明の情報入力プログラムは、ポインティングデバイスを含む入力装置及びディスプレイと接続されたコンピュータを、以下の手段として機能させるものである。すなわち、当該手段とは、
前記ポインティングデバイスによって選択され前記ディスプレイ上に表示される記号オブジェクト、その配置領域、当該記号オブジェクトの周辺に所定の拡がりを持つ周辺領域、及び、当該周辺領域に対応して他のオブジェクトを適合させて表示するための情報、を有するパーツオブジェクトを生成するオブジェクト生成手段と、
前記ディスプレイ上のパーツオブジェクトＡの周辺領域に、他のパーツオブジェクトＢが前記ポインティングデバイスにより引き寄せられ、パーツオブジェクトＡの周辺領域内に入ると、パーツオブジェクトＢをパーツオブジェクトＡと関連付け、前記情報に基づいて、ポインタの位置に対応した所定の表示形態にパーツオブジェクトＢを適合させるオブジェクト管理手段、とである。
上記のような情報入力システム又は情報入力プログラムでは、オブジェクト生成手段によって記号オブジェクトの周辺に所定の拡がりを持つ周辺領域を有するパーツオブジェクトが生成され、パーツオブジェクトＡの周辺領域に他のパーツオブジェクトＢがポインティングデバイスにより周辺領域の所望の位置に引き寄せられると、オブジェクト管理手段により、パーツオブジェクトＢは、パーツオブジェクトＡと関連付けられ、ポインタの位置に対応した所定の表示形態に適合させられる。従って、ポインティングデバイスによるＧＵＩ操作に基づき、記号や数式に他の記号や数式を引き寄せる、という操作で、情報が入力される。
【０００６】
また、上記情報入力システム／情報入力プログラムにおいて、オブジェクト管理手段は、適合させたパーツオブジェクトＢが関連付けられた位置に応じて、パーツオブジェクトＢにパーツオブジェクトＡと同一又は異なる深さの情報を付与し、当該深さの情報がパーツオブジェクトＡと同一である場合、パーツオブジェクトＢとパーツオブジェクトＡとを互いに隣接オブジェクトとして関連付け、オブジェクト生成手段は、パーツオブジェクトＡから隣接関係によって辿ることのできるパーツオブジェクトを一体的に収める器領域を持つパーツオブジェクトＣを生成するものであってもよい。
この場合、パーツオブジェクトＡ及びＢを器領域に収めたパーツオブジェクトＣによって一体的に扱うことにより、記号の集まりを１つの部品のように扱うことができるので、さらに他のパーツオブジェクトと関連付けて複雑な数式を容易に構築することができる。
【０００７】
また、上記情報入力システム／情報入力プログラムにおいて、オブジェクト管理手段は、適合させたパーツオブジェクトＢが関連付けられた位置に応じて、パーツオブジェクトＢにパーツオブジェクトＡと同一又は異なる深さの情報を付与し、当該深さの情報がパーツオブジェクトＡとは異なる場合、パーツオブジェクトＢをパーツオブジェクトＡの子オブジェクトとして関連付け、パーツオブジェクトＡの周辺領域を拡張して新たな周辺領域を構成するものであってもよい。
この場合、深さが異なる複数のオブジェクト構造であっても、パーツオブジェクトＡの周辺領域を拡張して子オブジェクトを親オブジェクトと一体的に扱うことができる。これにより、深さが３種類以上の場合には、親・子・孫  ．．．のように関連付けて一体的に扱うことができる。
【０００８】
また、上記情報入力システム／情報入力プログラムにおいて、オブジェクト管理手段は、適合させたパーツオブジェクトＢを入力装置の確定操作によって所定の位置に収め、他方、確定操作されずにパーツオブジェクトＢがパーツオブジェクトＡの周辺領域から引き離されたときは関連付けを解除するものであってもよい。
この場合、引き離すだけで関連付けが解除されるので、解除のために特別な操作をする必要がなく、便利である。
【発明の効果】
【０００９】
本発明の情報入力システム又は情報入力プログラムによれば、パーツオブジェクトＡの周辺領域の所望の位置に他のパーツオブジェクトＢがポインティングデバイスにより引き寄せられると、パーツオブジェクトＢは、パーツオブジェクトＡと関連付けられ、所定の表示形態となる。従って、ポインティングデバイスによるＧＵＩ操作に基づき、記号や数式に他の記号や数式を引き寄せる、という視覚に基づく直感的な操作により所望の情報入力を完成することができ、極めて便利である。
【発明を実施するための最良の形態】
【００１０】
以下、本発明の一実施形態による情報入力システム及び情報入力プログラムについて図面を参照して説明する。図１は、記号オブジェクトＳとして例えば「ｙ」の文字を示す図であり、表示される内容である「ｙ」と、表示上の基準位置となるベースラインＢＬを表すデータとを有している。図２は他の記号オブジェクトの例として「ｘ」、「ｚ」、「１」、「２」、「ｓｉｎ」、「（ 」、「＋」を示している。また、例えば「ｓｉｎ」のような１つの意味を持つ記号は３文字で１記号オブジェクトを構成している。なお、記号オブジェクトはこれら以外にも、数式入力に必要な各種の記号について用意されている。また、「記号」とは、数学記号の他、数字、文字も含むものとする。さらに、「記号」のうちの１つを分解して得られる一部分のみ（例えば漢字における部首）又は「記号」の組み合わせについても、「記号」として扱うことができる。
【００１１】
図３〜５は、パーツオブジェクト（「ｘ」の例）の構成を示す図であり、図３は構成を平面的に表した図、図４は構成を立体的な重ね合わせで表した図、図５は後述の適合表示情報における適合表示の基点を示した図である。図３，図４において当該パーツオブジェクト「ｘ」は、設計図として必要なクラス変数的データとして、配置領域Ｄｘと、この配置領域Ｄｘに表される記号オブジェクト「ｘ」と、この記号オブジェクトの周辺に所定の拡がりを持つ周辺領域Ａｘと、この周辺領域Ａｘに対応して他のパーツオブジェクトを適合させて表示するための情報（以下、適合表示情報という。）とを有している。
【００１２】
上記配置領域Ｄｘは記号オブジェクトＳ（「ｘ」）と１対１で対応するものであり、基本的には記号オブジェクトを包含する最小限の大きさであるが、それより大きくてもよく、記号オブジェクトＳが配置領域Ｄｘのどの位置に表されるかの情報を持つ。周辺領域Ａｘは例えば６個の区画Ａｘ１，Ａｘ２，Ａｘ３，Ａｘ４，Ａｘ５，Ａｘ６によって構成されている。また、適合表示情報とは、図５に示す適合表示の基点Ｐ１〜Ｐ６の位置（座標）の他、これらに他のパーツオブジェクトがどのような形で付くかという情報を含んでいる。また、適合表示情報には、基点Ｐ１〜Ｐ６のそれぞれに対応して、適合される他のパーツオブジェクトの深さを決定するための深さ変更情報Ｉ１〜Ｉ６（例えば、Ｉ１＝０，Ｉ２＝＋１，Ｉ３＝＋１，Ｉ４＝０，Ｉ５＝＋１，Ｉ６＝＋１）が含まれている。さらにパーツオブジェクトは、クラス変数的なデータに基づいた、実際の画面表示に必要なインスタンス変数的なデータを有している。
【００１３】
図６及び図７は、一例として、適合表示情報における適合表示の基点Ｐ１〜Ｐ６に対して他のパーツオブジェクトがどのような形で付くかを説明する図である。図６において、基点Ｐ１及びＰ４に対しては、ベースラインＢＬがＰ１，Ｐ４を通るように、「ｘ」と同一の高さ位置でそれぞれ左横及び右横に他のパーツオブジェクトが付く。なお、左横に来る他のパーツオブジェクト自身の基点Ｐ４は、「ｘ」の基点Ｐ１と同一座標となる。同様に、右横に来る他のパーツオブジェクト自身の基点Ｐ１は、「ｘ」の基点Ｐ４と同一座標となる。図７において、基点Ｐ２に対しては、これを中央下端とするように、他のパーツオブジェクトが付く。基点Ｐ６に対しては、これを中央上端とするように、他のパーツオブジェクトが付く。また、基点Ｐ３に対しては、ここをベースラインＢＬが通るように、その右側に他のパーツオブジェクトが付く。基点Ｐ５に対しては、これを左上とするように、他のパーツオブジェクトが付く。
【００１４】
一方、図８に示すような例えば「＋」の記号を表すパーツオブジェクトも同様に、記号オブジェクトＳ、配置領域Ｄ、周辺領域Ａ及び適合表示情報によって構成されるが、この場合、他のパーツオブジェクトは左右に隣接して同一の高さ位置に付く以外にないので、周辺領域は左右の２区画Ａ１，Ａ４のみである。また、全体を包含する矩形領域を外郭領域ＥＸとする。この外郭領域ＥＸは、実際のパーツオブジェクト生成時に生成される前述のインスタンス変数的なデータの１つである。
【００１５】
図９〜１２は、器領域を有するパーツオブジェクトの例を示す図である。なお、器領域とは、複数のパーツオブジェクトを１つのかたまりとして収めるための容器的エリアであり、その範囲は内容物の大きさによって決定される。図９のパーツオブジェクトＱは、器領域Ｔ、周辺領域Ａ（区画Ａ１〜Ａ４）及び適合表示情報を有し、記号オブジェクト及びその配置領域を有しない。図１０は、器領域Ｔ、かっこの記号オブジェクト「（  」と「  ）」、その配置領域Ｄ（区画Ｄ１，Ｄ２）、周辺領域Ａ（区画Ａ１〜Ａ８）、及び、適合表示情報を有するパーツオブジェクトＱを示している。図１１は、上下２つの器領域Ｔ（区画Ｔ１，Ｔ２）、分数の中線を示す記号オブジェクト「−」、その配置領域Ｄ、周辺領域Ａ（区画Ａ１〜Ａ４）、及び、適合表示情報を有するパーツオブジェクトＱを示している。また、図１２は、器領域Ｔ、ルートの記号オブジェクト「√」、その配置領域Ｄ、周辺領域Ａ（区画Ａ１〜Ａ５）、及び、適合表示情報を有するパーツオブジェクトＱを示している。図１０〜１２のパーツオブジェクトは、画面上の部品エリアからマウス等のポインティングデバイスによって選択され、ドラッグされることにより形成される。また、図１０〜１２の各パーツオブジェクトＱにおける器領域Ｔは、記号上の内容物（例えばかっこの中に入る記号）を収め得る性格のものである。
【００１６】
上記のように、図９に示すパーツオブジェクトＱには記号オブジェクト及びその配置領域がない。一方、図３〜５に示すパーツオブジェクト「ｘ」には器領域がない。すなわち、パーツオブジェクトの構成要素のうち、周辺領域及び適合表示情報は、基本的にはそれぞれ常に１以上含まれるが、記号オブジェクト、配置領域及び器領域はいずれも、１つも含まれない場合がある。
【００１７】
次に、上記のようなオブジェクトを取り扱う情報入力システムについて、図１６のブロック図を参照して説明する。当該システムは、パソコン等のコンピュータ１００、入力装置２００及びディスプレイ３００によって構成されている。入力装置２００は、マウス等のポインティングデバイス（以下、マウスという。）２０１及びキーボード２０２によって構成されている。
【００１８】
コンピュータ１００は、内蔵するＣＰＵ、メモリ、補助記憶装置等のハードウェアを、入力装置２００からの操作入力に応じて、各種の手段として機能させる情報入力プログラムを搭載している。データ記憶手段１０１には、例えば、記号オブジェクトのデータ、パーツオブジェクト設計用のデータ、部品エリア設計用のデータ、深さに応じて表示サイズを決定するためのデータが記憶されている。部品とは、パーツオブジェクト設計用のデータと関連付けられた記号オブジェクトであり、これらは、ディスプレイ３００の画面上の部品エリアに表示される。例えば部品エリアは複数枚の部品エリアの子画面を重ねたように表示され、それぞれの子画面に対応したタブの選択によって所望の部品エリアを表示することができる。部品管理手段１０２は、入力手段２００により操作入力を受け取った操作指令手段１０６からの指令により、部品エリアを画面に表示する。オブジェクト生成手段１０３は、操作指令手段１０６からの指令により、パーツオブジェクトを生成する。オブジェクト管理手段１０４は、オブジェクト生成手段１０３によって生成されたパーツオブジェクトに関するすべての情報を管理し、操作指令手段１０６からの指令に基づいてパーツオブジェクトを加工する。描画手段１０５は、部品管理手段１０２から提供される部品エリアの情報及びオブジェクト管理手段１０４から提供されるパーツオブジェクトの情報を、ディスプレイ３００に表示させる。
【００１９】
次に、具体的な操作を例示して、上記情報入力システムの動作について説明する。以下の説明において、マウス２０１のボタン（通常は左ボタン）を押す操作を「クリック」、押したままにする操作を「プレス」、プレスしたままマウス２０１を移動させる操作を「ドラッグ」、マウス２０１のボタンを押すことをやめる操作を「リリース」という。また、ディスプレイ３００上のドラッグ可能なオブジェクト上にマウスカーソルがあるときにプレスしてドラッグを行い、その後に所望の位置でリリースする操作を「ドロップ」、ドラッグとドロップを一連の操作として行う操作を「ドラッグアンドドロップ」という。
まず、画面上の部品エリアから「ｘ」の文字をクリック及びプレスにより選択し、これを、ドラッグアンドドロップにより画面上の所望の位置に表示させる。このとき、「ｘ」がドラッグ開始された時点で、オブジェクト生成手段１０３により記号オブジェクト「ｘ」についてのパーツオブジェクトが生成されている。次に、同様に「ｙ」についてマウスによりドラッグし、「ｘ」に引き寄せる。「ｙ」が「ｘ」に引き寄せられ、「ｙ」をドラッグするマウスのカーソル（ポインタ）が「ｘ」の周辺領域内に入ると（正確にはカーソルが示す座標がそこに入ると、の意味である。以下同様。）、オブジェクト管理手段１０４によって、パーツオブジェクト「ｙ」はパーツオブジェクト「ｘ」に関連付けられる。なお、「ｙ」を一旦画面上の任意の位置にドラッグアンドドロップし、これを改めてドラッグし、「ｘ」に引き寄せる場合も同様である。
【００２０】
ここで、例えば図３における周辺領域Ａｘの区画Ａｘ４内に、「ｙ」をドラッグするマウスのカーソルが入ると、オブジェクト管理手段１０４は、区画Ａｘ４内のどの位置にカーソルがあるかに関わらず、「ｘ」の基点Ｐ４（図５）と「ｙ」の基点Ｐ１とが同一となる所定位置に「ｙ」を表示させる。また、このとき、区画Ａｘ４と「ｘ」の基点Ｐ４とに対応した深さ変更情報Ｉ４が例えば０である場合、「ｙ」の深さは「ｘ」の深さと同一となり、データ記憶手段１０１から深さに応じた表示サイズの情報が取り出され、その情報に従って「ｙ」の表示サイズが設定される。そして、画面の表示は「ｘｙ」となる。すなわち、パーツオブジェクト「ｙ」は、カーソルの位置に対応した所定の表示形態に適合させられ、プレビュー表示される。プレビュー表示とは、適合させられて表示されているが確定していない状態の表示のことをいう。ここでリリースすると、「ｘｙ」が入力完了となる。
【００２１】
深さが同一である場合、入力完了と同時に、オブジェクト管理手段１０４は「ｘ」と「ｙ」とを隣接した一体的なオブジェクト（親子関係ではなく対等な関係）として収めることができる最小の器領域を生成し、周辺領域も形成する。すなわち、図９に示すようなパーツオブジェクトＱが生成され、「ｘｙ」はその器領域Ｔ（大きさは内容物によって異なる。）に収められる。新たに生成されたパーツオブジェクトＱには、「ｘｙ」と同じ深さが付与される。これは、より普遍的に述べるならば、オブジェクト管理手段１０４が、パーツオブジェクト「ｙ」とパーツオブジェクト「ｘ」とを互いに隣接オブジェクトとして関連付け、さらにオブジェクト生成手段１０３が、パーツオブジェクト「ｘ」から隣接関係によって辿ることのできるパーツオブジェクトを一体的に収める器領域を持つパーツオブジェクトを生成（又は更新）する、ということになる。
【００２２】
このようにして、複数のパーツオブジェクトを器領域に収めて一体的に扱うことにより、記号の集まりを１つの部品のように扱うことができるので、さらに他のパーツオブジェクトと関連付けて複雑な数式を容易に構築することができる。
また、図３における周辺領域Ａｘの区画Ａｘ１内に「ｙ」をドラッグするマウスのカーソルが入ったときには、表示は「ｙｘ」となり、入力完了によって「ｙｘ」が器領域に収められる。
なお、上記のようにプレビュー表示されても、リリースしないでパーツオブジェクト「ｙ」をパーツオブジェクト「ｘ」から引き離すと、関連付けと適合は解除される。引き離すだけで関連付けが解除されることにより、解除のために特別な操作をする必要がなく、便利である。
【００２３】
次に、図３における周辺領域Ａｘの区画Ａｘ３内に、「ｙ」をドラッグするマウスのカーソルが入ると、オブジェクト管理手段１０４は、区画Ａｘ３内のどの位置にカーソルがあるかに関わらず「ｘ」の基点Ｐ３と「ｙ」の基点Ｐ１とが同一となる所定位置に「ｙ」を表示させる。また、このとき、区画Ａｘ３と「ｘ」の基点Ｐ３とに対応した深さ変更情報Ｉ３が例えば＋１である場合、「ｙ」の深さは「ｘ」の深さに＋１を加えたものとなり、データ記憶手段１０１から深さに応じた表示サイズの情報が取り出され、その情報に従って「ｙ」の表示サイズが設定される。この設定により、通常は「ｙ」の表示サイズが「ｘ」の表示サイズよりも小さく設定されるため（利用可能なサイズの限界等の理由により、同じサイズの場合もある。）、画面の表示は「ｘｙ」となる。すなわち、パーツオブジェクト「ｙ」は、カーソルの位置に対応した所定の表示形態に適合させられ、プレビュー表示される。ここでリリースすると、「ｘｙ」が入力完了となる。これにより、「ｘ」を親オブジェクトとして、「ｙ」は子オブジェクトとなる。親オブジェクト「ｘ」の深さを０とすれば、子オブジェクト「ｙ」の深さは例えば１であり、深さが相異なる。なお、リリースしないでパーツオブジェクト「ｙ」をパーツオブジェクト「ｘ」から引き離すと、「ｙ」は元の表示形態に戻る。すなわち、引き離すだけで関連付けが解除されるので、解除のために特別な操作をする必要がなく、便利である。
【００２４】
図１３，図１４は、上記のようにして入力された「ｘｙ」のオブジェクト構造を示した図である。但し、図１３は、図１４の状態になるためのオブジェクト構造の変化を概念的に示す図である。図１３に示すように、パーツオブジェクト「ｘ」上の所定位置に、縮小された「ｙ」が表示されると、「ｘ」と「ｙ」とを親子一体で扱うために、親オブジェクト「ｘ」の周辺領域を拡張させることで対応する。すなわち、図１３の状態から周辺領域の左の区画Ａｘ１を上に拡張し、かつ、右の区画Ａｘ４は右又は右上に拡張することにより、「ｙ」も含めた親子全体としての新たな周辺領域として、（Ａｘ１，Ａｘ２，Ａｘ３，Ａｘ４，Ａｘ５，Ａｘ６）及び（Ａｙ１，Ａｙ２，Ａｙ３，Ａｙ４，Ａｙ５，Ａｙ６）が形成される。その際、それぞれの外郭領域も新たな周辺領域に合わせて拡張される。なお、図１４の状態において、「ｘ」の基点Ｐ３（図３参照。）と、「ｙ」の基点Ｐ１とが互いに同一座標となる。一方、拡張によって「ｘ」の基点Ｐ４は区画Ａｘ４の右端まで移動し、「ｙ」の基点Ｐ４と同一の横座標位置にある（図の上下方向に並ぶ。）。
【００２５】
図１４に示す親子オブジェクト「ｘｙ」に対して他のパーツオブジェクトを引き寄せると、次のように関連付けが行われ、プレビュー表示される。また、リリースにより、そのプレビュー表示状態と同じ状態で入力完了となる。例えば、パーツオブジェクト「２」をドラッグするマウスのカーソルを、区画Ａｘ１に入れると、「２ｘｙ」となる。パーツオブジェクト「ｚ」をドラッグするマウスのカーソルを、区画Ａｘ４に入れると、「ｘｙｚ」となる。パーツオブジェクト「２」をドラッグするマウスのカーソルを、区画Ａｙ１に入れると、「ｘ２ｙ」となる。また、パーツオブジェクト「ｚ」をドラッグするマウスのカーソルを、区画Ａｙ４に入れると、「ｘｙｚ」となる。
【００２６】
一方、パーツオブジェクト「ｚ」をドラッグするマウスのカーソルを、区画Ａｙ３に入れると、「ｚ」は「ｙ」に対する指数となり、表示サイズが「ｙ」よりさらに小さくなる。すなわち、パーツオブジェクト「ｚ」は、カーソルの位置に対応した所定の表示形態に適合させられ、プレビュー表示される。ここでリリースすると、入力完了となる。これにより、「ｘ」を親オブジェクトとして、「ｙ」は子オブジェクト、「ｚ」は孫オブジェクトとなる。親オブジェクト「ｘ」の深さを０とすれば、例えば、子オブジェクト「ｙ」の深さは１であり、孫オブジェクト「ｚ」の深さは２となり、深さが互いに異なる。
【００２７】
また、「ｘ」と「ｙ」と「ｚ」を親子孫一体で扱うために、親オブジェクト「ｘ」及び子オブジェクト「ｙ」の各周辺領域を拡張させることで対応する。すなわち、オブジェクト管理手段１０４は、図１５に示すように、「ｘ」の周辺領域の左の区画Ａｘ１を上に拡張し、かつ、右の区画Ａｘ４を右又は右上に拡張する。また、「ｙ」の周辺領域の左の区画Ａｙ１を上に拡張し、かつ、右の区画Ａｙ４を右又は右上に拡張する。これにより、「ｙ」、「ｚ」も含めた親子孫全体としての新たな周辺領域として、（Ａｘ１，Ａｘ２，Ａｘ３，Ａｘ４，Ａｘ５，Ａｘ６）、（Ａｙ１，Ａｙ２，Ａｙ３，Ａｙ４，Ａｙ５，Ａｙ６）及び（Ａｚ１，Ａｚ２，Ａｚ３，Ａｚ４，Ａｚ５，Ａｚ６）が形成される。その際、それぞれの外郭領域も新たな周辺領域に合わせて拡張される。なお、図１５の状態において、「ｘ」の基点Ｐ３（図３参照。）と、「ｙ」の基点Ｐ１とが互いに同一座標、また、「ｙ」の基点Ｐ３と、「ｚ」の基点Ｐ１とが互いに同一座標となる。一方、拡張によって「ｘ」及び「ｙ」の各基点Ｐ４はそれぞれ区画Ａｘ４及びＡｙ４の各右端まで移動し、「ｘ」、「ｙ」、「ｚ」の各基点Ｐ４は、同一の横座標位置にあり、図の上下方向に一直線に並ぶ。
【００２８】
このように、深さが異なる複数のオブジェクト構造の場合、親オブジェクトの周辺領域を拡張して子オブジェクトを親オブジェクトと一体的に扱うことができる。言い換えれば、上位（例えば孫から見た子、子から見た親）のオブジェクトの周辺領域を拡張して下位オブジェクトを上位オブジェクトと一体的に扱うことができる。これにより、深さが３種類以上の場合には、親・子・孫  ．．．のように関連付けて一体的に扱うことができる。
【００２９】
同様に、図３における周辺領域Ａｘの区画Ａｘ２内、Ａｘ５内、Ａｘ６内に、パーツオブジェクトをドラッグするマウスのカーソルが入ると、それぞれ、例えば上付き記号、添え字、下付き記号を表す表示となる。これらの場合、深さ変更情報Ｉ２，Ｉ５，Ｉ６が例えば＋１であれば、上記と同様に、オブジェクト管理手段１０４は、周辺領域Ａｘを拡張して子オブジェクトを一体的に取り扱う。
【００３０】
一方、画面上のパーツオブジェクトとして存在している記号や数式に、例えばかっこ、分数、ルートの記号（数学記号）を付けるときは、部品エリアからこれらの記号をドラッグする。ドラッグ開始とともに図１０、図１１又は図１２のパーツオブジェクトがオブジェクト生成手段１０３により構成される。このパーツオブジェクト（パーツオブジェクトＢとする。）をドラッグするマウスのカーソルが、画面に既に表示されている記号や数式のパーツオブジェクト（パーツオブジェクトＡとする。）の外郭領域内に入ると、オブジェクト管理手段１０４はオブジェクトＢをオブジェクトＡと関連付け、パーツオブジェクトＢの器領域にパーツオブジェクトＡを収める。このとき、パーツオブジェクトＢには、パーツオブジェクトＡと同じ深さが付与される。逆に、画面に既に表示されている数学記号のパーツオブジェクトＢの器領域（空）に、記号や数式のパーツオブジェクトＡをドラッグするマウスのカーソルが入ると、オブジェクト管理手段１０４はオブジェクトＡをオブジェクトＢと関連付け、パーツオブジェクトＢの器領域（空）にパーツオブジェクトＡを収める。このとき、パーツオブジェクトＡには、パーツオブジェクトＢと同じ深さが付与される。
【００３１】
例えば画面上に「ｘ＋ｙ」と表示されているパーツオブジェクト、すなわち、パーツオブジェクト「ｘ」、「＋」、「ｙ」をまとめて器領域に収めたパーツオブジェクトＱ（図９）があるとき、パーツオブジェクト「（  ）」（図１０）をドラッグするマウスのカーソルがパーツオブジェクトＱの外郭領域に入ると、オブジェクト管理手段１０４はパーツオブジェクト「（  ）」をパーツオブジェクト「ｘ」、「＋」、「ｙ」と関連付け、パーツオブジェクトＱの代わりに新たにパーツオブジェクト「ｘ」、「＋」、「ｙ」をまとめて器領域に収めたパーツオブジェクト「（ｘ＋ｙ）」が生成される。これにより、画面上のプレビュー表示は（ｘ＋ｙ）となる。ルート（図１２）についても同様である。また、分数表記（図１１）のパーツオブジェクトをパーツオブジェクト「ｘ＋ｙ」に引き寄せた場合は、例えばパーツオブジェクト「ｘ＋ｙ」の外郭領域の下半分にカーソルが入れば分子に、パーツオブジェクト「ｘ＋ｙ」の外郭領域の上半分にカーソルが入れば分母に、それぞれ「ｘ＋ｙ」が表記される。その際、内容物を持たない器領域にも、器領域（空）として一定の領域が与えられる。
また、他に、例えば積分記号や総和記号等は、対象となる数式を器領域に収め、上限や下限等を子オブジェクトとして持つパーツオブジェクトとして構成される。
【００３２】
以上のようにして、１つのパーツオブジェクトに他のパーツオブジェクトをマウス操作により引き寄せることによって、記号を組み合わせて数式を作り、さらに必要に応じてこれらを組み合わせることにより、任意の数式を作成することができる。すなわち、当該情報入力システム及び情報入力プログラムによれば、マウスによるＧＵＩ操作に基づき、記号や数式に他の記号や数式を引き寄せる、という視覚に基づく直感的な操作により所望の情報入力を完成することができ、極めて便利である。
【００３３】
以下、上記のような基本的機能を備えた情報入力システム及び情報入力プログラムの、操作モード別機能について補足説明する。
［通常モード］
（１）マウスエンター（マウスのカーソルが入ること）の判定
マウス２０１のボタンを押さずにカーソルを移動させているとき、コンピュータ１００は、カーソルの座標がパーツオブジェクト（それ全体に親オブジェクトがない、最上位的存在のもの。）の外郭領域内にあるかどうかを判定し、外郭領域内であればそのパーツオブジェクトを変色又は点滅させる等の強調表示を行う。
（２）マウスダウン（マウスのボタンが押されたこと）の判定
パーツオブジェクトの外郭領域内にカーソルがある状態で、マウス２０１のボタンが押されたとき、コンピュータ１００はそのパーツオブジェクトを記憶する。
なお、マウス２０１のボタンが押されたときのカーソルの座標が、どのパーツオブジェクトの外郭領域内にもない場合は、以下のマウスドラッグ及びマウスアップの判定は行われない。
【００３４】
（３）マウスドラッグの判定
パーツオブジェクトをドラッグするときは、パーツオブジェクトの複製がマウス２０１の操作に従って移動する。そして、ドラッグしているものとは異なる他のパーツオブジェクト（それ全体に親オブジェクトがない、最上位的存在のもの。）の外郭領域内にカーソルが入ると、コンピュータ１００は、そのパーツオブジェクトから親子関係（器領域に収めた関係も含む。）を親から子の方向へ辿ることで得られるパーツオブジェクトのすべてについて深さの深い順に、カーソルが外郭領域内に入っているかどうかをチェックし、カーソルの位置に該当するパーツオブジェクトを選択する。ここまでの処理を、通常モードにおける「外郭領域チェック」という。選択後、コンピュータ１００は、カーソルが周辺領域内にあれば、マウス２０１の操作に従って移動しているパーツオブジェクトを非表示とし、プレビュー処理を行う。プレビュー処理は、カーソルが離れたときに表示を元に戻せるように、ドラッグ先のパーツオブジェクト自体を変更するのではなく、一時的に表示のみを変更する。なお、カーソルが周辺領域内にはなく、かつ、配置領域内にあれば、コンピュータ１００は、ドラッグしてきた記号を、そこにある記号に寄せる、添える等ではなく、例えば記号を入れ替える等のプレビュー処理を行う。
【００３５】
（４）マウスアップ（マウスのボタンを押すことをやめたこと）の判定
マウスドラッグの場合と同様に外郭領域チェックが行われ、パーツオブジェクトが選択される。選択後、コンピュータ１００は、カーソルが周辺領域内にあれば、マウス２０１の操作に従って移動しているパーツオブジェクトを非表示とし、ドラッグしてきたパーツオブジェクトを子オブジェクト又は隣接オブジェクトとして登録し、そして、子オブジェクト又は隣接オブジェクトに対する深さに応じた表示サイズで、当該子オブジェクト又は隣接オブジェクトを表示する。深さが同一の場合は、互いに隣接オブジェクトとして登録され、器となるパーツオブジェクトが親オブジェクト（親子関係であっても深さは同じである。）として登録される。器となるパーツオブジェクトがない場合には新たにそれが作成され、他方、既にある場合には必要により器領域の調整が行われる。深さが異なる場合には、深い方のパーツオブジェクトが子オブジェクトとなる。このとき、前述のように、親オブジェクトの外郭領域内に子オブジェクトの外郭領域を収めるべく、親オブジェクトの周辺領域が調整される。なお、カーソルが周辺領域内にはなく、かつ、配置領域内にあれば、コンピュータ１００は、ドラッグしてきた記号をそこにある記号に寄せる、添える等ではなく、例えば記号を入れ替える等の処理を行う。
【００３６】
［消去モード］
（１）マウスエンターの判定
マウス２０１のボタンを押さずにカーソルを移動させているときは、カーソルの座標がパーツオブジェクト（それ全体に親オブジェクトがない、最上位的存在のもの。）の外郭領域内に入ると、コンピュータ１００は、そのパーツオブジェクトから親子関係（器領域に収めた関係も含む。）を親から子の方向へ辿ることで得られるパーツオブジェクトのすべてについて深さの深い順に、カーソルが外郭領域内に入っているかどうかをチェックし、カーソルの位置に該当するパーツオブジェクトを選択する。ここまでの処理を、消去モード並びに後述する切り取りモード及びコピーモードにおける「外郭領域チェック」という。また、コンピュータ１００は、選択されたパーツオブジェクトについて、これを変色又は点滅させる等の強調表示を行う。
（２）マウスダウンの判定
マウス２０１のボタンが押された瞬間に、コンピュータ１００は、そのときのカーソルの座標について外郭領域チェックを行う。また、いずれかのパーツオブジェクトが選択された場合は、選択されたパーツオブジェクトを記憶し、その表示色を薄くする。
なお、マウス２０１のボタンが押されたときのカーソルの座標が、どのパーツオブジェクトの外郭領域内にもない場合は、以下のマウスドラッグ及びマウスアップの判定は行われない。
（３）マウスドラッグの判定
マウスドラッグ時に、コンピュータ１００は、現在のカーソルの座標について、マウスダウン時に記憶したパーツオブジェクトの外郭領域内かどうかを判定し、外郭領域内であれば表示色を薄くする。また、外郭領域内でなければ、表示色が薄くなっていたパーツオブジェクトを元の色に戻す。
（４）マウスアップの判定
マウスアップ時に、コンピュータ１００は、現在のカーソルの座標が、マウスダウン時に記憶したパーツオブジェクトの外郭領域内かどうかを判定し、外郭領域内であればパーツオブジェクトを消去する。外郭領域内でなければ、表示色が薄くなっていたパーツオブジェクトを元の色に戻す（消去キャンセル）。
消去に当たって、コンピュータ１００は、直接消去されるパーツオブジェクトが自分より深さの深いパーツオブジェクトを持っている場合、その子オブジェクトも含めて消去する。隣接オブジェクトの場合は、隣接関係の変更が行われる。例えば、図１５の例でｙを消去すると、その子オブジェクトのｚも同時に消去され、「ｘ」となる。一方、「２ｘｙ」においてｘを消去すると、「２ｙ」になる。
【００３７】
［切り取りモード］
（１）マウスエンターの判定
マウス２０１のボタンを押さずにカーソルを移動させているときは、カーソルの座標について外郭領域チェックが行われ、また、選択されたパーツオブジェクトを変色又は点滅させる等の強調表示が行われる。
（２）マウスダウンの判定
マウス２０１のボタンが押された瞬間に、コンピュータ１００は、そのときのカーソルの座標について外郭領域チェックを行う。また、いずれかのパーツオブジェクトが選択された場合は、選択されたパーツオブジェクトを記憶し、その表示色を薄くする。
なお、マウス２０１のボタンが押されたときのカーソルの座標が、どのパーツオブジェクトの外郭領域内にもない場合は、以下のマウスドラッグ及びマウスアップの判定は行われない。
（３）マウスドラッグの判定
マウスドラッグ時に、コンピュータ１００は、現在のカーソルの座標について、マウスダウン時に記憶したパーツオブジェクトの外郭領域内かどうかを判定し、外郭領域内でなければ、パーツオブジェクトの複製をマウス２０１の操作に従って移動させる。このとき、元のパーツオブジェクトは薄いままである。
（４）マウスアップの判定
マウスアップ時に、コンピュータ１００は、現在のカーソルの座標が、マウスダウン時に記憶したパーツオブジェクトの外郭領域内かどうかを判定し、外郭領域内であれば、表示色が薄くなっていたオブジェクトを元の色に戻す（切り取りキャンセル）。また、外郭領域内でなければ、コンピュータ１００は、その座標へパーツオブジェクトをコピーし、元のパーツオブジェクトを消去する。
消去に当たって、コンピュータ１００は、直接消去されるパーツオブジェクトが自分より深さの深いパーツオブジェクトを持っている場合、その子オブジェクトも含めて消去する。隣接オブジェクトの場合は、隣接関係の変更が行われる。
【００３８】
［コピーモード］
（１）マウスエンターの判定
マウス２０１のボタンを押さずにカーソルを移動させているときは、カーソルの座標について外郭領域チェックが行われ、また、選択されたパーツオブジェクトを変色又は点滅させる等の強調表示が行われる。
（２）マウスダウンの判定
マウス２０１のボタンが押された瞬間に、コンピュータ１００は、そのときのカーソルの座標について外郭領域チェックを行う。また、いずれかのパーツオブジェクトが選択された場合は、選択されたパーツオブジェクトを記憶し、その表示色を変更する。
なお、マウス２０１のボタンが押されたときのカーソルの座標が、どのパーツオブジェクトの外郭領域内にもない場合は、以下のマウスドラッグ及びマウスアップの判定は行われない。
（３）マウスドラッグの判定
マウスドラッグ時に、コンピュータ１００は、現在のカーソルの座標について、マウスダウン時に記憶したパーツオブジェクトの外郭領域内かどうかを判定し、外郭領域内でなければ、パーツオブジェクトの複製をマウス２０１の操作に従って移動させる。このとき、元のパーツオブジェクトは変更した表示色のままである。
（４）マウスアップの判定
マウスアップ時に、コンピュータ１００は、現在のカーソルの座標が、マウスダウン時に記憶したパーツオブジェクトの外郭領域内かどうかを判定し、外郭領域内であれば、表示色が変更されていたパーツオブジェクトを元の色に戻す（コピーキャンセル）。また、外郭領域内でなければ、コンピュータ１００は、その座標へパーツオブジェクトをコピーし、元のパーツオブジェクトを元の表示色に戻す。
操作モード別機能は以上の通りである。
【００３９】
なお、上記実施形態ではポインティングデバイスとしてマウスを用いたが、これに代えて、トラックボールや、ペン及びタブレット等を用いてもよい。
また、上記実施形態では数式入力の例を示したが、このような情報入力システム及び情報入力プログラムを漢字入力支援システム及びそのプログラムに応用することができる。例えば、漢字はわかっているが読み方がわからない場合、漢字を構成する部首等の構成要素を上記記号オブジェクトと同様にデータとしてコンピュータに記憶させておけば、画面上でこれらを寄せ集めるようにして当該漢字を完成することができる。さらに、化学式の入力にも好適である。すなわち、当該情報入力システム及び情報入力プログラムは、様々な種類の記号等が、互いに二次元の位置関係を持って配置されていくことによって、意味のある情報を形成していく場合の情報入力に有効である。
【図面の簡単な説明】
【００４０】
【図１】記号オブジェクトの一例を示す図である。
【図２】他の記号オブジェクトの例を示す図である。
【図３】パーツオブジェクトの構成を平面的に表した図である。
【図４】パーツオブジェクトの構成を説明するため、これを立体的に分離して表した図である。
【図５】適合表示の基点を示した図である。
【図６】適合表示の基点Ｐ１，Ｐ４に対して他のパーツオブジェクトがどのような形で付くかを説明する図である。
【図７】適合表示の基点Ｐ２，Ｐ３，Ｐ５，Ｐ６に対して他のパーツオブジェクトがどのような形で付くかを説明する図である。
【図８】パーツオブジェクト「＋」を示す図である。
【図９】器領域を有するパーツオブジェクトの例を示す図である。
【図１０】器領域を有するパーツオブジェクト（かっこ）の例を示す図である。
【図１１】器領域を有するパーツオブジェクト（分数）の例を示す図である。
【図１２】器領域を有するパーツオブジェクト（ルート）の例を示す図である。
【図１３】親オブジェクトとしてのパーツオブジェクト「ｘ」に対して、パーツオブジェクト「ｙ」が子オブジェクトとして付く状態を説明するための図である。
【図１４】親オブジェクトとしてのパーツオブジェクト「ｘ」に対して、パーツオブジェクト「ｙ」が子オブジェクトとして付いた状態を示す図である。
【図１５】親オブジェクトとしてのパーツオブジェクト「ｘ」に対して、パーツオブジェクト「ｙ」が子オブジェクトとして付き、さらにパーツオブジェクト「ｚ」が孫オブジェクトとして付いた状態を示す図である。
【図１６】情報入力システムの構成を示すブロック図である。
【符号の説明】
【００４１】
１００    コンピュータ
１０３    オブジェクト生成手段
１０４    オブジェクト管理手段
２００    入力装置
２０１    マウス（ポインティングデバイス）
３００    ディスプレイ
Ａｘ，Ａ，Ａ１〜Ａ８    周辺領域
Ｄｘ，Ｄ，Ｄ１，Ｄ２    配置領域
Ｓ    記号オブジェクト
【図１】
2006235918.tif 000003
【図２】
2006235918.tif 000004
【図３】
2006235918.tif 000005
【図４】
2006235918.tif 000006
【図５】
2006235918.tif 000007
【図６】
2006235918.tif 000008
【図７】
2006235918.tif 000009
【図８】
2006235918.tif 000010
【図９】
2006235918.tif 000011
【図１０】
2006235918.tif 000012
【図１１】
2006235918.tif 000013
【図１２】
2006235918.tif 000014
【図１３】
2006235918.tif 000015
【図１４】
2006235918.tif 000016
【図１５】
2006235918.tif 000017
【図１６】
2006235918.tif 000018