(57)【特許請求の範囲】
【請求項１】
画像情報と文字情報の少なくとも一方から構成される表示対象を図形として画面表示する制御方法であって、前記表示対象を縦方向および横方向に周期的に並んだ等しい大きさの番号付けされた矩形領域に分割し、表示画面内の表示を更新する必要のある領域を更新する際に、その要更新画面領域の位置と大きさと、表示対象の位置と、表示対象を分割した前記矩形領域の大きさとから算出される値を、それら矩形領域の並びの周期で割って得られる値に基づいて、作図表示すべき矩形領域の番号の上限値と下限値を算出し、それらの範囲内の矩形領域のみを作図表示することを特徴とする表示制御方法。
【請求項２】
画像情報と文字情報の少なくとも一方から構成される表示対象を図形として画面表示する制御方法であって、
前記表示対象を、横方向に周期ΔｘでＭ個、縦方向に周期ΔｙでＮ個並ぶ、横方向にｉs から始まる番号ｉと、縦方向にｊs から始まる番号ｊを持ち、幅がＵx で高さがＵy の矩形領域に分割し、
かつ、前記表示対象の、表示画面内に現在表示されるべき範囲の左上角点を原点として表示対象の左上角点の位置を（ｘ2 、ｙ2 ）、表示画面内の更新を要する画面領域の左上角点の位置を（ｘ0 、ｙ0 ）、右下角点の位置を（ｘ1 、ｙ1 ）とし、前記更新を要する画面領域を更新する際にあって、
ｘ0 −Ｕx −ｘ2 ≧０のとき、
（ｘ0 −Ｕx −ｘ2 ）／Δx の演算値の小数点以下切り捨て値をＺ２１として
ｉｌ＝Ｚ２１＋１＋ｉs
ｘ0 −Ｕx −ｘ2 ＜０のとき、
ｉｌ＝ｉs
ｘ1 −ｘ2 ＞０のとき、
（ｘ1 −ｘ2 −１）／Δx の演算値の小数点以下切り捨て値をＺ２２として
ｉ２を、（Ｚ２２＋１＋ｉs ）と（Ｍ＋ｉs ）のうち小さい方の値とし、
ｘ1 −ｘ2 ≦０のとき、
ｉ２＝ｉs
ｙ0 −Ｕy −ｙ2 ≧０のとき、
（ｙ0 −Ｕy −ｙ2 ）／Δy の演算値の小数点以下切り捨て値をＺ２３として
ｊｌ＝Ｚ２３＋１＋ｊs
ｙ0 −Ｕy −ｙ2 ＜０のとき、
ｊｌ＝ｊs
ｙ1 −ｙ2 ＞０のとき、
（ｙ1 −ｙ2 −１）／Δy の演算値の小数点以下切り捨て値をＺ２４として
ｊ２を、（Ｚ２４＋１＋ｊs ）と（Ｎ＋ｊs ）のうち小さい方の値とし
ｙ1 −ｙ2 ≦０のときは、
ｊ２＝ｊs
として、前記横方向にｉs から始まる番号ｉを持ち、縦方向にｊs から始まる番号ｊを持つ矩形領域のうち、ｉｌ≦ｉ＜ｉ２、ｊｌ≦ｊ＜ｊ２である矩形領域のみを作図表示することを特徴とする表示制御方法。
【請求項３】
画像情報と文字情報の少なくとも一方から構成される表示対象を図形として画面表示する制御方法であって、
表示対象を、横方向に周期ΔｘでＭ個、縦方向に周期ΔｙでＮ個並ぶ、横方向にｉs から始まる番号ｉと、縦方向にｊs から始まる番号ｊを持ち、幅がＵx で高さがＵy の分割領域に分割し、
かつ、表示対象の、表示画面内に現在表示されるべき範囲の左上角点を原点として表示対象の左上角点の位置を（ｘ2 、ｙ2 ）、表示画面内の更新を要する画面領域の左上角点の位置を（ｘ0 、ｙ0 ）、右下角点の位置を（ｘ1 、ｙ1 ）とし、前記更新を要する画面領域を更新する際にあって、
（ｘ0 −Ｕx −ｘ2 ）／Δx の演算値の小数点以下切り捨て値をＺ３１として
ｉｌを、ｉs と（Ｚ３１＋ｉs ）のうち大きい方の値とし、
（ｘ1 −ｘ2 ）／Δx の演算値の小数点以下切り捨て値をＺ３２として
ｉ２を、（Ｚ３２＋１＋ｉs ）と（Ｍ＋ｉs ）のうち小さい方の値とし、
（ｙ0 −Ｕy −ｙ2 ）／Δy の演算値の小数点以下切り捨て値をＺ３３として
ｊｌを、ｊs と（Ｚ３３＋ｊs ）のうちの大きい方の値とし、
（ｙ1 −ｙ2 ）／Δy の演算値の小数点以下切り捨て値をＺ３４として
ｊ２を、（Ｚ３４＋１＋ｊs ）と（Ｎ＋ｊs ）のうち小さい方の値とし、
前記矩形領域のうち、ｉｌ≦ｉ＜ｉ２、ｊｌ≦ｊ＜ｊ２である矩形領域のみを作図表示することを特徴とする表示制御方法。
【請求項４】
表示対象を２種類以上の矩形領域に分割し、それら矩形領域を、種類毎に縦方向および横方向に周期的に等しい大きさで並び番号付けし、
表示対象の現在表示されるべき範囲の左上角点を原点としたときの表示対象の左上角点の位置を（ｘ2 ，ｙ2 ）、表示画面内の要更新画面領域の左上角点の位置を（ｘ0 ，ｙ0 ）、右下角点の位置を（ｘ1 ，ｙ1 ）とし、
第ｎ種類の矩形領域の幅をＵxn、高さをＵyn、横方向の並びの周期をΔｘn 、横方向の並びの数をＭn 、縦方向の並びの周期をΔｙn 、縦方向の並びの数をＮn として、第ｎ種類の矩形領域に横方向にｉsnから始まる番号ｉ、縦方向にｊsnから始まる番号ｊを付け、作図表示すべき第ｎ種類の矩形領域の番号ｉの上限値ｉ２n と下限値ｉｌn および番号ｊの上限値ｊ２n と下限値ｊｌn を、
ｘ0 −Ｕxn−ｘ2 ≧０のとき、
（ｘ0 −Ｕxn−ｘ2 ）／Δxnの演算値の小数点以下切り捨て値をＺ４１として
ｉｌn ＝Ｚ４１＋１＋ｉsn
ｘ0 −Ｕx n −ｘ2 ＜０のとき、
ｉｌn ＝ｉs n
ｘ1 −ｘ2 ＞０のとき、
（ｘ1 −ｘ2 −１）／Δxnの演算値の小数点以下切り捨て値をＺ４２として
ｉ２n を（ｚ４２＋１＋ｉsn）と（Ｍn ＋ｉsn）のうちの小さい方の値とし、ｘ1 −ｘ2 ≦０のとき、
ｉ２n ＝ｉsn
ｙ0 −Ｕyn−ｙ2 ≧０のとき、
（ｙ0 −Ｕyn−ｙ2 ）／Δynの演算値の小数点以下切り捨て値をＺ４３として
ｊｌn ＝Ｚ４３＋１＋ｊsn
ｙ0 −Ｕy −ｙ2 ＜０のとき、
ｊｌn ＝ｊsn
ｙ1 −ｙ2 ＞０のとき、
（ｙ1 −ｙ2 −１）／Δynの演算値の小数点以下切り捨て値をＺ４４として
ｊ２n を（Ｚ４４＋１＋ｊsn）と（Ｎn ＋ｊsn）のうち小さい方の値とし、
ｙ1 −ｙ2 ≦０のとき、
ｊ２n ＝ｊsn
とし、表示画面内の表示を更新する必要のある領域を更新する際に、前記種類毎の上限値と下限値の範囲内の矩形領域のみを作図表示することを特徴とする表示制御方法。
【請求項５】
（ｘ1 −ｘ2 −１）／Δx の演算値の小数点以下切り捨て値をＺ５１として、
Ｚ５１＋１＝Ｍ
である場合に表示画面をスクロールすることを特徴とする請求項２記載の表示制御方法。
【請求項６】
表示対象を第１段階の分割により縦方向および横方向に周期的に並んだ等しい大きさの番号付けされた矩形領域に分割し、この第１段階の分割により得られたこれら各矩形領域内の表示対象を第２段階の分割により縦方向および横方向に周期的に並んだ等しい大きさの番号付けされた矩形領域に分割し、このようにして第ｎ段階の分割により得られた各矩形領域内の表示対象を第ｎ＋１段階の分割により縦方向および横方向に周期的に並んだ等しい大きさの番号付けされた矩形領域に分割する表示対象の入れ子式の分割を行い、表示画面内の表示を更新する必要のある領域を更新する際に、その要更新領域の位置と大きさと、表示対象の位置と、各段階の分割でできた矩形領域の大きさとから算出される値を、それら各段階の分割でできた矩形領域の並びの周期で割って得られる値に基づいて、作図表示すべき各段階の分割でできた矩形領域の番号の上限値と下限値を算出し、すべての段階でそれらの上限値と下限値の範囲内にある最終段階の分割でできた矩形領域のみを作図表示することを特徴とする表示制御方法。
【請求項７】
表示対象を第１段階の分割により縦方向および横方向に周期的に並んだ等しい大きさの番号付けされた矩形領域に分割し、この第１段階の分割により得られたこれら各矩形領域内の表示対象を第２段階の分割により縦方向および横方向に周期的に並んだ等しい大きさの番号付けされた矩形領域に分割し、このようにして第ｎ−１段階の分割により得られた各矩形領域内の表示対象を、第ｎ段階の分割により、横方向に周期δxnでＫn 個、縦方向に周期δynでＴn 個並ぶ幅がｕxnで高さがｕynの等しい大きさの、横方向にｉsnから始まる番号ｋn を持ち、縦方向にｊsnから始まる番号ｔn を持つよう番号付けされた矩形領域に分割し、
表示対象の現在表示されるべき範囲の左上角点を原点にとり、第ｎ−１段階の分割により得られた矩形領域内の表示対象の左上角点の座標値を（ｘ4n，ｙ4n）、表示画面内の要更新画面領域の左上角点の座標値を（ｘ0 ，ｙ0 ）、右下角点の座標値を（ｘ1 ，ｙ1 ）として、ｘ0 −ｕxn−ｘ4n≧０のとき、
（ｘ0 −ｕxn−ｘ4n）／δxnの演算値の小数点以下切り捨て値をＺ７１として
ｋｌn ＝Ｚ７１＋１＋ｉsn
ｘ0 −ｕxn−ｘ4n＜０のとき、
ｋｌn ＝ｉsn
ｘ1 −ｘ4n＞０のとき、
（ｘ1 −ｘ4n−１）／δxnの演算値の小数点以下切り捨て値をＺ７２として
ｋ２n を（ｚ７２＋１＋ｉsn）と（Ｋn ＋ｉsn）のうちの小さい値とし、
ｘ1 −ｘ4n≦０のとき、
ｋ２n ＝ｉsn
ｙ0 −ｕyn−ｙ4n≧０のとき、
（ｙ0 −ｕyn−ｙ4n）／δynの演算値の小数点以下切り捨て値をＺ７３として
ｔｌn ＝Ｚ７３＋１＋ｊsn
ｙ0 −ｕyn−ｙ4n＜０のとき、
ｔｌn ＝ｊsn
ｙ1 −ｙ4n＞０のとき、
（ｙ1 −ｙ4n−１）／δynの演算値の小数点以下切り捨て値をＺ７４として
ｔ２n を（Ｚ７４＋１＋ｊsn）と（Ｔn ＋ｊsn）のうちの小さい値とし、
ｙ1 −ｙ4n≦０のとき、
ｔ２n ＝ｊsn
とし、
表示画面内の要更新画面領域を更新する際に、各段階でｋｌn ≦ｋn ＜ｋ２n 、ｔｌn ≦ｔn ＜ｔ２n である、最終段階の分割によりできた矩形領域のみを作図表示することを特徴とする表示制御方法。
【請求項８】
表示対象を第１段階の分割により縦方向および横方向に周期的に並んだ等しい大きさの番号付けされた矩形領域に分割し、この第１段階の分割により得られたこれら各矩形領域内の表示対象を第２段階の分割により縦方向および横方向に周期的に並んだ等しい大きさの番号付けされた矩形領域に分割し、このようにして第ｎ−１段階の分割により得られた各矩形領域内の表示対象を、第ｎ段階の分割により、横方向に周期δxnでＫn 個、縦方向に周期δynでＴn 個並ぶ幅がｕxnで高さがｕynの等しい大きさの、横方向にｉsnから始まる番号ｋn を持ち縦方向にｊsnから始まる番号をｔn を持つよう番号付けされた矩形領域に分割し、
第ｎ−１段階の分割により得られた矩形領域内の表示対象の左上角点の座標値を（ｘ4n，ｙ4n）、表示画面内の要更新画面領域の左上角点の座標値を（ｘ0 ，ｙ0 ）、右下角点の座標値を（ｘ1 ，ｙ1 ）と置き、
（ｘ0 −ｕxn−ｘ4 ）／δxnの演算値の小数点以下切り捨て値をＺ８１として
ｋｌn をｉsnと（Ｚ８１＋ｉsn）のうち大きい方の値、
（ｘ1 −ｘ4n）／δxnの演算値の小数点以下切り捨て値をＺ８２として
ｋ２n を（Ｚ８２＋１＋ｉsn）と（Ｋn ＋ｉsn）のうち小さい方の値、
（ｙ0 −ｕyn−ｙ4 ）／δynの演算値の小数点以下切り捨て値をＺ８３として
ｔｌn をｊsnと（Ｚ８３＋ｊsn）のうちの大きい方の値、
（ｙ1 −ｙ4n）／δynの演算値の小数点以下切り捨て値をＺ８４として
ｔ２n を（Ｚ８４＋１＋ｊsn）と（Ｔn ＋ｊsn）のうちの小さい方の値
とし、表示画面内の要更新画面領域を更新する際に、各段でｋｌn ≦ｋn ＜ｋ２n 、ｔｌn ≦ｔn ＜ｔ２n である、最終段階の分割によりできた矩形領域のみを作図表示することを特徴とする表示制御方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、スクロ−ル操作により表示画面より大きな表示対象を表示でき、かつ複数の表示画面が互いに重なり合うことを許して表示する表示制御方法に関し、特に、表示対象が、周期的に配置された矩形領域内に収まる図形群あるいは文字群から構成されている場合の表示制御方法に関する。
【０００２】
【従来の技術】
パソコンやワークステーションでは、ウインドウを自由に作成して、表示対象をそのウインドウを通して見るのが通例である。表示対象がウインドウ内の画像や文字を表示できる領域の大きさより大きい場合は、スクロールして表示することができる。ウインドウの内容をスクロールした場合、あるいは１つのウインドウの一部あるいは全部の上を覆っていた別のウインドウが消去されて、覆われていたウインドウの一部あるいは全部が表に現れた場合には、プログラム内でそのウインドウの表示を更新しなければならない。
【０００３】
ここで、１つのウインドウの内部の画像や文字を表示できる領域は、単に表示画面と記述される。また、スクロールにより、表示画面の内容が移動した後の空きの部分、あるいは、表示画面の一部または全部の上にかぶさっていた他のウインドウが消去されて新たに現れたそれまで隠れていた表示画面部分は、要更新画面領域と記述される。また、表示対象のうち表示画面に表示されるべき部分は、表示対象の現表示範囲と記述され、表示対象のうち要更新画面領域に表示されるべき部分は表示対象の表示更新範囲と記述される。表示画面の一部または全部の上に他のウインドウがかぶさって場合は、表示対象の現表示範囲のうち表示更新範囲以外の部分が表示画面に表示されている。
【０００４】
近年、製品開発において数値シュミレーションが使われることが多くなってきている。数値シュミレーションでは、通常、計算対象を空間的および時間的に離散化して、数千から数百万の離散的な点における値を  、数千から数百万の時間ステップについて算出する。これらの出力は、膨大な数の数値の集合になるので、図やグラフにより可視化するのが通例である。
【０００５】
数値シュミレーションで計算対象の時間変化を算出する場合、離散化した各時刻での値を次々に算出していく。そしてすべての時刻の計算が終わった後で、各時刻の計算結果を図示させる。あるいは、まず、最初の時刻の結果がでるとすぐにその結果を図示し、その後、各時刻での値が算出できるたびにその図を更新していく。後者の形で計算結果を図示する場合、最終時刻までの計算がなるべく早く終わるように、図示に要する時間をできるだけ少なくすることが望ましい。また、計算結果を横軸を時間にとった折れ線グラフにする場合、グラフの長さは表示画面の幅よりもはるかに長くなることが多い。この場合、常に最新時刻の結果を表示画面上に表示するには、グラフを更新する際に自動的にスクロールも行わせる必要がある。
【０００６】
数値シュミレーションでは、計算機能力の向上により、３次元計算も増えてきている。温度計算を例にとると、３次元計算により物体内部の温度も算出されるが、物体内部を含むすべての点の温度を同時に図示することは、ほとんど行われていない。通常は、まず計算対象の３次元物体を表示し、ユーザーに断面を見たい位置を指示させて、そこでの断面図を１個作り、その断面図上にその断面の温度分布を表示させるのが普通である。
【０００７】
【発明が解決しようとする課題】
前記の表示を改良して、同時にすべての断面の温度分布図を並べて表示できるようにすると、便利であるが、このような場合、表示対象は、表示画面よりもはるかに広い面積を占めるのが一般的である。
ところで、表示画面よりも広い面積の図を高速に表示するためには、表示画面に表示内容を更新すべき領域が発生したときに、表示対象のうちのどの部分がその要更新画面領域に表示されるべき部分であるかを迅速に判別することが重要になる。しかし、従来の技術による表示方法においては、表示対象の表示更新範囲内にあるかどうかを判別して出力すべき図形を選び出すのに、たとえばｉｆコマンド等の条件判断命令を使用する必要があったため、表示がなされるまでのリードタイムの短縮が困難であるという問題があった。
【０００８】
本発明は、前記のような従来技術における問題点を解決するためなされたもので、表示対象を矩形の図形単位領域に分割し、表示対象の表示更新範囲内にある図形単位領域を簡単な計算式により選出し、その選出した図形単位領域のみを表示させることにより、表示の高速化を可能にする表示制御方法を提供することを目的とする。
【０００９】
【課題を解決するための手段】
前記課題を解決するため本発明の請求項１に係る表示制御方法は、画像情報と文字情報の少なくとも一方から構成される表示対象を図形として画面表示する制御方法であって、前記表示対象を縦方向および横方向に周期的に並んだ等しい大きさの番号付けされた矩形領域に分割し、表示画面内の表示を更新する必要のある領域を更新する際に、その要更新画面領域の位置と大きさと、表示対象の位置と、表示対象を分割した前記矩形領域の大きさとから算出される値を、それら矩形領域の並びの周期で割って得られる値に基づいて、作図表示すべき矩形領域の番号の上限値と下限値を算出し、それらの範囲内の矩形領域のみを作図表示することを特徴とする。
【００１０】
本発明の請求項２に係る表示制御方法は、画像情報と文字情報の少なくとも一方から構成される表示対象を図形として画面表示する制御方法であって、
前記表示対象を、横方向に周期ΔｘでＭ個、縦方向に周期ΔｙでＮ個並ぶ、横方向にｉs から始まる番号ｉと、縦方向にｊs から始まる番号ｊを持ち、幅がＵx で高さがＵy の矩形領域に分割し、
かつ、前記表示対象の、表示画面内に現在表示されている範囲の左上角点を原点として表示対象の左上角点の位置を（ｘ2 、ｙ2 ）、表示画面内の更新を要する画面領域の左上角点の位置を（ｘ0 、ｙ0 ）、右下角点の位置を（ｘ1 、ｙ1 ）とし、前記更新を要する画面領域を更新する際にあって、
ｘ0 −Ｕx −ｘ2 ≧０のとき、（ｘ0 −Ｕx −ｘ2 ）／Δx の演算値の小数点以下切り捨て値をＺ２１として、ｉｌ＝Ｚ２１＋１＋ｉs
ｘ0 −Ｕx −ｘ2 ＜０のとき、ｉｌ＝ｉs
ｘ1 −ｘ2 ＞０のとき、（ｘ1 −ｘ2 −１）／Δx の演算値の小数点以下切り捨て値をＺ２２として、ｉ２を、（Ｚ２２＋１＋ｉs ）と（Ｍ＋ｉs ）のうち小さい方の値とし、
ｘ1 −ｘ2 ≦０のとき、ｉ２＝ｉs
ｙ0 −Ｕy −ｙ2 ≧０のとき、（ｙ0 −Ｕy −ｙ2 ）／Δy の演算値の小数点以下切り捨て値をＺ２３として、ｊｌ＝Ｚ２３＋１＋ｊs
ｙ0 −Ｕy −ｙ2 ＜０のとき、ｊｌ＝ｊs
ｙ1 −ｙ2 ＞０のとき、（ｙ1 −ｙ2 −１）／Δy の演算値の小数点以下切り捨て値をＺ２４として、ｊ２を、（Ｚ２４＋１＋ｊs ）と（Ｎ＋ｊs ）のうち小さい方の値とし、
ｙ1 −ｙ2 ≦０のときは、ｊ２＝ｊs
として、前記横方向にｉs から始まる番号ｉを持ち、縦方向にｊs から始まる番号ｊを持つ矩形領域のうち、ｉｌ≦ｉ＜ｉ２、ｊｌ≦ｊ＜ｊ２である矩形領域のみを作図表示することを特徴とする。
【００１１】
本発明の請求項３に係る表示制御方法は、画像情報と文字情報の少なくとも一方から構成される表示対象を図形として画面表示する制御方法であって、
表示対象を、横方向に周期ΔｘでＭ個、縦方向に周期ΔｙでＮ個並ぶ、横方向にｉs から始まる番号ｉと、縦方向にｊs から始まる番号ｊを持ち、幅がＵx で高さがＵy の分割領域に分割し、
かつ、表示対象の、表示画面内に現在表示されている範囲の左上角点を原点として表示対象の左上角点の位置を（ｘ2 、ｙ2 ）、表示画面内の更新を要する画面領域の左上角点の位置を（ｘ0 、ｙ0 ）、右下角点の位置を（ｘ1 、ｙ1 ）とし、前記更新を要する画面領域を更新する際にあって、
（ｘ0 −Ｕx −ｘ2 ）／Δx の演算値の小数点以下切り捨て値をＺ３１として
ｉｌを、ｉs と（Ｚ３１＋ｉs ）のうち大きい方の値とし、
（ｘ1−ｘ2 ）／Δx の演算値の小数点以下切り捨て値をＺ３２として
ｉ２を、（Ｚ３２＋１＋ｉs ）と（Ｍ＋ｉs ）のうち小さい方の値とし、
（ｙ0 −Ｕy −ｙ2 ）／Δy の演算値の小数点以下切り捨て値をＺ３３として
ｊｌを、ｊs と（Ｚ３３＋ｊs ）のうちの大きい方の値とし、
（ｙ1 −ｙ2 ）／Δy の演算値の小数点以下切り捨て値をＺ３４として
ｊ２を、（Ｚ３４＋１＋ｊs ）と（Ｎ＋ｊs ）のうち小さい方の値とし、
前記矩形領域のうち、ｉｌ≦ｉ＜ｉ２、ｊｌ≦ｊ＜ｊ２である矩形領域のみを作図表示することを特徴とする。
【００１２】
本発明の請求項４に係る表示制御方法は、表示対象を２種類以上の矩形領域に分割し、それら矩形領域を、種類毎に縦方向および横方向に周期的に等しい大きさで並び番号付けし、
表示対象の現表示範囲の左上角点を原点としたときの表示対象の左上角点の位置を（ｘ2 ，ｙ2 ）、表示画面内の要更新画面領域の左上角点の位置を（ｘ0 ，ｙ0 ）、右下角点の位置を（ｘ1 ，ｙ1 ）とし、
第ｎ種類の矩形領域の幅をＵxn、高さをＵyn、横方向の並びの周期をΔｘn 、横方向の並びの数をＭn 、縦方向の並びの周期をΔｙn 、縦方向の並びの数をＮn として、第ｎ種類の矩形領域に横方向にｉsnから始まる番号ｉ、縦方向にｊsnから始まる番号ｊを付け、作図表示すべき第ｎ種類の矩形領域の番号ｉの上限値ｉ２n と下限値ｉｌn および番号ｊの上限値ｊ２n と下限値ｊｌn を、
ｘ0 −Ｕxn−ｘ2 ≧０のとき、（ｘ0 −Ｕxn−ｘ2 ）／Δxnの演算値の小数点以下切り捨て値をＺ４１として、ｉｌn ＝Ｚ４１＋１＋ｉsn
ｘ0 −Ｕx n −ｘ2 ＜０のとき、ｉｌn ＝ｉs n
ｘ1 −ｘ2 ＞０のとき、（ｘ1 −ｘ2 −１）／Δxnの演算値の小数点以下切り捨て値をＺ４２として、ｉ２n を（ｚ４２＋１＋ｉsn）と（Ｍn ＋ｉsn）のうちの小さい方の値とし、
ｘ1 −ｘ2 ≦０のとき、ｉ２n ＝ｉsn
ｙ0 −Ｕyn−ｙ2 ≧０のとき、（ｙ0 −Ｕyn−ｙ2 ）／Δynの演算値の小数点以下切り捨て値をＺ４３として、ｊｌn ＝Ｚ４３＋１＋ｊsn
ｙ0 −Ｕy −ｙ2 ＜０のとき、ｊｌn ＝ｊsn
ｙ1 −ｙ2 ＞０のとき、（ｙ1 −ｙ2 −１）／Δynの演算値の小数点以下切り捨て値をＺ４４として、ｊ２n を（Ｚ４４＋１＋ｊsn）と（Ｎn ＋ｊsn）のうち小さい方の値とし、
ｙ1 −ｙ2 ≦０のとき、ｊ２n ＝ｊsnとし、表示画面内の表示を更新する必要のある領域を更新する際に、前記種類毎の上限値と下限値の範囲内の矩形領域のみを作図表示することを特徴とする。
【００１３】
本発明の請求項５に係る表示制御方法は、請求項２記載の表示制御方法において（ｘ1 −ｘ2 −１）／Δx の演算値の小数点以下切り捨て値をＺ５１として、Ｚ５１＋１＝Ｍである場合に表示画面をスクロールすることを特徴とする。
【００１４】
本発明の請求項６に係る表示制御方法は、表示対象を第１段階の分割により縦方向および横方向に周期的に並んだ等しい大きさの番号付けされた矩形領域に分割し、この第１段階の分割により得られたこれら各矩形領域内の表示対象を第２段階の分割により縦方向および横方向に周期的に並んだ等しい大きさの番号付けされた矩形領域に分割し、このようにして第ｎ段階の分割により得られた各矩形領域内の表示対象を第ｎ＋１段階の分割により縦方向および横方向に周期的に並んだ等しい大きさの番号付けされた矩形領域に分割する表示対象の入れ子式の分割を行い、表示画面内の表示を更新する必要のある領域を更新する際に、その要更新領域の位置と大きさと、表示対象の位置と、各段階の分割でできた矩形領域の大きさとから算出される値を、それら各段階の分割でできた矩形領域の並びの周期で割って得られる値に基づいて、作図表示すべき各段階の分割でできた矩形領域の番号の上限値と下限値を算出し、すべての段階でそれらの上限値と下限値の範囲内にある最終段階の分割でできた矩形領域のみを作図表示することを特徴とする。
【００１５】
本発明の請求項７に係る表示制御方法は、表示対象を第１段階の分割により縦方向および横方向に周期的に並んだ等しい大きさの番号付けされた矩形領域に分割し、この第１段階の分割により得られたこれら各矩形領域内の表示対象を第２段階の分割により縦方向および横方向に周期的に並んだ等しい大きさの番号付けされた矩形領域に分割し、このようにして第ｎ−１段階の分割により得られた各矩形領域内の表示対象を、第ｎ段階の分割により、横方向に周期δxnでＫn 個、縦方向に周期δynでＴn 個並ぶ幅がｕxnで高さがｕynの等しい大きさの、横方向にｉsnから始まる番号ｋn を持ち、縦方向にｊsnから始まる番号ｔn を持つよう番号付けされた矩形領域に分割し、表示対象の現表示範囲の左上角点を原点にとり、第ｎ−１段階の分割により得られた矩形領域内の表示対象の左上角点の座標値を（ｘ4n，ｙ4n）、表示画面内の要更新画面領域の左上角点の座標値を（ｘ0 ，ｙ0 ）、右下角点の座標値を（ｘ1 ，ｙ1 ）として、
ｘ0 −ｕxn−ｘ4n≧０のとき、（ｘ0 −ｕxn−ｘ4n）／δxnの演算値の小数点以下切り捨て値をＺ７１として、ｋｌn ＝Ｚ７１＋１＋ｉsn
ｘ0 −ｕxn−ｘ4n＜０のとき、ｋｌn ＝ｉsn
ｘ1 −ｘ4n＞０のとき、（ｘ1 −ｘ4n−１）／δxnの演算値の小数点以下切り捨て値をＺ７２として、ｋ２n を（ｚ７２＋１＋ｉsn）と（Ｋn ＋ｉsn）のうちの小さい値とし、
ｘ1 −ｘ4n≦０のとき、ｋ２n ＝ｉsn
ｙ0 −ｕyn−ｙ4n≧０のとき、（ｙ0 −ｕyn−ｙ4n）／δynの演算値の小数点以下切り捨て値をＺ７３として、ｔｌn ＝Ｚ７３＋１＋ｊsn
ｙ0 −ｕyn−ｙ4n＜０のとき、ｔｌn ＝ｊsn
ｙ1 −ｙ4n＞０のとき、（ｙ1 −ｙ4n−１）／δynの演算値の小数点以下切り捨て値をＺ７４として、ｔ２n を（Ｚ７４＋１＋ｊsn）と（Ｔn ＋ｊsn）のうちの小さい値とし、
ｙ1 −ｙ4n≦０のとき、ｔ２n ＝ｊsn
とし、表示画面内の要更新画面領域を更新する際に、各段階でｋｌn ≦ｋn ＜ｋ２n 、ｔｌn ≦ｔn ＜ｔ２n である、最終段階の分割によりできた矩形領域のみを作図表示することを特徴とする。
【００１６】
本発明の請求項８に係る表示制御方法は、表示対象を第１段階の分割により縦方向および横方向に周期的に並んだ等しい大きさの番号付けされた矩形領域に分割し、この第１段階の分割により得られたこれら角矩形領域内の表示対象を第２段階の分割により縦方向および横方向に周期的に並んだ等しい大きさの番号付けされた矩形領域に分割し、このようにして第ｎ−１段階の分割により得られた各矩形領域内の表示対象を、第ｎ段階の分割により、横方向に周期δxnでＫn 個、縦方向に周期δynでＴn 個並ぶ幅がｕxnで高さがｕynの等しい大きさの、横方向に０から始まる番号ｋn を持ち縦方向に０から始まる番号をｔn を持つよう番号付けされた矩形領域に分割し、第ｎ−１段階の分割により得られた矩形領域内の表示対象の左上角点の座標値を（ｘ4n，ｙ4n）、表示画面内の要更新画面領域の左上角点の座標値を（ｘ0 ，ｙ0 ）、右下角点の座標値を（ｘ1 ，ｙ1 ）と置き、
（ｘ0 −ｕxn−ｘ4 ）／δxnの演算値の小数点以下切り捨て値をＺ８１として
ｋｌn をｉsnと（Ｚ８１＋ｉsn）のうち大きい方の値、
（ｘ1 −ｘ4n）／δxnの演算値の小数点以下切り捨て値をＺ８２として
ｋ２n を（Ｚ８２＋１＋ｉsn）と（Ｋn ＋ｉsn）のうち小さい方の値、
（ｙ0 −ｕyn−ｙ4 ）／δynの演算値の小数点以下切り捨て値をＺ８３として
ｔｌn をｊsnと（Ｚ８３＋ｊsn）のうちの大きい方の値、
（ｙ1 −ｙ4n）／δynの演算値の小数点以下切り捨て値をＺ８４として
ｔ２n を（Ｚ８４＋１＋ｊsn）と（Ｔn ＋ｊsn）のうちの小さい方の値
とし、表示画面内の要更新画面領域を更新する際に、各段でｋｌn ≦ｋn ＜ｋ２n 、ｔｌn ≦ｔn ＜ｔ２n である、最終段階の分割によりできた矩形領域のみを作図表示することを特徴とする。
【００１７】
【発明の実施の形態】
以下、この発明の実施の形態を説明する。
図１は、本発明に係る表示制御方法の第一の実施の形態の説明図である。
図１のように、本実施形態では複数個の棒グラフを縦に並べてできた棒グラフ群を表示対象とする。なお図１には、表示画面Ｄも示してある。
まず、１つの図形単位領域ＥＬが１つの棒とその項目名とを含むように表示対象ＯＤを複数個の図形単位領域ＥＬに分割する。これらの各図形単位領域ＥＬは、それぞれ、１個の長方形と１本の横線と１文字の項目名とからなっている。
これらの図形単位領域ＥＬすべての集合体を、各図形単位領域ＥＬ内の空白部分も含めて、以降、表示対象ＯＤと記述される。
【００１８】
図１に示してあるように図形単位領域ＥＬの横方向の幅をＵｘ、縦方向の幅をＵｙ、図形単位領域ＥＬの横方向の周期をΔｘ、縦方向の周期をΔｙ、表示画面Ｄの横方向の幅をＣｘ、縦方向の幅をＣｙとする。ここでＵｘ、Ｕｙ、Δｘ、Δｙ、Ｃｘ、Ｃｙは、整数である。
スクロール幅は、次のように、図形単位領域ＥＬの周期Δｘ、Δｙをもとに決めるのが望ましい。ここで言うスクロール幅とは、１回のスクロール命令で表示対象ＯＤが表示画面Ｄ上を移動する距離である。
【００１９】
横方向のスクロール幅をΔＳｘ、縦方向のスクロール幅をΔＳｙと記し、
ΔＳｘ＝αΔｘ    （１）
とする。ここで、αは正数であり、Ｃｘ≦Ｕｘのときでも隠れている部分を見ることができるように、
α≦Ｃｘ／Δｘ    （２）
とする。
また、ΔＳｙ＝βΔｙ    （３）
とする。ここで、βは正数であり、Ｃｙ≦Ｕｙのときでも隠れている部分を見ることができるように、
β≦Ｃｙ／Δｙ    （４）
とする。
【００２０】
しかしながら、以上のようにしてスクロール幅を決めることにすると、表示画面Ｄの大きさが小さくなるたびにスクロール幅が上式を満たしているかどうか検証する必要があり、そのための余計な処理時間がかかる。表示画面Ｄが小さくなったために隠れている部分がスクロールしても見えなくなった場合は、表示画面Ｄを広げれば見えるようになるのであるから、スクロール幅は、表示画面Ｄの大きさに依らない値に固定しておいてもよい。
スクロールする範囲は、以下に述べるように、ＳM とＳN とする。
【００２１】
まず、無限大の大きさの仮想画面上に表示対象があるものと考える。次に、図２に示すように、この仮想画面上に表示対象の左上角点とを左上角点を一致させて表示画面を置く。そして、表示対象の左上角点を起点として、仮想画面をスクロール幅で区切る。図２の（０，０）の点がこの起点である。また、図２には、表示対象の大きさを、縦Ｌｙ、横Ｌｘとして示してある。
表示対象の現表示範囲は、仮想画面上をスクロール幅を単位として移動するから、現表示範囲ＣＡの左上角の座標位置は
Ｘ0 ＝ｍΔＳｘ                                              （５）
Ｙ0 ＝ｎΔＳｙ                                              （６）
となる。ただし、ｍとｎは０または正の整数である。
【００２２】
したがって、スクロールできる限度をｉ方向に最大ＳM 回、ｊ方向に最大ＳN 回とすると、上記表示画面を通して見ることのできる領域は、
よこＳM ΔＳｘ＋Ｃｘ                                        （７）
たてＳN ΔＳｙ＋Ｃｙ                                        （８）
である。
表示対象の大きさを横Ｌｘ、縦Ｌｙと書くと、表示対象をこの見ることのできる領域内に収めるためには、
ＳM ＝（Ｌｘ−Ｃｘ）／Ｓｘ［切捨」＋１                      （９）
ＳN ＝（Ｌｙ−Ｃｙ）／Ｓｙ［切捨」＋１                      （10）
であるので、スクロールする範囲を、０≦ｍ≦ＳM と０≦ｎ≦ＳN に設定する。ここで、［切捨」は、その左側の式で表されている量の小数点以下を切り捨てることを意味する（以下同様）。
【００２３】
なお、ここでは仮想画面をスクロール幅で句切る際の起点を表示対象の左上角点にとったが、起点を表示対象の左上角点に一致させなくても構わない。その場合は、上式中のＬｘとＬｙは、起点と表示対象の右下角点との横方向及び縦方向の距離に変える。
【００２４】
次に、図形を以下に述べる方法で書き出す。図形は仮想画面の座標系（ＸＹ座標系）で記述し、次のように、現表示範囲の左上角を原点とする座標系（ｘｙ座標系）に変換して、作図コマンドを発行する。ここで、Ｘ、Ｙ、ｘ、ｙは、整数である。
ｘ＝Ｘ−Ｘ0 ＝Ｘ−ｍΔＳx （０≦ｍ≦ＳM ）              （11）
ｙ＝Ｙ−Ｙ0 ＝Ｙ−ｎΔＳy （０≦ｎ≦ＳN ）              （12）
【００２５】
図４に示したように、図形単位領域ＥＬの左上角点の座標値を（ｘ，ｙ）と書くことにする。また、図形単位領域ＥＬの集合体である表示対象ＯＤの左上角点の座標値が（ｘ2 ，ｙ2 ）であるとする。
さらに、表示更新範囲ＲＡ２の左上角点の座標値が（ｘ0 ，ｙ0 ）、右下角点の座標値が（ｘ1 ，ｙ1 ）であるとする。
ここで、ｘ0 、ｙ0 、ｘ1 、ｙ1 、ｘ2 、ｙ2 は、整数である。
表示対象ＯＤは仮想画面上に固定されているため、現表示範囲ＣＡ２をスクロールすると、ｘ、ｙ、ｘ2 、およびｙ2 は、上記（１１）、（１２）式にしたがって変化する。
【００２６】
図４から明らかなように、表示更新範囲ＲＡ２と領域の一部あるいは全部を共有している図形単位領域ＥＬは、左上角点の座標値（ｘ、ｙ）がｘ0 −Ｕx ＜ｘ＜ｘ1 、ｙ0 −Ｕy ＜ｙ＜ｙ1 を満たす図形単位領域である。したがって、左上角点の座標値（ｘ、ｙ）がｘ0 −Ｕx ＜ｘ＜ｘ1 、ｙ0 −Ｕy ＜ｙ＜ｙ1 であるすべての図形単位領域内の図形を書き出せば、要更新画面領域ＮＲＡ全体を更新できることになる。
【００２７】
ｘ＝ｉΔx ＋ｘ2   （ｉ＝０，１，２，…，ｉＭａｘ）              （13）
ｘ＝ｊΔy ＋ｙ2   （ｊ＝０，１，２，…，ｊＭａｘ）              （14）
であるから
ｘ0 −Ｕx ＜ｉΔx ＋ｘ2 ＜ｘ1                                   （15）
ｙ0 −Ｕy ＜ｊΔy ＋ｙ2 ＜ｙ1                                   （16）
を満たす整数０≦ｉ≦ｉＭａｘ、０≦ｊ≦ｊＭａｘについてのみ、図形単位領域ＥＬ内の図形を書き出せばよい。ここで、ｉＭａｘ＋１は、図形単位領域ＥＬの横方向の個数（以下Ｍと記載）であり、ｊＭａｘ＋１は、図形単位領域ＥＬの横方向の個数（以下Ｎと記載）である。
【００２８】
これを満たすｉとｊの範囲をｉｌ≦ｉ＜ｉ２、ｊｌ≦ｊ＜ｊ２とすると、
ｘ0 −Ｕx −ｘ2 ≧０のときは、
ｉｌ＝（ｘ0 −Ｕx −ｘ2 ）／Δx ［切捨］＋１              （17）
である。
また、ｘ0 −Ｕx −ｘ2 ＜０のときは、
ｉｌ＝ｍａｘ（０，（ｘ0 −Ｕx −ｘ2 ＋１）／Δx ［切捨］）（18）
であるが、この値は０に等しい。なお、ここで、ｍａｘ（Ａ，Ｂ）は、ＡとＢのうちの大きい方の値をとることを意味する。（以後同様）。
【００２９】
また、ｘ1 −ｘ2 ＞のときは、
ｉ２＝ｍｉｎ（（ｘ1 −ｘ2 −１）／Δx ［切捨］＋１，Ｍ）  （19）
である。なお、ここで、ｍｉｎ（Ａ，Ｂ）は、ＡとＢのうちの小さい方の値をとることを意味する。（以後同様）。
また、ｘ1 −ｘ2 ≦０のときは、
ｉ２＝（ｘ1 −ｘ2 ）Δx ［切捨］                          （20）
であるが、この値は負または０であり、ｉｌ≧０なので、ｘ0 −Ｕx ＜ｉΔx ＋ｘ2 ＜ｘ1 を満たすｉは存在しない。したがって、この場合は、ｉ２＝０とおいても結果は同じである。
【００３０】
また、ｙ0 −Ｕy −ｙ2 ≧０のときは、
ｊｌ＝（ｙ0 −Ｕy −ｙ2 ）／Δy ［切捨］＋１            （21）
である。
また、ｙ0 −Ｕy −ｙ2 ＜０のときは、
Ｊｌ＝ｍａｘ（０，（ｙ0 −Ｕy −ｙ2 ＋１）／Δy ［切捨］）（22）
であるが、この値は０に等しい。
【００３１】
また、ｙ1 −ｙ2 ＞のときは、
ｊ２＝ｍｉｎ（（ｙ1 −ｙ2 −１）／Δy ［切捨］＋１，Ｎ）  （23）
である。
また、ｙ1 −ｙ2 ≦０のときは、
ｊ２＝（ｙ1 −ｙ2 ）／Δy ［切捨］                        （24）
であるが、この値は負または０であり、ｊｌ≧０なので、ｙ0 −Ｕy ＜ｊΔy ＋ｙ2 ＜ｙ1 を満たすｊは存在しない。したがって、この場合は、ｊ２＝０とおいても結果は同じである。
【００３２】
ｉＭａｘ＝０のとき、すなわち図形単位領域が１列しかない場合は、ｘ0 −Ｕx −ｘ2 ＜０かつｘ1 −ｘ2 ＞のときのみ、ｉｌ≦ｉ＜ｉ２となるｉが存在する。そのとき、ｉｌ＝０、ｉ２＝１、ｉ＝０である。したがって、図形単位領域が１列しかない場合は、ｘ0 −Ｕx −ｘ2 ＜０かつｘ1 −ｘ2 ＞０のときのみ図形単位領域を書き出し、同様にｊＭａｘ＝０のとき、すなわち図形単位領域が１行しかない場合は、ｙ0 −Ｕy −ｙ2 ＜０かつｙ1 −ｙ2 ＞０のときのみ図形単位領域を書き出すことにすればよい。
【００３３】
なお、（１３）、（１４）式では、ｉとｊを０からスタートして数えているが、０からでなく、ｉをｉs から、ｊをｊs からスタートして数える場合は、（１７）〜（２０）式は、右辺にｉs が足された式に変り、（２１）〜（２４）式は、右辺にｊs が足された式に変る。また、（１８）式は、ｉｌ＝ｉs に等しく、（２０）式はｉ２＝ｉs とおいてもよく、（２２）式は、ｊｌ＝ｊs に等しく、（２４）式はｊ２＝ｊs とおいてもよい。
【００３４】
図３に、前記の表示画面更新手順をフローチャートにして示す。同図に示されるように、ステップＳ１で表示対象を選定し、スクロール幅ΔＳｘ、ΔＳｙを設定すると（ステップＳ２）、ついで図形単位領域ＥＬの横縦寸法Ｕｘ、Ｕｙと周期Δｘ、Δｙを設定し（ステップＳ３）、さらに表示対象の大きさＬｘ、Ｌｙを設定する（ステップＳ４）。
ついで表示画面の大きさを取得し（ステップＳ５）、スクロール範囲ＳＭ、ＳＮを設定する（ステップＳ６）。ここで画面更新の必要性がチェックされ（ステップＳ７）、画面更新の必要があれば、要更新画面領域の位置と大きさを取得し（ステップＳ８）、書き出すべき図形単位領域ＥＬの番号の範囲を算出し（ステップＳ９）、算出した範囲の図形単位領域ＥＬ内の図形を描画する（ステップＳ１０）。
【００３５】
つぎに、本発明に係る表示制御方法の第二の実施の形態を説明する。本実施形態は、横方向に番号ｉ、縦方向に番号ｊで番号付けた図形単位領域（ｉ，ｊ）に関して、要更新画面領域を更新する際に描画すべき図形単位領域の番号ｉ、ｊの範囲を決めている式が第一の実施形態と異なるほかは、第一の実施形態と同じである。
本実施形態では、描画すべき図形単位領域のｉとｊの範囲をｉｌ≦ｉ＜ｉ２、ｊｌ≦ｊ＜ｊ２とし、
ｉｌ＝ｍａｘ（０，（ｘ0 −Ｕx −ｘ2 ）／Δx ［切捨］）          （25）
ｉ２＝ｍｉｎ（（ｘ1 −ｘ2 ）／Δx ［切捨］＋１，Ｍ）            （26）
ｊｌ＝ｍａｘ（０，（ｙ0 −Ｕy −ｙ2 ）／Δy ［切捨］）          （27）
ｊ２＝ｍｉｎ（（ｙ1 −ｙ2 ）／Δy ［切捨］＋１，Ｎ）            （28）
とする。
【００３６】
なお、（２５）〜（２８）式では、ｉとｊを０からスタートして数えているが、０からでなく、ｉをｉs から、ｊをｊs からスタートして数える場合は、（２５）、（２６）式は、右辺にｉs が足された式に変り、（２７）、（２８）式は、右辺にｊs が足された式に変る。
【００３７】
（（ｘ0 −Ｕx −ｘ2 ）／Δx ［切捨］）≦（（ｘ0 −Ｕx −ｘ2 ）／Δx ［切捨］＋１）でかつ、（（ｘ0 −Ｕx −ｘ2 ）／Δx ［切捨］）≦（（ｘ0 −Ｕx −ｘ2 ＋１／Δx ［切捨］）であるから、本実施形態のようにｉｌを決めると、第一実施形態よりもわずかにｉの範囲が広くなり、書かなくてもよいところまで書く場合が生じるものの、その差はわずかであり、よって（ｘ0 −Ｕx −ｘ2 ）の正負による場合分けの必要が無いという長所がある。
【００３８】
また、（（ｘ1 −ｘ2 ）／Δx ［切捨］＋１）≧（（ｘ1 −ｘ2 −１）／Δx ［切捨］＋１）でかつ（（ｘ1 −ｘ2 ）／Δx ［切捨］＋１）≧（（ｘ1 −ｘ2 ）／Δx ［切捨］）であるから、本実施形態のようにｉ２を決めると、第一実施形態よりもわずかにｉの範囲が広くなり、書かなくてもよいところまで書く場合が生じるもののその差はわずかであり、（ｘ1 −ｘ2 ）の正負による場合分けの必要が無いという長所がある。
【００３９】
また、（（ｙ0 −Ｕy −ｙ2 ）／Δy ［切捨］）≦（（ｙ0 −Ｕy −ｙ2 ）／Δy ［切捨］＋１））でかつ（（ｙ0 −Ｕy −ｙ2 ）／Δy ［切捨］）≦（（ｙ0 −Ｕy −ｙ2 ＋１）／Δy ［切捨］）であるから、本実施形態のようにｊｌを決めと、第一実施形態よりもわずかにｊの範囲が広くなり、書かなくてもよいところまで書く場合が生じるものの、その差はわずかであり、（ｙ0 −Ｕy −ｙ2 ）の正負による場合分けの必要が無いという長所がある。
【００４０】
また、（（ｙ1 −ｙ2 ）／Δy ［切捨］＋１≧（（ｙ1 −ｙ2 −１）／Δy ［切捨］＋１）でかつ（（ｙ1 −ｙ2 ）／Δy ［切捨］＋１）≧（（ｙ1 −ｙ2 ）／Δy ［切捨］）であるから、本実施形態のようにｊ２を決めると、第一実施形態よりもわずかにｊの範囲が広くなり、書かなくてもよいところまで書く場合が生じるものの、その差はわずかであり、（ｙ1 −ｙ2 ）の正負による場合分けの必要が無いという長所がある。
【００４１】
書かせる図形単位領域が１列のみ、すなわちｉＭａｘ＝０ときは、Δx は任意の値でよいので、Δx ＝１とおいて、
ｉｌ＝ｍａｘ（０，ｘ0 −Ｕx −ｘ2 ）                      （29）
ｉ２＝ｍｉｎ（ｘ1 −ｘ2 ＋１，１）                        （30）
とすればよい。ｙ方向についても同様である。
【００４２】
前記第一実施形態の図形単位領域は、１個の長方形と１本の横線と１文字の項目名とからなっていた。この場合、１つの図形単位領域内の図形を描画するのに、１個の長方形の描画と、１本の横線の描画と、１文字の項目名の書き出しとの、計３回の描画が必要である。（ここでは、文字の書き出しも、描画と呼ぶことにする。）このうち、横線は、１行に並んでいる図形単位領域を貫いた１本の直線の一部であるから、図形単位領域ごとに描画しないで、１行分を１本の線として１回で描画する方が速い。このことは、この直線に関しては、この図形単位領域への分割が不適当であることを示している。
そこで以下に示す第三の実施の形態は、図形の種類毎に異なる図形単位領域を用いることにより、前記の場合よりもさらに表示を高速化するものである。
【００４３】
図５は、本発明に係る第三の実施の形態の説明図である。
同図において、ＥＬ１は前記第一の実施の形態でも示されたと同じ図形単位領域であり、これを第１の種類の図形単位領域と称する。同図に示されるように、この第１の種類の図形単位領域ＥＬ１に加えて、１個の図形単位領域が１つの棒グラフの基準線１本の全体を含むように、第２の種類の図形単位領域ＥＬ２が設けられる。このとき、第１の種類の図形単位領域ＥＬ１に属する図形と文字は、棒グラフの棒と項目名のみとし、横線は第２の種類の図形単位領域ＥＬ２に所属させ、第１の種類の図形単位領域ＥＬ１には所属させない。
【００４４】
図５では、第１の種類の図形単位領域ＥＬ１は、最左上の１個のみを点線で示してある。また第２の種類の図形単位領域ＥＬ２に関する量は、ダッシュ’を付けて表してある。
第２の種類の図形単位領域ＥＬ２の高さは、棒グラフの基準線を含んでいてかつ他の第２の種類の図形単位領域と重ならなければ、任意の大きさで良い。また、第２の種類の図形単位領域ＥＬ２の幅は、本実施形態では、１つの棒グラフの基準線１本の長さに等しく取ってあるが、基準線１本の長さの整数分の１の長さに等しくしてもよい。第１の種類の図形単位領域ＥＬ１と第２の種類の図形単位領域ＥＬ２に対して、第一実施形態の場合と同様にして、要更新画面領域を更新する際に描画すべき図形単位領域の番号ｉ’，ｊ’の範囲を決める。
【００４５】
第１の種類の図形単位領域ＥＬ１に関しては、その結果は第一実施形態の場合と同じである。第２の種類の図形単位領域ＥＬ２に関しても、第一実施形態の場合と同じ式になり、次のとおりである。
ｉ’とｊ’の範囲をｉｌ’≦ｉ’＜ｉ２’、ｊｌ’≦ｊ’＜ｊ２’として
ｘ0 −Ｕx ’−ｘ2 ≧０のときは、
ｉｌ’＝（ｘ0 −Ｕx ’−ｘ2 ）／Δx ’［切捨］＋１）        （31）
である。
また、ｘ0 −Ｕx ’−ｘ2 ＜０のときは、
ｉｌ’＝ｍａｘ（０，（ｘ0 −Ｕx ’−ｘ2 ＋１）／Δx ’［切捨］）（32）
であるが、この値は０に等しい。
【００４６】
また、ｘ1 −ｘ2 ＞０のときは、
ｉ２’＝ｍｉｎ（（ｘ1 −ｘ2 −１）／Δx ’［切捨］＋１，Ｍ）  （33）
である。
また、ｘ1 −ｘ2 ≦０のときは、
ｉ２’＝（ｘ1 −ｘ2 ）／Δx ’［切捨］                （34）
であるが、この値は負または０であり、ｉｌ’≧０なので、ｘ0 −Ｕx ＜ｉΔx ’＋ｘ2 ＜ｘ1 を満たすｉ’は存在しない。したがって、こ場合は、ｉ２’＝０とおいても結果は同じである。
【００４７】
また、ｙ0 −Ｕy ’−ｙ2 ≧０のときは、
ｊｌ’＝（ｙ0 −Ｕy ’−ｙ2 ）Δy ’［切捨］＋１            （35）
である。
また、ｙ0 −Ｕy ’−ｙ2 ＜０のときは、
ｊｌ’＝ｍａｘ（０，（ｙ0 −Ｕy ’−ｙ2 ＋１）Δy ’［切捨］）  （36）
であるが、この値は０に等しい。
【００４８】
また、ｙ1 −ｙ2 ＞０のときは、
ｊ２’＝ｍｉｎ（（ｙ1 −ｙ2 −１）／Δy ’［切捨］＋１，Ｎ）  （37）
である。
さらに、ｙ1 −ｙ2 ≦０のときは、
ｊ２’＝（ｙ1 −ｙ2 ）／Δy ’［切捨］                      （38）
であるが、この値は負または０であり、ｊｌ’≧０なので、ｙ0 −Ｕy ’＜ｊΔy ’＋ｙ2 ＜ｙ1 を満たすｊ’は存在しない。したがって、この場合は、ｊ２’＝０とおいても結果は同じである。
【００４９】
なお、（３１）〜（３８）式は、ｉ’とｊ’を０からスタートして数えた場合であるが、０からでなく、ｉ’をｉs ’から、ｊ’をｊs ’からスタートして数える場合は、（３１）〜（３４）式は、右辺にｉs ’が足された式に変り（３５）〜（３８）式は、右辺にｊs ’が足された式に変る。また、（３２）式は、ｉｌ’＝ｉs ’に等しく、（３４）式はｉ２’＝ｉs ’とおいてもよく、（３６）式は、ｊｌ’＝ｊs ’に等しく、（３８）式はｊ２’＝ｊs ’とおいてもよい。
【００５０】
本実施形態のようにｉＭａｘ’＝０のとき、すなわち図形単位領域が１列しかない場合は、ｘ0 −Ｕx ’−ｘ2 ＜０かつｘ1 −ｘ2 ＞０のときのみ、ｉｌ’≦ｉ’＜ｉ２’となるｉ’が存在する。そのとき、ｉｌ’＝０，ｉ２’＝１、ｉ’＝０である。したがって、図形単位領域が１列しかない場合は、ｘ0 −Ｕx ’−ｘ2 ＜０かつｘ1 −ｘ2 ＞０のときのみ図形単位領域を書き出せばよい。同様に、ｊＭａｘ’＝０のとき、すなわち図形単位領域が１行しかない場合は、ｙ0 −Ｕy ’−ｙ2 ＜０かつｙ1 −ｙ2 ＞０のときのみ図形単位領域を書き出すことにすればよい。
【００５１】
このようにして、要更新画面領域を更新する際に描画すべき図形単位領域の番号の範囲を決め、各種類の図形単位領域ごとにその図形単位領域に所属する図形および文字列を書く。なお、本実施形態のように表示対象を２種類以上の図形単位領域を互いに重なり合わせた形に分解した場合は、前述のスクロール幅を決める式（１）から（４）中のΔｘ、Δｙとして各種類の図形単位領域のΔｘ、Δｙの内の最短周期を使うと、どの周期についても、α≦Ｃｘ／Δｘ、β≦Ｃｙ／Δｙが満たされるので好都合である。
【００５２】
つぎに、本発明に係る第四の実施の形態を図６に基づいて説明する。本実施の形態では、表示対象を図６に示す折れ線グラフＧとする。ここのグラフＧは横軸を時間にとってあり、数値シュミレーションで計算対象の１つの変数の値を離散化した各時刻に対して次々に算出しながらその算出値をその値が算出されるに従って次々に追加表示していくものである。したがって、このグラフＧの長さは時間と共に長くなっていく。図形単位領域ＥＬ６の大きさは、横方向には１つの折れ線の幅であり、縦方向には、グラフＧで表示される変数の取り得る値をその範囲内に収めるという条件を満たす任意の長さである。この場合、表示対象の現表示範囲６０３がグラフＧの右端の図形単位領域を含んでいるときは、グラフＧを表示させているユーザーが最新時刻での値を見ることを望んでいるとみなして、表示画面６０１を自動的にスクロールさせて、表示対象の現表示範囲６０３が常にグラフＧの右端の図形単位領域すなわち最新時刻の計算結果を含んでいるように、表示画面６０１の右端側を要更新画面領域６０２と設定し、表示対象の現表示範囲６０３の位置を更新するとともに、表示対象の表示更新範囲６０４にある最新時刻での値を要更新画面領域６０２に表示する。
【００５３】
この場合は、図形単位領域が１行しかないので、図形単位領域はｉのみで番号付けられる。第一実施形態で述べたように、ｉの範囲をｉｌ≦ｉ＜ｉ２とするならば、
ｘ0 −Ｕx −ｘ2 ≧０のときは、
ｉｌ＝（ｘ0 −Ｕx −ｘ2 ）／Δx ［切捨］＋１              （39）
である。
また、ｘ0 −Ｕx −ｘ2 ＜０のときは、
ｉｌ＝０
であるが、グラフの左端近傍を表示させている場合以外は、ｘ0 −Ｕx −ｘ2 ＜０にはならない。
【００５４】
また、ｘ1 −ｘ2 ＞０のときは、
ｉ２＝ｍｉｎ（（ｘ1 −ｘ2 −１）／Δx ［切捨］＋１，Ｍ）  （40）
である。ここで、図形単位領域の数Ｍは、時間とともに増えていく。
また、ｘ1 −ｘ2 ≦０のときは、
ｉ２＝０
であるが、グラフの左端近傍を表示させている場合以外は、ｘ1 −ｘ2 ≦０にはならない。
【００５５】
なお、（３９）、（４０）、式では、ｉとｊを０からスタートして数えているが０からでなく、ｉをｉs からスタートして数える場合は、（３９）、（４０）式は、右辺にｉs が足された式に変わる。
また、第一実施形態で述べたように、図形単位領域が１行しかないので、ｙ0 −Ｕy −ｙ2 ＜０かつｙ1 −ｙ2 ＞０のときのみ図形単位領域を書きだせばよい。
【００５６】
（ｘ1 −ｘ2 −１）／Δx ［切捨］＋１≧Ｍ）                      （41）
である間は、最右端の図形単位領域の一部または全部が表示画面６０１に表示されている。表示画面６０１をスクロールさせると、（11) 式にしたがってｘ2 の値が減少し、それにより（41）式の左辺の値が大きくなる。従って、表示対象の現表示範囲６０３がグラフＧの右端の図形単位領域を含んでいる場合は、Ｍの値が大きくなってこの（41）式が満たされなくなった時点で、表示画面６０１を自動的にスクロールさせることにより、表示対象の現表示範囲６０３が常にグラフの右端の図形単位領域を含んでいるように保つことができる。
【００５７】
本実施形態では、前述のように、表示対象の現表示範囲６０３がグラフＧの右端の図形単位領域を含んでいるときは、表示画面６０１を自動的にスクロールさせて、表示対象の現表示範囲６０３が常にグラフＧの右端の図形単位領域すなわち最新時刻の計算結果を含んでいるように表示対象の現表示範囲６０３の位置を更新する。（41）で不等号が成り立っている間は、最右端の図形単位領域の全部が表示画面に表示されているので、、表示画面をスクロールさせる必要はない。したがって、
（ｘ1 −ｘ2 −１）／Δx ［切捨］＋１＝Ｍ                        （42）
になった時点でスクロールを行うものとする。
【００５８】
つぎに、本発明に係る第五の実施の形態を図７に基づいて説明する。本実施の形態では、表示対象を、第一の実施の形態の場合と同様に分割する。この分割によりできた図形単位領域を第１のレベルの図形単位領域と呼ぶことにする。さらに、左上角点の座標値が、
ｘ（ｉ）＝ｉΔｘ＋ｘ2 （ｉ＝０，１，２，…，ｉＭａｘ）          （43）
ｙ（ｊ）＝ｊΔｙ＋ｙ2 （ｊ＝０，１，２，…，ｊＭａｘ）          （44）
である第１のレベルの図形単位領域が、左上角点の座表値が、
ｘ＝ｋδx ＋ｘ3 ＋ｘ（ｉ）  （ｋ＝０，１，２，…，ｋＭａｘ）    （45）
ｙ＝ｔδy ＋ｙ3 ＋ｙ（ｊ）  （ｔ＝０，１，２，…，ｔＭａｘ）    （46）
である大きさｕx 、ｕy の第２のレベルの図形単位領域で構成されるように、各第１のレベルの図形単位領域を分割する。
【００５９】
例として、１行４個ずつのセルを間隔を置いて２行並べて出来ている８個のセルＣｅｌ（ｍ、ｎ）ただしｍ＝１〜Ｈ、ｎ＝１〜８）からなるブロックＢｌ１〜Ｂｌ４を、平面上に複数個規則正しく並べたものを表示対象とする場合の分割の様子を、図７に示す。差分法を使って計算対象をセルに分割して数値計算した結果を、セル毎に値の大きさを色分けして表示する場合などに、このような表示対象が発生する。この例の場合は、８個のセルからなるブロックを１個ずつ含むように第１のレベルの図形単位領域に分割し、さらに各第１のレベルの図形単位領域を、セルを１個ずつ含むように第２のレベルの図形単位領域に分割する。
【００６０】
次に、前記第一実施形態におけると同様に、要更新画面領域を更新する際に作図表示する第１のレベルの図形単位領域の範囲ｉｌ、ｉ２、ｊｌ、ｊ２を求める。
ｉｌ≦ｉ＜ｉ２、ｊｌ≦ｊ＜ｊ２であるｉ、ｊで指定される第１のレベルの図形単位領域に含まれる第２のレベルの図形単位領域のうち、表示対象の表示更新範囲７０１と領域の一部あるいは全部を共有している第２のレベルの図形単位領域は、左上角点の座標値（ｘ，ｙ）がｘ0 −ｕx ＜ｘ＜ｘ1 、ｙ0 −ｕy ＜ｙ＜ｙ1 を満たす図形単位領域である。したがって、ｉｌ≦ｉ＜ｉ２、ｊｌ≦ｊ＜ｊ２であるｉ、ｊで指定される第１のレベルの図形単位領域すべてについて、左上角点の座標値（ｘ，ｙ）がｘ0 −ｕx ＜ｘ＜ｘ1 、ｙ0 −ｕy ＜ｙ＜ｙ1 であるすべての第２のレベルの図形単位領域内の図形を書き出せば、要更新画面領域全体を更新できる。
【００６１】
第２のレベルの図形単位領域をｋ、ｔで判別すると、ｘ0 −ｕx ＜ｋδx ＋ｘ3＋ｘ（ｉ）＜ｘ1 、ｙ0 −ｕy ＜ｔδy ＋ｙ3 ＋ｙ（ｊ）＜ｙ1 を満たす整数０≦ｋ≦Ｋ−１、０≦ｔ≦Ｔ−１についてのみ、第２のレベルの図形単位領域内の図形を書けばよい。ここで、Ｋは、第１のレベルの図形単位領域に含まれる第２のレベルの図形単位領域の横方向の個数であり、Ｔは、第１のレベルの図形単位領域に含まれる第２のレベルの図形単位領域の縦方向の個数である。
【００６２】
これを満たすｋとｔの範囲をｋｌ≦ｋ＜ｋ２、ｔｌ≦ｔ＜ｔ２とし、
ｘ4 ＝  ｘ3 ＋ｘ（ｉ）                                          （47）
ｙ4 ＝  ｙ3 ＋ｙ（ｊ）                                          （48）
と置くならば、
ｘ0 −ｕx −ｘ4 ≧０のときは、（４９）式となる。
ｋｌ＝（ｘ0 −ｕx −ｘ4 ）／δx ［切捨］＋１              （49）
【００６３】
また、ｘ0 −ｕx −ｘ4 ＜０のときは、
ｋｌ＝ｍａｘ（０，（ｘ0 −ｕx −ｘ4 ＋１）／δx ［切捨］）（50）
であるが、この値は０に等しい。
また、ｘ1 −ｘ4 ＞０のときは、（5１）式となる。
ｋ２＝ｍｉｎ（（ｘ1 −ｘ4 −１）／δx ［切捨］＋１，Ｋ）  （51）
また、ｘ1 −ｘ4 ≦０のときは、
ｋ２＝（ｘ1 −ｘ4 ）／δx ［切捨］                        （52）
であるが、ｋｌ≧０なので、ｋ２＝０でも結果は同じである。
【００６４】
また、ｙ0 −ｕy −ｙ4 ≧０のときは、（53）式となる。
ｔｌ＝（ｙ0 −ｕy −ｙ4 ）／δy ［切捨］＋１              （53）
また、ｙ0 −ｕy −ｙ4 ＜０のときは、
ｔｌ＝ｍａｘ（０と（ｙ0 −ｕy −ｙ4 ＋１）／δy ［切捨］））（54）
であるが、この値は０に等しい。
【００６５】
また、ｙ1 −ｙ4 ＞０のときは、（55）式となる。
ｔ２＝ｍｉｎ（ｙ1 −ｙ4 −１）／δy ［切捨］＋１とＴ）    （55）
また、ｙ1 −ｙ4 ≦０のときは、
ｔ２＝（ｙ1 −ｙ4 ）／δy ［切捨］                          （56）
であるが、ｔｌ≧０なので、ｔ２＝０でも結果は同じである。
【００６６】
あるいは、第二実施形態におけると同様に、以下の値としてもよい。
ｋｌは、０と（ｘ0 −ｕx −ｘ4 ）／δx ［切捨」のうち大きい方の値、
ｋ２は、（（ｘ1 −ｘ4 ）δx ［切捨］＋１）とＫのうち小さい方の値、
ｔｌは、０と（ｙ0 −ｕy −ｙ4 ）／δy ［切捨］のうち大きい方の値、
ｔ２は、（（ｙ1 −ｙ4 ）／δy ［切捨］＋１）とＴのうち小さい方の値
【００６７】
本実施形態の場合、ｉｌ≦ｉ＜ｉ２、ｊｌ≦ｊ＜ｊ２であるｉ、ｊで指定される第１のレベルの図形単位領域すべてについて、ｋｌ≦ｋ＜ｋ２、ｔｌ≦ｔ＜ｔ２で指定される第２のレベルの図形単位領域すべてを書き出す。なお、（４５）、（４６）式では、ｋおよびｔを０からスタートして数えているが、０からでなく、ｋをｋs から、ｔをｔs からスタートして数える場合は、以上のｋｌとｋ２はｋs が加算された値に、また、ｔｌとｔ２は、ｔs が加算された値になる。
【００６８】
本発明において、図形単位領域の選び方は任意である。図形単位領域単位で図を書かせるので、書き易いように選べば良い。また、作図命令の総数が少なくなるように選ぶのがよい。まず作図しやすい最小の領域を選び、次に、作図命令が減るようにそれらの領域を合体させて図形単位領域にするのがよい。
【００６９】
また前記のような断面温度分布図を多数並べて表示する場合、表示対象は、互いに重ならない多数の断面湿度分布図からなっている。このような場合は、１つの図形単位領域に１つの断面温度分布図が含まれるように、表示対象を図形単位領域に分割するのが良い。
【００７０】
なお、表示対象を１種類の図形単位領域に分割するのでなく、２種類以上の図形単位領域を互いに重なりあわせた形に分割してもよい。
複数の図形単位領域をまたがらない場合は、図形単位領域毎に分割して作図するのが容易である。
【００７１】
【発明の効果】
本発明の請求項１に係る表示制御方法によれば、表示対象を複数の図形単位領域に細分化して番号付け、表示を更新する際に表示すべき図形単位領域の番号の範囲を算出するので、表示に必要な最小限の図形単位領域群を高速に選択でき、表示速度を向上させることができる。特に周期的に配置された図形を描画するときに、大きい効果を得ることができる。
本発明の請求項２に係る表示制御方法によっても、表示に必要な最小限の図形単位領域群を高速に選択でき、表示速度を向上させることができる。
【００７２】
本発明の請求項３に係る表示制御方法によれば、請求項２記載の場合に比べて条件判断処理が少ないので、表示対象によっては請求項２の方法よりも高速に表示することが可能になる。
【００７３】
本発明の請求項４に係る表示制御方法によれば、表示対象が異なる周期で並んでいる図形の組み合わせからなっている場合、請求項２記載のの場合に比べて描画命令の数を減らせるので、より高速に表示できる。
【００７４】
本発明の請求項５に係る表示制御方法によれば、時間とともに最新時刻のデータが追加されて長くなっていくグラフの表示において、画面に常に最新部分が高速に表示され続けるように維持することができる。
【００７５】
本発明の請求項６に係る表示制御方法によれば、周期的に並んでいる図形の各々がさらに周期的に並んでいる図形から構成されている場合に、表示対象の再帰的な領域分割により得られた最も細分化された分割領域のうちの必要最小限の分割領域のみを、表示を更新する際に表示すべき範囲として高速に選択できるので、表示速度が上がる。
本発明の請求項７に係る表示制御方法によっても、表示を更新する際に表示すべき範囲を高速に選択できるので、表示速度が向上する。
【００７６】
本発明の請求項８に係る表示制御方法によれば、請求項７記載の場合に比べて条件判断処理が少ないので、表示対象によってはさらに高速表示が可能になる。
【図面の簡単な説明】
【図１】本発明の表示制御方法の第一の実施の形態の説明図である。
【図２】図１の表示制御方法におけるスクロール範囲と幅の説明図である。
【図３】本発明の表示制御方法の第一の実施の形態の動作フローチャートである。
【図４】本発明の表示制御方法による要更新画面領域の更新処理の説明図である。
【図５】本発明の表示制御方法の第三の実施の形態の説明図である。
【図６】本発明の表示制御方法の第四の実施の形態の説明図である。
【図７】本発明の表示制御方法の第五の実施の形態の説明図である。
【符号の説明】
Ｄ  表示画面
ＯＤ  表示対象
ＥＬ  図形単位領域
Δｘ、Δｙ  周期
Ｕｘ、Ｕｙ  図形単位領域の幅
【図１】
0003672422.tif 000002
【図２】
0003672422.tif 000003
【図３】
0003672422.tif 000004
【図４】
0003672422.tif 000005
【図５】
0003672422.tif 000006
【図６】
0003672422.tif 000007
【図７】
0003672422.tif 000008