IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ カシオ計算機株式会社の特許一覧

<>
  • 特許-入力装置、入力支援方法及びプログラム 図1
  • 特許-入力装置、入力支援方法及びプログラム 図2
  • 特許-入力装置、入力支援方法及びプログラム 図3
  • 特許-入力装置、入力支援方法及びプログラム 図4
  • 特許-入力装置、入力支援方法及びプログラム 図5
  • 特許-入力装置、入力支援方法及びプログラム 図6
  • 特許-入力装置、入力支援方法及びプログラム 図7
  • 特許-入力装置、入力支援方法及びプログラム 図8
  • 特許-入力装置、入力支援方法及びプログラム 図9
  • 特許-入力装置、入力支援方法及びプログラム 図10
  • 特許-入力装置、入力支援方法及びプログラム 図11
  • 特許-入力装置、入力支援方法及びプログラム 図12
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-09-30
(45)【発行日】2024-10-08
(54)【発明の名称】入力装置、入力支援方法及びプログラム
(51)【国際特許分類】
   G06F 3/04842 20220101AFI20241001BHJP
【FI】
G06F3/04842
【請求項の数】 4
(21)【出願番号】P 2023208599
(22)【出願日】2023-12-11
(62)【分割の表示】P 2023063795の分割
【原出願日】2020-09-24
(65)【公開番号】P2024020640
(43)【公開日】2024-02-14
【審査請求日】2023-12-25
(73)【特許権者】
【識別番号】000001443
【氏名又は名称】カシオ計算機株式会社
(72)【発明者】
【氏名】前田 直哉
【審査官】井上 香緒梨
(56)【参考文献】
【文献】特開2013-045147(JP,A)
【文献】特開2018-049308(JP,A)
【文献】米国特許出願公開第2012/0107779(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F3/01
G06F3/048-3/04895
G09B1/00-9/56
G09B17/00-19/26
G06F15/02-15/14
(57)【特許請求の範囲】
【請求項1】
電子書籍の内容情報を表示するための第1表示領域として割り当てられた参考付箋と、変数名が対応付けられた数式または関数を表示するための第2表示領域として割り当てられた計算付箋と、を表示させる表示制御手段を備え、
前記表示制御手段は、
前記参考付箋に表示されている前記内容情報のうちユーザにより選択された所定の領域の情報に基づいて前記数式または前記関数を前記計算付箋に表示させる場合であって前記変数名がユーザにより入力されなかった場合には、予め設定されている変数名を前記数式または前記関数に対応付けて前記計算付箋に表示させ、
前記所定の領域が選択された状態でユーザにより変数名が入力された場合には、この入力された変数名に対応付けて前記数式または前記関数を前記計算付箋に表示させる、
ことを特徴とする入力装置。
【請求項2】
前記変数名は、前記数式または前記関数に所定の記号によって対応付けられている、
ことを特徴とする請求項1に記載の入力装置。
【請求項3】
入力装置が実行する入力支援方法であって、
電子書籍の内容情報を表示するための第1表示領域として割り当てられた参考付箋と、変数名が対応付けられた数式または関数を表示するための第2表示領域として割り当てられた計算付箋と、を表示させる表示制御処理を含み、
前記表示制御処理は、
前記参考付箋に表示されている前記内容情報のうちユーザにより選択された所定の領域の情報に基づいて前記数式または前記関数を前記計算付箋に表示させる場合であって前記変数名がユーザにより入力されなかった場合には、予め設定されている変数名を前記数式または前記関数に対応付けて前記計算付箋に表示させ、
前記所定の領域が選択された状態でユーザにより変数名が入力された場合には、この入力された変数名に対応付けて前記数式または前記関数を前記計算付箋に表示させる、
ことを特徴とする入力支援方法。
【請求項4】
コンピュータを、
電子書籍の内容情報を表示するための第1表示領域として割り当てられた参考付箋と、変数名が対応付けられた数式または関数を表示するための第2表示領域として割り当てられた計算付箋と、を表示させる表示制御手段として機能させ、
前記表示制御手段は、
前記参考付箋に表示されている前記内容情報のうちユーザにより選択された所定の領域の情報に基づいて前記数式または前記関数を前記計算付箋に表示させる場合であって前記変数名がユーザにより入力されなかった場合には、予め設定されている変数名を前記数式または前記関数に対応付けて前記計算付箋に表示させ、
前記所定の領域が選択された状態でユーザにより変数名が入力された場合には、この入力された変数名に対応付けて前記数式または前記関数を前記計算付箋に表示させる、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、入力装置、入力支援方法及びプログラムに関する。
【背景技術】
【0002】
ウェブブラウザ上で利用可能なグラフ描画アプリケーションが知られている。例えば、非特許文献1において提案されているアプリケーションでは、ユーザが式リストに入力した数式に基づいて演算が行われ、演算の結果に基づくグラフがウェブブラウザ上に描画される。
【先行技術文献】
【非特許文献】
【0003】
【文献】Desmos,desmos ユーザーガイド,堀川由人 訳[online],[令和2年9月11日検索]、インターネット<URL:https://desmos.s3.amazonaws.com/Desmos_User_Guide_JA.pdf>
【発明の概要】
【発明が解決しようとする課題】
【0004】
上述のようなアプリケーションでは、便利な入力方式が求められる。本発明は、便利な入力方式を提供することを目的とする。
【課題を解決するための手段】
【0005】
本発明に係る入力装置は、電子書籍の内容情報を表示するための第1表示領域として割り当てられた参考付箋と、変数名が対応付けられた数式または関数を表示するための第2表示領域として割り当てられた計算付箋と、を表示させる表示制御手段を備え、前記表示制御手段は、前記参考付箋に表示されている前記内容情報のうちユーザにより選択された所定の領域の情報に基づいて前記数式または前記関数を前記計算付箋に表示させる場合であって前記変数名がユーザにより入力されなかった場合には、予め設定されている変数名を前記数式または前記関数に対応付けて前記計算付箋に表示させ、前記所定の領域が選択された状態でユーザにより変数名が入力された場合には、この入力された変数名に対応付けて前記数式または前記関数を前記計算付箋に表示させる、ことを特徴とする
【0006】
本発明に係る入力支援方法は、入力装置が実行する入力支援方法であって、電子書籍の内容情報を表示するための第1表示領域として割り当てられた参考付箋と、変数名が対応付けられた数式または関数を表示するための第2表示領域として割り当てられた計算付箋と、を表示させる表示制御処理を含み、前記表示制御処理は、前記参考付箋に表示されている前記内容情報のうちユーザにより選択された所定の領域の情報に基づいて前記数式または前記関数を前記計算付箋に表示させる場合であって前記変数名がユーザにより入力されなかった場合には、予め設定されている変数名を前記数式または前記関数に対応付けて前記計算付箋に表示させ、前記所定の領域が選択された状態でユーザにより変数名が入力された場合には、この入力された変数名に対応付けて前記数式または前記関数を前記計算付箋に表示させる、ことを特徴とする。
【0007】
本発明に係るプログラムは、コンピュータを、電子書籍の内容情報を表示するための第1表示領域として割り当てられた参考付箋と、変数名が対応付けられた数式または関数を表示するための第2表示領域として割り当てられた計算付箋と、を表示させる表示制御手段として機能させ、前記表示制御手段は、前記参考付箋に表示されている前記内容情報のうちユーザにより選択された所定の領域の情報に基づいて前記数式または前記関数を前記計算付箋に表示させる場合であって前記変数名がユーザにより入力されなかった場合には、予め設定されている変数名を前記数式または前記関数に対応付けて前記計算付箋に表示させ、前記所定の領域が選択された状態でユーザにより変数名が入力された場合には、この入力された変数名に対応付けて前記数式または前記関数を前記計算付箋に表示させる、ことを特徴とする。
【図面の簡単な説明】
【0008】
図1図1は、本発明の一実施形態に係るシステムの構成の一例を示す図である。
図2図2は、端末のウェブブラウザ上で動作するアプリケーションによる画面表示の一例を示す図である。
図3図3は、システムにおけるウェブアプリケーションの実行時の処理の流れの一例を示す図である。
図4図4は、計算付箋作成処理の一例の流れを示す図である。
図5図5は、認識処理について示すフローチャートである。
図6図6は、通常の計算付箋の作成動作を説明するための図である。
図7図7は、参考付箋からの計算付箋の第1の作成動作を説明するための図である。
図8図8は、参考付箋からの計算付箋の第1の作成動作を説明するための図である。
図9図9は、参考付箋からの計算付箋の第2の作成動作を説明するための図である。
図10図10は、参考付箋からの計算付箋の第3の作成動作を説明するための図である。
図11図11は、参考付箋からの計算付箋の第3の作成動作を説明するための図である。
図12図12は、参考付箋からの計算付箋の第4の作成動作を説明するための図である。
【発明を実施するための形態】
【0009】
本発明の一実施形態について図面を参照して説明する。図1は、本発明の一実施形態に係るシステム1の構成の一例を示す図である。システム1は、サーバ10と、端末20とを含む。サーバ10と端末20とは、ネットワーク30を介して通信可能に接続される。ネットワーク30は、例えばインターネットである。なお、図1には、1台の端末20のみが示されているが、端末20の台数は1台に限定されない。すなわち、端末20は2台以上であってもよい。
【0010】
サーバ10は、プロセッサ11と、ROM12と、RAM13と、ストレージ14と、通信装置15とを有している。これらの各々は、システムバス19を介して互いに接続されている。
【0011】
プロセッサ11は、CPU(Central Processing Unit)等を含む集積回路であってよい。ROM12は、プロセッサ11等の動作に用いられる情報を記録している。RAM13は、プロセッサ11等の動作のための主記憶装置である。ストレージ14には、プロセッサ11で用いられるサーバ制御プログラム、各種演算を実行するための演算プログラム等の各種プログラム、パラメータ等が記憶されている。プロセッサ11は、ストレージ14に記憶されたプログラムに従ってサーバ10の動作を制御する。プロセッサ11として、CPU以外のプロセッサ、例えば、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)、GPU(Graphic Processing unit)等が用いられてもよい。通信装置15は、ネットワーク30等の外部の通信ネットワークと通信するための回路を含む。
【0012】
端末20は、CPU21と、ROM22と、RAM23と、ストレージ24と、入力装置25と、表示装置26と、通信装置27とを有している。これらの各々は、システムバス29を介して互いに接続されている。端末20は、パーソナルコンピュータ(PC)、タブレット端末、スマートフォン等の電子機器であってよい。また、端末20は、通信機能を備えた関数電卓等であってもよい。
【0013】
CPU21は、端末20の各種動作を制御するプロセッサである。ROM22は、端末20の起動プログラム等を記録している。RAM23は、CPU21等のための主記憶装置である。ストレージ24には、CPU21で用いられる端末制御プログラム等の各種プログラム、パラメータ等が記憶されている。CPU21は、入力装置25からの入力信号や通信装置27による受信信号に応じて各種プログラムを実行することで端末20の動作を制御する。各種プログラムは、不図示のウェブサーバからネットワーク30、通信装置27を介してストレージ24にダウンロードされてもよい。通信装置27は、ネットワーク30等の外部の通信ネットワークと通信するための回路を含む。
【0014】
入力装置25は、キーボード、マウス、タッチパネル等を含む入力部である。入力装置25を介したユーザ操作に応じて、そのユーザ操作の内容を示す信号がシステムバス29を介してCPU21に入力される。
【0015】
表示装置26は、液晶ディスプレイ、有機ELディスプレイ等である。表示装置26は、端末20に一体的に設けられていてもよいし、端末20とは別に設けられていてもよい。表示装置26には、各種の画像が表示される。
【0016】
一例では、ユーザは、端末20で動作するウェブブラウザにおいてサーバ10のアドレスを指定する。このとき、サーバ10に記憶されているウェブアプリケーションのための表示画面が端末20のウェブブラウザ上に表示される。この表示画面上での入力装置25を介した操作に応じてサーバ10へのリクエストが発行される。この操作は、例えば表示画面上での数値又は数式の入力操作を含む。サーバ10は、リクエストに応じた処理を実行し、処理結果をレスポンスとして端末20に返す。端末20は、サーバ10からのレスポンスに従って数式の計算結果を表示したり、数式に応じて作図されたグラフを表示したりする。このように、システム1では、端末20のウェブブラウザ上で動作するプログラムとサーバ10の演算プログラムとにより、グラフ描画等のためのウェブアプリケーションとしての機能が実現される。
【0017】
このようなウェブアプリケーションは、例えば、ICT(Information and Communication Technology)化が進む学校教育の現場において、数学の授業等で活用され得る。
【0018】
図2は、端末20のウェブブラウザ上で動作するアプリケーションによる画面表示の一例を示す図である。
【0019】
端末20の表示装置26に表示される画面26aは、上段エリア100aと、下段エリア100bとを含む。上段エリア100aは、画面26aの上側に表示される。上段エリア100aは、下段エリア100bに比べて細長いエリアである。上段エリア100aには、新規ペーパ作成アイコン100cが表示される。下段エリア100bは、画面26a中の上段エリア100aよりも下側に配置されるエリアである。以下の説明においては、下段エリア100bは、ペーパ100とも称される。ペーパ100には、種々の「付箋」が表示され得る。付箋は、ウェブアプリケーションに係る種々の情報を表示するための小さな表示エリアである。付箋は、ユーザによる各種の入力を受け付ける入力エリアでもあり得る。付箋は、フローティングオブジェクトであってよい。フローティングオブジェクトは、画面に表示されるオブジェクト(表示体)であって、ユーザ操作に応じて少なくとも表示位置を変更できるオブジェクトである。
【0020】
図2のペーパ100には、計算付箋101と、グラフ関数付箋102と、参考付箋103とが表示されている例が示されている。付箋は、計算付箋101、グラフ関数付箋102、参考付箋103以外の付箋を有していてもよい。
【0021】
計算付箋101は、ユーザの操作を受けて入力された数値又は数式を表示するための表示エリアを含む付箋である。図2では、2つの計算付箋1011及び1012が表示されている。例えば、ユーザがペーパ100の任意の位置を選択すると、図示しない付箋作成メニューが表示される。ユーザが付箋作成メニューの中から「計算付箋作成」を選択すると、計算付箋101とソフトウェアキーボードとがペーパ100の中に表示される。ユーザは、ソフトウェアキーボードの各キーを選択することによって、所望の数値又は数式を計算付箋101の中に入力することができる。計算付箋101に入力された数値又は数式は、それ自体が数値の情報を有する。計算付箋101に入力された数値又は数式の情報は、サーバ10に送られる。
【0022】
ここで、計算付箋101に入力された数式がそれ単独で数値計算できる式であるとき、サーバ10は、数式の計算結果を端末20に返す。この計算結果は、計算付箋101の例えば右下隅に表示される。例えば、計算付箋1011には「a=3」と入力されている。この場合、計算結果である「3」が計算付箋1011の右下隅に表示される。一方、計算付箋101に入力された数式が文字式及び関数等のそれ単独で計算できない式であり、かつ、必要な引数の値が決まっていないときには、サーバ10は、計算ができない旨を端末20に返す。例えば、計算付箋1012には2次方程式の解の公式が入力されている。この場合、「a」、「b」、「c」が決まらなければ数値計算をすることができない。この場合、数式は関数として扱われ、計算付箋1012の右下隅には計算結果は表示されない。図2では、計算付箋1012の右下隅には計算結果の代わりに「done」の文字列が表示されている。なお、計算付箋1012において入力された、「a」、「b」、「c」は、関数における引数として扱われる。例えば、図2では、計算付箋1011において、「a=3」と入力されている。この場合、計算付箋1012の「a」は「3」であるとして扱われる。「a」、「b」、「c」のすべての値が決められたとき、サーバ10は、計算付箋1012に入力された数式の計算結果を返す。この場合、計算付箋1012の例えば右下隅に計算結果が表示されることになる。また、関数として扱われる数式は、グラフの作図等に用いられ得る。
【0023】
また、計算付箋101に入力される数値又は数式は、それ自体が文字又は記号の情報も有する。したがって、計算付箋101に入力される数値又は数式は、ユーザによるコピー・アンド・ペースト操作によって別の計算付箋101への入力に利用され得る。
【0024】
さらに、実施形態では、後で説明する参考付箋103に表示される内容を計算付箋101への入力内容として利用することができる。参考付箋103に表示される内容は、文字の情報だけで、必ずしも数値の情報を有していなくてもよい。文字の情報しか有しない数値又は数式は、例えば電子書籍に表示された数値又は数式である。電子書籍は、教科書、参考書、論文集等の電子書籍であってよい。また、電子書籍は、スキャン等をすることで紙媒体の書籍を電子化したものであってもよい。また、文字の情報しか有しない数値又は数式は、電子書籍以外の各種の電子媒体の情報であってよい。
【0025】
グラフ関数付箋102は、ユーザの操作を受けて入力された関数を表示するための表示エリアを含む付箋である。例えば、ユーザが付箋作成メニューの中から「グラフ付箋作成」を選択すると、グラフ関数付箋102とソフトウェアキーボードとがペーパ100の中に表示される。ユーザは、ソフトウェアキーボードの各キーを選択することによって、所望の関数をグラフ関数付箋102の中に入力することができる。グラフ関数付箋102に入力された関数の情報は、サーバ10に送られる。サーバ10は、送られてきた関数の情報に基づいてグラフを表示するための点群の座標を計算し、計算した点群の座標の情報を端末20に返す。端末20は、この点群の座標の入力を受けて、図示しないグラフ付箋をペーパ100の中に作成し、このグラフ付箋にグラフを描画する。
【0026】
参考付箋103は、電子書籍等の別ファイルの内容を参考として表示するための表示エリアを含む付箋である。例えば、ユーザが付箋作成メニューの中から「参考付箋作成」を選択し、表示させる電子書籍等のファイルを選択すると、参考付箋103がペーパ100に表示される。
【0027】
以下、システム1における一連の処理の流れについて説明する。図3は、システム1におけるウェブアプリケーションの実行時の処理の流れの一例を示す図である。図3の処理は、端末20からサーバ10に対してウェブアプリケーションの起動のリクエストがされた後に実行される。なお、ウェブアプリケーションの起動のリクエストに際して、ID及びパスワードの入力等のログイン処理が行われてもよい。ウェブアプリケーションの起動のリクエストを受けて、サーバ10は、初期画面のデータを含むウェブアプリケーションのプログラムを端末20に送る。これを受けて、端末20は、初期画面をウェブブラウザ上に表示する。初期画面では、ペーパ100が作成されておらず、上段エリア100aに新規ペーパ作成アイコン100cが表示されている。なお、図3の処理は、端末20のCPU21とサーバ10のプロセッサ11との連携によって実行される。
【0028】
ステップS1において、端末20のCPU21は、新規ペーパを作成するか否かを判定する。例えば、初期画面において、ユーザによって新規ペーパ作成アイコン100cが選択されたときに、端末20のCPU21は、新規ペーパを作成すると判定する。ステップS1において、新規ペーパを作成すると判定されていないときには、処理はステップS8に移行する。ステップS1において、新規ペーパを作成すると判定されたときには、処理はステップS2に移行する。
【0029】
ステップS2において、CPU21は、新たにペーパ100のデータを作成する。そして、CPU21は、作成したペーパ100をウェブアプリケーションの表示画面に重ねてウェブブラウザ上に表示する。これにより、端末20のウェブブラウザ上の表示は、新たに作成されたペーパ100が表示された状態に更新される。その後、処理はステップS3に移行する。
【0030】
ステップS3において、CPU21は、計算付箋101を作成するか否かを判定する。例えば、ペーパ100が作成済みの場合において計算付箋101の作成のための操作がユーザによってされた場合に、CPU21は、計算付箋101を作成すると判定する。計算付箋101の作成のための操作は、例えばユーザがペーパ100の任意の位置を選択したときに表示される付箋作成メニューの中の「計算付箋作成」を選択する操作である。または、計算付箋101の作成のための操作は、参考付箋103に表示された内容の選択操作である。ステップS3において、計算付箋101を作成すると判定されたときには、処理はステップS4に移行する。ステップS3において、計算付箋101を作成しないと判定されたときには、処理はステップS5に移行する。
【0031】
ステップS4において、CPU21は、計算付箋作成処理を行う。計算付箋作成処理の後、処理はステップS8に移行する。計算付箋作成処理については後で詳しく説明する。
【0032】
ステップS5において、CPU21は、参考付箋103を作成するか否かを判定する。例えば、ペーパ100が作成済みの場合において参考付箋103の作成のための操作がユーザによってされた場合に、CPU21は、参考付箋103を作成すると判定する。参考付箋103の作成のための操作は、例えばユーザがペーパ100の任意の位置を選択したときに表示される付箋作成メニューの中の「参考付箋作成」を選択する操作である。ステップS5において、参考付箋103を作成すると判定されたときには、処理はステップS6に移行する。ステップS5において、参考付箋103を作成しないと判定されたときには、処理はステップS7に移行する。
【0033】
ステップS6において、CPU21は、参考付箋作成処理を行う。その後、処理はステップS8に移行する。参考付箋作成処理において、CPU21は、ユーザによる電子書籍等のファイルの選択を待つ。電子書籍等のファイルは、例えば端末20のストレージ24に記憶されている。この他、電子書籍等のファイルは、サーバ10のストレージ14に記憶されていてもよいし、ネットワーク30上の他のストレージに記憶されていてもよい。電子書籍等のファイルの選択を受け、CPU21は、ペーパ100に参考付箋103を表示させ、この参考付箋103にユーザによって選択された電子書籍等のファイルの内容を表示させる。
【0034】
ステップS7において、CPU21は、計算付箋作成処理以外のその他の処理を行う。その他の処理は、作成済みの計算付箋への入力処理を含む。作成済みの計算付箋への入力処理は、後で説明する未作成の計算付箋への入力処理と同様でよい。したがって説明を省略する。また、その他の処理は、グラフ付箋の作成処理、幾何図形付箋の作成処理といった処理を含む。これらのその他の処理の詳細については説明を省略する。その他の処理の終了後、処理はステップS8に移行する。
【0035】
ステップS8において、CPU21は、ウェブアプリケーションの処理を終了するか否かを判定する。例えば、ウェブブラウザを閉じる操作がされた場合には、CPU21は、処理を終了すると判定する。ステップS8において、ウェブアプリケーションの処理を終了すると判定されていないときには、処理はステップS1に戻る。ステップS8において、ウェブアプリケーションの処理を終了すると判定されたときには、CPU21は、図3の処理を終了する。
【0036】
図4は、計算付箋作成処理の一例の流れを示す図である。ステップS101において、端末20のCPU21は、計算付箋101の作成のための操作として、付箋作成メニューの中から「計算付箋作成」が選択される操作がされたか否かを判定する。ステップS101において、「計算付箋作成」が選択される操作がされたと判定されたときには、処理はステップS102に移行する。ステップS101において、「計算付箋作成」が選択される操作がされていない、すなわち参考付箋103に表示された内容の選択がされたと判定されたときには、処理はステップS110に移行する。
【0037】
ステップS102において、CPU21は、ペーパ100のユーザによって指定された位置に計算付箋101を表示させる。また、CPU21は、ペーパ100にソフトウェアキーボードを表示させる。そして、CPU21は、計算付箋101への入力処理を開始する。
【0038】
ステップS103において、CPU21は、実行指示が入力されたか否かを判定する。実行指示は、例えばソフトウェアキーボードの実行キーの選択によってされる。ステップS103において、実行指示が入力されていないと判定されたときには、処理はステップS104に移行する。ステップS103において、実行指示が入力されたと判定されたときには、処理はステップS107に移行する。
【0039】
ステップS104において、CPU21は、ユーザによる入力があるか否かを判定する。ステップS104におけるユーザによる入力は、例えばユーザが計算付箋101に入力したい、数値、数式、文字、数学記号の入力である。ユーザによる入力は、例えばソフトウェアキーボードによって行われる。ユーザによる入力は、ハードウェアとしてのキーボード等から行われてもよい。ステップS104において、ユーザによる入力があると判定されたときには、処理はステップS105に移行する。ステップS104において、ユーザによる入力がないと判定されたときには、処理はステップS106に移行する。
【0040】
ステップS105において、CPU21は、ユーザの入力した内容に従って計算付箋101の表示内容を更新する。例えば、CPU21は、ユーザの入力した数値、数式、文字を計算付箋101に表示させる。その後、処理はステップS106に移行する。
【0041】
ステップS106において、CPU21は、計算付箋101への入力処理を終了するか否かを判定する。例えば、ユーザによって計算付箋101以外の箇所が選択されたときには、計算付箋101への入力処理を終了すると判定される。ステップS106において、計算付箋101への入力処理を終了すると判定されたときには、CPU21は、図4の処理を終了させる。この場合、処理は、図3のステップS8に移行する。ステップS106において、計算付箋101への入力処理を終了しないと判定されたときには、処理はステップS103に戻る。
【0042】
ステップS107において、CPU21は、計算付箋101において入力された内容をサーバ10に送信する。サーバ10のプロセッサ11は、受信した内容に従って計算をする。前述したように、プロセッサ11は、計算付箋101に入力された数式がそれ単独で数値計算できる式であるとき、数式の計算結果を端末20に返す。一方、プロセッサ11は、計算付箋101に入力された数式が文字式及び関数等のそれ単独で計算できない式であり、かつ、必要な引数の値が決定されていないときには、計算ができない旨の通知を端末20に返す。
【0043】
ステップS108において、CPU21は、サーバ10からの応答があったか否かを判定する。ここでの応答は、計算結果又は計算ができない旨の通知を含む。ステップS108においてサーバ10からの応答があったと判定されるまで、CPU21は、処理を待機する。ステップS108において、サーバ10からの応答があったと判定されたとき、処理はステップS109に移行する。
【0044】
ステップS109において、CPU21は、サーバ10からの応答に従って計算付箋101の表示内容を更新する。例えば、CPU21は、計算結果を計算付箋101に表示させる。その後、CPU21は、図4の処理を終了させる。この場合、処理は、図3のステップS8に移行する。
【0045】
ステップS110において、CPU21は、ペーパ100における所定の位置に計算付箋101を表示させる。また、CPU21は、ペーパ100にソフトウェアキーボードを表示させる。そして、CPU21は、計算付箋101への入力処理を開始する。
【0046】
ステップS111において、CPU21は、実行指示が入力されたか否かを判定する。ステップS111において、実行指示が入力されていないと判定されたときには、処理はステップS112に移行する。ステップS111において、実行指示が入力されたと判定されたときには、処理はステップS115に移行する。
【0047】
ステップS112において、CPU21は、ユーザによる入力があるか否かを判定する。ステップS112におけるユーザによる入力は、例えばユーザが変数登録をしたい変数名の入力である。ステップS112において、ユーザによる入力があると判定されたときには、処理はステップS113に移行する。ステップS112において、ユーザによる入力がないと判定されたときには、処理はステップS114に移行する。
【0048】
ステップS113において、CPU21は、ユーザの入力した内容に従って計算付箋101の表示内容を更新する。例えば、CPU21は、ユーザの入力した数値、文字を計算付箋101に表示させる。
【0049】
ステップS114において、CPU21は、計算付箋101への入力処理を終了するか否かを判定する。例えば、ユーザによって計算付箋101及び参考付箋103以外の箇所が選択されたときには、計算付箋101への入力処理を終了すると判定される。ステップS114において、計算付箋101への入力処理を終了すると判定されたときには、CPU21は、図4の処理を終了させる。この場合、処理は、図3のステップS8に移行する。ここで、ステップS114において、入力処理を終了すると判定されたとき、参考付箋103における選択が解除されてもよい。ステップS114において、計算付箋101への入力処理を終了しないと判定されたときには、処理はステップS111に戻る。
【0050】
ステップS115において、CPU21は、参考付箋103において選択された内容を認識する認識処理を行う。認識処理の後、処理はステップS116に移行する。認識処理の詳細については後で説明する。
【0051】
ステップS116において、CPU21は、計算付箋101において入力された内容をサーバ10に送信する。サーバ10のプロセッサ11は、受信した内容に従って計算をする。前述したように、プロセッサ11は、計算付箋101に入力された数式がそれ単独で数値計算できる式であるとき、数式の計算結果を端末20に返す。一方、プロセッサ11は、計算付箋101に入力された数式が文字式及び関数等のそれ単独で計算できない式であり、かつ、必要な引数の値が決定されていないときには、計算ができない旨の通知を端末20に返す。
【0052】
ステップS117において、CPU21は、サーバ10からの応答があったか否かを判定する。ステップS117においてサーバ10からの応答があったと判定されるまで、CPU21は、処理を待機する。ステップS117において、サーバ10からの応答があったと判定されたとき、処理はステップS118に移行する。
【0053】
ステップS118において、CPU21は、サーバ10からの応答に従って計算付箋101の表示内容を更新する。例えば、CPU21は、計算結果を計算付箋101に表示させる。その後、CPU21は、図4の処理を終了させる。この場合、処理は、図3のステップS8に移行する。
【0054】
図5は、認識処理について示すフローチャートである。ステップS201において、CPU21は、参考付箋103において選択された箇所の内容を認識する。認識の後、処理はステップS202に移行する。例えばストレージ24には、数値、数式(数学記号)、文字の形状のデータが記憶されている。CPU21は、参考付箋103の表示に用いられているファイルが画像ファイル等の直接的に内容を認識することができないファイルであれば、表示されている画像と数値、数式、文字の形状とを比較することによって認識をする。一方、CPU21は、参考付箋103において表示に用いられているファイルがテキストファイル等の直接的に内容を認識することができるファイルであれば、そのデータの内容から認識をする。
【0055】
ステップS202において、CPU21は、認識した内容が数値又は計算できる数式であるか否かを判定する。ステップS202において、認識した内容が数値又は計算できる数式であると判定されたときには、処理はステップS203に移行する。ステップS202において、認識した内容が数値又は計算できる数式でないと判定されたときには、処理はステップS204に移行する。
【0056】
ステップS203において、CPU21は、認識した内容を数値又は計算できる数式として変数登録する。つまり、CPU21は、認識した数値又は数式とユーザによって入力された変数名とを関連づける。その後、CPU21は、図5の処理を終了させる。この場合、処理は図4のステップS116に移行し、その後にサーバ10から計算結果が受信される。
【0057】
ステップS204において、認識した内容が計算できない数式であるか否かを判定する。ステップS204において、認識した内容が計算できない数式であると判定されたときには、処理はステップS205に移行する。ステップS204において、認識した内容が計算できない数式でないと判定されたときには、処理はステップS206に移行する。
【0058】
ステップS205において、CPU21は、認識した内容を計算できない数式、例えば関数として変数登録する。つまり、CPU21は、認識した数式とユーザによって入力された変数名とを関連づける。その後、CPU21は、図5の処理を終了させる。この場合、処理は図4のステップS116に移行し、その後にサーバ10から計算ができない旨の通知が受信される。前述したように、計算できない数式は関数として扱われる。
【0059】
ステップS206において、認識した内容が表であるか否かを判定する。表は、例えば少なくとも1つのセルに数値又は数式が記録されている画像又はそれを表すデータである。1つのセルは、4つの罫線に囲まれた領域である。表は、スプレッドシート等のデータであってもよい。ステップS206において、認識した内容が表であると判定されたときには、処理はステップS207に移行する。ステップS206において、認識した内容が表でないと判定されたときには、処理はステップS208に移行する。
【0060】
ステップS207において、CPU21は、認識した内容を行毎のリストとして変数登録する。つまり、CPU21は、行毎に認識した数値とユーザによって入力された変数名とをリスト形式で関連づける。その後、CPU21は、図5の処理を終了させる。この場合、処理は図4のステップS116に移行する。
【0061】
ステップS208において、認識した内容が行列であるか否かを判定する。行列は、複数の数値又は数式がカンマで区切られずに括弧の中に縦横に配列されている画像又はそれを表すデータである。ステップS208において、認識した内容が行列であると判定されたときには、処理はステップS209に移行する。ステップS208において、認識した内容が行列でないと判定されたときには、処理はステップS210に移行する。
【0062】
ステップS209において、CPU21は、認識した内容を行列として変数登録する。つまり、CPU21は、認識した数値とユーザによって入力された変数名とを行列形式で関連づける。その後、CPU21は、図5の処理を終了させる。この場合、処理は図4のステップS116に移行する。
【0063】
ステップS210において、CPU21は、エラーを通知する。つまり、認識した内容が、数値又は数式、表、行列の何れでもないときには、エラーが通知される。
【0064】
ここで、図5の処理について具体的に説明する。図6は、通常の計算付箋の作成動作を説明するための図である。つまり、図6は、計算付箋101の作成のための操作として、付箋作成メニューの中から「計算付箋作成」が選択される操作がされたときの動作を示している。このとき、ペーパ100には、計算付箋101と、ソフトウェアキーボード104とが表示される。ソフトウェアキーボード104は、例えば入力キー104aと、キーボード切替キー104bと、実行キー104cとを有している。入力キー104aは、文字、数字、記号を入力するためのキーである。キーボード切替キー104bは、入力キー104aを、英字入力用のキー、数字入力用のキー、数学記号入力用のキーといった各種のキーボードに対応したキーに切り替えるためのキーである。実行キー104cは、計算付箋101における数値計算等を実行させるためのキーである。
【0065】
ユーザは、キーボード切替キー104bによって所望のキーボードを選択し、入力キー104aの各キーを適宜に選択することによって、所望の文字、数字、記号を計算付箋101に入力する。そして、ユーザは、必要に応じて実行キー104cを選択する。実行キー104cの選択を受けて、CPU21は、計算付箋101の内容をサーバ10に送信する。この場合、図2で示したように計算付箋101の例えば右下隅に計算結果が表示される。
【0066】
つまり、通常の計算付箋の作成動作では、ユーザの入力の操作に従って数値及び数式の入力が行われる。
【0067】
図7及び図8は、参考付箋からの計算付箋の第1の作成動作を説明するための図である。図7では、参考付箋103の中に電子書籍の内容が表示されている。この電子書籍には、例えば「1+2+3」という数式が記載されているとする。ユーザは、参考付箋103の中の数式を例えばドラッグ操作によって選択する。ユーザは、例えば、参考付箋103の中の「1+2」を選択したとする。この場合、表示上では参考付箋103における選択箇所「1+2」を含むカーソルが表示される。また、このとき、計算付箋101と、ソフトウェアキーボード104とがペーパ100に表示される。
【0068】
ユーザは、ソフトウェアキーボード104の入力キー104aを操作することにより、変数名を入力する。そして、変数名の入力後、実行キー104cを選択する。選択された箇所が数式であるので、参考付箋103において選択されている数式と変数名とが関連付けられて変数登録される。ここで、「1+2」は、単独で数値計算することができる数式である。したがって、「1+2」は、計算できる数式として変数登録される。例えば、図8は、ユーザによって変数名「a」が入力された例を示している。このとき、計算付箋101には、「a=1+2」と表示される。また、ユーザは、必要に応じて実行キー104cを選択する。実行キー104cの選択を受けて、CPU21は、計算付箋101の内容をサーバ10に送信する。この場合、図2で示したように計算付箋101の例えば右下隅に計算結果が表示される。つまり、「1+2」の計算結果である「3」が計算付箋101に表示される。
【0069】
なお、図8の例では、参考付箋103の内容の選択の後で計算付箋101と、ソフトウェアキーボード104とが表示される。これに対し、通常の計算付箋の作成動作と同様にして計算付箋101とソフトウェアキーボード104とが表示されている状態で参考付箋103の内容の選択がされたときに、参考付箋103の内容が変数登録されてもよい。
【0070】
また、変数名の入力がされずに実行キー104cが選択されたときには、選択されている参考付箋103の内容がそのまま計算付箋101に表示されてもよい。さらには、変数名の入力がされずに実行キー104cが選択されたときには、参考付箋103の内容が予め定められた変数名と関連づけて変数登録されてもよい。
【0071】
図9は、参考付箋からの計算付箋の第2の作成動作を説明するための図である。図9では、参考付箋103に「2次方程式の解の公式」について説明する教科書が表示されている。2次方程式の解の公式は、「a」、「b」、「c」の3つの係数を持つ数式である。ユーザは、参考付箋103の中の数式を例えばドラッグ操作によって選択する。このとき、計算付箋101と、ソフトウェアキーボード104とがペーパ100に表示される。
【0072】
ユーザは、ソフトウェアキーボード104の入力キー104aを操作することにより、変数名を入力する。そして、変数名の入力後、実行キー104cを選択する。選択された箇所が数式であるので、参考付箋103において選択されている数式と変数名とが関連付けられて変数登録される。ここで、2次方程式の解の公式は、3つの係数を持つ、単独では数値計算することができない数式である。したがって、2次方程式の解の公式は、関数として変数登録される。例えば、図9は、ユーザによって変数名「fomu」が入力された例を示している。このとき、計算付箋101には、「fomu(a,b,c)」とともに選択された数式が表示される。図9の「fomu」に続く(a,b,c)は、その後に続く数式がa、b、cの関数であることを示している。関数としての登録のされ方は、ウェブアプリケーションの仕様等によって適宜に変更されてよい。
【0073】
図10及び図11は、参考付箋からの計算付箋の第3の作成動作を説明するための図である。図10及び図11では、参考付箋103に「y=x2」の表計算の結果を表すスプレッドシートが表示されている。ユーザは、参考付箋103の中の表を例えばドラッグ操作によって選択する。
【0074】
ユーザは、例えば、図10に示すように、参考付箋103の中のy行の各数値を選択したとする。このとき、計算付箋101と、ソフトウェアキーボード104とがペーパ100に表示される。
【0075】
ユーザは、ソフトウェアキーボード104の入力キー104aを操作することにより、変数名を入力する。そして、変数名の入力後、実行キー104cを選択する。選択された箇所が表であるので、参考付箋103において選択されている各数値を要素とするリスト形式で変数登録される。例えば、図10は、ユーザによって変数名「List」が入力された例を示している。この場合、例えば、計算付箋101には、「List={2,4,9,16,25}」と表示される。リスト形式で登録された各数値は、1行の行列と同様にまとめて計算に使用され得る。例えば、「List」に2を掛けるという計算が計算付箋101において入力された場合、「List」内の各数値が2倍される。リスト形式での登録のされ方は、ウェブアプリケーションの仕様等によって適宜に変更されてよい。
【0076】
ここで、図10は、1行が選択されたときの例を示している。例えば、図11に示すようにして参考付箋103の中のy行とx行の2行分の各数値が選択されたときには、それぞれの行の数値を要素とする2つのリストとして変数登録される。例えば、計算付箋101には、「List1={2,4,9,16,25}」及び「List2={1,2,3,4,5}」と表示される。3行分以上の各数値が選択された場合も同様である。複数行のリストが作成されるとき、変数名の末尾にリストを識別するための番号が付けられる。
【0077】
図12は、参考付箋からの計算付箋の第4の作成動作を説明するための図である。図12では、参考付箋103には行列について説明する教科書が表示されている。ユーザは、参考付箋103の中の行列を例えばドラッグ操作によって選択する。このとき、計算付箋101と、ソフトウェアキーボード104とがペーパ100に表示される。
【0078】
その後、ユーザは、ソフトウェアキーボード104の入力キー104aを操作することにより、変数名を入力する。そして、変数名の入力後、実行キー104cを選択する。選択された箇所が行列であるので、参考付箋103において選択されている行列と変数名とが関連付けられて変数登録される。例えば、図12は、ユーザによって変数名「Mat」が入力された例を示している。このとき、計算付箋101には、「Mat」とともに選択された行列が表示される。図12の例では、行列は、カンマで区切られた行毎に表示される。行列形式での登録のされ方は、ウェブアプリケーションの仕様等によって適宜に変更されてよい。
【0079】
以上説明したように本実施形態によれば、ペーパ100の参考付箋103に表示されている内容を計算付箋101への入力内容として用いることができる。これにより、例えば教科書に記載の数式を計算付箋101に入力するとき等のユーザの入力の手間が軽減され得る。したがって、本実施形態の手法は、ユーザにとって便利な入力方式であると言える。
【0080】
また、本実施形態によれば、参考付箋103において選択された箇所が数値、数式、表、行列の何れであるのか、また、数式であれば計算できる数式であるのか計算できない数式であるのかに応じて、入力されるべき数値、数式、表、行列が計算付箋101への入力形式に合うように自動的に変換される。つまり、ユーザは、参考付箋103において必要な箇所を選択するだけで、入力した数値、数式、表、行列を使用することができる。これによってもユーザの入力の手間が軽減され得る。
【0081】
ここで、前述した実施形態では、計算付箋101への入力対象として、参考付箋103に表示された数値、数式、表、行列が示されている。しかしながら、他の内容が入力対象であってもよい。また、ウェブアプリケーションにおいてサポートされている各種の入力に参考付箋103の内容が利用されてよい。
【0082】
また、前述した実施形態では、参考付箋103に表示されている電子書籍等における選択箇所が計算付箋101への入力対象となる例が示されている。これに対し、表示装置26の参考付箋103以外の領域に表示されている電子書籍等の内容も計算付箋101への入力対象とされてもよい。例えば、ウェブブラウザとは別に起動された電子書籍アプリケーションにおいて表示されている電子書籍の内容も計算付箋101への入力対象とされてもよい。
【0083】
また、前述した実施形態では、端末20は、サーバ10からウェブアプリケーションのためのプログラムをダウンロードして計算処理等を実行するように構成されている。これに対し、端末20のストレージ24にウェブアプリケーションと同等のプログラムを記憶させておくことにより、端末20が単独で前述した実施形態で説明したウェブアプリケーションの処理を実行するようにすることもできる。この場合においては、端末20は通信機能を有している必要はない。逆に、前述した認識処理等は、サーバ10において行われてもよい。
【0084】
なお、本願発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【0085】
以下に、本出願の出願当初の特許請求の範囲に記載された発明を付記する。
[1] 表示装置の表示画面に表示された内容を選択することと、
選択された内容が選択されている間に実行指示を受けると、前記選択された内容を前記表示画面上の入力エリアへ入力することと、
をコンピュータに実行させるための入力プログラム。
[2] 前記選択された内容は、数値、数式、表、行列の少なくとも何れかを含み、
前記入力エリアへ入力することは、前記数値、数式、表、行列の少なくとも何れかを変数の値として入力することを前記コンピュータに実行させることを含む、
[1]に記載の入力プログラム。
[3] 前記入力エリアへ入力することは、前記変数の形式を前記選択された内容に合わせて変換することを前記コンピュータに実行させることを含む、
[2]に記載の入力プログラム。
[4] 前記選択された内容が選択されている間に、変数を前記入力エリアへ入力してから実行指示を受けると、前記選択された内容を前記変数に関連付けて前記入力エリアへ入力することを前記コンピュータに実行させることを含む、
[1]に記載の入力プログラム。
[5] 前記選択された内容は、数式を含み、
前記入力エリアへ入力することは、
前記数式が計算できる数式であるか否かを判定することと、
前記数式が計算できる数式であるときには、前記数式を計算できる数式として入力することと、
を前記コンピュータに実行させることを含む、
[2]または[3]に記載の入力プログラム。
[6] 前記選択された内容は、数式を含み、
前記入力エリアへ入力することは、
前記数式が計算できる数式であるか否かを判定することと、
前記数式が計算できない数式であるときには、前記数式を関数として入力することと、
を前記コンピュータに実行させることを含む、
[2]または[3]に記載の入力プログラム。
[7] 前記選択された内容は、行毎に少なくとも1つの数値又は数式が配列された表を含み、
前記入力エリアへ入力することは、行毎の前記数値又は数式を要素として含む行毎のリスト形式で変数として入力することを前記コンピュータに実行させることを含む、
[2]または[3]に記載の入力プログラム。
[8] 前記選択された内容は、行列を含み、
前記入力エリアへ入力することは、前記行列の行毎にカンマで区切られた変数として入力することを前記コンピュータに実行させることを含む、
[2]または[3]に記載の入力プログラム。
[9] 表示装置の表示画面に表示された内容を選択するための入力部と、
選択された内容が選択されている間に実行指示を受けると、前記選択された内容を前記表示画面上の入力エリアへ入力することを実行するプロセッサと、
を具備する入力装置。
[10] 表示装置の表示画面に表示された内容を選択することと、
選択された内容が選択されている間に実行指示を受けると、前記選択された内容を前記表示画面上の入力エリアへ入力することと、
を具備する入力方法。
【符号の説明】
【0086】
1 システム、10 サーバ、11 プロセッサ、12 ROM、13 RAM、14
ストレージ、15 通信装置、19 システムバス、20 端末、21 CPU、22
ROM、23 RAM、24 ストレージ、25 入力装置、26 表示装置、27 通信装置、29 システムバス、30 ネットワーク。
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12