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

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

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

特許7396433図形表示装置、図形表示方法及びプログラム
<>
  • 特許-図形表示装置、図形表示方法及びプログラム 図1
  • 特許-図形表示装置、図形表示方法及びプログラム 図2
  • 特許-図形表示装置、図形表示方法及びプログラム 図3
  • 特許-図形表示装置、図形表示方法及びプログラム 図4
  • 特許-図形表示装置、図形表示方法及びプログラム 図5
  • 特許-図形表示装置、図形表示方法及びプログラム 図6A
  • 特許-図形表示装置、図形表示方法及びプログラム 図6B
  • 特許-図形表示装置、図形表示方法及びプログラム 図6C
  • 特許-図形表示装置、図形表示方法及びプログラム 図6D
  • 特許-図形表示装置、図形表示方法及びプログラム 図7
  • 特許-図形表示装置、図形表示方法及びプログラム 図8
  • 特許-図形表示装置、図形表示方法及びプログラム 図9
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-12-04
(45)【発行日】2023-12-12
(54)【発明の名称】図形表示装置、図形表示方法及びプログラム
(51)【国際特許分類】
   G06T 11/80 20060101AFI20231205BHJP
   G06F 3/04845 20220101ALI20231205BHJP
【FI】
G06T11/80 A
G06F3/04845
【請求項の数】 7
(21)【出願番号】P 2022171046
(22)【出願日】2022-10-26
(62)【分割の表示】P 2019095525の分割
【原出願日】2019-05-21
(65)【公開番号】P2023001172
(43)【公開日】2023-01-04
【審査請求日】2022-11-08
【新規性喪失の例外の表示】特許法第30条第2項適用 1.2019年3月27日 https://classpad.net/にて発表
(73)【特許権者】
【識別番号】000001443
【氏名又は名称】カシオ計算機株式会社
(72)【発明者】
【氏名】井上 貴之
【審査官】益戸 宏
(56)【参考文献】
【文献】特開2019-61504(JP,A)
【文献】国際公開第2016/006074(WO,A1)
【文献】特開2011-164696(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06T 11/80
G06F 3/04845
(57)【特許請求の範囲】
【請求項1】
ユーザ操作に応じて第1電子付箋から派生した第2電子付箋を、前記第1電子付箋に視覚的に紐づけて前記第1電子付箋とともに所定の作業エリアに表示させるとともに、前記第1電子付箋に対して描画する図形をユーザに選択させるためのアイコンが並べられたメニューアイコンバーを前記第1電子付箋に近接させて前記所定の作業エリアに表示させる表示制御手段を備え、
前記表示制御手段は、前記第2電子付箋を前記第1電子付箋に視覚的に紐づけて表示させる場合に、前記メニューアイコンバーを避けた位置に前記視覚的な紐づけを表示させる、
ことを特徴とする図形表示装置。
【請求項2】
前記表示制御手段は、
前記第1電子付箋の外形を多角形に表示し、
前記メニューアイコンバーを前記多角形における所定の一辺に沿わせて表示し、
前記多角形における他の一辺を前記視覚的な紐づけに適用する、
ことを特徴とする請求項1に記載の図形表示装置。
【請求項3】
前記表示制御手段は、前記メニューアイコンバーを前記一辺の長さよりも短い長さで表示させる、
ことを特徴とする請求項2に記載の図形表示装置。
【請求項4】
前記表示制御手段は、ユーザ操作に応じて前記第1電子付箋と前記第2電子付箋とを個別的に移動可能に表示させる、
ことを特徴とする請求項1から3の何れかに記載の図形表示装置。
【請求項5】
前記表示制御手段は、前記第2電子付箋が前記第1電子付箋とは表示種別が異なる電子付箋として前記第1電子付箋から派生した場合に、前記第2電子付箋を前記第1電子付箋に視覚的に紐づけて表示させる、
ことを特徴とする請求項1から4の何れかに記載の図形表示装置。
【請求項6】
サーバが端末を介して実行するまたは端末が実行する図形表示方法であって、
ユーザ操作に応じて第1電子付箋から派生した第2電子付箋を、前記第1電子付箋に視覚的に紐づけて前記第1電子付箋とともに所定の作業エリアに表示させるとともに、前記第1電子付箋に対して描画する図形をユーザに選択させるためのアイコンが並べられたメニューアイコンバーを前記第1電子付箋に近接させて前記所定の作業エリアに表示させる表示制御処理を含み、
前記表示制御処理は、前記第2電子付箋を前記第1電子付箋に視覚的に紐づけて表示させる場合に、前記メニューアイコンバーを避けた位置に前記視覚的な紐づけを表示させる、
ことを特徴とする図形表示方法。
【請求項7】
コンピュータを、
ユーザ操作に応じて第1電子付箋から派生した第2電子付箋を、前記第1電子付箋に視覚的に紐づけて前記第1電子付箋とともに所定の作業エリアに表示させるとともに、前記第1電子付箋に対して描画する図形をユーザに選択させるためのアイコンが並べられたメニューアイコンバーを前記第1電子付箋に近接させて前記所定の作業エリアに表示させる表示制御手段として機能させ、
前記表示制御手段は、前記第2電子付箋を前記第1電子付箋に視覚的に紐づけて表示させる場合に、前記メニューアイコンバーを避けた位置に前記視覚的な紐づけを表示させる、
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、図形表示装置、図形表示方法及びプログラムに関する。
【背景技術】
【0002】
コンピュータを使って作図された図形を表示装置の画面の作図エリア(第1の表示エリア)に表示し、その図形に対して所望の数学的処理を施すことにより、この図形(第1の図形)と何らかの数学的な関係性を有する新たな図形(第2の図形)を生成して表示装置の画面に表示するアプリケーションソフトウェアが知られている。
【先行技術文献】
【非特許文献】
【0003】
【文献】GeoGebraホームページ[Online],[令和1年5月10日検索],インターネット<URL:https://www.geogbra.org>
【発明の概要】
【発明が解決しようとする課題】
【0004】
ここで、従来のアプリケーションソフトウェアでは、所望の数学的処理として、元の図形に対して例えば「回転」操作を行った場合、所定の操作により、Rotate()のように当該数学的処理(回転操作)に対応する数式を、作図エリアの外側にのみ表示していた。したがって、作図エリアを見ても、新たな図形がいかなる数学的処理を施すことで作成されたものであるか、わかりづらいという問題がある。
【0005】
本発明は、前記の事情に鑑みてなされたものであり、互いが関係する電子付箋を表示する場合に互いが関係していることを見やすくすることができる図形表示装置、図形表示方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明に係る図形表示装置は、ユーザ操作に応じて第1電子付箋から派生した第2電子付箋を、前記第1電子付箋に視覚的に紐づけて前記第1電子付箋とともに所定の作業エリアに表示させるとともに、前記第1電子付箋に対して描画する図形をユーザに選択させるためのアイコンが並べられたメニューアイコンバーを前記第1電子付箋に近接させて前記所定の作業エリアに表示させる表示制御手段を備え、前記表示制御手段は、前記第2電子付箋を前記第1電子付箋に視覚的に紐づけて表示させる場合に、前記メニューアイコンバーを避けた位置に前記視覚的な紐づけを表示させる、ことを特徴とする。
【0007】
本発明に係る図形表示方法は、サーバが端末を介して実行するまたは端末が実行する図形表示方法であって、ユーザ操作に応じて第1電子付箋から派生した第2電子付箋を、前記第1電子付箋に視覚的に紐づけて前記第1電子付箋とともに所定の作業エリアに表示させるとともに、前記第1電子付箋に対して描画する図形をユーザに選択させるためのアイコンが並べられたメニューアイコンバーを前記第1電子付箋に近接させて前記所定の作業エリアに表示させる表示制御処理を含み、前記表示制御処理は、前記第2電子付箋を前記第1電子付箋に視覚的に紐づけて表示させる場合に、前記メニューアイコンバーを避けた位置に前記視覚的な紐づけを表示させる、ことを特徴とする。
【0008】
本発明に係るプログラムは、コンピュータを、ユーザ操作に応じて第1電子付箋から派生した第2電子付箋を、前記第1電子付箋に視覚的に紐づけて前記第1電子付箋とともに所定の作業エリアに表示させるとともに、前記第1電子付箋に対して描画する図形をユーザに選択させるためのアイコンが並べられたメニューアイコンバーを前記第1電子付箋に近接させて前記所定の作業エリアに表示させる表示制御手段として機能させ、前記表示制御手段は、前記第2電子付箋を前記第1電子付箋に視覚的に紐づけて表示させる場合に、前記メニューアイコンバーを避けた位置に前記視覚的な紐づけを表示させる、ことを特徴とする。
【0009】
本発明によれば、互いが関係する電子付箋を表示する場合に互いが関係していることを見やすくすることができる図形表示装置、図形表示方法及びプログラムを提供することができる。
【図面の簡単な説明】
【0010】
図1図1は、本発明の一実施形態に係るシステムの構成の一例を示す図である。
図2図2は、端末のウェブブラウザ上で動作するアプリケーションによる画面表示の一例を示す図である。
図3図3は、システムにおけるウェブアプリケーションの実行時の処理の流れの一例を示す図である。
図4図4は、アイコン処理の一例の流れを示す図である。
図5図5は、選択処理の一例の流れを示す図である。
図6A図6Aは、選択処理において点Aが選択されたときの表示例を示す図である。
図6B図6Bは、選択処理において線分ABが選択されたときの表示例を示す図である。
図6C図6Cは、選択処理において正三角形ABCの面が選択されたときの表示例を示す図である。
図6D図6Dは、選択処理においてバルーンが選択されたときの表示例を示す図である。
図7図7は、メニュー処理の一例の流れを示す図である。
図8図8は、正多角形描画処理の結果として表示される表示画面の例を示す図である。
図9図9は、拡縮処理、平行移動処理、回転処理の結果として表示される表示画面の例を示す図である。
【発明を実施するための形態】
【0011】
本発明の一実施形態について図面を参照して説明する。図1は、本発明の一実施形態に係るシステム1の構成の一例を示す図である。システム1は、サーバ10と、端末20とを含む。サーバ10と端末20とは、ネットワーク30を介して通信可能に接続される。ネットワーク30は、例えばインターネットである。なお、図1には、1台の端末20のみが示されているが、端末20の台数は1台に限定されない。すなわち、端末20は2台以上であってもよい。
【0012】
サーバ10は、プロセッサ11と、ROM12と、RAM13と、ストレージ14と、通信装置15とを有している。これらの各々は、システムバス19を介して互いに接続されている。
【0013】
プロセッサ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等の外部の通信ネットワークと通信するための回路を含む。
【0014】
端末20は、CPU21と、ROM22と、RAM23と、ストレージ24と、入力装置25と、表示装置26と、通信装置27とを有している。これらの各々は、システムバス29を介して互いに接続されている。端末20は、パーソナルコンピュータ(PC)、タブレット端末、スマートフォン等の電子機器であってよい。また、端末20は、通信機能を備えた関数電卓等であってもよい。
【0015】
CPU21は、端末20の各種動作を制御するプロセッサである。ROM22は、端末20の起動プログラム等を記録している。RAM23は、CPU21等のための主記憶装置である。ストレージ24には、CPU21で用いられる端末制御プログラム等の各種プログラム、パラメータ等が記憶されている。CPU21は、入力装置25からの入力信号や通信装置27による受信信号に応じて各種プログラムを実行することで端末20の動作を制御する。各種プログラムは、不図示のウェブサーバからネットワーク30、通信装置27を介してストレージ24にダウンロードされてもよい。通信装置27は、ネットワーク30等の外部の通信ネットワークと通信するための回路を含む。
【0016】
入力装置25は、キーボード、マウス、タッチパネル等を含む。入力装置25を介したユーザ操作に応じて、そのユーザ操作の内容を示す信号がシステムバス29を介してCPU21に入力される。
【0017】
表示装置26は、液晶ディスプレイ、有機ELディスプレイ等である。表示装置26は、端末20に一体的に設けられていてもよいし、端末20とは別に設けられていてもよい。表示装置26には、各種の画像が表示される。
【0018】
一例では、ユーザは、端末20で動作するウェブブラウザにおいてサーバ10のアドレスを指定する。このとき、サーバ10に記憶されているウェブアプリケーションのための表示画面が端末20のウェブブラウザ上に表示される。この表示画面上での入力装置25を介した操作に応じてサーバ10へのリクエストが発行される。この操作は、例えば表示画面上での図形の作図操作を含む。サーバ10は、リクエストに応じた処理を実行し、処理結果をレスポンスとして端末20に返す。端末20は、サーバ10からのレスポンスに従ってユーザの操作に応じた図形の表示等をする。このように、システム1では、端末20のウェブブラウザ上で動作するプログラムとサーバ10の演算プログラムとにより、図形の表示等のためのウェブアプリケーションとしての機能が実現される。
【0019】
このようなウェブアプリケーションは、例えば、ICT(Information and Communication Technology)化が進む学校教育の現場において、数学の授業等で活用され得る。
【0020】
図2は、端末20のウェブブラウザ上で動作するアプリケーションによる画面表示の一例を示す図である。
【0021】
端末20の表示装置26に表示される画面26aは、上段エリア100aと、下段エリア100bとを含む。上段エリア100aは、画面26aの上側に表示される。上段エリア100aは、下段エリア100bに比べて細長いエリアである。上段エリア100aには、新規ペーパ作成アイコン100cが表示される。下段エリア100bは、画面26a中の上段エリア100aよりも下側に配置されるエリアである。以下の説明においては、下段エリア100bは、ペーパ100とも称される。ペーパ100には、種々の「付箋」が表示され得る。付箋は、ウェブアプリケーションに係る種々の情報を表示するための小さな表示エリアである。付箋は、フローティングオブジェクトであってよい。フローティングオブジェクトは、画面に表示されるオブジェクト(表示体)であって、ユーザ操作に応じて少なくとも表示位置を変更できるオブジェクトである。
【0022】
図2のペーパ100には、一例として、幾何付箋(第1の表示エリア)101と、操作付箋(数学的処理入力エリア)102と、スライダ付箋(数学的処理変更エリア)103とが示されている。ペーパ100には、図形以外が描画されてもよい。例えば、ペーパ100には、数式、グラフ、数表等が描画されてもよい。この場合において、ペーパ100に、幾何付箋101とは別の数式付箋等が同時に表示されてもよい。
【0023】
幾何付箋101は、ユーザの操作を受けて作図された図形を表示するための表示エリアを含む付箋である。実施形態における「図形」は、点、線、多角形、円等の幾何学で対象とされる図形である。幾何付箋101の中で、ユーザは、点をプロットしたり、線を引いたり、円を作図したり、多角形を作図したりといった各種の操作をすることができる。幾何付箋101は平面図形の表示エリアを含むものである。しかしながら、幾何付箋101の中で立体図形が作図されてもよい。
【0024】
操作付箋102は、幾何付箋101の中の図形に対して何等かの数学的処理がされたときに、その数学的処理の内容を示す表示をするための付箋である。例えば、図2の操作付箋102は、図形D’E’F’に対して点Gを中心とする回転操作がされて、新たな図形D”E”F”が描画されたことを示している。このとき、操作付箋102には、回転がされたことを示す「Rotation」の文字102aと、その回転において設定されたパラメータの値102bが表示される。回転において設定されるパラメータは、例えば回転角度Rである。回転角度Rには番号が添えられている。この番号は、回転操作の順番を示している。例えば、「R1」は、幾何付箋101の中で1回目の回転操作がされたことを示している。ここで、回転角度は、数値でなく、変数であってもよい。図2の操作付箋102のパラメータの値102bとして「-a」が表示されている。このうちのaが変数である。例えば、時計方向を回転の正方向とした場合、-aの回転は、反時計方向の角度aの回転を意味する。ここで、操作付箋102は、数学的処理の種類毎にまとめて表示される。例えば、複数回の回転操作がされたときには、それらの回転操作に係る情報は同一の操作付箋102の中で表示される。後で説明するように、数学的処理には、回転操作以外の操作が含まれていてもよく、このような回転操作以外の操作がされたときには、その回転操作以外の操作に係る情報は別の操作付箋102の中で表示される。
【0025】
また、回転操作等の数学的処理がされた場合、幾何付箋101にはバルーン(数学的処理表示エリア)101aが表示される。バルーン101aは、数学的処理によって作図された図形と、その数学的処理によって使用された図形との数学的関係を示す情報を含むツールチップである。例えば、図2に示すような回転操作がされた場合、バルーン101aは、回転中心である点Gの近傍に表示される。回転操作がされた場合に作成されるバルーン101aには、その回転に用いられたパラメータの現在の値が表示される。図2のバルーン101aには、「R1=-50.00」が表示されている。このとき、バルーン101aは、点Gを中心にして反時計方向に-50.00度の回転がされたことを示している。バルーン101aの表示のされ方は、数学的処理の種類によって異なる。詳細は後で説明する。
【0026】
スライダ付箋103は、数学的処理に用いられたパラメータが変数であるときに、その変数の値を設定するためのスライダを含む付箋である。スライダ付箋103には、変数の現在の値103aと、スライダ103bと、間隔の値103cとが表示される。スライダ103bは、ユーザによる入力を受けてポインタの表示位置を変えるように構成されている。このポインタの位置に応じて変数の現在の値103aが変化する。間隔の値103cは、スライダ103bにおける値の間隔を示している。図2の間隔の値103cとしては、「1」が表示されている。このとき、スライダ103bは、1度刻みで値を変化させる。なお、複数の変数が設定されているときには、それらの複数の変数に係る情報は同一のスライダ付箋103にまとめて表示されてもよい。
【0027】
幾何付箋101、操作付箋102、スライダ付箋103には、それぞれ、左上にチェック欄111、112、113が表示される。例えば、何れかの付箋が選択されると、対応するチェック欄にチェックが表示される。図2では、幾何付箋101が選択されている。このとき、チェック欄111にチェックが表示される。チェックが表示されるだけでなく、他の表示等によって、選択中の付箋と、選択中でない付箋とが区別されてよい。視覚的な区別の方法として、選択中の付箋の外枠だけが残りの付箋よりも太く表示されたり、選択中の付箋の外枠の線種又は色が残りの付箋と異なるように表示されたり、選択中の外枠が点滅表示される等してもよい。
【0028】
また、幾何付箋101と、操作付箋102と、スライダ付箋103とは、1つのグループとして関連づけられてよい。このとき、幾何付箋101と操作付箋102との間には、幾何付箋101と操作付箋102とが関連していることを示す紐121が表示されてよい。また、幾何付箋101とスライダ付箋103との間には、幾何付箋101とスライダ付箋103とが関連していることを示す紐122が表示されてよい。さらに、図示はしていないが、操作付箋102とスライダ付箋103とが関連していることを示す紐も表示されてよい。
【0029】
ここで、紐は、同一のグループに属する付箋同士を結ぶものである。すなわち、別途に作成された幾何付箋101から作成された操作付箋102及びスライダ付箋103は、この別途に作成された幾何付箋101と紐で結ばれる。また、付箋同士の関係性が一目で分かるように、グループ毎に紐の色等が合わせられてもよい。
【0030】
また、図2において、幾何付箋101の下部にはメニューアイコンバー130が示されている。メニューアイコンバー130は、付箋と同様に、フローティングオブジェクトであってよい。メニューアイコンバー130は、幾何付箋101のための各種操作のためのアイコン群である。メニューアイコンバー130に表示されるアイコンは、図2で示したものは限定されない。メニューアイコンバー130は、図2で示したアイコンをすべて含んでいなくてもよい。また、メニューアイコンバー130は、図2で示したアイコンとは別のアイコンを含んでいてもよい。
【0031】
メニューアイコンバー130は、例えば、選択アイコン131と、範囲変更アイコン132と、手描きアイコン133と、点描画アイコン134と、線分描画アイコン135と、円描画アイコン136と、多角形描画アイコン137と、テキスト入力アイコン138と、削除アイコン139とを含む。選択アイコン131は、幾何付箋101内に表示されているオブジェクトを選択する操作を受け付けるためのアイコンである。範囲変更アイコン132は、幾何付箋101の表示範囲を変更する操作を受け付けるためのアイコンである。手描きアイコン133は、幾何付箋101においてユーザが自由に図形を作図する操作を受け付けるためのアイコンである。点描画アイコン134は、幾何付箋101において点をプロットする操作を受け付けるためのアイコンである。線分描画アイコン135は、幾何付箋101においてプロットされている2点を結ぶ線分を作図する操作を受け付けるためのアイコンである。円描画アイコン136は、幾何付箋101においてプロットされている点を中心とする円を作図する操作を受け付けるためのアイコンである。多角形描画アイコン137は、幾何付箋101においてプロットされている3以上の点を結ぶ多角形を作図する操作を受け付けるためのアイコンである。テキスト入力アイコン138は、ユーザによるテキスト入力の操作を受け付けるためのアイコンである。削除アイコン139は、幾何付箋101において作図されている図形の削除の操作を受け付けるためのアイコンである。
【0032】
本実施形態では、システム1は、白紙のペーパ100から出発して、各種付箋を作成して所望の図形を描画することが可能である。以下、システム1における一連の処理の流れについて説明する。
【0033】
図3は、システム1におけるウェブアプリケーションの実行時の処理の流れの一例を示す図である。図3の処理は、端末20からサーバ10に対してウェブアプリケーションの起動のリクエストがされた後に実行される。なお、ウェブアプリケーションの起動のリクエストに際して、ID及びパスワードの入力等のログイン処理が行われてもよい。ウェブアプリケーションの起動のリクエストを受けて、サーバ10は、初期画面のデータを含むウェブアプリケーションのプログラムを端末20に送る。これを受けて、端末20は、初期画面をウェブブラウザ上に表示する。初期画面では、ペーパ100が作成されておらず、上段エリア100aに新規ペーパ作成アイコン100cが表示されているだけの画面である。なお、図3の処理は、端末20のCPU21とサーバ10のプロセッサU11との連携によって実行される。
【0034】
ステップS1において、端末20のCPU21は、新規ペーパを作成するか否かを判定する。例えば、初期画面において、ユーザによって新規ペーパ作成アイコン100cが選択されたときに、端末20のCPU21は、新規ペーパを作成すると否かを判定する。ステップS1において、新規ペーパを作成すると判定されていないときには、処理はステップS8に移行する。ステップS1において、新規ペーパを作成すると判定されたときには、処理はステップS2に移行する。
【0035】
ステップS2において、CPU21は、新たにペーパ100のデータを作成する。そして、CPU21は、作成したペーパ100をウェブアプリケーションの表示画面に重ねてウェブブラウザ上に表示する。これにより、端末20のウェブブラウザ上の表示は、新たに作成されたペーパ100が表示された状態に更新される。その後、処理はステップS3に移行する。ここで、ペーパ100には、図示しない座標軸が設定されている。このため、ペーパ100に配置される各オブジェクトは、座標情報を持つ。CPU21は、必要に応じてオブジェクトの座標情報を取得する。
【0036】
ステップS3において、CPU21は、幾何付箋101を作成するか否かを判定する。例えば、ペーパ100が作成済みの場合において幾何付箋101の作成のための操作がユーザによってされた場合に、CPU21は、幾何付箋101を作成すると判定する。なお、幾何付箋101の作成のための操作は、例えば、ペーパ100内の所望の位置へカーソル(不図示)を移動させてから、マウスの右クリック操作に応じて表示されるメニューから幾何付箋作成の項目を選択する操作である。ステップS3において、幾何付箋101を作成すると判定されていないときには、処理はステップS5に移行する。ステップS3において、幾何付箋101を作成すると判定されたときには、処理はステップS4に移行する。
【0037】
ステップS4において、CPU21は、幾何付箋作成処理を行う。例えば、CPU21は、新たな幾何付箋101をウェブアプリケーションの表示画面に表示されているペーパ100の所定位置に重ねてウェブブラウザ上に表示する。これにより、端末20のウェブブラウザ上の表示は、ペーパ100の中に幾何付箋101が表示された状態に更新される。その後、処理はステップS6に移行する。前述したように、幾何付箋101は、フローティングオブジェクトであってよい。このとき、CPU21は、ドラッグ操作(マウスのクリックをオンしたままカーソルを移動させる操作、又は、タッチパネルの画面をタッチしたままタッチ位置を移動させる操作)等の幾何付箋101の移動操作がされたことを受けて、幾何付箋101の表示位置を変更してよい。
【0038】
ステップS5において、CPU21は、幾何付箋作成処理以外のその他の処理を行う。その他の処理は、数式付箋の作成処理、グラフ付箋の作成処理といった処理を含む。これらのその他の処理の詳細については説明を省略する。その他の処理の終了後、処理はステップS8に移行する。
【0039】
ステップS6において、CPU21は、アイコン処理を行う。アイコン処理の後、処理はステップS7に移行する。アイコン処理は、メニューアイコンバー130の選択に伴う各種の処理を実行する処理である。アイコン処理についての詳細は後で説明する。
【0040】
ステップS7において、CPU21は、メニュー処理を行う。メニュー処理の後、処理はステップS8に移行する。メニュー処理は、メニューの選択に伴う各種の処理を実行する処理である。メニュー処理についての詳細は後で説明する。
【0041】
ステップS8において、CPU21は、ウェブアプリケーションの処理を終了するか否かを判定する。例えば、ウェブブラウザを閉じる操作がされた場合には、CPU21は、処理を終了すると判定する。ステップS8において、ウェブアプリケーションの処理を終了すると判定されていないときには、処理はステップS1に戻る。ステップS8において、ウェブアプリケーションの処理を終了すると判定されたときには、CPU21は、図3の処理を終了する。
【0042】
図4は、アイコン処理の一例の流れを示す図である。ステップS101において、端末20のCPU21は、選択処理を行うか否かを判定する。メニューアイコンバー130に含まれる選択アイコン131が選択されたときに、CPU21は、選択処理を行うと判定する。ステップS101において、選択処理を行うと判定されたときには、処理はステップS102に移行する。ステップS101において、選択処理を行うと判定されていないときには、処理はステップS103に移行する。
【0043】
ステップS102において、CPU21は、選択処理を行う。選択処理の後、CPU21は、図4の処理を終了させ、処理を図3のステップS7に移行させる。選択処理は、ユーザの操作によってペーパ100内のオブジェクトを選択する処理である。選択処理の詳細については後で説明する。
【0044】
ステップS103において、CPU21は、範囲変更処理を行うか否かを判定する。メニューアイコンバー130に含まれる範囲変更アイコン132が選択されたときに、CPU21は、範囲変更処理を行うと判定する。ステップS103において、範囲変更処理を行うと判定されたときには、処理はステップS104に移行する。ステップS103において、範囲変更処理を行うと判定されていないときには、処理はステップS105に移行する。
【0045】
ステップS104において、CPU21は、範囲変更処理を行う。範囲変更処理として、CPU21は、幾何付箋101の中でのユーザのドラッグ操作に応じて幾何付箋101の表示範囲を移動させる。この操作により、幾何付箋101中に表示中の各付箋の表示位置をドラッグ操作に応じて移動させる。ユーザのドラッグ操作の完了後、CPU21は、図4の処理を終了させ、処理を図3のステップS7に移行させる。
【0046】
ステップS105において、CPU21は、手描き処理を行うか否かを判定する。手描きアイコン133が選択されたときに、CPU21は、手描き処理を行うと判定する。ステップS105において、手描き処理を行うと判定されたときには、処理はステップS106に移行する。ステップS105において、手描き処理を行うと判定されていないときには、処理はステップS107に移行する。
【0047】
ステップS106において、CPU21は、処理を行う。手描き処理として、CPU21は、ユーザの操作に応じて図形を描画する。例えば幾何付箋101の中でのユーザによるポイント操作(マウスのシングルクリック操作、又は、タッチパネルの画面へのタップ操作)に応じて点を描画する。また、CPU21は、例えば幾何付箋101の中でのユーザによるドラッグ・アンド・ドロップ操作(ドラッグ操作中にマウスのクリックをオフする、又は、タッチパネルの画面へタッチを止める)に応じて線を描画する。ユーザの操作の終了後、CPU21は、図4の処理を終了させ、処理を図3のステップS7に移行させる。
【0048】
ステップS107において、CPU21は、点描画処理を行うか否かを判定する。点描画アイコン134が選択されたときに、CPU21は、点描画処理を行うと判定する。ステップS107において、点描画処理を行うと判定されたときには、処理はステップS108に移行する。ステップS107において、点描画処理を行うと判定されていないときには、処理はステップS109に移行する。
【0049】
ステップS108において、CPU21は、点描画処理を行う。点描画処理として、CPU21は、ユーザの操作に応じて点を描画する。例えば、幾何付箋101内の所望の位置へカーソル(不図示)を移動させてから、幾何付箋101の中でのユーザによるポイント操作に応じて点を描画する。また、CPU21は、描画した点の近くにラベルを表示させる。ラベルは、例えばA、B、C、…、といったアルファベットにより、描画された点の名称を示すものである。その後、CPU21は、図4の処理を終了させ、処理を図3のステップS7に移行させる。
【0050】
ステップS109において、CPU21は、線分描画処理を行うか否かを判定する。線分描画アイコン135が選択されたときに、CPU21は、線分描画処理を行うと判定する。ステップS109において、線分描画処理を行うと判定されたときには、処理はステップS110に移行する。ステップS109において、線分描画処理を行うと判定されていないときには、処理はステップS111に移行する。
【0051】
ステップS110において、CPU21は、線分描画処理を行う。線分描画処理として、CPU21は、ユーザによる幾何付箋101の中での2点の選択を(2回のポイント操作)待つ。2点の選択を受けて、CPU21は、選択された2点を結ぶ線分を描画する。なお、線分の種類として、実線、破線等からユーザによって選択されたものが採用されてよい。さらには、線分ではなく、ユーザによって選択された2点を通る直線が描画されてもよい。その後、CPU21は、図4の処理を終了させ、処理を図3のステップS7に移行させる。線分描画処理において、選択された2点の座標から、線分を表す方程式、線分の長さ等が演算されてもよい。この演算は、サーバ10で行われてよい。
【0052】
ステップS111において、CPU21は、円描画処理を行うか否かを判定する。円描画アイコン136が選択されたときに、CPU21は、円描画処理を行うと判定する。ステップS111において、円描画処理を行うと判定されたときには、処理はステップS112に移行する。ステップS111において、円描画処理を行うと判定されていないときには、処理はステップS113に移行する。
【0053】
ステップS112において、CPU21は、円描画処理を行う。円描画処理として、CPU21は、ユーザによる幾何付箋101の中での2点の選択(ポイント操作)を待つ。CPU21は、最初に選択された1点を中心とし、次に選択された1点と最初に選択された1点との距離を半径とする円を描画する。なお、1点のみを選択した際に、その1点を中心とし、半径を既定値とする円を描画してもよい。その場合、半径は予めユーザによって設定されてもよい。また、ドラッグ・アンド・ドロップ操作により、描画された円の拡大又は縮小がされるように構成されてもよい。すなわち、ドラッグ・アンド・ドロップ操作に含まれる、マウスのクリックオン操作、又は、タッチパネルの画面へのタッチオン操作が行われた位置を中心とし、その中心から、マウスのクリックオフ操作、又は、タッチパネルの画面へのタッチオフ操作が行われた位置までの距離を半径とする円を描画してもよい。その後、CPU21は、図4の処理を終了させ、処理を図3のステップS7に移行させる。円描画処理において、円の中心の座標と、円の半径とから作図された円を表す方程式が演算されてもよい。この演算は、サーバ10で行われてよい。
【0054】
ステップS113において、CPU21は、多角形描画処理を行うか否かを判定する。多角形描画アイコン137が選択されたときに、CPU21は、多角形描画処理を行うと判定する。ステップS113において、多角形描画処理を行うと判定されたときには、処理はステップS114に移行する。ステップS113において、多角形描画処理を行うと判定されていないときには、処理はステップS115に移行する。
【0055】
ステップS114において、CPU21は、多角形描画処理を行う。多角形描画処理として、CPU21は、ユーザによる幾何付箋101の中での多角形の頂点となる複数(3つ以上)の点の選択を待つ。3つ以上の点の選択後、CPU21は、選択された点のうち、最初に選択された点の選択を待つ。これを受けて、CPU21は、最初に選択された点を始点としてその他の選択された各点を頂点とする多角形を描画する。その後、CPU21は、図4の処理を終了させ、処理を図3のステップS7に移行させる。多角形描画処理において、各辺の長さ、各辺のなす角度等が演算されてもよい。この演算は、サーバ10で行われてよい。
【0056】
ステップS115において、CPU21は、テキスト入力処理を行うか否かを判定する。テキスト入力アイコン138が選択されたときに、CPU21は、テキスト入力処理を行うと判定する。ステップS115において、テキスト入力処理を行うと判定されたときには、処理はステップS116に移行する。ステップS115において、テキスト入力処理を行うと判定されていないときには、処理はステップS117に移行する。
【0057】
ステップS116において、CPU21は、テキスト入力処理を行う。テキスト入力処理として、CPU21は、例えば幾何付箋101の中にテキストボックスを表示させ、テキストボックスの中でのユーザのテキストの入力を待つ。テキストの入力は、入力装置25のキーボードを用いて行われてもよし、ソフトウェアキーボード上で行われてもよい。その後、CPU21は、図4の処理を終了させ、処理を図3のステップS7に移行させる。テキストボックスは、フローティングオブジェクトであってよい。つまり、テキストボックスは、幾何付箋101の中で表示位置を変更できてもよい。また、テキストボックスは、付箋として作成されてもよい。この場合、作成されたテキストボックスであるメモ付箋と幾何付箋101とは、紐で結ばれてよい。
【0058】
ステップS117において、CPU21は、削除処理を行うか否かを判定する。削除アイコン139が選択されたときに、CPU21は、削除処理を行うと判定する。ステップS117において、削除処理を行うと判定されたときには、処理はステップS118に移行する。ステップS117において、削除処理を行うと判定されていないときには、CPU21は、図4の処理を終了させ、処理を図3のステップS7に移行させる。
【0059】
ステップS118において、CPU21は、削除処理を行う。削除処理として、CPU21は、ユーザによる幾何付箋101の中のオブジェクト(点、線、面又はテキスト)の選択を待つ。選択の後、CPU21は、削除の確認のダイアログを表示させる。そして、ユーザによる削除の許可に応じて、CPU21は、選択された図形又はテキストを削除する。その後、CPU21は、図4の処理を終了させ、処理を図3のステップS7に移行させる。
【0060】
ここで、図3で示した処理の内容は一例である。図3で示した各種の処理は、前述した処理とは異なる処理によって行われてもよい。
【0061】
図5は、選択処理の一例の流れを示す図である。ステップS201において、端末20のCPU21は、ユーザにより、幾何付箋101の中の点が選択されたか否かを判定する。前述したように、ペーパ100には座標軸が設定されていて、点描画処理等でプロットされる点は座標情報を持つ。この点の座標が選択されたときに、CPU21は、点が選択されたと判定する。ステップS201において、点が選択されたと判定されたときには、処理はステップS202に移行する。ステップS201において、点が選択されたと判定されていないときには、処理はステップS205に移行する。なお、例えば、幾何付箋101内の点、線、面及びバルーンの何れかに重なる位置へカーソル(不図示)を移動させてから、マウスをクリックする操作が、点、線、面及びバルーンの何れかを選択する操作である。
【0062】
ステップS202において、CPU21は、選択された点が選択済みであるか否かを判定する。ステップS202において、選択された点が選択済みであると判定されていないときには、処理はステップS203に移行する。ステップS202において、選択された点が選択済みであると判定されたときには、処理はステップS204に移行する。
【0063】
ステップS203において、CPU21は、選択された点を強調表示するとともに、選択された点を選択状態とする。その後、処理はステップS217に移行する。例えば、CPU21は、選択された点の表示サイズを、他の点の表示サイズに比して大きくする。この他、CPU21は、選択された点の色を変えたり、選択された点を点滅させたりしてもよい。このように、強調表示は、特定の表示に限定されない。
【0064】
ステップS204において、CPU21は、選択された点の強調表示を解除するとともに、選択された点の選択状態を解除する。その後、処理はステップS217に移行する。
【0065】
ステップS205において、CPU21は、ユーザにより、幾何付箋101の中の線分が選択されたか否かを判定する。ユーザによって作図された線分上の何れかの座標が選択されたときに、CPU21は、線分が選択されたと判定する。ステップS205において、線分が選択されたと判定されたときには、処理はステップS206に移行する。ステップS205において、線分が選択されたと判定されていないときには、処理はステップS209に移行する。
【0066】
ステップS206において、CPU21は、選択された線分が選択済みであるか否かを判定する。ステップS206において、選択された線分が選択済みであると判定されていないときには、処理はステップS207に移行する。ステップS206において、選択された線分が選択済みであると判定されたときには、処理はステップS208に移行する。
【0067】
ステップS207において、CPU21は、選択された線分を強調表示するとともに、選択された線分を選択状態とする。その後、処理はステップS217に移行する。例えば、CPU21は、選択された線分の太さを、他の線分に比して太くする。この他、CPU21は、選択された線分の色を変えたり、選択された線分を点滅させたりしてもよい。このように、強調表示は、特定の表示に限定されない。
【0068】
ステップS208において、CPU21は、選択された線分の強調表示を解除するとともに、選択された線分の選択状態を解除する。その後、処理はステップS217に移行する。
【0069】
ステップS209において、CPU21は、ユーザにより、幾何付箋101の中の面が選択されたか否かを判定する。ユーザによって作図された図形を構成する面上の何れかの座標が選択されたときに、CPU21は、面が選択されたと判定する。ステップS209において、面が選択されたと判定されたときには、処理はステップS210に移行する。ステップS209において、面が選択されたと判定されていないときには、処理はステップS213に移行する。
【0070】
ステップS210において、CPU21は、選択された面が選択済みであるか否かを判定する。ステップS210において、選択された面が選択済みであると判定されていないときには、処理はステップS211に移行する。ステップS210において、選択された面が選択済みであると判定されたときには、処理はステップS212に移行する。
【0071】
ステップS211において、CPU21は、選択された面を強調表示するとともに、選択された面を選択状態とする。その後、処理はステップS217に移行する。例えば、CPU21は、選択された面の色の濃さを他の面よりも濃くする。強調表示は、特定の表示に限定されない。なお、面の選択の場合、図形を構成する面だけが選択され、同じく図形を構成する辺及び頂点は選択されない。
【0072】
ステップS212において、CPU21は、選択された面の強調表示を解除するとともに、選択された面の選択状態を解除する。その後、処理はステップS217に移行する。
【0073】
ステップS213において、CPU21は、ユーザにより、幾何付箋101の中のバルーン101aが選択されたか否かを判定する。バルーン101aの表示されている座標が選択されたときに、CPU21は、バルーン101aが選択されたと判定する。ステップS213において、バルーン101aが選択されたと判定されたときには、処理はステップS214に移行する。ステップS213において、バルーン101aが選択されたと判定されていないときには、処理はステップS217に移行する。
【0074】
ステップS214において、CPU21は、選択されたバルーンに関連づけられた図形の構成要素である、点、線、面の少なくとも何れかが選択済みであるか否かを判定する。ステップS214において、選択されたバルーンに関連づけられた図形の構成要素である、点、線、面の少なくとも何れかが選択済みであると判定されていないときには、処理はステップS215に移行する。ステップS214において、選択されたバルーンに関連づけられた図形の構成要素である、点、線、面の少なくとも何れかが選択済みであると判定されたときには、処理はステップS216に移行する。
【0075】
ステップS215において、CPU21は、バルーン101aに関連づけられた図形の構成要素である、点、線、面を強調表示するとともに、これらの点、線、面を選択状態とする。その後、処理はステップS217に移行する。強調表示の手法は、ステップS203、S207、S211で説明した手法の組み合わせでもよいし、別の手法であってもよい。
【0076】
ステップS216において、CPU21は、バルーン101aに関連づけられた図形の構成要素である、点、線、面の強調表示を解除するとともに、これらの点、線、面の選択状態を解除する。その後、処理はステップS217に移行する。
【0077】
ステップS217において、CPU21は、選択処理を終了するか否かを判定する。例えば、ユーザにより、メニューアイコンバー130の別のアイコンが選択されたり、ウェブアプリケーションの終了の操作がされたりしたときには、CPU21は、選択処理を終了すると判定する。ステップS217において、選択処理を終了すると判定されていないときには、処理はステップS201に戻る。ステップS217において、選択処理を終了すると判定されたときには、CPU21は、処理を図4のステップS103に移行させる。
【0078】
以下、図6A-6Dを参照して、選択処理の具体的な一例を説明する。図6A図6B図6C図6Dの各幾何付箋101には、後で説明する正多角形描画処理によって正三角形ABCが作図されている。また、図6A図6B図6C図6Dの各幾何付箋101には、前述の点描画処理によって点Fがプロットされている。ここで、詳しくは後で説明するが、正多角形描画処理で正多角形が作図される場合、作図される正多角形の重心位置にバルーン101aが重ねて表示される。バルーン101aには、作図された三角形の頂点の数Npが表示される。例えば、作図された図形が正三角形である場合、バルーン101aとして「Np=3」が表示される。さらに、正多角形描画処理で図形が作図される場合、操作付箋102が作成される。正多角形描画処理の場合、操作付箋102には、数学的処理として正多角形描画処理が行われたことを示す「n-polygon」の文字102aと、正多角形描画処理において設定されたパラメータの値102bが表示される。
【0079】
図6Aは、選択処理において点Aが選択されたときの表示例を示している。この場合、点Aだけが強調表示されて選択状態となる。なお、図6Aでは示していないが、点Fが選択された場合も同様の強調表示がされる。選択された点は、後で説明する回転処理、線対称処理、平行移動処理等で利用され得る。例えば、線分描画処理、円描画処理等に先立って選択処理において点の選択がされているときには、CPU21は、作図に必要な残りの点の選択だけを待てばよい。この他、選択された点の座標を表示させる等の選択された点に係る情報を表示装置26に表示させる処理をしたり、選択された点を表示装置26の表示上で見えなくする又は見えるようにする可視化の処理をしたりといったことが行われてもよい。
【0080】
図6Bは、選択処理において線分ABが選択されたときの表示例を示している。この場合、線分ABだけが強調表示されて選択状態となる。選択された線分は、後で説明する回転処理、線対称処理、平行移動処理等で利用され得る。また、選択された線分を表す方程式を表示装置26に表示させる、選択された線分の長さを表示させる等の選択された線分に係る情報を表示する処理をしたり、選択された線分を表示上で見えなくする又は見えるようにする可視化の処理をしたりといったことが行われてもよい。
【0081】
図6Cは、選択処理において正三角形ABCの面が選択されたときの表示例を示している。この場合、辺AB、BC、CAによって囲まれる面だけが強調表示されて選択状態となる。一方で、辺AB、BC、CAは、強調表示されずに、選択状態ともならない。選択された面は、後で説明する回転処理、線対称処理、平行移動処理等で利用され得る。また、選択された面を表す方程式を表示装置26に表示させる、選択された面の面積を表示させる等の選択された面に係る情報を表示する処理をしたり、選択された面を表示上で見えなくする又は見えるようにする可視化の処理をしたりといったことが行われてもよい。
【0082】
図6Dは、選択処理においてバルーン101aが選択されたときの表示例を示している。この場合、バルーン101aと関連づけられている正三角形ABCの各要素が選択される。具体的には、点A、点B、点Cと、線分AB、BC、CAと、これらの線分によって囲まれる面とが強調表示されて選択状態となる。選択された各要素は、後で説明する回転処理、線対称処理、平行移動処理等で利用され得る。また、選択された点、線分、面を表示上で見えなくする又は見えるようにする可視化の処理が行われてもよい。
【0083】
図7は、メニュー処理の一例の流れを示す図である。ステップS301において、端末20のCPU21は、ユーザによりメニュー操作が行われたか否かを判定する。メニュー操作は、例えばマウスの右クリック操作、表示画面の長押し操作である。ステップS301において、メニュー操作が行われたと判定されたときには、処理はステップS302に移行する。ステップS301において、メニュー操作が行われたと判定されていないときには、CPU21は、処理を図3のステップS8に移行させる。
【0084】
ステップS302において、CPU21は、表示画面にメニューを表示させる。その後、処理はステップS303に移行する。メニューの表示位置は、右クリックが行われた位置、タッチ位置等であってよい。メニューの項目は、例えば「正多角形描画」、「回転」、「線対称」、「平行移動」、「拡縮」といった項目を含む。メニュー項目としてこれらのうちの何れかが省略されてもよい。また、メニュー項目として、これら以外の項目があってもよい。
【0085】
ステップS303において、CPU21は、正多角形描画処理を行うか否かを判定する。「正多角形描画」の項目が選択されたときには、CPU21は、正多角形描画処理を行うと判定する。ステップS303において、正多角形描画処理を行うと判定されたときには、処理はステップS304に移行する。ステップS303において、正多角形描画処理を行うと判定されていないときには、処理はステップS305に移行する。
【0086】
ステップS304において、CPU21は、正多角形描画処理を行う。その後、処理はステップS313に移行する。正多角形描画処理は、ユーザによって選択された線分を一辺とする正多角形を描画する処理である。このため、まず、CPU21は、ユーザに幾何付箋101の中の線分を選択させる。すでに、選択処理において線分が選択されているときには、この処理は省略される。線分の選択後、CPU21は、ユーザに頂点の数Npの値を入力させる。頂点の数Npを変数とすることもできる。頂点の数Npの値が変数であるときには、CPU21は、ユーザに変数の値を決定させる。変数の値は、スライダによって変更され得る。その後、CPU21は、選択された線分の長さと、頂点の数とから、正多角形を作成する。すなわち、CPU21は、残りの辺の数と、各辺のなす角度とを決定する。このような正多角形の作成処理は、サーバ10において行われてもよい。正多角形の作成後、CPU21は、作成した正多角形を幾何付箋101の中に描画する。また、CPU21は、作成した正多角形の重心の位置にバルーン101aを重ねて表示させる。前述したように、正多角形描画処理の場合、バルーン101aには、頂点の数Npの値が表示される。さらに、CPU21は、作成した正多角形に係る情報を示す操作付箋102を作成する。そして、CPU21は、作成した操作付箋102を表示させる。
【0087】
ここで、正多角形描画処理によって作成されるバルーン101aは、フローティングオブジェクトであってよい。しかしながら、バルーン101aは、作図された図形が正多角形描画処理によって作図されたものであることを示すためのツールチップである。したがって、バルーン101aは、作図された図形との関係が分かるように表示されることが好ましい。このため、バルーン101aの移動範囲は、例えば作図された図形の重心から所定距離内に制限されることが望ましい。
【0088】
ステップS305において、CPU21は、回転処理を行うか否かを判定する。「回転」の項目が選択されたときには、CPU21は、回転処理を行うと判定する。ステップS305において、回転処理を行うと判定されたときには、処理はステップS306に移行する。ステップS305において、回転処理を行うと判定されていないときには、処理はステップS307に移行する。
【0089】
ステップS306において、CPU21は、回転処理を行う。その後、処理はステップS313に移行する。回転処理は、ユーザによって選択された点を回転中心として図形を回転させる処理である。このため、まず、CPU21は、回転の対象の図形を選択させる。すでに、選択処理において図形が選択されているときには、この処理は省略される。回転の対象の図形の選択後、CPU21は、幾何付箋101の中から回転中心となる点をユーザに選択させる。回転中心となる点の選択後、CPU21は、回転角度Rの値を入力させる。前述したように回転角度のRを変数とすることもできる。回転角度のRの値が変数であるときには、CPU21は、ユーザに変数の値を決定させる。変数の値は、スライダによって変更され得る。回転の対象の図形、回転中心の点、回転角度が決定された後、CPU21は、回転の対象の図形を回転中心の点に対してユーザによって設定された回転角度だけ回転させた図形を作成する。すなわち、CPU21は、選択された回転の対象の図形の各座標を選択された回転角度だけ回転させる座標変換をする。この回転図形の作成処理は、サーバ10において行われてもよい。回転図形の作成後、CPU21は、作成した回転図形を幾何付箋101の中に描画する。また、CPU21は、回転中心の位置にバルーン101aを重ねて表示させる。前述したように、回転処理の場合、バルーン101aには、回転角度Rの値が表示される。さらに、CPU21は、作成した回転図形に係る情報を示す操作付箋102を作成する。また、回転角度として変数が入力されているときには、CPU21は、スライダ付箋103を作成する。そして、CPU21は、作成した操作付箋102及びスライダ付箋103を表示させる。
【0090】
ここで、回転処理によって作成されるバルーン101aは、フローティングオブジェクトであってよい。しかしながら、多角形描画処理のときと同様の理由により、バルーン101aの移動範囲は、例えば回転中心から所定距離内に制限されることが望ましい。
【0091】
ステップS307において、CPU21は、線対称処理を行うか否かを判定する。「線対称」の項目が選択されたときには、CPU21は、線対称処理を行うと判定する。ステップS307において、線対称処理を行うと判定されたときには、処理はステップS308に移行する。ステップS307において、線対称処理を行うと判定されていないときには、処理はステップS309に移行する。
【0092】
ステップS308において、CPU21は、線対称処理を行う。その後、処理はステップS313に移行する。線対称処理は、ユーザによって選択された図形からユーザによって選択された線分に対して対称な図形を作成する処理である。このため、まず、CPU21は、線対称図形の元となる図形を選択させる。すでに、選択処理において図形が選択されているときには、この処理は省略される。元となる図形の選択後、CPU21は、幾何付箋101の中から線分をユーザに選択させる。線分の選択後、CPU21は、線分に対して対称な図形を作成する。この対称図形の作成処理は、サーバ10において行われてもよい。線対称図形の作成後、CPU21は、作成した線対称図形を幾何付箋101の中に描画する。線対称処理の場合、バルーン101a及び操作付箋102は作成されなくてもよい。または、選択された線分の近傍に線対称処理が行われたことを示す「Reflection」の文字102aを含むバルーン101aが表示されてもよいし、同様の情報を含む操作付箋102が作成されてもよい。この場合において、バルーン101aの移動範囲は、選択された線分の近傍に制限されてもよい。
【0093】
ステップS309において、CPU21は、平行移動処理を行うか否かを判定する。「平行移動」の項目が選択されたときには、CPU21は、平行移動処理を行うと判定する。ステップS309において、平行移動処理を行うと判定されたときには、処理はステップS310に移行する。ステップS309において、平行移動処理を行うと判定されていないときには、処理はステップS311に移行する。
【0094】
ステップS310において、CPU21は、平行移動処理を行う。その後、処理はステップS313に移行する。平行移動処理は、ユーザによって選択された図形を平行移動させる処理である。このため、まず、CPU21は、平行移動の対象の図形を選択させる。すでに、選択処理において図形が選択されているときには、この処理は省略される。平行移動の対象の図形の選択後、CPU21は、平行移動の量Tの値(X方向及びY方向)を入力させる。平行移動の量Tの値を変数とすることもできる。平行移動の量Tの値が変数であるときには、CPU21は、ユーザに変数の値を決定させる。変数の値は、スライダによって変更され得る。平行移動の対象の図形、平行移動の量が決定された後、CPU21は、平行移動の対象の図形を平行移動の量だけ平行移動させた図形を作成する。すなわち、CPU21は、選択された平行移動の対象の図形の各座標に平行移動の量を加える座標変換をする。この平行移動図形の作成処理は、サーバ10において行われてもよい。平行移動図形の作成後、CPU21は、作成した平行移動図形を幾何付箋101の中に描画する。また、CPU21は、バルーン101aを重ねて表示させる。平行移動処理の場合、バルーン101aには、例えば幾何付箋101の隅に表示される。バルーン101aの移動範囲は、制限されてもよいし、制限されなくてもよい。
【0095】
ステップS311において、CPU21は、拡縮処理を行うか否かを判定する。「拡縮」の項目が選択されたときには、CPU21は、拡縮処理を行うと判定する。ステップS311において、拡縮処理を行うと判定されたときには、処理はステップS312に移行する。ステップS311において、拡縮処理を行うと判定されていないときには、処理はステップS313に移行する。
【0096】
ステップS312において、CPU21は、拡縮処理を行う。その後、処理はステップS313に移行する。拡縮処理は、ユーザによって選択された図形と相似な図形を、ユーザによって選択された基準点に基づいて作成する処理である。このため、まず、CPU21は、拡縮図形の元となる図形を選択させる。すでに、選択処理において図形が選択されているときには、この処理は省略される。元となる図形の選択後、CPU21は、幾何付箋101の中から拡縮の基準となる点をユーザに選択させる。基準点の選択後、CPU21は、倍率Dの値を入力させる。倍率Dの値を変数とすることもできる。倍率Dの値が変数であるときには、CPU21は、ユーザに変数の値を決定させる。変数の値は、スライダによって変更され得る。拡縮の対象の図形、基準の点、倍率が決定された後、CPU21は、基準の点と拡縮の対象の図形の各座標との延長線上に、拡縮の対称の図形を設定された倍率だけ拡縮した図形を作成する。この拡縮図形の作成処理は、サーバ10において行われてもよい。拡縮図形の作成後、CPU21は、作成した拡縮図形を幾何付箋101の中に描画する。また、CPU21は、基準の点の位置にバルーン101aを重ねて表示させる。拡縮処理の場合、バルーン101aには、倍率Dの値が表示される。さらに、CPU21は、作成した拡縮図形に係る情報を示す操作付箋102を作成する。また、倍率として変数が入力されているときには、CPU21は、スライダ付箋103を作成する。そして、CPU21は、作成した操作付箋102及びスライダ付箋103を表示させる。
【0097】
ステップS313において、CPU21は、メニュー処理を終了するか否かを判定する。例えば、ユーザにより、メニュー表示の終了操作がされたときには、CPU21は、メニュー処理を終了すると判定する。ステップS313において、メニュー処理を終了すると判定されていないときには、処理はステップS303に戻る。ステップS313において、メニュー処理を終了すると判定されたときには、CPU21は、処理を図3のステップS8に移行させる。
【0098】
図8は、正多角形描画処理の結果として表示される表示画面の例である。図8は、例えば線分BCを一辺とする正三角形が作成されたときの表示画面の例を示している。このとき、三角形ABCの重心の位置に頂点の数を示す「Np=3」のバルーン101aが表示される。また、操作付箋102として、操作付箋102には、数学的処理として正多角形描画処理が行われたことを示す「n-polygon」の文字102aと、正多角形描画処理において設定されたパラメータの値102bが表示される。
【0099】
前述したように、バルーン101aは、三角形ABCが線分BCを元にした正多角形描画処理によって作図されたものであることを示すためのツールチップである。したがって、バルーン101aは、三角形ABCとの関係が分かるように表示されることが好ましい。このため、バルーン101aの移動範囲は、例えば三角形ABCの重心から所定距離内に制限されることが望ましい。
【0100】
図9は、拡縮処理、平行移動処理、回転処理の結果として表示される表示画面の例である。図9では、多角形描画処理によって作成された三角形ABCに対し、拡縮処理と回転処理とが行われている。さらに回転処理によって作成された2つの三角形C’A’B’が同時に選択されて平行移動処理が行われている。
【0101】
図9において、拡縮処理の基準点は点Fであり、倍率は変数cである。スライダ付箋103において変数cは2.00に設定されている。このとき、拡縮図形としての三角形A’B’C’は、基準点Fと三角形ABCの延長線上(例えば三角形ABCの各座標を2等分点とする位置)に、三角形ABCの2倍の面積を有する図形として作成される。そして、拡大の基準点である点Fの近傍には「D1=2.00」であることを示すバルーン101aが表示される。さらに、拡縮処理が行われたことを示す「Dilation」の文字102aと、その拡縮処理において設定されたパラメータの値102bを含む操作付箋102が表示される。さらに、パラメータは変数cであるので、スライダ付箋103には、変数cの値を設定するためのスライダ103bが表示される。
【0102】
また、図9において、回転処理の基準点は点Fであり、回転角度は変数a、bの2つである。スライダ付箋103において変数aは100.00に設定されている。変数bは18.00に設定されている。このとき、回転図形としての三角形C’A’B’は、回転中心Fを中心として三角形ABCを100度だけ回転させた図形として作成される。そして、回転の中心点である点Fの近傍には「R1=100.00」であることを示すバルーン101aが表示される。さらに、回転処理が行われたことを示す「Rotation」の文字102aと、その拡大において設定されたパラメータR1の値102bを含む操作付箋102が表示される。さらに、パラメータは変数aであるので、スライダ付箋103には、変数aの値を設定するためのスライダ103bが表示される。また、もう一つの回転図形としての三角形C’A’B’は、回転中心Fを中心として三角形ABCを180度だけ回転させた図形として作成される。そして、回転の中心点である点Fの近傍には「R2=180.00」であることを示すバルーン101aが表示される。さらに、回転処理が行われたことを示す「Rotation」の文字102aと、その回転処理において設定されたパラメータR2の値102bを含む操作付箋102が表示される。さらに、パラメータは変数bであるので、スライダ付箋103には、変数bの値を設定するためのスライダ103bが表示される。
【0103】
また、図9において、平行移動の量T1におけるx=4、y=-3である。このとき、平行移動図形としての三角形C”B”A”は、2つの三角形C’B’A’をそれぞれx方向に4、y方向に-3だけ平行移動させた図形として作成される。そして、例えば幾何付箋101の左上隅には、「T1=(4.00,-3.00)」であることを示すバルーン101aが表示される。さらに、平行移動処理が行われたことを示す「Translation」の文字102aと、その平行移動処理において設定されたパラメータの値102bを含む操作付箋102が表示される。「T1=(4.00,-3.00)」であることを示すバルーン101aが選択されたときには、2つの三角形C”B”A”が同時に選択状態となる。
【0104】
以上説明したように本実施形態によれば、幾何付箋101の中のある図形に対して数学的処理が施された場合に、作図に用いられた図形と作図先の図形との数学的関係を示すためのバルーン101aが幾何付箋101の中に表示される。このバルーン101aにより、作図に用いられた図形と作図先の図形との数学的関係が容易に把握され得る。特に、図9のように、1つの幾何付箋の中に多数の図形が作成されたときには、バルーン101aの表示が有効である。
【0105】
また、バルーン101aがユーザによって選択されたときには、対応する図形を構成する点、線、面が一括で選択状態となる。このような一括選択と、点、線、面の個別の選択とを使い分けできることにより、よりユーザにとっての利便性を高めることができる。
【0106】
また、正多角形描画処理、回転処理、拡縮処理といった作図のための基準の点があるときには、バルーン101aの移動範囲が基準の点の近傍に制限されることで、作図に用いられた図形と作図先の図形との数学的関係は失われにくい。
【0107】
ここで、前述した実施形態では、バルーン101aは幾何付箋101に重ねて表示されるだけである。これに対し、バルーン101aと関連する図形については、前述した「紐」で結ばれるような表示がされてもよい。
【0108】
また、前述した実施形態では、バルーン101aが選択されたときには、対応する図形を構成する点、線、面が一括で選択状態となる。これに加えて対応する操作付箋102、スライダ付箋103も選択状態とされてもよい。さらには、バルーン101aが選択されたときには、作図の元になった図形、基準の点、ラベル等も併せて選択状態とされてもよい。
【0109】
さらに、前述した実施形態では、端末20は、サーバ10からウェブアプリケーションのためのプログラムをダウンロードして図形の描画処理等を実行するように構成されている。これに対し、端末20のストレージ24にウェブアプリケーションと同等のプログラムを記憶させておくことにより、端末20が単独で前述した実施形態で説明したウェブアプリケーションの処理を実行するようにすることもできる。この場合においては、端末20は通信機能を有している必要はない。
【0110】
なお、本願発明は、上記実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組み合わせて実施してもよく、その場合組み合わせた効果が得られる。更に、上記実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適当な組み合わせにより種々の発明が抽出され得る。例えば、実施形態に示される全構成要件からいくつかの構成要件が削除されても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除された構成が発明として抽出され得る。
【0111】
以下に、本出願の出願当初の特許請求の範囲に記載された発明を付記する。
[1] 表示装置の表示画面に設定された第1の表示エリアに第1の図形を表示することと、
特定した数学的処理を前記第1の図形に対して施すことで第2の図形を作成して、前記第1の表示エリアに表示することと、
前記第1の図形に対して施した前記数学的処理の情報を表示する数学的処理表示エリアを、前記第1の表示エリアに設けることと、
をコンピュータに実行させるための図形表示プログラム。
[2] 前記数学的処理表示エリアを選択する操作に応じて、前記第1の表示エリアに表示されている図形の構成要素のうち、選択した前記数学的処理表示エリアに関連付けられた前記第2の図形を構成している複数の構成要素を一括して識別表示すること、
をさらに前記コンピュータに実行させるための[1]に記載の図形表示プログラム。
[3] 前記第2の図形を構成している複数の構成要素の各々は、点、線、及び面の何れかであり、
前記第2の図形の構成要素のうちの何れかの構成要素を選択する操作により選択された何れかの点、線、面を識別表示すること、
をさらに前記コンピュータに実行させるための[2]に記載の図形表示プログラム。
[4] 前記第1の図形に対して前記数学的処理を施す際の基準となる別の図形を前記第1の表示エリアに表示することと、
前記数学的処理表示エリアを、前記別の図形に関連付けて、前記第1の表示エリアに設けることと、
をさらに前記コンピュータに実行させるための[1]-[3]の何れかに記載の図形表示プログラム。
[5] 前記数学的処理表示エリアを、前記第2の図形に関連付けて、前記第1の表示エリアに設けること、
をさらに前記コンピュータに実行させるための[1]-[4]の何れかに記載の図形表示プログラム。
[6] 前記第1の図形に対して施す数学的処理を特定する情報の入力を受け付ける数学的処理入力エリアを、前記第1の表示エリアの外側に設けること、
をさらに前記コンピュータに実行させるための[1]-[5]の何れかに記載の図形表示プログラム。
[7] 前記第1の図形に対して施す前記数学的処理を特定する情報の変更を受け付ける数学的処理変更エリアを、前記第1の表示エリアの外側に設けること、
をさらに前記コンピュータに実行させるための[1]-[6]の何れかに記載の図形表示プログラム。
[8] 前記第1の図形は、線分を含み、
前記第2の図形は、前記線分を一辺とする正多角形であり、
前記情報を前記正多角形の重心に重ねて表示する
ことを前記コンピュータに実行させるための[1]-[7]の何れかに記載の図形表示プログラム。
[9] 前記第2の図形は、前記第1の表示エリアに表示されている線分について前記第1の図形と線対称な図形である、
[1]-[7]の何れかに記載の図形表示プログラム。
[10] 前記第2の図形は、前記第1の表示エリアに表示されている点を回転中心として前記第1の図形を回転させた図形であり、
前記情報を前記回転中心の点に重ねて表示すること
を前記コンピュータに実行させるための[1]-[7]の何れかに記載の図形表示プログラム。
[11] 前記第2の図形は、前記第1の表示エリアの中で前記第1の図形を平行移動させた図形であり、
前記情報を前記第1の表示エリアの隅に表示すること
を前記コンピュータに実行させるための[1]-[7]の何れかに記載の図形表示プログラム。
[12] 前記第2の図形は、前記第1の表示エリアに表示されている点を拡縮中心の基準点として前記第1の図形を拡縮させた図形であり、
前記第2の図形は、前記基準点に重ねて表示する
ことをさらに前記コンピュータに実行させるための[1]-[7]の何れかに記載の図形表示プログラム。
[13] 端末と通信できるサーバであって、
表示装置の表示画面に設定された第1の表示エリアに第1の図形を表示することと、
特定した数学的処理を前記第1の図形に対して施すことで第2の図形を作成して、前記第1の表示エリアに表示することと、
前記第1の図形に対して施した前記数学的処理の情報を表示する数学的処理表示エリアを、前記第1の表示エリアに設けることと、
を前記端末のコンピュータに実行させるための図形表示プログラムを記憶するように構成されたストレージと、
前記ストレージに記憶された前記図形表示プログラムを前記端末に送信する通信装置と、
を具備するサーバ。
[14] 表示装置と、
表示装置の表示画面に設定された第1の表示エリアに第1の図形を表示することと、
特定した数学的処理を前記第1の図形に対して施すことで第2の図形を作成して、前記第1の表示エリアに表示することと、
前記第1の図形に対して施した前記数学的処理の情報を表示する数学的処理表示エリアを、前記第1の表示エリアに設けることと、
を実行するプロセッサと、
を具備する図形表示装置。
[15] 表示装置の表示画面に設定された第1の表示エリアに第1の図形を表示することと、
特定した数学的処理を前記第1の図形に対して施すことで第2の図形を作成して、前記第1の表示エリアに表示することと、
前記第1の図形に対して施した前記数学的処理の情報を表示する数学的処理表示エリアを、前記第1の表示エリアに設けることと、
を具備する図形表示方法。
【符号の説明】
【0112】
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
図6A
図6B
図6C
図6D
図7
図8
図9