(57)【特許請求の範囲】
【請求項１】
表示画面内に図形を描画表示する図形表示手段と、
ユーザ操作に基づいて描画図形上の任意の点を動点として設定する動点設定手段と、
ユーザ操作に基づいて前記動点の移動範囲を設定する動点移動範囲設定手段と、
ユーザ操作に基づいて描画図形上の任意の点を軌跡点として設定する軌跡点設定手段と、
前記動点が前記移動範囲を動くときの当該動点の位置情報を複数取得する動点位置情報取得手段と、
この動点位置情報取得手段により取得された前記動点の各位置情報に基づいて前記軌跡点の位置情報を複数取得する軌跡位置情報取得手段と、
この軌跡位置情報取得手段により取得された複数の位置情報が、所定の関数式に適合する場合には当該適合する関数式の情報を前記表示画面内に表示させ、前記所定の関数式の何れにも適合しない場合にはその旨を前記表示画面内に表示させる軌跡情報表示制御手段と、
を備えることを特徴とする図形描画装置。
【請求項２】
請求項１に記載の図形描画装置において、
前記図形表示手段は、
点、直線又は曲線からなる各図形要素を少なくとも１つ描画する図形要素描画手段を有し、
前記動点設定手段は、
前記図形要素描画手段により描画される各図形要素のうち、任意の図形要素をユーザ操作に基づき固定図形要素として指定する固定図形要素指定手段を有し、
前記動点位置情報取得手段は、
前記固定図形要素を固定状態として前記動点が前記移動範囲を動くときの当該動点の位置情報を取得することを特徴とする図形描画装置。
【請求項３】
請求項２に記載の図形描画装置において、
前記図形要素描画手段により描画される各図形要素のうち、前記固定図形要素と、当該固定図形要素以外の図形要素とを識別表示させる図形要素識別表示制御手段を備えることを特徴とする図形描画装置。
【請求項４】
請求項１〜３の何れか一項に記載の図形描画装置において、
前記軌跡位置情報取得手段により取得された複数の位置情報が直線の関数式に適合すると判別された場合に、前記図形表示手段により描画された図形から、前記軌跡の直線に対する平行直線を検索する平行直線検索手段と、
前記軌跡位置情報取得手段により取得された複数の位置情報が円の関数式に適合すると判別された場合に、前記図形表示手段により描画された図形から、前記軌跡の円に対する中心点を検索する中心点検索手段と、
前記軌跡位置記憶手段により記憶された複数の位置情報が円以外の円錐曲線の関数式に適合すると判別された場合に、前記図形表示手段により描画された図形から、前記軌跡の円錐曲線に対する焦点を検索する焦点検索手段と、
前記平行直線検索手段、前記中心点検索手段または前記焦点検索手段により検索された直線、中心点または焦点を前記表示画面内で識別表示させる関連図形要素識別表示制御手段と、
を備えることを特徴とする図形描画装置。
【請求項５】
表示部と、記憶部とを備えたコンピュータに、
前記表示部に図形を描画表示する図形表示機能と、
ユーザ操作に基づいて描画図形上の任意の点を動点として設定して前記記憶部に記憶する動点設定機能と、
ユーザ操作に基づいて前記動点の移動範囲を設定して前記記憶部に記憶する動点移動範囲設定機能と、
ユーザ操作に基づいて描画図形上の任意の点を軌跡点として設定する軌跡点設定機能と、
前記動点が前記移動範囲を動くときの当該動点の位置情報を複数取得する動点位置情報取得機能と、
この動点位置情報取得機能により取得された前記動点の各位置情報に基づいて前記軌跡点の位置情報を複数取得する軌跡位置情報取得機能と、
この軌跡位置情報取得機能により取得された複数の位置情報が所定の関数式に適合する場合には当該適合する関数式の情報を前記表示部に表示させ、前記所定の関数式の何れにも適合しない場合にはその旨を前記表示部に表示させる軌跡情報表示制御機能と、
を実現させることを特徴とする図形描画プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、図形描画装置及び図形描画プログラムに関する。
【背景技術】
【０００２】
中学・高校などにおける幾何の授業では、図形中の点や線が一定の範囲を動くときに、この移動に伴って特定の点がどのような軌跡を描くか求めさせるという問題が出題される。
【０００３】
そのため、近年の図形描画装置では、このような問題の理解を助ける観点から、描いた図形の一部を或る条件に従って動かしつつ、指定点の軌跡を描画するようになっている（例えば、特許文献１参照）。
【特許文献１】特開平８−３３９４５３号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、上記特許文献１記載の図形描画装置では、軌跡の描画される様子が視覚的に確認できるものの、その軌跡がどのような図形であるのかは概観から推測するしかなく、推測の正誤を判定することもできなかった。
【０００５】
本発明の課題は、描画される軌跡の内容をユーザに認識させることのできる図形描画装置及び図形描画プログラムを提供することである。
【課題を解決するための手段】
【０００６】
請求項１記載の発明は、図形描画装置において、
表示画面内に図形を描画表示する図形表示手段と、
ユーザ操作に基づいて描画図形上の任意の点を動点として設定する動点設定手段と、
ユーザ操作に基づいて前記動点の移動範囲を設定する動点移動範囲設定手段と、
ユーザ操作に基づいて描画図形上の任意の点を軌跡点として設定する軌跡点設定手段と、
前記動点が前記移動範囲を動くときの当該動点の位置情報を複数取得する動点位置情報取得手段と、
この動点位置情報取得手段により取得された前記動点の各位置情報に基づいて前記軌跡点の位置情報を複数取得する軌跡位置情報取得手段と、
この軌跡位置情報取得手段により取得された複数の位置情報が、所定の関数式に適合する場合には当該適合する関数式の情報を前記表示画面内に表示させ、前記所定の関数式の何れにも適合しない場合にはその旨を前記表示画面内に表示させる軌跡情報表示制御手段と、
を備えることを特徴とする。
【０００７】
請求項２記載の発明は、請求項１に記載の図形描画装置において、
前記図形表示手段は、
点、直線又は曲線からなる各図形要素を少なくとも１つ描画する図形要素描画手段を有し、
前記動点設定手段は、
前記図形要素描画手段により描画される各図形要素のうち、任意の図形要素をユーザ操作に基づき固定図形要素として指定する固定図形要素指定手段を有し、
前記動点位置情報取得手段は、
前記固定図形要素を固定状態として前記動点が前記移動範囲を動くときの当該動点の位置情報を取得することを特徴とする。
【０００８】
請求項３記載の発明は、請求項２に記載の図形描画装置において、
前記図形要素描画手段により描画される各図形要素のうち、前記固定図形要素と、当該固定図形要素以外の図形要素とを識別表示させる図形要素識別表示制御手段を備えることを特徴とする。
【００１０】
請求項４記載の発明は、請求項１〜３の何れか一項に記載の図形描画装置において、
前記軌跡位置情報取得手段により取得された複数の位置情報が直線の関数式に適合すると判別された場合に、前記図形表示手段により描画された図形から、前記軌跡の直線に対する平行直線を検索する平行直線検索手段と、
前記軌跡位置情報取得手段により取得された複数の位置情報が円の関数式に適合すると判別された場合に、前記図形表示手段により描画された図形から、前記軌跡の円に対する中心点を検索する中心点検索手段と、
前記軌跡位置記憶手段により記憶された複数の位置情報が円以外の円錐曲線の関数式に適合すると判別された場合に、前記図形表示手段により描画された図形から、前記軌跡の円錐曲線に対する焦点を検索する焦点検索手段と、
前記平行直線検索手段、前記中心点検索手段または前記焦点検索手段により検索された直線、中心点または焦点を前記表示画面内で識別表示させる関連図形要素識別表示制御手段と、
を備えることを特徴とする。
【００１１】
請求項５記載の発明は、図形描画プログラムにおいて、
表示部と、記憶部とを備えたコンピュータに、
前記表示部に図形を描画表示する図形表示機能と、
ユーザ操作に基づいて描画図形上の任意の点を動点として設定して前記記憶部に記憶する動点設定機能と、
ユーザ操作に基づいて前記動点の移動範囲を設定して前記記憶部に記憶する動点移動範囲設定機能と、
ユーザ操作に基づいて描画図形上の任意の点を軌跡点として設定する軌跡点設定機能と、
前記動点が前記移動範囲を動くときの当該動点の位置情報を複数取得する動点位置情報取得手段と、
この動点位置情報取得機能により取得された前記動点の各位置情報に基づいて前記軌跡点の位置情報を複数取得する軌跡位置情報取得機能と、
この軌跡位置情報取得機能により取得された複数の位置情報が所定の関数式に適合する場合には当該適合する関数式の情報を前記表示部に表示させ、前記所定の関数式の何れにも適合しない場合にはその旨を前記表示部に表示させる軌跡情報表示制御機能と、
を実現させることを特徴とする。
【発明の効果】
【００１２】
本発明によれば、動点が移動範囲を動くときの軌跡点の位置情報が複数取得されて所定の関数式に適合するか否かが判別され、適合すると判別された関数式の情報が表示画面内に表示されるので、当該関数式の情報によって軌跡の内容をユーザに認識させることができる。
【発明を実施するための最良の形態】
【００１３】
以下、本発明に係る図形描画装置について、図を参照しながら説明する。
［１．１  外観構成］
図１は、本発明に係る図形描画装置を適用した関数電卓１の正面図である。
この図に示すように、関数電卓１は、各種キー群２と、ディスプレイ３とを備えている。
【００１４】
各種キー群２は、ユーザから数値や演算記号等の入力操作を受けたり、各種処理の指示操作を受けたりするためのキー群であり、それぞれ固有の機能を割り当てられた複数のキーを備えている。本実施の形態においては、各種キー群２は、テンキー２０、演算記号キー２１、ＥＸＥキー２２、ＤＥＬキー２３、方向キー２４、ファンクションキー２５、ＯＰＴＮキー２６、ＶＡＲＳキー２７等を備えて構成されている。
【００１５】
このうち、テンキー２０は数値の入力操作を受けるキーであり、演算記号キー２１は各種演算記号の入力操作を受けるキーである。
【００１６】
ＥＸＥキー２２は、演算処理や図形描画処理など、各種処理の実行を指示するキーとして機能するようになっている。ＤＥＬキー２３は、ディスプレイ３に表示されている数値や演算記号などの削除操作を受けるキーである。
【００１７】
方向キー２４は、ディスプレイ３内で表示されているカーソルＣＲ（図７等参照）を所定の移動方向に移動させる場合等に押下されるキーであり、本実施の形態においては、上下左右の４方向について入力可能に構成されている。
【００１８】
ファンクションキー２５は、予め割り当てられた所定の処理の実行を指示するキーである。より詳細には、本実施の形態におけるファンクションキー２５は、後述の図形描画処理（図４〜図６参照）において描画済みの図形要素に対する操作の選択ウィンドウを表示させるためのＦ２キー２５ａや、描画すべき図形要素の選択ウィンドウを表示させるためのＦ３キー２５ｂ等を有している。ここで、Ｆ２キー２５ａを操作した場合に表示される選択ウィンドウには、選択肢として「３（Ｄｅｓｅｌｅｃｔ  Ａｌｌ）」（カーソルＣＲによる全ての選択を解除）等が表示されるようになっている。また、本実施の形態においては、図形要素は点、直線または曲線から構成されている。
【００１９】
また、ＯＰＴＮキー２６は、後述の図形描画処理（図４〜図６参照）において軌跡描画についての操作の選択ウィンドウを表示させる場合等に押下されるようになっている。ここで、ＯＰＴＮキー２６を操作した場合に表示される選択ウィンドウには、選択肢として「７（Ｌｏｃｕｓ）」（軌跡点の設定）、「８（Ａｎａｌｙｚｅ  Ｌｏｃｕｓ）」（軌跡解析）等が表示されるようになっている。
【００２０】
また、ＶＡＲＳキー２７は、後述の図形描画処理（図４〜図６参照）において描画図形内の点や線を固定して不動とする場合等に押下されるようになっている。
【００２１】
ディスプレイ３は、各種キー群２の押下に応じた文字や符号、数式、演算結果、図形などの他、関数電卓１を使用するために必要な各種データが表示される部分である。なお、本実施の形態におけるディスプレイ３は、ドットマトリクス液晶で構成されているものとして説明するが、例えば、ＴＦＴ（Thin Film Transistor）液晶やＰＤＰ（Plasma Display Panel）等、他の表示装置でも良いことは勿論である。
【００２２】
［１．２  機能構成］
続いて、関数電卓１の機能構成について説明する。
図２は、関数電卓１の機能構成を示すブロック図である。この図に示すように、関数電卓１は入力部４、表示部５、ＲＯＭ（Read Only Memory）６、ＲＡＭ（Random Access Memory）７及びＣＰＵ（Central Processing Unit）８等の機能部を備えており、各機能部はバス１０で接続されている。
【００２３】
入力部４は、上述の各種キー群２を備えており、押下されたキーの信号をＣＰＵ８に出力するようになっている。
表示部５は、上述のディスプレイ３を備えており、ＣＰＵ８からの信号に基づいて各種情報をディスプレイ３に表示するようになっている。
【００２４】
ＲＯＭ６は、関数電卓１におけるメニュー表示処理や各種設定処理、各種演算処理等の動作に係るプログラムや、関数電卓１の備える種々の機能を実現するためのプログラム等を格納しており、本実施の形態においては、本発明に係る図形描画プログラム６０と、関数式記憶テーブル６１とを格納している。
【００２５】
図形描画プログラム６０は、後述の図形描画処理（図４〜図６参照）をＣＰＵ８に実行させるためのプログラムである。
【００２６】
関数式記憶テーブル６１は、図３に示すように、後述の図形描画処理（図４〜図６参照）において描画され得る軌跡の種類と、各軌跡を示す関数式とを対応付けて記憶している。ここで、本実施の形態においては、軌跡の種類として、直線と、円と、円以外の円錐曲線とが使用されている。なお、円以外の円錐曲線とは、楕円、放物線または双曲線を意味する。また、各関数式中、「ｘ」及び「ｙ」は変数であり、「ａ」，「ｂ」，…「ｆ」，「Ｒ」は任意の定数である。
【００２７】
ＲＡＭ７は、ＣＰＵ８が実行する各種プログラムや、これらのプログラムの実行に係るデータ等を一時的に保持する随時書き込み可能なメモリであり、本実施の形態においては、描画図形記憶領域７０、軌跡点記憶領域７１、動点記憶領域７２、動点移動座標記憶領域７３、軌跡点移動座標記憶領域７４及び軌跡種類記憶領域７５を有している。
【００２８】
このうち、描画図形記憶領域７０には、後述の図形描画処理（図４〜図６参照）において描画された図形（以下、描画図形とする）の内容が記憶されるようになっている。
【００２９】
また、軌跡点記憶領域７１には、後述の図形描画処理（図４〜図６参照）において軌跡点として設定された点についての描画図形内での位置及び座標が記憶されるようになっている。
【００３０】
また、動点記憶領域７２には、後述の図形描画処理（図４〜図６参照）において動点として設定された点についての描画図形内での位置及び座標が記憶されるようになっている。
【００３１】
また、動点移動座標記憶領域７３には、後述の図形描画処理（図４〜図６参照）において動点の移動経路を分割した各分割位置での座標が記憶されるようになっている。
【００３２】
また、軌跡点移動座標記憶領域７４には、後述の図形描画処理（図４〜図６参照）において動点移動座標記憶領域７３内の各座標に動点が位置する場合の軌跡点の座標がそれぞれ記憶されるようになっている。
【００３３】
また、軌跡種類記憶領域７５には、軌跡点の移動により描画される軌跡の種類が記憶されるようになっている。なお、本実施の形態においては、軌跡の種類は「不動点」、「直線」、「円」、「円錐曲線」及び「不定点」の何れかとなっている。ここで、「不定点」とは、軌跡が不動点、直線、円、円錐曲線の何れでもないことを意味する。
【００３４】
ＣＰＵ８は、入力される指示に応じて所定のプログラムに基づいた処理を実行し、各機能部への指示やデータの転送を行うようになっている。具体的には、ＣＰＵ８は、入力部４から入力される操作信号に応じて、ＲＯＭ６中のプログラムを読み出してＲＡＭ７に展開し、当該プログラムに従って処理を実行する。そして、ＣＰＵ８は、処理結果を表示するための表示制御信号を表示部５に適宜出力して、対応した情報を表示させる。
【００３５】
［１．３  関数電卓の動作］
続いて、関数電卓１の動作について説明する。図４〜図６は、ＣＰＵ８がＲＯＭ６から図形描画プログラム６０を読み出して実行する図形描画処理の動作を説明するためのフローチャートである。
【００３６】
まず、図４に示すように、ＣＰＵ８は、ユーザにより各種キー群２を介して図形描画モードが選択されるか否かを判定し（ステップＳ１）、選択されないと判定した場合（ステップＳ１；Ｎｏ）には、他の処理へ移行する。
【００３７】
また、ステップＳ１において図形描画モードが選択されたと判定した場合（ステップＳ１；Ｙｅｓ）には、ＣＰＵ８は、各種キー群２を介してユーザに図形の描画操作を行わせ、当該操作に従ってディスプレイ３に図形を描画するとともに、描画された図形を描画図形記憶領域７０に記憶させる（ステップＳ２）。なお、このとき、ユーザがＶＡＲＳキー２７の操作によって描画図形内の点や線を指定すると、ＣＰＵ８は当該点や線を固定して不動として設定する。
【００３８】
次に、ＣＰＵ８は、引き続きユーザによって図形描画操作が行われるか否かを判定し（ステップＳ３）、行われると判定した場合（ステップＳ３；Ｙｅｓ）には、上述のステップＳ２に移行する。
【００３９】
また、ステップＳ３において図形描画操作が行われないと判定した場合（ステップＳ３；Ｎｏ）には、ＣＰＵ８は、描画図形内で軌跡の描画対象の点が指定されるか否かを判定し（ステップＳ４）、指定されないと判定した場合（ステップＳ４；Ｎｏ）には、後述のステップＳ６に移行する。
【００４０】
また、ステップＳ４において軌跡描画対象の点が指定されたと判定した場合（ステップＳ４；Ｙｅｓ）には、ＣＰＵ８は、指定された点を軌跡点として設定し、描画図形内での当該軌跡点の位置及び座標を軌跡点記憶領域７１に記憶させる（ステップＳ５）。
【００４１】
次に、ＣＰＵ８は、描画図形内で移動対象の点と、その移動範囲とが指定されるか否かを判定し（ステップＳ６）、指定されないと判定した場合（ステップＳ６；Ｎｏ）には、他の処理へ移行する。
【００４２】
また、ステップＳ６において点及び移動範囲が指定されたと判定した場合（ステップＳ６；Ｙｅｓ）には、ＣＰＵ８は、指定された点を動点として設定し、描画図形内での当該動点の位置及び座標を移動範囲とともに動点記憶領域７２に記憶させる（ステップＳ７）。
【００４３】
次に、ＣＰＵ８は、ユーザにより各種キー群２を介して動点の移動指示操作がされるか否かを判定し（ステップＳ８）、されないと判定した場合（ステップＳ８）には、当該ステップＳ８に移行する。
【００４４】
また、ステップＳ８において移動指示操作がされたと判定した場合（ステップＳ８；Ｙｅｓ）には、ＣＰＵ８は、軌跡点が設定されているか否かを判定し（ステップＳ９）、されていないと判定した場合（ステップＳ９；Ｎｏ）には、動点記憶領域７２内の情報に基づいて移動範囲内で動点を移動させた後（ステップＳ１０）、後述のステップＳ１３に移行する。
【００４５】
また、ステップＳ９において軌跡点が設定されていると判定した場合（ステップＳ９；Ｙｅｓ）には、ＣＰＵ８は、動点記憶領域７２内の情報に基づいて移動範囲内で動点を移動させるとともに、この動点の移動に追従させて軌跡点に軌跡を描かせる（ステップＳ１１）。また、このときＣＰＵ８は、不動として設定された点や線については、移動をさせずに固定状態とする。なお、このステップＳ１１においては、移動して描画される点や線と、固定して描画される点や線とは、線の太さ等によって識別表示されることとしても良い。この場合には、ユーザによる動点や軌跡点の識別を容易化させることができる。
【００４６】
次に、ＣＰＵ８は、動点の移動経路を分割した各分割位置の座標を算出して動点移動座標記憶領域７３に記憶させるとともに、これら各分割位置に動点が位置する場合の軌跡点の座標をそれぞれ算出して軌跡点移動座標記憶領域７４に記憶させる（ステップＳ１２）。
【００４７】
次に、ＣＰＵ８は、引き続きユーザにより動点の移動指示操作がされるか否かを判定し（ステップＳ１３）、されたと判定した場合（ステップＳ１３；Ｙｅｓ）には、上述のステップＳ６に移行する。
【００４８】
また、ステップＳ１３において動点の移動指示操作がされないと判定した場合（ステップＳ１３；Ｎｏ）には、ＣＰＵ８は、ユーザにより各種キー群２を介して軌跡の解析操作がされるか否かを判定し（ステップＳ１４）、されないと判定した場合（ステップＳ１４；Ｎｏ）には、他の処理へ移行する。
【００４９】
また、ステップＳ１４において軌跡の解析操作がされたと判定した場合（ステップＳ１４；Ｙｅｓ）には、ＣＰＵ８は、軌跡解析処理（１）を行う（ステップＳ１５）。
【００５０】
具体的には、図５に示すように、まずＣＰＵ８は、軌跡点移動座標記憶領域７４に記憶された軌跡点の各座標が全て等しいか否かを判定し（ステップＴ１）、等しいと判定した場合（ステップＴ１；Ｙｅｓ）には、軌跡の種類を「不動点」として軌跡種類記憶領域７５に記憶させ（ステップＴ２）、後述のステップＴ１０に移行する。
【００５１】
また、ステップＴ１において各座標が等しくないと判定した場合（ステップＴ１；Ｎｏ）には、ＣＰＵ８は、関数式記憶テーブル６１内の情報に基づいて各座標が直線の関数式、つまりｙ＝ａｘ＋ｂまたはｘ＝ａに当てはまるか否かを判定し（ステップＴ３）、当てはまると判定した場合（ステップＴ３；Ｙｅｓ）には、軌跡の種類を「直線」として軌跡種類記憶領域７５に記憶させ（ステップＴ４）、後述のステップＴ１０に移行する。
【００５２】
また、ステップＴ３において各座標が直線の関数式に当てはまらないと判定した場合（ステップＴ３；Ｎｏ）には、ＣＰＵ８は、軌跡点の各座標が円の関数式、つまり（ｘ−ａ）2＋（ｙ−ｂ）2＝Ｒ2に当てはまるか否かを判定し（ステップＴ５）、当てはまると判定した場合（ステップＴ５；Ｙｅｓ）には、軌跡の種類を「円」として軌跡種類記憶領域７５に記憶させ（ステップＴ６）、後述のステップＴ１０に移行する。
【００５３】
また、ステップＴ５において各座標が円の関数式に当てはまらないと判定した場合（ステップＴ５；Ｎｏ）には、ＣＰＵ８は、軌跡点の各座標が円錐曲線の関数式、つまりａｘ2＋ｂｘｙ＋ｃｙ2＋ｄｘ＋ｅｙ＋ｆ＝０に当てはまるか否かを判定し（ステップＴ７）、当てはまると判定した場合（ステップＴ７；Ｙｅｓ）には、軌跡の種類を「円錐曲線」として軌跡種類記憶領域７５に記憶させ（ステップＴ８）、後述のステップＴ１０に移行する。
【００５４】
また、ステップＴ７において各座標が円錐曲線の関数式に当てはまらないと判定した場合（ステップＴ７；Ｎｏ）には、ＣＰＵ８は、軌跡の種類を「不定点」として軌跡種類記憶領域７５に記憶させた後、軌跡種類記憶領域７５に記憶されている軌跡の種類をディスプレイ３に表示させ（ステップＴ１０）、軌跡解析処理（１）を終了する。
【００５５】
次に、ＣＰＵ８は、図４に示すように、ユーザにより各種キー群２を介して更に軌跡の解析操作がされるか否かを判定し（ステップＳ１６）、されないと判定した場合（ステップＳ１６；Ｎｏ）には、図形描画処理を終了する。
【００５６】
また、ステップＳ１６において軌跡の解析操作がされたと判定した場合（ステップＳ１６；Ｙｅｓ）には、ＣＰＵ８は、軌跡解析処理（２）を行う（ステップＳ１７）。
【００５７】
具体的には、図６に示すように、まずＣＰＵ８は、軌跡種類記憶領域７５内の情報に基づいて軌跡点の軌跡が直線であるか否かを判定し（ステップＴ１１）、直線であると判定した場合（ステップＴ１１；Ｙｅｓ）には、当該軌跡の直線に対する平行直線が描画図形内に存在するか否かを判定する（ステップＴ１２）。
【００５８】
このステップＴ１２において平行直線が存在しないと判定した場合（ステップＴ１２；Ｎｏ）には、ＣＰＵ８は、軌跡解析処理（２）を終了した後、図４に示すように、図形描画処理を終了する。
【００５９】
また、図６に示すように、ステップＴ１２において平行直線が存在すると判定した場合（ステップＴ１２；Ｙｅｓ）には、ＣＰＵ８は、当該平行直線をディスプレイ３内で識別表示させ（ステップＴ１３）、軌跡解析処理（２）を終了した後、図形描画処理を終了する。なお、識別表示の態様としては、線を太くしても良いし、点滅させても良い。
【００６０】
また、ステップＴ１１において軌跡が直線ではないと判定した場合（ステップＴ１１；Ｎｏ）には、ＣＰＵ８は、軌跡種類記憶領域７５内の情報に基づいて軌跡点の軌跡が円であるか否かを判定し（ステップＴ１４）、円であると判定した場合（ステップＴ１４；Ｙｅｓ）には、当該軌跡の円に対する中心点が描画図形内に存在するか否かを判定する（ステップＴ１５）。
【００６１】
このステップＴ１５において中心点が存在しないと判定した場合（ステップＴ１５；Ｎｏ）には、ＣＰＵ８は、軌跡解析処理（２）を終了した後、図形描画処理を終了する。
【００６２】
また、ステップＴ１５において中心点が存在すると判定した場合（ステップＴ１５；Ｙｅｓ）には、ＣＰＵ８は、当該中心点をディスプレイ３内で識別表示させ（ステップＴ１６）、軌跡解析処理（２）を終了した後、図形描画処理を終了する。
【００６３】
また、ステップＴ１４において軌跡が円ではないと判定した場合（ステップＴ１４；Ｎｏ）には、ＣＰＵ８は、軌跡種類記憶領域７５内の情報に基づいて軌跡点の軌跡が円錐曲線であるか否かを判定し（ステップＴ１７）、円錐曲線ではないと判定した場合（ステップＴ１７；Ｎｏ）には、軌跡解析処理（２）を終了した後、図形描画処理を終了する。
【００６４】
また、ステップＴ１７において軌跡が円錐曲線であると判定した場合（ステップＴ１７；Ｙｅｓ）には、ＣＰＵ８は、当該軌跡の円錐曲線に対する焦点が描画図形内に存在するか否かを判定する（ステップＴ１８）。
【００６５】
このステップＴ１８において焦点が存在しないと判定した場合（ステップＴ１８；Ｎｏ）には、ＣＰＵ８は、軌跡解析処理（２）を終了した後、図形描画処理を終了する。
【００６６】
また、ステップＴ１８において焦点が存在すると判定した場合（ステップＴ１８；Ｙｅｓ）には、ＣＰＵ８は、当該焦点をディスプレイ３内で識別表示させ（ステップＴ１９）、軌跡解析処理（２）を終了した後、図形描画処理を終了する。
【００６７】
［１．４  動作例］
続いて、上記の図形描画処理を具体的に説明する。なお、後述の図７〜図８では、ユーザによるキー操作の内容を図中の左側に示している。
【００６８】
まず、例えば図７（ａ）に示すように、ユーザが各種キー群２を介して図形描画モードを選択した後（ステップＳ１；Ｙｅｓ）、三角形ＣＤＥと直線ＡＢ，ＣＧ，ＥＦを描画すると、ディスプレイ３に描画図形が表示される（ステップＳ２）。ここで、三角形ＣＤＥの頂点Ｃは直線ＡＢ上に位置している。また、点Ｆ，Ｇはそれぞれ線分ＣＤ，ＤＥの中点であり、直線ＣＧ，ＥＦの交点Ｈは三角形ＣＤＥの重心となっている。
【００６９】
次に、ユーザが方向キー２４の操作によりカーソルＣＲを点Ａ，Ｂ，Ｄ，Ｅ上にそれぞれ移動させた後、ＥＸＥキー２２及びＶＡＲＳキー２７の順に操作を行なうと、これらの点Ａ，Ｂ，Ｄ，Ｅが描画図形内で不動点として設定される。
【００７０】
次に、図７（ｂ）に示すように、ユーザが方向キー２４の操作によりカーソルＣＲを点Ｈ上に移動させてＥＸＥキー２２、ＯＰＴＮキー２６及びテンキー２０の「７」キーの順に操作を行うと（ステップＳ４；Ｙｅｓ）、点Ｈが軌跡点として設定される（ステップＳ５）。
【００７１】
次に、図７（ｃ）に示すように、ユーザがＦ２キー２５ａ及びテンキー２０の「３」キーを操作してカーソルＣＲによる全ての選択を解除した後、方向キー２４の操作によりカーソルＣＲを点Ｃ上に移動させてＥＸＥキー２２の操作を行うと（ステップＳ６；Ｙｅｓ）、点Ｃが動点として設定される（ステップＳ７）。なお、本動作例では、このときの点Ｃの位置が動点Ｃについての移動開始位置となる。
【００７２】
次に、ユーザが方向キー２４の操作によりカーソルを線分ＡＢ上で移動させた後、ＥＸＥキー２２の操作を行なうと（ステップＳ６；Ｙｅｓ）、操作時点でのカーソルＣＲの位置が動点Ｃについての移動終了位置とされ、その結果、動点Ｃの移動範囲が設定される（ステップＳ７）。
【００７３】
次に、ユーザが各種キー群２の操作により動点Ｃの移動指示操作を行なうと（ステップＳ８；Ｙｅｓ）、図７（ｃ）〜（ｄ）に示すように動点Ｃ及び軌跡点Ｈが移動し、軌跡点Ｈの軌跡が太線Ｋとして描画される（ステップＳ１１）。
【００７４】
次に、動点Ｃの移動開始位置の座標が（xC1，yC1）、移動終了位置の座標が（xC10，yC10）とされた後、これら移動開始位置及び移動終了位置の間における動点Ｃの移動経路が等分割されて各分割位置の座標（xC1，yC1），（xC2，yC2），…（xC9，yC9），（xC10，yC10）が算出されるとともに、各分割位置に動点Ｃが位置する場合の軌跡点Ｈの座標（xH1，yH1），（xH2，yH2），…（xH9，yH9），（xH10，yH10）が算出される（ステップＳ１２）。
【００７５】
次に、図８（ａ）に示すように、ユーザがＯＰＴＮキー２６及びテンキー２０の「８」キーの操作により軌跡の解析操作を行なうと（ステップＳ１４；Ｙｅｓ）、軌跡点Ｈの各座標（xH1，yH1），（xH2，yH2），…（xH9，yH9），（xH10，yH10）が直線の関数式ｙ＝ａｘ＋ｂに当てはまると判定され（ステップＴ３；Ｙｅｓ）、軌跡の種類「直線」がディスプレイ３に表示される（ステップＴ１０）。
【００７６】
そして、図８（ｂ）に示すように、ユーザがＯＰＴＮキー２６及びテンキー２０の「８」キーの操作により軌跡の解析操作を行なうと（ステップＳ１６；Ｙｅｓ）、軌跡の直線（太線Ｋ）に対する平行直線ＡＢが描画図形内に存在すると判定され（ステップＴ１２；Ｙｅｓ）、当該平行直線ＡＢが太く識別表示される（ステップＴ１３）。
【００７７】
以上の関数電卓１によれば、図４のステップＳ１２，図５のステップＴ１〜Ｔ１０や，図８（ａ）で示したように、動点が移動範囲を動くときの軌跡点の軌跡が描画され、当該軌跡における軌跡点の位置情報が複数取得されて直線、円及び円錐曲線の各関数式に適合するか否かが判別され、適合すると判別された関数式の情報が表示されるので、当該関数式の情報によって軌跡の内容をユーザに認識させることができる。
【００７８】
また、図４のステップＳ１２や，図８（ａ）で示したように、動点が移動範囲を動くときの当該動点の位置情報が複数算出され、算出された動点の各位置情報に基づいて軌跡点の位置情報が算出されるので、軌跡の正確な内容をユーザに認識させることができる。
【００７９】
また、図６のステップＴ１１〜Ｔ１９や，図８（ｂ）で示したように、軌跡点について取得された複数の位置情報が直線の関数式に適合すると判別された場合には描画図形から軌跡の直線に対する平行直線が検索され、複数の位置情報が円の関数式に適合すると判別された場合には描画図形から軌跡の円に対する中心点が検索され、複数の位置情報が円以外の円錐曲線の関数式に適合すると判別された場合には描画図形から軌跡の円錐曲線に対する焦点が検索されて、検索された直線、中心点または焦点が識別表示されるので、軌跡の内容の理解を容易化することができる。
【００８０】
なお、本発明は上記実施形態に限定されることなく、本発明の主旨を逸脱しない範囲において種々の改良及び設計の変更をおこなっても良い。
【００８１】
例えば、上記の実施形態においては、ＣＰＵ８は軌跡の種類を表示することとして説明したが、軌跡の関数式を表示することとしても良い。
【００８２】
また、ＣＰＵ８は軌跡の描画後のユーザ操作に基づいて軌跡解析処理（１），（２）を行なうこととして説明したが、軌跡の描画後に自動的に行うこととしても良い。
【００８３】
また、軌跡解析処理（２）において軌跡の図形と対応する平行線や中心点、焦点などが存在する場合に、当該平行線等を識別表示することとして説明したが、存在しない場合に自動的に描画して、識別表示することとしても良い。
【図面の簡単な説明】
【００８４】
【図１】本発明に係る図形描画装置を適用した関数電卓を示す外観図である。
【図２】本発明に係る図形描画装置を適用した関数電卓を示すブロック図である。
【図３】関数式記憶テーブルを示す図である。
【図４】図形描画処理を示すフローチャートである。
【図５】図形描画処理を示すフローチャートである。
【図６】図形描画処理を示すフローチャートである。
【図７】図形描画処理における表示内容を示す図である。
【図８】図形描画処理における表示内容を示す図である。
【符号の説明】
【００８５】
１  関数電卓
４  入力部
５  表示部
８  ＣＰＵ
６０  図形描画プログラム
【図１】
0004475307.tif 000002
【図２】
0004475307.tif 000003
【図３】
0004475307.tif 000004
【図４】
0004475307.tif 000005
【図５】
0004475307.tif 000006
【図６】
0004475307.tif 000007
【図７】
0004475307.tif 000008
【図８】
0004475307.tif 000009