説明

グラフ表示装置およびプログラム

【課題】グラフと共に当該グラフ上の座標点の座標値を簡単な処理で適切な位置に表示することが可能なグラフ表示装置を提供する。
【解決手段】グラフy=f(x)上の描画対象座標点(xa,ya)を通るグラフ部分が当該座標点から一方の領域に存在する曲線のグラフ部分である場合、その曲線の外側になる他方の領域[ya>ga(x)]を座標値描画領域に決定し、グラフy=f(x)に重なることなく座標値(xa,ya)を適切な位置に描画できる。それ以外の場合、例えば描画対象座標点(x,y)を通るグラフ部分が直線のグラフ部分であったり、一方と他方のグラフ軌跡が逆方向の領域へ曲がって延びるグラフ部分であったりした場合でも、当該座標点(x,y)のグラフとの接線[y=g(x)]を境界にした一方の領域[y>g(x)]又は他方の領域[y<g(x)]をデフォルトの座標値描画領域に決定し、当該グラフy=f(x)に重なることなくその座標値を適切な位置に描画できる。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、グラフと共に当該グラフ上の任意の点の座標値を表示するグラフ表示装置およびその制御プログラムに関する。
【背景技術】
【0002】
従来、グラフ関数電卓などにおいて、関数式に対応したグラフを描画表示し、グラフ上の任意の座標点について、その座標値を当該座標点の近傍に合わせて表示することが行われている。
【0003】
従来のグラフ関数電卓では、任意の座標点の座標値を当該座標点に対して決まった一定の位置に表示しているので、グラフの傾きや軌跡によっては、表示した座標値がグラフと重なってしまい、とても見難くなってしまう。
【0004】
従来の画像表示装置において、図形に付属する文字などが本来の位置に表示できない場合に、見やすく且つ分かりやすい位置を自動的に探索する文字の表示方式が考えられている(例えば、特許文献1参照。)。
【先行技術文献】
【特許文献】
【0005】
【特許文献1】特開平09−146529号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
従来の画像表示装置の文字の表示方式では、文字と図形との重なりを防ぐため、画面上を分割したメッシュ毎に文字の分かりやすさの評価値を求め、その評価値に応じて文字の表示位置を決定する技術が用いられているが、予め備える必要のあるデータが多く、処理も複雑であった。
【0007】
本発明は、このような課題に鑑みなされたもので、グラフと共に当該グラフ上の座標点の座標値を簡単な処理で適切な位置に表示することが可能になるグラフ表示装置およびその制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明に係るグラフ表示装置は、座標領域にグラフを描画するグラフ描画手段と、このグラフ描画手段により描画されたグラフ上の座標点を指定座標点として指定する座標点指定手段と、前記指定座標点前後のグラフ上の座標点が湾曲する方向を判断するグラフ方向判断手段と、このグラフ方向判断手段により前記指定座標点前後のグラフ上の座標点が共に同指定座標点から一方の領域の方向に湾曲していると判断された場合は、他方の領域を座標値の描画領域に決定する第1の領域決定手段と、前記グラフ方向判断手段により前記指定座標点前後のグラフ上の座標点が共に同指定座標点から一方の領域の方向に湾曲していると判断されない場合は、前記指定座標点前後間のグラフに沿った方向と直交する方向の一方または他方の領域を座標値の描画領域に決定する第2の領域決定手段と、前記第1または第2の領域決定手段により決定された領域に前記指定座標点の座標値を描画する座標値描画手段と、を備えたことを特徴としている。
【0009】
本発明に係るプログラムは、表示部を備えた電子機器のコンピュータを制御するためのプログラムであって、前記コンピュータを、前記表示部の座標領域にグラフを描画するグラフ描画手段、このグラフ描画手段により描画されたグラフ上の座標点を指定座標点として指定する座標点指定手段、前記指定座標点前後のグラフ上の座標点が湾曲する方向を判断するグラフ方向判断手段、このグラフ方向判断手段により前記指定座標点前後のグラフ上の座標点が共に同指定座標点から一方の領域の方向に湾曲していると判断された場合は、他方の領域を座標値の描画領域に決定する第1の領域決定手段、前記グラフ方向判断手段により前記指定座標点前後のグラフ上の座標点が共に同指定座標点から一方の領域の方向に湾曲していると判断されない場合は、前記指定座標点前後間のグラフに沿った方向と直交する方向の一方または他方の領域を座標値の描画領域に決定する第2の領域決定手段、前記第1または第2の領域決定手段により決定された領域に前記指定座標点の座標値を描画する座標値描画手段、として機能させることを特徴としている。
【発明の効果】
【0010】
本発明によれば、グラフと共に当該グラフ上の座標点の座標値を簡単な処理で適切な位置に表示することが可能になるグラフ表示装置およびその制御プログラムを提供できる。
【図面の簡単な説明】
【0011】
【図1】本発明のグラフ表示装置の実施形態に係るグラフ関数電卓10の外観構成を示す正面図。
【図2】前記グラフ関数電卓10の電子回路の構成を示すブロック図。
【図3】前記グラフ関数電卓10のグラフ表示処理を示すフローチャート。
【図4】前記グラフ関数電卓10のグラフ表示処理に伴う座標値描画処理(A)を示すフローチャート。
【図5】前記グラフ関数電卓10のグラフ表示処理に伴いグラフ上の座標値を表示する表示動作の具体例(その1)を示す図。
【図6】前記グラフ関数電卓10のグラフ表示処理に伴いグラフ上の座標値を表示する表示動作の具体例(その2)を示す図。
【図7】前記グラフ関数電卓10のグラフ表示処理に伴う交点座標値描画処理(B)を示すフローチャート。
【図8】前記グラフ関数電卓10のグラフ表示処理に伴う座標値描画処理(A)または交点座標値描画処理(B)に共通の描画位置補正処理を示すフローチャート。
【図9】前記グラフ関数電卓10のグラフ表示処理に伴いグラフ上の交点座標値を表示する表示動作の具体例(その1)を示す図。
【図10】前記グラフ関数電卓10のグラフ表示処理に伴いグラフ上の交点座標値を表示する表示動作の具体例(その2)を示す図。
【発明を実施するための形態】
【0012】
以下図面により本発明の実施の形態について説明する。
【0013】
図1は、本発明のグラフ表示装置の実施形態に係るグラフ関数電卓10の外観構成を示す正面図である。
【0014】
このグラフ関数電卓10は、その携帯性の必要からユーザが片手で十分把持し片手で操作可能な小型サイズからなり、この電卓10の本体正面にはキー入力部11および液晶ドットマトリクス型のカラー表示部16が設けられる。
【0015】
キー入力部11には、数字・文字・各種算術記号を入力したり計算の実行を指示したりするための数字・文字・演算記号キー群12、各種の関数機能を設定したりメモリ機能を設定したりするための計算機能設定キー群13、各種の動作モードを設定したりメニュー画面を表示させたりするためのモード設定キー群14、表示部16に表示されたカーソルの移動操作やデータ項目の選択操作などを行うためのカーソルキー15、表示部16の下端に沿ってメニュー表示される各種の機能を選択的に指定するためのファンクションキー[F1]〜[F4]などが備えられる。
【0016】
前記数字・文字・演算記号キー群12としては、[0]〜[9](数字)キー、[+][−][×][÷](算術記号)キー、[DEL](削除)キー、[EXE](実行)キー、[AC](クリア)キーなどが配列される。
【0017】
前記計算機能設定キー群13としては、[log](対数)キー、「√」(平方根)キー、三角関数の[sin]キー、[cos]キー、[tan]キーなどが配列される。
【0018】
前記モード設定キー群14としては、[Menu](メニュー)キー、[Insert」(挿入)キー、[Graph](グラフ)キー、[Trac](トレース)キー、[EXIT](終了)キーなどが配列される。
【0019】
このグラフ関数電卓10は、カラー表示部16のグラフ画面G上に表示されたグラフ上の座標点に対応させて、当該座標点を通るグラフYの曲線の常に外側の領域を判断し、その座標値(x,y)の描画領域として決定する機能を備える。
【0020】
図2は、前記グラフ関数電卓10の電子回路の構成を示すブロック図である。
【0021】
このグラフ関数電卓10は、コンピュータである制御部(CPU)21を備えている。
【0022】
制御部(CPU)21は、記憶部22に予め記憶されているシステムプログラムや各種電卓処理プログラム22a,22b,22d、あるいはメモリカードなどの外部記憶部23から記憶部22に読み込まれた各種電卓処理プログラム22a,22b,22d、あるいは通信ネットワークN上のWebサーバ(プログラムサーバ)30から外部PC20にダウンロードされ通信部24を介して前記記憶部22に読み込まれた各種電卓処理プログラム22a,22b,22dに従い回路各部の動作を制御する。そして、前記記憶部22に記憶されたシステムプログラムや各種電卓処理プログラム22a,22b,22dは、キー入力部11からのキー入力信号に応じて起動される。
【0023】
前記記憶部22に記憶される各種電卓処理プログラム22a,22b,22dには、キー入力に応じた各種数式の四則演算処理、関数式の関数演算処理、グラフ描画処理等を制御するプログラムの他、グラフ上の座標点の座標値をその座標点を通るグラフ曲線の常に外側の領域に描画するための座標値描画プログラム22c、前記グラフ座標値の描画に際しその描画位置が他のグラフや座標軸に重ならないように補正するための描画位置補正プログラム22d等のプログラムが含まれる。
【0024】
そして、前記記憶部22には、前記座標値描画プログラム22cに従ったグラフ上の座標値描画処理に際して、ユーザ操作に応じて予め指定される座標値描画領域のデフォルトデータを、描画対象とする座標点の接線[y=g(x)]よりy方向で上の領域[y>g(x)]または下の領域[y<g(x)]として記憶するためのデフォルト座標値描画領域情報記憶部22bが確保される。
【0025】
こうして、前記制御部(CPU)21には、前記記憶部22、外部記憶部23、通信部24、キー入力部11が接続される他に、カラー表示部16が接続される。
【0026】
カラー表示部16には、その表示画面サイズのメモリ領域を有する表示バッファ16aが備えられ、この表示バッファ16aには、カラー表示部16に表示させるための表示画面サイズで生成されたビットマップパターンのデータが描画される。
【0027】
このように構成されたグラフ関数電卓10は、前記CPU21が前記記憶部22から読み出した各種の電卓処理プログラム22a,22c,22dやデフォルト座標値描画領域記憶部22bに記述されている命令およびデータに従い回路各部の動作を制御し、ソフトウエアとハードウエアとが協働して動作することにより、以下の動作説明で述べる機能を実現する。
【0028】
次に、前記構成のグラフ関数電卓10の動作について説明する。
【0029】
図3は、前記グラフ関数電卓10のグラフ表示処理を示すフローチャートである。
【0030】
図4は、前記グラフ関数電卓10のグラフ表示処理に伴う座標値描画処理(A)を示すフローチャートである。
【0031】
図5は、前記グラフ関数電卓10のグラフ表示処理に伴いグラフ上の座標値を表示する表示動作の具体例(その1)を示す図である。
【0032】
キー入力部11のユーザ操作に応じて、グラフの描画条件を設定するための図示しない設定画面を表示させる。この設定画面において、グラフ上の座標値(x,y)を描画するデフォルトの領域として、該当する座標点を通るグラフの接線[y=g(x)]よりy方向で上の領域[y>g(x)]が指定されると、その領域指定データ[n=0]がデフォルト座標値描画領域情報記憶部22bに記憶される(ステップS1→S2a)。
【0033】
また逆に、前記グラフの接線[y=g(x)]よりy方向で下の領域[y<g(x)]が指定されると、その領域指定データ[n=1]がデフォルト座標値描画領域情報記憶部22bに記憶される(ステップS1→S2b)。
【0034】
そして、ユーザ任意のグラフ化表示したい関数式やデータが、例えば[Y1=2(X−3)−5]として入力され、当該関数式[Y1=2(X−3)−5]に対応したグラフの描画が指示されると、図5に示すように、二次関数のグラフY1が座標軸xyと共に表示バッファ16aに描画され、グラフ画面Gとしてカラー表示部16に表示される(ステップS3)。
【0035】
ここで、前記グラフY1上で描画対象とする、例えば極小点(x,y)の座標値(3,−5)が、グラフ特徴点の抽出機能等により選択されると(ステップS4)、図4における座標値描画処理(A)が開始される(ステップSA)。
【0036】
この座標値描画処理(A)では、先ず前記描画対象点(x,y)の座標値(3,−5)に対応したグラフY1の接線の方程式[y=g(x)]が算出される(ステップA1)。
【0037】
また、前記描画対象点(x,y)の座標値(3,−5)のx方向前後の座標点、例えばx±1に対応するところの前座標点(x1,y1)の座標値(2,−3)と後座標点(x2,y2)の座標値(4,−3)とが算出される(ステップA2)。
【0038】
すると、このグラフY1上の前座標点(x1,y1)のy値(=−3)とこれに対応した前記接線[y=g(x)]上の前座標点(x1,g(x1))のy値(=−5)とが比較されると共に、同グラフY1上の後座標点(x2,y2)のy値(=−3)とこれに対応した前記接線[y=g(x)]上の後座標点(x2,g(x2))のy値(=−5)とが比較される。
【0039】
ここで、前記接線[y=g(x)]上の前座標点(x1,g(x1))のy値(=−5)よりもグラフY1上の前座標点(x1,y1)のy値(=−3)の方が大きく、且つ同接線[y=g(x)]上の後座標点(x2,g(x2))のy値(=−5)よりもグラフY1上の後座標点(x2,y2)のy値(=−3)の方が大きいと判断されると[y1>g(x1)ANDy2>g(x2)](ステップA3(Yes))、当該接線[y=g(x)]よりも描画対象点(x,y)前後のグラフY1がy方向で共に上方の領域の方向へ湾曲して存在すると認識され、当該接線[y=g(x)]よりy方向で下の領域[y<g(x)](つまり、描画対象点(x,y)を通るグラフY1の曲線に対して確実に外側となる領域)が座標値描画領域として決定される。そして、この座標値描画領域[y<g(x)]の前記描画対象点(x,y)から近傍の一定距離離間した位置にその座標値(3,−5)が描画されて表示される(ステップA4)。
【0040】
一方、前記接線[y=g(x)]上の前座標点(x1,g(x1))のy値よりもグラフY1上の前座標点(x1,y1)のy値の方が小さく、且つ同接線[y=g(x)]上の後座標点(x2,g(x2))のy値よりもグラフY1上の後座標点(x2,y2)のy値の方が小さいと判断されると[y1<g(x1)ANDy2<g(x2)](ステップA5(Yes))、当該接線[y=g(x)]よりも描画対象点(x,y)前後のグラフY1がy方向で共に下方の領域の方向に湾曲して存在すると認識され、当該接線[y=g(x)]よりy方向で上の領域[y>g(x)](つまり、描画対象点(x,y)を通るグラフY1の曲線に対して確実に外側となる領域)が座標値描画領域として決定される。そして、この座標値描画領域[y>g(x)]に描画対象点(x,y)の座標値が描画表示される(ステップA6)。
【0041】
一方、前記ステップA3およびA5における何れの判断条件にも合致せず、例えば描画中のグラフY1がその描画対象点(x,y)を基準とする接線[y=g(x)]よりも上方または下方の領域に存在することが確実でないと認識された場合には(ステップA3(No)→A5(No))、前記デフォルト座標値描画領域情報記憶部22bに記憶された領域指定データnが読み出され、[n=0]又は[n=1]の何れであるか判断される(ステップA7)。
【0042】
ここで、[n=0]と判断された場合は、前記描画対象点(x,y)を基準とする接線[y=g(x)]よりも上の領域[y>g(x)]が座標値描画領域として決定され、同描画対象点(x,y)の座標値が描画表示される(ステップA7→A8a)。
【0043】
一方、[n=1]と判断された場合は、前記描画対象点(x,y)を基準とする接線[y=g(x)]よりも下の領域[y<g(x)]が座標値描画領域として決定され、同描画対象点(x,y)の座標値が描画表示される(ステップA7→A8b)。
【0044】
図6は、前記グラフ関数電卓10のグラフ表示処理に伴いグラフ上の座標値を表示する表示動作の具体例(その2)を示す図である。
【0045】
すなわち、図6に示すように、グラフ画面Gに描画表示された三次関数のグラフy=f(x)において、描画対象点(xa,ya)の座標値については、[y1<ga(x1)ANDy2<ga(x2)](ステップA5(Yes))、つまり接線[ya=ga(x)]よりも描画対象点(xa,ya)前後のグラフy=f(x)が共にy方向で下の領域の方向に湾曲して存在すると認識され、当該接線[ya=ga(x)]よりy方向で上の領域[ya>ga(x)]が座標値描画領域として決定され、その座標値(xa,ya)が描画表示される(ステップA6)。
【0046】
また、同図の三次関数のグラフy=f(x)における描画対象点(xb,yb)の座標値については、[y1>gb(x1)ANDy2>gb(x2)](ステップA3(Yes))、つまり接線[yb=gb(x)]よりも描画対象点(xb,yb)前後のグラフy=f(x)がy方向で共に上の領域の方向に湾曲して存在すると認識され、当該接線[yb=gb(x)]よりy方向で下の領域[yb>gb(x)]が座標値描画領域として決定され、その座標値(xb,yb)が描画表示される(ステップA4)。
【0047】
さらに、同図の三次関数のグラフy=f(x)における描画対象点(x,y)の座標値については、前記ステップA3およびA5における何れの判断条件にも合致しないので(ステップA3(No)→A5(No))、前記デフォルト座標値描画領域情報記憶部22bに記憶された領域指定データnが読み出される(ステップA7)。
【0048】
そして、[n=0]と判断された場合には、前記描画対象点(x,y)を基準とする接線[y=g(x)]よりも上の領域[y>g(x)]が座標値描画領域として決定され、同描画対象点(x,y)の座標値が描画表示される(ステップA7→A8a)。
【0049】
また、[n=1]と判断された場合は、前記描画対象点(x,y)を基準とする接線[y=g(x)]よりも下の領域[y<g(x)]が座標値描画領域として決定され、同描画対象点(x,y)の座標値が描画表示される(ステップA7→A8b)。
【0050】
このように、前記構成のグラフ関数電卓10のグラフ表示処理に伴う座標値描画処理(A)によれば、表示中のグラフ上の描画対象座標点を通るグラフ部分が当該描画対象座標点から一方の領域の方向に湾曲して存在する曲線のグラフ部分である場合には、その曲線の外側になる他方の領域を座標値描画領域に決定し、当該グラフに重なることなくその座標値を適切な位置に描画できる。また、それ以外の場合、例えば前記描画対象座標点を通るグラフ部分が直線のグラフ部分であったり、一方と他方のグラフ軌跡が互いに逆方向の領域へ湾曲して延びるグラフ部分であったりした場合でも、当該描画対象座標点のグラフとの接線を境界にした一方の領域または他方の領域をデフォルトの座標値描画領域に決定し、当該グラフに重なることなくその座標値を適切な位置に描画できる。
【0051】
よって、グラフと共に当該グラフ上の座標点の座標値を簡単な処理で適切な位置に表示することが可能になる。
【0052】
図7は、前記グラフ関数電卓10のグラフ表示処理に伴う交点座標値描画処理(B)を示すフローチャートである。
【0053】
この交点座標値描画処理(B)は、前記グラフ表示処理(図3参照)におけるグラフ上の描画対象座標値選択処理(ステップS4)により、選択された描画対象点が交点である場合に、前記座標値描画処理(A)に替えて実行される。
【0054】
なお、この交点座標値描画処理(B)に含まれるステップBAでの処理は、前記座標値描画処理(A)と同じとなり、座標値描画対象の交点を生成するグラフ毎にその座標値描画領域が決定される。
【0055】
図8は、前記グラフ関数電卓10のグラフ表示処理に伴う座標値描画処理(A)または交点座標値描画処理(B)に共通の描画位置補正処理を示すフローチャートである。
【0056】
図9は、前記グラフ関数電卓10のグラフ表示処理に伴いグラフ上の交点座標値を表示する表示動作の具体例(その1)を示す図である。
【0057】
例えば、図9(A)に示すように、デフォルトの座標値描画領域が描画対象座標点を通るグラフ接線[y=g(x)]のy方向で下の領域[y<g(x)](n=1)として指定され(ステップS1→S2b)、二次関数のグラフya=fa(x)と一次関数のグラフyb=fb(x)とが座標軸xyと共にグラフ画面Gに描画表示される(ステップS3)。
【0058】
そして、前記グラフ画面Gの2つのグラフya,ybにおける描画対象座標点が当該各グラフya,yb同士の交点(x,y)として選択されると(ステップS4)、図7における交点座標値描画処理(B)へ移行され、当該描画対象座標点が交点(x,y)であると判断される(ステップB1(Yes))。
【0059】
すると、前記交点(x,y)を生成する各グラフya,yb毎に、前記同様の座標値描画処理(A)(図4参照)によりそのそれぞれの座標値描画領域が決定される(ステップBA,B2(Yes))。
【0060】
すなわち、二次関数のグラフyaについては、交点(x,y)を通る接線[y=g(x)]のy方向で下の領域[y<g(X)]として決定される(ステップA1〜A4)。また、一次関数のグラフybについては、交点(x,y)を通る接線が同グラフybと一致するので、前記デフォルト指定された座標値描画領域[y<g(x)](n=1)に従い、同グラフybのy方向で下の領域[yb<fb(x)]として決定される(ステップA1,A2,A7,A8b)。
【0061】
そして、前記交点(x,y)を生成する全グラフについて各座標値描画領域が決定されたと判断されると(ステップB2(Yes))、全ての領域条件を満たす領域、つまり、各領域[y<g(X)][yb<fb(x)]に共通する領域があるか判断される(ステップB3)。
【0062】
ここで、二次関数のグラフyaについての座標値描画領域[y<g(X)]と一次関数のグラフybについての座標値描画領域[yb<fb(x)]とに共通の領域Qがあると判断されると(ステップB3(Yes))、当該領域Qが座標値描画領域として決定され、各グラフ交点(x,y)の座標値が描画表示される(ステップB4)。
【0063】
なお、前記ステップB3において、全ての領域条件を満たす領域はない、つまり、グラフ毎に決定された座標値描画領域に共通する領域がないと判断された場合は(ステップB3(No))、今回の描画対象座標点である交点の座標値は、例えばグラフ画面Gの下端に沿った所定の位置に色付き等による特殊表記にして描画表示される(ステップB5)。
【0064】
このように、前記構成のグラフ関数電卓10のグラフ表示処理に伴う交点座標値描画処理(B)によれば、グラフ上の描画対象座標点が複数のグラフの交点である場合は、当該交点を生成するグラフ毎に、前記図4における座標値描画処理(1)によりそれぞれ対応する座標値描画領域を決定し、当該各座標値描画領域に共通の領域を前記交点座標値の描画領域として決定する。
【0065】
このため、各グラフ上での交点座標値の適切な描画領域同士が重なる領域を当該交点座標値の描画領域として決定でき、各グラフに重なることなくその交点座標値を適切な位置に描画できる。
【0066】
よって、グラフと共に当該グラフ上の座標点の座標値を簡単な処理で適切な位置に表示することが可能になる。
【0067】
次に、前記図4における座標値描画処理(A)または前記図7における交点座標値描画処理(B)により決定された座標値描画領域に描画対象座標点の座標値を描画する際に、当該座標値描画領域内の描画位置に他のグラフや座標軸等の描画要素が重なってしまった場合の描画位置補正処理(図8参照)について説明する。
【0068】
例えば、前記図9(A)で示したグラフ画面Gと同様に、二次関数のグラフyaと一次関数のグラフybとが描画表示されたグラフ画面Gにおいて、図9(B)に示すように、デフォルトの座標値描画領域が描画対象座標点を通るグラフ接線[y=g(x)]のy方向で上の領域[y>g(x)](n=0)として指定され、描画対象座標点として交点座標(x,y)が選択されると(ステップS1→S2a〜S4)、前記同様に、図7における交点座標値描画処理(B)が実行される。
【0069】
すなわち、前記交点(x,y)を生成する各グラフya,yb毎に、前記同様の座標値描画処理(A)(図4参照)によりそのそれぞれの座標値描画領域が決定され(ステップBA,B2(Yes))、二次関数のグラフyaについては、交点(x,y)を通る接線[y=g(x)]のy方向で下の領域[y<g(X)]として決定される(ステップA1〜A4)。また、一次関数のグラフybについては、交点(x,y)を通る接線が同グラフybと一致するので、前記デフォルト指定された座標値描画領域[y>g(x)](n=0)に従い、同グラフybのy方向で上の領域[yb>fb(x)]として決定される(ステップA1,A2,A7,A8a)。
【0070】
ここで、二次関数のグラフyaについての座標値描画領域[y<g(X)]と一次関数のグラフybについての座標値描画領域[yb>fb(x)]とに共通の領域Qがあると判断されると(ステップB3(Yes))、当該領域Qが座標値描画領域として決定され、グラフ交点(x,y)の座標値が描画表示される(ステップB4)。
【0071】
この際、図9(B)で示したように決定された交点座標値(x,y)の描画領域Qにおいて、描画対象交点から近傍の一定距離離間した位置にその座標値(x,y)を描画すると、当該描画座標値(x,y)に各グラフyaやybの描画要素が重なると判断される(ステップC1(Yes))。
【0072】
すると、前記決定された座標値描画領域Q内で、前記描画対象交点からさらに一定距離離間した位置が座標値描画補正位置として設定される(ステップC2)。
【0073】
そして、この設定された座標値描画補正位置について、各グラフyaやybの描画要素が重ならなくなったと判断されると(ステップC1(No))、当該座標値描画補正位置に対して前記描画対象の交点座標値(x,y)が描画表示され、その交点との間に引出線Lも描画表示される(ステップC3)。
【0074】
図10は、前記グラフ関数電卓10のグラフ表示処理に伴いグラフ上の交点座標値を表示する表示動作の具体例(その2)を示す図である。
【0075】
すなわち、図10に示すように、二次関数のグラフyaと一次関数のグラフybとが描画されたグラフ画面Gにおいて、デフォルトの座標値描画領域が接線下方の領域[y<g(x)]に指定され、描画対象座標点を交点(x,y)として前記図7における交点座標値描画処理(B)が実行される。
【0076】
すると、グラフya上での交点(x,y)に基づき決定された座標値描画領域[y<g(x)]と、グラフyb上での交点(x,y)に基づき決定された座標値描画領域[yb<fb(x)]との共通する領域Qが、交点座標値(x,y)の正しい描画領域として決定される(ステップB1〜B4)。
【0077】
この際、決定された座標値描画領域Q内の該当交点から近傍に一定距離離間した座標値描画位置には、座標軸xが重なると判断されるので(ステップC1(Yes))、前記交点からさらに一定距離離間した位置が座標値描画補正位置として設定される(ステップC2)。
【0078】
そして、この設定された座標値描画補正位置において、前記座標軸xが重ならなくなったと判断されると(ステップC1(No))、当該座標値描画補正位置に対して前記描画対象の交点座標値(x,y)が描画表示され、その交点との間に引出線Lも描画表示される(ステップC3)。
【0079】
なお、前記図4における座標値描画処理(A)によって、グラフy上の任意の座標点の座標値描画領域を決定した場合(図5,図6参照)でも、当該座標値描画領域内の座標値描画位置に他のグラフや座標軸の描画要素が重なると判断された場合には(ステップC1(Yes))、前記同様に座標値描画補正位置を設定し(ステップC2)、同描画要素に重ならない位置で前記任意座標点の座標値を描画表示できるのは言うまでもない。
【0080】
このように、前記構成のグラフ関数電卓10の座標値描画処理(A)(B)に加えて実行される描画位置補正処理によれば、当該座標値描画処理(A)(B)により決定された座標値描画領域内の描画対象座標点から近傍一定距離離間した座標値描画位置について、他のグラフや座標軸等の描画要素に重なると判断された場合には、当該描画要素に重ならない座標値描画補正位置を設定し、見やすい適切な位置に任意座標点の座標値を描画できる。
【0081】
よって、グラフと共に当該グラフ上の座標点の座標値を簡単な処理で適切な位置に表示することが可能になる。
【0082】
前記各実施形態において記載したグラフ関数電卓10の動作手法、すなわち、図3のフローチャートに示すグラフ表示処理、図4のフローチャートに示す前記グラフ表示処理に伴う座標値描画処理(A)、図7のフローチャートに示す前記グラフ表示処理に伴う交点座標描画処理(B)、図8のフローチャートに示す前記座標値描画処理(A)または前記交点座標描画処理(B)に加える描画位置補正処理などの各手法は、コンピュータに実行させることができるプログラムとして、メモリカード(ROMカード、RAMカード等)、磁気ディスク(フロッピディスク、ハードディスク等)、光ディスク(CD−ROM、DVD等)、半導体メモリ等の外部記憶媒体(23)に格納して配布することができる。そして、電子式計算機(10)のコンピュータ(21)は、この外部記憶媒体(23)に記憶されたプログラムを記憶装置(22)に読み込み、この読み込んだプログラムによって動作が制御されることにより、前記各実施形態において説明したグラフ座標点の最適描画領域/位置設定機能を実現し、前述した手法による同様の処理を実行することができる。
【0083】
また、前記手法を実現するためのプログラムのデータは、プログラムコードの形態として通信ネットワーク(公衆回線)N上を伝送させることができ、この通信ネットワークNに接続された通信装置(24)によって、前記プログラムデータを、電子式計算機(10)のコンピュータ(21)に取り込み、前述したグラフ座標点の最適描画領域/位置設定機能を実現することもできる。
【0084】
なお、本願発明は、前記各実施形態に限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。さらに、前記各実施形態には種々の段階の発明が含まれており、開示される複数の構成要件における適宜な組み合わせにより種々の発明が抽出され得る。例えば、各実施形態に示される全構成要件から幾つかの構成要件が削除されたり、幾つかの構成要件が異なる形態にして組み合わされても、発明が解決しようとする課題の欄で述べた課題が解決でき、発明の効果の欄で述べられている効果が得られる場合には、この構成要件が削除されたり組み合わされた構成が発明として抽出され得るものである。
【0085】
以下に、本願出願の当初の特許請求の範囲に記載された発明を付記する。
【0086】
[1]
座標領域にグラフを描画するグラフ描画手段と、
このグラフ描画手段により描画されたグラフ上の座標点を指定座標点として指定する座標点指定手段と、
前記指定座標点前後のグラフ上の座標点が湾曲する方向を判断するグラフ方向判断手段と、
このグラフ方向判断手段により前記指定座標点前後のグラフ上の座標点が共に同指定座標点から一方の領域の方向に湾曲していると判断された場合は、他方の領域を座標値の描画領域に決定する第1の領域決定手段と、
前記グラフ方向判断手段により前記指定座標点前後のグラフ上の座標点が共に同指定座標点から一方の領域の方向に湾曲していると判断されない場合は、前記指定座標点前後間のグラフに沿った方向と直交する方向の一方または他方の領域を座標値の描画領域に決定する第2の領域決定手段と、
前記第1または第2の領域決定手段により決定された領域に前記指定座標点の座標値を描画する座標値描画手段と、
を備えたことを特徴とするグラフ表示装置。
【0087】
[2]
前記指定座標点が複数のグラフの交点である場合に、当該交点を通るグラフ毎に、前記第1の領域決定手段および第2の領域決定手段により座標値の描画領域を決定するグラフ毎領域決定手段と、
このグラフ毎領域決定手段により決定されたグラフ毎の座標値の描画領域の共通する領域を交点の座標値の描画領域に決定する第3の領域決定手段と、
この第3の領域決定手段により決定された領域に前記交点の座標値を描画する交点座標値描画手段と、
を備えたことを特徴とする[1]に記載のグラフ表示装置。
【0088】
[3]
前記座標値描画手段は、
前記領域決定手段により決定された領域内の前記指定座標点からの所定の位置を座標値の描画位置に決定する描画位置決定手段と、
この描画位置決定手段により決定された描画位置に他の描画要素が重複するかを判断する重複判断手段と、
この重複判断手段より他の描画要素が重複すると判断された場合に、前記描画位置決定手段により決定された描画位置を同一決定領域内の他の描画要素が重複しない位置に補正する位置補正手段を有し、
前記描画位置決定手段により決定された描画位置または前記位置補正手段により補正された描画位置に前記指定座標点の座標値を描画する、
ことを特徴とする[1]に記載のグラフ表示装置。
【0089】
[4]
前記第2の領域決定手段において、前記指定座標点前後間のグラフに沿った方向と直交する方向の一方または他方の領域の何れの領域を座標値の描画領域に決定するかはデフォルトにより指定されることを特徴とする[1]に記載のグラフ表示装置。
【0090】
[5]
前記第3の領域決定手段は、前記グラフ毎領域決定手段により決定されたグラフ毎の座標値の描画領域の共通する領域があるか否かを判断する共通領域判断手段を有し、この共通領域判断手段により共通の領域があると判断された場合に当該共通の領域を交点の座標値の描画領域に決定し、
前記共通領域判断手段により共通の領域がないと判断された場合は、前記交点の座標値を特殊表記で描画する特殊表記手段を備えたことを特徴とする[2]に記載のグラフ表示装置。
【0091】
[6]
表示部を備えた電子機器のコンピュータを制御するためのプログラムであって、
前記コンピュータを、
前記表示部の座標領域にグラフを描画するグラフ描画手段、
このグラフ描画手段により描画されたグラフ上の座標点を指定座標点として指定する座標点指定手段、
前記指定座標点前後のグラフ上の座標点が湾曲する方向を判断するグラフ方向判断手段、
このグラフ方向判断手段により前記指定座標点前後のグラフ上の座標点が共に同指定座標点から一方の領域の方向に湾曲していると判断された場合は、他方の領域を座標値の描画領域に決定する第1の領域決定手段、
前記グラフ方向判断手段により前記指定座標点前後のグラフ上の座標点が共に同指定座標点から一方の領域の方向に湾曲していると判断されない場合は、前記指定座標点前後間のグラフに沿った方向と直交する方向の一方または他方の領域を座標値の描画領域に決定する第2の領域決定手段、
前記第1または第2の領域決定手段により決定された領域に前記指定座標点の座標値を描画する座標値描画手段、
として機能させるためのプログラム。
【符号の説明】
【0092】
10 …グラフ関数電卓(計算装置)
11 …キー入力部
12 …数字・文字・演算記号キー群
13 …計算機能設定キー群
14 …モード設定キー群
15 …カーソルキー
16 …液晶ドットマトリクス型カラー表示部
16a…表示バッファ
21 …制御部(CPU)
22 …記憶部
22a…各種電卓処理プログラム
22b…デフォルト座標値描画領域情報記憶部
22c…座標値描画プログラム
22d…描画位置補正プログラム
23 …外部記憶部
24 …通信部
20 …外部PC
30 …Webサーバ(プログラムサーバ)
N …通信ネットワーク
G …グラフ画面

【特許請求の範囲】
【請求項1】
座標領域にグラフを描画するグラフ描画手段と、
このグラフ描画手段により描画されたグラフ上の座標点を指定座標点として指定する座標点指定手段と、
前記指定座標点前後のグラフ上の座標点が湾曲する方向を判断するグラフ方向判断手段と、
このグラフ方向判断手段により前記指定座標点前後のグラフ上の座標点が共に同指定座標点から一方の領域の方向に湾曲していると判断された場合は、他方の領域を座標値の描画領域に決定する第1の領域決定手段と、
前記グラフ方向判断手段により前記指定座標点前後のグラフ上の座標点が共に同指定座標点から一方の領域の方向に湾曲していると判断されない場合は、前記指定座標点前後間のグラフに沿った方向と直交する方向の一方または他方の領域を座標値の描画領域に決定する第2の領域決定手段と、
前記第1または第2の領域決定手段により決定された領域に前記指定座標点の座標値を描画する座標値描画手段と、
を備えたことを特徴とするグラフ表示装置。
【請求項2】
前記指定座標点が複数のグラフの交点である場合に、当該交点を通るグラフ毎に、前記第1の領域決定手段および第2の領域決定手段により座標値の描画領域を決定するグラフ毎領域決定手段と、
このグラフ毎領域決定手段により決定されたグラフ毎の座標値の描画領域の共通する領域を交点の座標値の描画領域に決定する第3の領域決定手段と、
この第3の領域決定手段により決定された領域に前記交点の座標値を描画する交点座標値描画手段と、
を備えたことを特徴とする請求項1に記載のグラフ表示装置。
【請求項3】
前記座標値描画手段は、
前記領域決定手段により決定された領域内の前記指定座標点からの所定の位置を座標値の描画位置に決定する描画位置決定手段と、
この描画位置決定手段により決定された描画位置に他の描画要素が重複するかを判断する重複判断手段と、
この重複判断手段より他の描画要素が重複すると判断された場合に、前記描画位置決定手段により決定された描画位置を同一決定領域内の他の描画要素が重複しない位置に補正する位置補正手段を有し、
前記描画位置決定手段により決定された描画位置または前記位置補正手段により補正された描画位置に前記指定座標点の座標値を描画する、
ことを特徴とする請求項1に記載のグラフ表示装置。
【請求項4】
前記第2の領域決定手段において、前記指定座標点前後間のグラフに沿った方向と直交する方向の一方または他方の領域の何れの領域を座標値の描画領域に決定するかはデフォルトにより指定されることを特徴とする請求項1に記載のグラフ表示装置。
【請求項5】
前記第3の領域決定手段は、前記グラフ毎領域決定手段により決定されたグラフ毎の座標値の描画領域の共通する領域があるか否かを判断する共通領域判断手段を有し、この共通領域判断手段により共通の領域があると判断された場合に当該共通の領域を交点の座標値の描画領域に決定し、
前記共通領域判断手段により共通の領域がないと判断された場合は、前記交点の座標値を特殊表記で描画する特殊表記手段を備えたことを特徴とする請求項2に記載のグラフ表示装置。
【請求項6】
表示部を備えた電子機器のコンピュータを制御するためのプログラムであって、
前記コンピュータを、
前記表示部の座標領域にグラフを描画するグラフ描画手段、
このグラフ描画手段により描画されたグラフ上の座標点を指定座標点として指定する座標点指定手段、
前記指定座標点前後のグラフ上の座標点が湾曲する方向を判断するグラフ方向判断手段、
このグラフ方向判断手段により前記指定座標点前後のグラフ上の座標点が共に同指定座標点から一方の領域の方向に湾曲していると判断された場合は、他方の領域を座標値の描画領域に決定する第1の領域決定手段、
前記グラフ方向判断手段により前記指定座標点前後のグラフ上の座標点が共に同指定座標点から一方の領域の方向に湾曲していると判断されない場合は、前記指定座標点前後間のグラフに沿った方向と直交する方向の一方または他方の領域を座標値の描画領域に決定する第2の領域決定手段、
前記第1または第2の領域決定手段により決定された領域に前記指定座標点の座標値を描画する座標値描画手段、
として機能させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2013−97766(P2013−97766A)
【公開日】平成25年5月20日(2013.5.20)
【国際特許分類】
【出願番号】特願2011−243196(P2011−243196)
【出願日】平成23年11月7日(2011.11.7)
【出願人】(000001443)カシオ計算機株式会社 (8,748)
【Fターム(参考)】