(57)【要約】      （修正有）【課題】列車ダイヤ図のレイアウトに表示させる駅構内情報の描画状況に変更が生じる場合でも、列車ダイヤ図および駅構内情報に関するＧＵＩ処理を高速かつ表示上の齟齬なく実行する。【解決手段】駅間の描画要素のみの表示座標群からなる第１分割レイアウト、各駅構内の描画要素のみの表示座標群からなる第２分割レイアウト、駅間の描画要素と当該駅間が示す該当駅の駅間エリアに配置する駅構内の描画要素とに関する表示座標群からなる第３分割レイアウトを生成し格納する処理と、所定駅に関する駅構内の描画指示の有無検知と第３分割レイアウトにおける所定駅の駅間エリアに駅構内の描画要素の有無検知とを行う処理と、所定駅に関する駅構内の描画指示が無く尚かつ駅間エリアに駅構内の描画要素があると検知した場合、所定駅に関連する駅間の第３分割レイアウトを読み出し隣接する他の駅間の分割レイアウトに連結し出力装置にて描画する処理等とを実行する。【選択図】図８
2011230537.tif 000002
【特許請求の範囲】
【請求項１】
列車ダイヤの表示処理を行う情報処理装置が、
列車ダイヤ表示用の各描画要素についてその表示座標を保持している記憶部より、各駅間と各駅構内の描画要素について表示座標を抽出し、駅間の描画要素のみの表示座標群からなる第１分割レイアウト、各駅構内の描画要素のみの表示座標群からなる第２分割レイアウト、駅間の描画要素と当該駅間が示す該当駅の駅間エリアに配置する駅構内の描画要素とに関する表示座標群からなる第３分割レイアウトをそれぞれ生成して記憶部に格納する処理Ａと、
入力装置における所定駅に関する駅構内の描画指示の有無検知と、前記記憶部の前記第３分割レイアウトにおける前記所定駅の駅間エリアに駅構内の描画要素の有無検知とを行う処理Ｂと、
前記各検知の処理により、前記所定駅に関する駅構内の描画指示が無く尚かつ前記所定駅の駅間エリアに駅構内の描画要素が無いことを検知した場合、前記所定駅に関連する駅間の前記第１分割レイアウトを読み出し、隣接する他の駅間の分割レイアウトに連結し出力装置にて描画する処理Ｃと、
前記各検知の処理により、前記所定駅に関する駅構内の描画指示が無く尚かつ前記所定駅の駅間エリアに駅構内の描画要素があることを検知した場合、前記所定駅に関連する駅間の前記第３分割レイアウトを読み出し、隣接する他の駅間の分割レイアウトに連結し出力装置にて描画する処理Ｄと、
前記各検知の処理により、前記所定駅に関する駅構内の描画指示が有り尚かつ前記所定駅の駅間エリアに駅構内の描画要素が無いことを検知した場合、前記所定駅に関連する駅間の前記第２分割レイアウトを読み出し、隣接する他の駅間分割レイアウトに連結し出力装置にて描画する処理Ｅと、
を実行することを特徴とする列車ダイヤ表示処理方法。
【請求項２】
前記情報処理装置が、
前記処理Ｂ〜処理Ｅの少なくともいずれかを実行した後、前記記憶部の各分割レイアウトにおいて、駅間を跨って描画される設定がされた描画要素を検索し、ここで検索された描画要素を、前記連結された分割レイアウト群の描画上に追加描画する処理を実行することを特徴とする請求項１に記載の列車ダイヤ表示処理方法。
【請求項３】
前記情報処理装置が、
出力装置での描画画面内の縦横のスクロールバー位置を、前記描画画面内におけるユーザ作業領域の情報として、当該情報処理装置のＧＵＩ機能より取得し、ここで取得したユーザ作業領域に含まれる描画要素について前記処理Ｂ〜処理Ｅのいずれかを実行する、ことを特徴とする請求項１または２に記載の列車ダイヤ表示処理方法。
【請求項４】
前記情報処理装置が、
出力装置にて既に描画されている各レイアウトの描画要素について、その描画位置の移動操作を入力装置で受けた場合、該当描画要素以外の描画要素については変更せず、該当描画要素に関して登録されていた表示座標のデータを記憶部にて一旦消去し、前記移動操作に伴ってレイアウト上での描画位置が遷移する前記描画要素の座標についてＧＵＩ機能より取得し、この座標を作業用の記憶領域に格納し、入力装置で位置確定の指示を受けた場合に、前記記憶領域の座標値を該当レイアウトにおける前記描画要素の表示座標として設定する、
ことを特徴とする請求項１〜３のいずれかに記載の列車ダイヤ表示処理方法。
【請求項５】
列車ダイヤの表示処理を行う情報処理装置であって、
列車ダイヤ表示用の各描画要素についてその表示座標を保持している記憶部より、各駅間と各駅構内の描画要素について表示座標を抽出し、駅間の描画要素のみの表示座標群からなる第１分割レイアウト、各駅構内の描画要素のみの表示座標群からなる第２分割レイアウト、駅間の描画要素と当該駅間が示す該当駅の駅間エリアに配置する駅構内の描画要素とに関する表示座標群からなる第３分割レイアウトをそれぞれ生成して記憶部に格納する手段と、
入力装置における所定駅に関する駅構内の描画指示の有無検知と、前記記憶部の前記第３分割レイアウトにおける前記所定駅の駅間エリアに駅構内の描画要素の有無検知とを行う手段と、
前記各検知の処理により、前記所定駅に関する駅構内の描画指示が無く尚かつ前記所定駅の駅間エリアに駅構内の描画要素が無いことを検知した場合、前記所定駅に関連する駅間の前記第１分割レイアウトを読み出し、隣接する他の駅間の分割レイアウトに連結し出力装置にて描画する手段と、
前記各検知の処理により、前記所定駅に関する駅構内の描画指示が無く尚かつ前記所定駅の駅間エリアに駅構内の描画要素があることを検知した場合、前記所定駅に関連する駅間の前記第３分割レイアウトを読み出し、隣接する他の駅間の分割レイアウトに連結し出力装置にて描画する手段と、
前記各検知の処理により、前記所定駅に関する駅構内の描画指示が有り尚かつ前記所定駅の駅間エリアに駅構内の描画要素が無いことを検知した場合、前記所定駅に関連する駅間の前記第２分割レイアウトを読み出し、隣接する他の駅間分割レイアウトに連結し出力装置にて描画する手段と、
を備えることを特徴とする列車ダイヤ表示処理システム。
【請求項６】
列車ダイヤの表示処理を行う情報処理装置に、
列車ダイヤ表示用の各描画要素についてその表示座標を保持している記憶部より、各駅間と各駅構内の描画要素について表示座標を抽出し、駅間の描画要素のみの表示座標群からなる第１分割レイアウト、各駅構内の描画要素のみの表示座標群からなる第２分割レイアウト、駅間の描画要素と当該駅間が示す該当駅の駅間エリアに配置する駅構内の描画要素とに関する表示座標群からなる第３分割レイアウトをそれぞれ生成して記憶部に格納する処理Ａと、
入力装置における所定駅に関する駅構内の描画指示の有無検知と、前記記憶部の前記第３分割レイアウトにおける前記所定駅の駅間エリアに駅構内の描画要素の有無検知とを行う処理Ｂと、
前記各検知の処理により、前記所定駅に関する駅構内の描画指示が無く尚かつ前記所定駅の駅間エリアに駅構内の描画要素が無いことを検知した場合、前記所定駅に関連する駅間の前記第１分割レイアウトを読み出し、隣接する他の駅間の分割レイアウトに連結し出力装置にて描画する処理Ｃと、
前記各検知の処理により、前記所定駅に関する駅構内の描画指示が無く尚かつ前記所定駅の駅間エリアに駅構内の描画要素があることを検知した場合、前記所定駅に関連する駅間の前記第３分割レイアウトを読み出し、隣接する他の駅間の分割レイアウトに連結し出力装置にて描画する処理Ｄと、
前記各検知の処理により、前記所定駅に関する駅構内の描画指示が有り尚かつ前記所定駅の駅間エリアに駅構内の描画要素が無いことを検知した場合、前記所定駅に関連する駅間の前記第２分割レイアウトを読み出し、隣接する他の駅間分割レイアウトに連結し出力装置にて描画する処理Ｅと、
を実行させることを特徴とする列車ダイヤ表示処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、列車ダイヤ表示処理方法、列車ダイヤ表示処理システム、および列車ダイヤ表示処理プログラムに関するものであり、具体的には、列車ダイヤ図のレイアウトに表示させる駅構内情報の描画状況に変更が生じる場合でも、列車ダイヤ図および駅構内情報に関するＧＵＩ処理を高速かつ表示上の齟齬なく実行できる技術に関する。
【背景技術】
【０００２】
鉄道関係者らが利用する列車ダイヤ図は、一般的にそれを構成する情報量が膨大で、ディスプレイ等での表示サイズも大きくなることが多い。したがって、この列車ダイヤ図を情報処理装置で表示しようとした場合、ディスプレイやウィンドウなどでの所定の表示範囲に列車ダイヤ図が収まりきらないことがある。その場合、前記情報処理装置は、例えばスクロールバーやスクロールボックスによる表示範囲の変遷処理などを行うことで、ユーザからの表示要求に応えている。例えば、前記スクロールボックスにおける縦横２次元のうち、１次元は距離関係の軸を表示し、あと１次元は時間軸を示す。一般的に、列車ダイヤ図では、距離関係の次元として、列車ダイヤ図で示す各線区に対して駅の流れ（連なり）を示すものが広く使われている。
【０００３】
こうした列車ダイヤ図には、列車情報として、時間軸における時間経過に応じて運行していく列車の軌跡を斜め線で表したものが記載される。一般的にこの斜め線は「スジ」と呼ばれる。この列車ダイヤ図にはさらに、列車運転状況を表す記号も記載される。これら列車ダイヤ図で表示される各種の列車情報は、駅間に関する情報および駅構内に関する情報に分かれる。以後の説明では、駅内で行う列車運転状態の変更、例えば列車が停車する番線、折り返しで利用する番線といった情報などに関する情報を「駅構内情報」と定義する。以下、前記駅構内情報の表示手法について一般的なものを参考として述べておく。
【０００４】
（１）駅構内エリアの表示について
一般的に、上記で定義した駅構内情報を表示するため、駅構内ダイヤ図が広く使われている。この駅構内ダイヤ図において、縦横２次元のうち一方の１次元は時間経過を示し、他方の１次元は対象駅の番線を示す。以後の説明では、列車ダイヤ図の一部分として表示されている駅構内ダイヤ図の表示領域を、列車ダイヤ図での駅構内エリアと定義する。この駅構内エリアの例として図４での（６２１１）、（６２１４）、（６２１７）などが想定できる。
【０００５】
（２）駅構内エリアの表示位置について
なお、列車ダイヤ図上に上記で定義した駅構内エリアを表示するには２種類の手法が従来からある。１つは、駅構内エリアを列車ダイヤ図上における固定位置で表示するもの（固定レイアウト）であり、他の１つは、駅構内エリアを列車ダイヤ図での対象駅の表示位置に合わせて表示するもの（可変レイアウト）となる。
【０００６】
（３）固定レイアウト、可変レイアウトについて
上述のように駅構内エリアを固定位置で表示する方法がある。この場合、駅構内エリア表示用のウィンドウなどのレイアウトサイズは、表示する駅構内エリアの距離および時間帯によって予め決まっている。したがって列車ダイヤ図のレイアウトも固定レイアウトとなる。
【０００７】
一方、駅構内エリアを固定位置で表示しない、可変レイアウトを採用した手法もある。この場合、駅構内エリアを対象駅の位置と合わせて繋ぎ、表示することになる。この手法では、駅構内エリアを列車ダイヤ図における途中位置に挿入し、複数の駅構内エリアを同時に表示することが可能である。また、列車ダイヤ図上に駅構内表示をするか否かはユーザが選択でき、駅構内エリアの表示数および駅構内エリアのサイズによって、レイアウトサイズは変化する。そのため列車ダイヤ図のレイアウトは可変レイアウトとなる。
【０００８】
なお、表示処理技術として、文字や表示ウィンドウのサイズ設定などによって、レイアウトが変わる表示システムでも、少ない処理時間およびリソースで、高速かつ精度の良いスクロールバーの表示制御を実現する技術（特許文献１参照）などが提案されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００３−３３０７００号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら上述したような従来の状況においてはいくつか課題があった。例えば、上述の「可変レイアウト」に関する課題として、以下のようなものがある。例えば、駅構内エリアの表示／非表示の切り替え、表示数の変更など各種レイアウト変更が実施される際、ＧＵＩ処理に時間がかかり、列車ダイヤのＧＵＩの反応が遅くなることがある。
【００１１】
このようにＧＵＩ処理に時間がかかる理由としては、例えば、駅構内エリアの表示／非表示の変更に伴い、変更対象の駅構内エリアのサイズによって列車ダイヤ図全体のレイアウトサイズが変わることがある。こうした状況では、列車ダイヤ図全体のレイアウトサイズを予め計算しておくことはできず、実際に表示させる時に各描画要素をレイアウトしなおす必要がある。また、列車ダイヤ図の描画要素数が多ければ多いほど、そのレイアウト処理に時間かかるという問題も出てくる。なお、以後の説明において、列車ダイヤ図をディスプレイに表示するための必要な描画内容（例えば、直線描画、文字列描画、円描画、塗りつぶし円描画、多角形描画などが考えられる）に関してそれぞれを「描画要素」と定義する。
【００１２】
また、他の課題として、駅構内エリア非表示の状態であっても、駅構内情報に関連する描画を列車ダイヤ図上に表示する場合の課題がある。例えば、ユーザが或る駅を選択し、その駅構内情報を表示させようとする際、該当駅表示の直下に駅構内情報に関する描画要素を表示することだけではなく、該当駅の線（距離方向の軸線＝駅線）の位置上にも描画要素を追加したり、削除したりすることもある。こうした状況の例を図１４に示す。図１４における構内情報１４１２０、１４１３０は「折返し」の情報を示す描画である。この折返し情報は、駅構内エリアが非表示の状態でも表示されるものとなる。一方、この折返し情報を駅構内エリアにて表示する場合は、駅間のエリアから当該折り返し関連の描画を削除しなければならない。
【００１３】
なお、列車ダイヤ図の表示を例えば駅毎に分割する方法として、駅線にて分割する方法が一般的である。この駅線は、列車ダイヤ図における該当駅の距離次元での位置を示している線を言う。図面１４の例の駅線では（１４１４０）、（１４１５０）、（１４１６０）の線がそれにあたる。
【００１４】
例えば、全駅の駅構内エリアを表示するため、駅線を基準にした分割方法にて列車ダイヤ図を分割し、分割された列車ダイヤ図を駅構内エリアと組み合わせたとする。その場合、図面１４の表示１４２１０の例のように折返し描画１４２２０、１４２３０が表示されたまま組み合わせられるため、列車ダイヤとしては誤った、連続性のない表示となってしまう。
【００１５】
また、他の課題として、駅間のエリアまたは、駅構内エリアを跨る描画がある場合に生じるものがあった。列車ダイヤ図の分割に際して、駅を基準して駅構内エリアと駅間エリアとで単純に分割することが考えられるが、駅間エリアまたは駅構内エリアを跨る記号、列車番号などの描画が発生することがある。この場合、前記跨る描画が前記駅間エリアまたは駅構内エリアで分割されてしまうため、前記記号や列車番号などの描画内容によっては、前記エリアを跨って組合せて再描画するのが困難となる場合もある。こうしたエリアを跨って組み合わせが困難な描画要素の例としては、例えば、図７における列車番号３１１０や、列車分割記号３１２０や、列車番号３１３０などがあげられる。例えば図７に例示する状況で、「Ｂ駅」の駅構内エリアを表示する場合、列車番号や列車分割記号等は割れて表示されることとなる。
【００１６】
また、他の課題として、イベント発生に伴う再レイアウト処理の課題がある。例えば、列車情報の変更として、列車の時刻、列車の折り返し情報といったものの変更が生じた際に、該当の変更がなされた新たな列車情報を表示するための再レイアウト処理をすることがある。この場合やはり、ＧＵＩ処理に時間がかかり、列車ダイヤ図のＧＵＩの反応が遅くなるという問題も出てくる。
【００１７】
一方、例えば上述の特許文献１に示す技術を適用しようとしても、そもそも列車ダイヤ図においてレイアウトを複数分割し、各レイアウトを跨る描画が存在するといった列車ダイヤ図特有の状況に対応できない。また、一般的に列車ダイヤ図の列車情報にはタグなどの表示用の区切り情報に相当するものがなく、適用ができない。
【００１８】
そこで本発明の目的は、列車ダイヤ図のレイアウトに表示させる駅構内情報の描画状況に変更が生じる場合でも、列車ダイヤ図および駅構内情報に関するＧＵＩ処理を高速かつ表示上の齟齬なく実行できる技術を提供することにある。
【課題を解決するための手段】
【００１９】
上記課題を解決する本発明の列車ダイヤ表示処理方法は、列車ダイヤの表示処理を行う情報処理装置が、以下の処理Ａ〜Ｅを実行するものである。すなわち、前記情報処理装置が、列車ダイヤ表示用の各描画要素についてその表示座標を保持している記憶部より、各駅間と各駅構内の描画要素について表示座標を抽出し、駅間の描画要素のみの表示座標群からなる第１分割レイアウト、各駅構内の描画要素のみの表示座標群からなる第２分割レイアウト、駅間の描画要素と当該駅間が示す該当駅の駅間エリアに配置する駅構内の描画要素とに関する表示座標群からなる第３分割レイアウトをそれぞれ生成して記憶部に格納する処理Ａを実行する。
【００２０】
また、前記情報処理装置が、入力装置における所定駅に関する駅構内の描画指示の有無検知と、前記記憶部の前記第３分割レイアウトにおける前記所定駅の駅間エリアに駅構内の描画要素の有無検知とを行う処理Ｂを実行する。
【００２１】
また、前記情報処理装置が、前記各検知の処理により、前記所定駅に関する駅構内の描画指示が無く尚かつ前記所定駅の駅間エリアに駅構内の描画要素が無いことを検知した場合、前記所定駅に関連する駅間の前記第１分割レイアウトを読み出し、隣接する他の駅間の分割レイアウトに連結し出力装置にて描画する処理Ｃを実行する。
【００２２】
また、前記情報処理装置が、前記各検知の処理により、前記所定駅に関する駅構内の描画指示が無く尚かつ前記所定駅の駅間エリアに駅構内の描画要素があることを検知した場合、前記所定駅に関連する駅間の前記第３分割レイアウトを読み出し、隣接する他の駅間の分割レイアウトに連結し出力装置にて描画する処理Ｄを実行する。
【００２３】
また、前記情報処理装置が、前記各検知の処理により、前記所定駅に関する駅構内の描画指示が有り尚かつ前記所定駅の駅間エリアに駅構内の描画要素が無いことを検知した場合、前記所定駅に関連する駅間の前記第２分割レイアウトを読み出し、隣接する他の駅間分割レイアウトに連結し出力装置にて描画する処理Ｅを実行する。
【００２４】
また、本発明の列車ダイヤ表示処理システムは、列車ダイヤの表示処理を行う情報処理装置であって、列車ダイヤ表示用の各描画要素についてその表示座標を保持している記憶部より、各駅間と各駅構内の描画要素について表示座標を抽出し、駅間の描画要素のみの表示座標群からなる第１分割レイアウト、各駅構内の描画要素のみの表示座標群からなる第２分割レイアウト、駅間の描画要素と当該駅間が示す該当駅の駅間エリアに配置する駅構内の描画要素とに関する表示座標群からなる第３分割レイアウトをそれぞれ生成して記憶部に格納する手段と、入力装置における所定駅に関する駅構内の描画指示の有無検知と、前記記憶部の前記第３分割レイアウトにおける前記所定駅の駅間エリアに駅構内の描画要素の有無検知とを行う手段と、前記各検知の処理により、前記所定駅に関する駅構内の描画指示が無く尚かつ前記所定駅の駅間エリアに駅構内の描画要素が無いことを検知した場合、前記所定駅に関連する駅間の前記第１分割レイアウトを読み出し、隣接する他の駅間の分割レイアウトに連結し出力装置にて描画する手段と、前記各検知の処理により、前記所定駅に関する駅構内の描画指示が無く尚かつ前記所定駅の駅間エリアに駅構内の描画要素があることを検知した場合、前記所定駅に関連する駅間の前記第３分割レイアウトを読み出し、隣接する他の駅間の分割レイアウトに連結し出力装置にて描画する手段と、前記各検知の処理により、前記所定駅に関する駅構内の描画指示が有り尚かつ前記所定駅の駅間エリアに駅構内の描画要素が無いことを検知した場合、前記所定駅に関連する駅間の前記第２分割レイアウトを読み出し、隣接する他の駅間分割レイアウトに連結し出力装置にて描画する手段と、を備えることを特徴とする。
【００２５】
また、本発明の列車ダイヤ表示処理プログラムは、列車ダイヤの表示処理を行う情報処理装置に、列車ダイヤ表示用の各描画要素についてその表示座標を保持している記憶部より、各駅間と各駅構内の描画要素について表示座標を抽出し、駅間の描画要素のみの表示座標群からなる第１分割レイアウト、各駅構内の描画要素のみの表示座標群からなる第２分割レイアウト、駅間の描画要素と当該駅間が示す該当駅の駅間エリアに配置する駅構内の描画要素とに関する表示座標群からなる第３分割レイアウトをそれぞれ生成して記憶部に格納する処理Ａと、入力装置における所定駅に関する駅構内の描画指示の有無検知と、前記記憶部の前記第３分割レイアウトにおける前記所定駅の駅間エリアに駅構内の描画要素の有無検知とを行う処理Ｂと、前記各検知の処理により、前記所定駅に関する駅構内の描画指示が無く尚かつ前記所定駅の駅間エリアに駅構内の描画要素が無いことを検知した場合、前記所定駅に関連する駅間の前記第１分割レイアウトを読み出し、隣接する他の駅間の分割レイアウトに連結し出力装置にて描画する処理Ｃと、前記各検知の処理により、前記所定駅に関する駅構内の描画指示が無く尚かつ前記所定駅の駅間エリアに駅構内の描画要素があることを検知した場合、前記所定駅に関連する駅間の前記第３分割レイアウトを読み出し、隣接する他の駅間の分割レイアウトに連結し出力装置にて描画する処理Ｄと、前記各検知の処理により、前記所定駅に関する駅構内の描画指示が有り尚かつ前記所定駅の駅間エリアに駅構内の描画要素が無いことを検知した場合、前記所定駅に関連する駅間の前記第２分割レイアウトを読み出し、隣接する他の駅間分割レイアウトに連結し出力装置にて描画する処理Ｅと、を実行させることを特徴とする。
【発明の効果】
【００２６】
本発明によれば、列車ダイヤ図のレイアウトに表示させる駅構内情報の描画状況に変更が生じる場合でも、列車ダイヤ図および駅構内情報に関するＧＵＩ処理を高速かつ表示上の齟齬なく実行できる。
【図面の簡単な説明】
【００２７】
【図１】本実施形態における列車ダイヤ表示処理システムの構成図である。
【図２】本実施形態の列車ダイヤ表示処理方法の処理手順例１を示すフロー図である。
【図３】本実施形態の列車ダイヤ表示処理方法の処理手順例２を示すフロー図である。
【図４】本実施形態における分割レイアウト例を示す図である。
【図５】本実施形態における列車情報管理テーブルの例を示す図である。
【図６】本実施形態における表示管理テーブルの例を示す図である。
【図７】本実施形態の分割レイアウトを跨る描画要素例を示す図である。
【図８】本実施形態の列車ダイヤ表示処理例を示す図である。
【図９】本実施形態における作業エリア例を示す図である。
【図１０】本実施形態における表示部品例を示す図である。
【図１１】本実施形態の列車ダイヤ表示処理方法の処理手順例３を示す図である。
【図１２】処理時間の比較結果を示す図である。
【図１３】本実施形態の列車ダイヤ表示処理方法の処理手順例４を示す図である。
【図１４】列車ダイヤ表示における従来の課題例を示す図である。
【発明を実施するための形態】
【００２８】
−−−システム構成例−−−
以下、図面を適宜参照しつつ本発明の実施形態について説明する。図１は、列車ダイヤ表示処理システムの構成図である。本実施形態の列車ダイヤ表示処理システム２００は、列車ダイヤ図のレイアウトに表示させる駅構内情報の描画状況に変更が生じる場合でも、列車ダイヤ図および駅構内情報に関するＧＵＩ処理を高速かつ表示上の齟齬なく実行できる情報処理装置であり、ＰＣやサーバなどの情報処理装置を想定する。以下、この列車ダイヤ表示処理システム２００が備える構成、機能について説明する。
【００２９】
前記列車ダイヤ表示処理システム２００（以下、システム２００）は、情報処理装置として当然備える、装置の制御やデータの計算・加工を行う中央演算処理装置であるＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）２０４と、データやプログラムを一時的に記憶しＣＰＵ２０４が直接読み書き可能であるメモリ２０３と、電源を切ってもデータやプログラムが消えないように保存する不揮発性の記憶部２０１と、ユーザに対しデータの計算・加工の結果をディスプレイなどに表示するための出力装置２０６と、ユーザからのキーボード入力やマウス入力などを受け付けるための入力装置２０５を具備したハードウェア構成をとる。前記ＣＰＵ２０４は、記憶部２０１などに予め格納されているプログラム２０２を読み出して実行することで、本実施形態で必要な機能部を実装することになる。
【００３０】
また、起動の際に前記システム２００は前記記憶部２０１から、列車情報データ（列車情報管理テーブル２１１０より）、基礎情報データ（基礎情報管理テーブル２１２０より）、表示設定データ（表示設定情報管理テーブル２１３０より）を読み取る。これらデータは既存の列車ダイヤ表示システムでも利用されているものと同様である。なお、前記列車情報データは、例えば、列車番号情報、折り返しに際しての列車と列車のつなぎ情報、使用する番線情報、分割・併合情報などのデータである。また、前記基礎情報データ、各線区に関する線区内の駅の位置順序のデータである。また、前記表示設定データは、線区および線区の位置順序のデータである。他の例として、他の装置から、通信ネットワークを介して、これらのデータを取得してもよい。
【００３１】
なお、描画要素管理テーブル２１４０およびＧＵＩ表示データ２１５０は、前記プログラム２０２が起動してから生成されるデータであるため、プログラム起動時にのみ管理される。従って、これらデータは読み書き可能な揮発メモリ（Ｖｏｌａｔｉｌｅ  Ｍｅｍｏｒｙ）に格納してもよい。この揮発メモリとしては例えばＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）が想定できる。また、前記ＧＵＩ表示データ２１５０は、各種ＧＵＩ関連のデータや、分割レイアウトにあたる。また、前記描要素画管理テーブル２１４０の構造例については後述する。
【００３２】
また、前記システム２００が保持する機能部としては、例えば、ダイヤ図表示部２２２０、ＧＵＩ表示部２２３０、描画要素管理部２２４０がある。ここで前記ＧＵＩ表示部２２３０は、ＧＵＩイベントの管理、ＧＵＩ各部品の管理を行う、前記ＧＵＩ部品としては、例えばスクロールバー、メニュー、ダイアログボックスなどが想定できる。またこのＧＵＩ表示部２２３０は、各分割レイアウトを前記ＧＵＩ表示データ２１５０に格納する。各分割レイアウトを格納する際のデータ形式としては、（実施環境によって変わるが）Ｐｉｘｍａｐ、ＪＰＧ、Ｂｉｔｍａｐなどが想定できる。
【００３３】
また、前記描画要素管理部２２４０は、後述する描画要素情報の計算（１３１４０）を実施するため処理部である。また、前記ダイヤ図表示部２２２０は、本実施形態の分割列車ダイヤ表示処理（図２のフローに沿った処理）を実行する。そのため、前記ＧＵＩ表示部２２３０、および描画要素管理部２２４０を必要に応じて実行することとなる。
【００３４】
−−−処理例−−−
図２は本実施形態の列車ダイヤ表示処理方法の処理手順例１を示すフロー図であり、また、図３は本実施形態の列車ダイヤ表示処理方法の処理手順例２を示すフロー図である。以降、各処理については特段の断りがない限り、全てシステム２００が実行するものとする。ここでは、前記処理手順例１のフロー図における、「各分割レイアウトを計算」するステップ（１１１０）について説明する。まず、第一ステップとして、前記ダイヤ図表示部２２２０が前記描画要素管理部２２４０を実行して、線区および駅の位置順序の各データを取得するステップ（図３、１３１１０）を実行する。
【００３５】
なお、このステップにおいて、前記ダイヤ図表示部２２２０により実行された前記描画要素管理部２２４０は、記憶部２０１から前記基礎データ、表示設定データ及び列車情報データを読み込むこととなる。描画要素管理部２２４０は、ここで読み込んだデータを前記描画要素管理テーブル２１４０に格納する。例えば、前記基礎データは、鉄道ネットワークの固定データである、例えば駅名称、駅間距離、番線名称、線区情報などを含む。また、前記表示設定データは、分割レイアウトの設定をするために必要な、例えば分割レイアウトで示す駅や列車の表示色、各フォントのサイズなどが含まれる。
【００３６】
また、前記ダイヤ図表示部２２２０は、前記ステップ１１１０で得られた基礎データと表示設定情報をもとに各分割エリアのサイズを計算する。この場合、前記ダイヤ図表示部２２２０は、上記の位置順序のデータおよび表示設定データから、各分割レイアウトのパターン数及び各分割レイアウトのサイズに基づいて、出力画面での表示領域となる各分割レイアウトの映像エリア（例えば、矩形である分割レイアウトのサイズと、表示画面の座標系上での表示座標とからなるデータ）を特定し該当データを確保する（図３。１３１２０）。この映像エリアの情報を格納するため、前記ダイヤ図表示部２２２０は前記ＧＵＩ表示部２２３０を実行する。一方、前記ＧＵＩ表示部２２３０は、ＧＵＩ表示データ２１５０に前記映像エリアの情報を格納する。
【００３７】
上記映像エリアに関する処理について以下に述べる。ところで、列車ダイヤ図上で駅構内エリア（駅構内の描画要素の集合）を非表示の状態でも、駅構内情報に関連した描画を列車ダイヤ図上に表示する場合（＝駅間の描画要素と当該駅間が示す該当駅の駅間エリアに配置する駅構内の描画要素とからなる）がある。本実施形態ではこの状況に的確に対応するため、駅構内エリアの表示状態により三つのパターンを想定している。前記ダイヤ図表示部２２２０は、前記各パターンによって複数の駅間エリア（＝第１〜第３の分割レイアウト）を作成し、各エリアを個別に菅理する。図面４の例の第１分割レイアウトでは（４２１０）、（４２１３）、（４２１６）、（４２１９）がそれにあたる、第２分割レイアウトでは（４２１１）、（４２１４）、（４２１７）がそれにあたる。第３分割レイアウトでは（４２１２）、（４２１５）、（４２１８）がそれにあたる。
【００３８】
図４において、「Ｂ駅」の駅線と「Ｃ駅」の駅線の間にある駅間エリアに対し、二つの分割レイアウトが作成されている例が示されている。図中の分割レイアウト６２１６は、「Ｃ駅」の駅構内エリアの表示をする際に表示される駅間エリアとなる。一方、分割レイアウト６２１８は、「Ｃ駅」の駅構内エリアの表示をしていない際に表示される駅間エリアとなる。
【００３９】
続いて、前記三つのパターンそれぞれについて説明する。第一パターンは、駅構内エリアが非表示の状態の際に駅線上下に駅構内関連の描画要素がないパターンである（＝第１〜第２分割レイアウトが対応可能なパターン）。また、第二パターンは、駅構内エリアが非表示の状態の際に駅線上に駅構内関連の描画要素があるパターンである（＝第１〜第３分割レイアウトが対応可能なパターン）。また、第三パターンは、駅構内エリアが非表示の状態の際に駅線上下に駅構内関連の描画要素があるパターン（＝第１〜第３分割レイアウトが対応可能なパターン）。
【００４０】
前記第一パターンの場合、駅構内エリアの表示状況の変更によって線区トップエリア、一番下の線区とスクロールウィンドウ間のエリア、および駅間の表示が変わらないこととなる。従って、一つの列車ダイヤに対して１種類の分割レイアウトのみが必要となる。下記の式に従って分割レイアウトの数を計算できる。  
・分割レイアウト数＝線区トップエリア［１］＊１＋駅間数＊１＋線区間エリア数＊１＋一番下の線区とスクロールウィンドウ間のエリア［１］＋駅構内数・・・（式１）
【００４１】
一方、前記第二パターンの場合、駅構内エリアの表示状況によって、その駅線上の表示は異るので、線区トップエリアおよび駅間エリアを、駅構内エリア表示用及び駅構内エリア非表示用のため、各エリアで分割レイアウト二種類ずつが必要となる。従って、下記の式２に従って分割レイアウトの数を計算する。  
・分割レイアウト数＝線区トップエリア［１］＊２＋駅間数＊２＋線区間エリア数＊２＋一番下の線区とスクロールウィンドウ間のエリア［１］＋駅構内数・・・（式２）
【００４２】
また、前記第三パターンの場合、駅構内エリアの表示状況によって、その駅線上及び駅線下の表示は異なるので、駅間エリアを上位駅構内エリアの表示用及び非表示用、さらに下位駅構内エリアの表示用及び非表示用のため、各エリアで分割レイアウト四種類ずつが必要となる。従って、下記の式３に従って分割レイアウトの数を計算する。  
・分割レイアウト数＝線区トップエリア［１］＊２＋駅間数＊４＋線区間エリア数＊４＋一番下の線区とスクロールウィンドウ間のエリア［１］＊２＋駅構内数・・・（式３）
【００４３】
上述の具体例として前記第二パターンについて、図４の状況下で分割レイアウト数の計算を行う場合を説明する。図４に示す列車ダイヤの分割レイアウト例では、一つの線区、三つの駅（Ａ〜Ｃ各駅）に関する分割レイアウトのプランとなっている。該当線区において列車が進行する駅の順序は、Ａ駅→Ｂ駅→Ｃ駅である。この場合、線区トップエリア、Ａ駅とＢ駅の駅間エリア、Ｂ駅とＣ駅の駅間エリア、および一番下の線区とスクロールウィンドウ間のエリアの各エリア（分割レイアウトに対応）が想定できる。また、駅構内エリアとして、Ａ駅構内エリア、Ｂ駅構内エリア、Ｃ駅構内エリアが想定できる。前記の式２にて分割レイアウトの数＝エリアの数を計算すると下記に記載されている通り、分割レイアウト数は「１０」となる。  
・駅間数［２］＊２＋駅構内数［３］＋線区トップエリア数［１］＊２＋線区間エリア数［０］＊１＋一番下の線区とスクロールウィンドウ間のエリア＊１＝１０・・・(式４)
【００４４】
各分割レイアウトのサイズについて、例えば、線区トップエリアのサイズ、駅間エリアのサイズ、線区間エリアのサイズ、一番下の線区とスクロールウィンドウ間のエリアのサイズは、予めユーザにより定義されており、前記表示設定データから取得するものとする。一方、駅構内エリアのサイズは番線数にて異なることがある。この場合、下記のような計算方法に基づいて駅構内エリアのサイズを計算する。  
・駅構内エリアのサイズ＝（番線数−１）＊番線間のサイズ＋上位余裕サイズ＋下位余裕サイズ・・・（式５）
【００４５】
駅間エリアや駅構内エリアに対応した分割レイアウトの数、サイズ等が上述のように得られたので、続いて、前記ダイヤ図表示部２２２０は、分割レイアウトへの時間軸、駅軸情報の追加処理を行う（図３、１３１３０）。この場合、当該ステップ実行時において、前記分割レイアウトらは初期状態であって、時間軸の線、駅線、および番線の線をユーザが自由に設定できる。このステップまでで、時間に関する軸線、駅線、および番線の線が分割レイアウトに設定された。当然、ここで設定された軸線、駅線等の描画用データは、システム２００で該当する分割レイアウトと紐付けて格納されることになる。
【００４６】
次に、前記ダイヤ図表示部２２２０は、描画要素情報の計算を行う（図３、１３１４０）。以下に当該ステップの具体例を述べる。なお、当該ステップ（１３１４０）の説明のため、図５および図６を用いるものとする。
【００４７】
この場合まず、描画要素管理部２２４０は、列車情報管理テーブル２１１０のデータを基にして描画要素管理テーブル２１４０のデータを算出する。列車情報管理テーブル２１１０の例として、図５にはいくつかの列車情報（１〜ｎ）とそれを構成する列車情報項目４１１０を示している。この列車情報項目４１１０は、例えば、列車番号情報、時刻情報、折り返しの際に列車と列車のつなぎ情報、使用する番線情報、分割・併合情報などの情報が挙げられる。
【００４８】
このような場合、前記描画要素管理部２２４０は、各列車情報の各列車情報項目４１１０の情報を列車ダイヤ表示上で表示する場合の、描画要素のサイズ、表示座標の算定などレイアウト計算を行う。この計算は、例えば、該当分割レイアウトの座標系において、時間の軸線や駅線、スジなどの配置位置との相対位置（例：○○時における○○駅の○○番線の描画上に列車番号を描画する場合、該当番線の表示座標と所定距離隔てた位置の座標を算定する）を算定し、各描画要素の表示座標とサイズといったデータを得る。ここで得たデータについては、該当列車に関する描画要素テーブル５２１０に設定する。このように、各描画要素を座標値で管理することにより、例えば、画面リフレッシュが必要な再表示処理時などには、列車情報管理テーブル２１１０などからの再レイアウト（これまでのステップ）をせず、座標値を管理している描画要素テーブル５２１０から必要な表示座標の値を得て、該当描画要素の画面表示を行うことになる。
【００４９】
なお、上記で計算され、描画要素テーブル５２１０に設定されたデータを図６に沿って説明する。描画要素テーブル５２１０は、描画要素別パラメータデータ５２１２のデータを含む。このデータは、各描画要素の図形別による個別データである、例えば描画要素が正方形の場合は一辺の長さ、円形の場合は半径などとなる。また、前記描画要素テーブル５２１０は、分割レイアウトＩＤ５２１３を含んでいる。このデータは、該当描画要素をどの分割レイアウトに描くか、識別するための情報である、言い換えれば、どの分割レイアウトの次元（座標系）を元にその描画要素の座標が計算されたか、識別するための情報である。また、描画要素テーブル５２１０は、分割レイアウト跨り識別情報５２１５を含んでいる。このデータは、描画要素とそれを紐付ける分割レイアウトとの関係において、該当描画要素の全図形の表示座標が該当分割レイアウトの表示範囲に収まるかを示す識別情報である。つまり、分割レイアウトの表示座標が示す範囲に、描画要素の表示座標の範囲が収まらない場合、該当描画要素は分割レイアウト間を跨るものとなる。また、前記描画要素テーブル５２１０は、作業エリア識別情報５２１４を含んでいる。このデータは、後述するＧＵＩイベント処理で設定されるデータである。
【００５０】
次に、前記ダイヤ図表示部２２２０（ないし前記描画要素管理部２２４０）は、前記ステップ１３１４０で必要なデータが得られた描画要素について、これを該当分割レイアウトに対して描画する（図３、１３１５０）。なお、前記ステップ１３１４０にて計算された各描画要素データには、描画対象の分割レイアウトを示す分割レイアウトＩＤが格納されている。従って、前記ダイヤ図表示部２２２０は、各描画要素についてどの分割レイアウトに描画すべきか、この分割レイアウトＩＤにて区別できる。こうして描画対象の分割レイアウトを特定した前記ダイヤ図表示部２２２０は、該当分割レイアウトに対し、分割レイアウト間を跨らない描画要素（＝前記分割レイアウト跨り識別情報５２１５が、分割レイアウト間を跨ぐ描画要素で無いことを示すもの）を描画する（１３１４０）。
【００５１】
分割レイアウト間に跨る描画要素をこのステップで描画しないのは以下の理由からである。例えば、画面上で確保できる駅間エリアの表示サイズ（距離方向の幅）が所定値より狭く、該当駅間の分割レイアウトに表示する描画要素のサイズが所定値以上であれば、駅間エリアから前記描画要素がはみ出して、隣接する他の駅間の分割レイアウトにまで跨ることになる。分割レイアウト間を跨る描画要素の例として、図７を示す。この場合、Ａ駅とＢ駅の分割レイアウトを跨る描画要素３１２０が存在している。このように、分割レイアウト間を跨る描画要素が存在する場合、駅構内エリアの表示・非表示の状況によって、分割レイアウトの表示は異なることになる。そのため、各分割レイアウトに対する固定表示の扱いはできない。従って、この段階で前記描画要素（分割レイアウト間を跨るもの）を分割レイアウトに描画することはできない。
【００５２】
続いて、図２の処理フローに戻る。ここでは、前記ＧＵＩ表示部２２３０が駅構内表示の状況を、例えば、前記記憶部２０１のＧＵＩ表示データ２１５０から取得する（１１２０）。駅構内表示の状況とは、入力装置２０５における所定駅に関する駅構内の描画指示が有るか無いかを示す情報となる。
【００５３】
次に、前記ＧＵＩ表示部２２３０が、列車ダイヤレイアウト作成（１１３０）を実行する。この処理について図８を用いて説明する。この場合、前記ＧＵＩ表示部２２３０は、前記ステップ１１２０にて既に得ている駅構内表示の状況に応じて、分割レイアウトの組み合わせ処理を行う。例えばレイアウト例７４１０は、ユーザが全駅（Ａ駅〜Ｃ駅）の構内情報を表示しようと指示している例となる。この時、前記ＧＵＩ表示部２２３０は、各駅間に関する分割レイアウト７１１０、７１２０、７１３０、７１４０と、各駅構内に関する分割レイアウト７２１０、７２２０、７２３０とを組み合わせ、列車ダイヤレイアウトを作成することになる。この場合、ある駅間の分割レイアウトの下に該当駅構内の分割レイアウトを連接させ表示するといった処理を、各駅間について繰り返し行うこととなる。それにより得られる分割レイアウトの組み合わせ結果は、分割レイアウト７１１０−分割レイアウト７２１０−分割レイアウト７１２０−分割レイアウト７２２０−分割レイアウト７１３０−分割レイアウト７２３０−分割レイアウト７１４０といった列車ダイヤレイアウトとなる。
【００５４】
一方、他のレイアウト例７４２０では、ユーザがＡ駅及びＣ駅の駅構内情報を非表示状態とし、Ｂ駅の駅構内情報を表示すると指定した状況となっている。この場合、前記ＧＵＩ表示部２２３０は、Ｂ駅構内の分割レイアウト７２２０と、駅間の分割レイアウト７３１０、７３３０とを組み合わせる。Ｂ駅の駅構内情報は表示するよう指定されているので、Ａ駅とＢ駅の間について、駅間の分割レイアウト７１２０も組み合わせることになる（例２）。この場合の分割レイアウトの組み合わせ結果は、分割レイアウト７３１０−分割レイアウト７１２０−分割レイアウト７２２０−分割レイアウト７３３０−分割レイアウト７３４０といった列車ダイヤレイアウトとなる。
【００５５】
次に、前記ＧＵＩ表示部２２３０は、分割レイアウトを跨る描画要素を、前記ステップ１１３０までで作成した列車ダイヤレイアウトに追加する（１１４０）。この場合、前記ＧＵＩ表示部２２３０は、前記列車ダイヤレイアウトを構成する各分割レイアウトについて、分割レイアウト間を跨ぐ描画要素（＝前記分割レイアウト跨り識別情報５２１５が、分割レイアウト間を跨ぐ描画要素であることを示すもの）を描画するのである。生成済みの列車ダイヤレイアウト上に前記分割レイアウト間を跨る描画要素を描画しているため、分割レイアウトが変化するようなことになっても、例えば、分割レイアウトの消長に伴って前記描画要素も分割されるといったことはない。
【００５６】
なお、前記分割レイアウト間を跨る描画要素の座標値は、他の描画要素と同じ、列車ダイヤレイアウトの二次元座標系における座標値ではなく、対象の分割レイアウトにおける二次元座標系における座標値として記憶部２０１に記憶されている。従って、前記分割レイアウト間を跨る描画要素を、列車ダイヤレイアウト上に描画するために、列車ダイヤレイアウトの二次元座標系に座標値を換算する必要がある。この計算処理として、例えば、対象の分割レイアウトの座標系と、前記列車ダイヤレイアウトの座標系との間での座標値の差異を、前記分割レイアウト間を跨る描画要素の表示座標に加算する処理などが想定できる。
【００５７】
一方、描画要素の表示座標は、対応する分割レイアウトでの座標系でのものとなるため、例えば、駅構内エリアの表示状況が変更されても、分割レイアウトと共に消長するだけあり、再レイアウトのための処理が必要ない。従って、駅構内エリアの表示状況に変更があっても高速な再表示処理を実現できる。
【００５８】
続いて、前記ダイヤ図表示部２２２０は、出力装置２０６での描画画面内に配置された縦横のスクロールバーの現在位置を、前記描画画面内におけるユーザ作業領域の情報として、当該情報処理装置のＧＵＩ機能（前記ＧＵＩ表示データ２１５０）より取得する（１１５０）。列車ダイヤ図など列車ダイヤレイアウトの表示範囲をユーザが操作する方法として、スクロールバーやスクロールボックスを利用する方法は一般的である。例えば、スクロールボックスにおける縦横２次元のうち、１次元は距離関係を表示し、あと１次元は時間の流れを示す。例えば、時刻軸は、標準で２４時間分の時間帯に対応し、展開開始時刻が始発電車の時間前となっている設定例があげられる。この場合、例えば、４時３０分を展開開始時刻としたならば、終了は次の日の４時３０分となる。また、距離軸では駅名を表示し、該当線区の全駅を表示する。
【００５９】
また、前記ダイヤ図表示部２２２０は、前記ステップ１１５０で取得したユーザ作業領域に含まれる、各分割レイアウト等の描画要素のデータを取得し、作業領域で表示する（１１６０）。
【００６０】
前記ステップ１１５０、１１６０に関して図９を用いて更に説明する。一般的に、列車ダイヤレイアウトに記載されている列車情報は１００本から１０００本までのケースが多い。もし、そのような列車ダイヤレイアウトを画面表示すると、全列車情報を１枚の画面上に表示することとなる。その場合、ダイヤの本数によって、画面上で列車情報が見にくくなったり、描画要素が重なってしまうといったことがある。こうした状況を防ぐため、ユーザは列車ダイヤレイアウト８２１０の全体から一部のエリアだけを表示する。この一部のエリアは前記作業領域８１１０となる。
【００６１】
なお、このステップ１１６０では、前記ステップ１１５０のステップにて取得したスクロールバーの位置、およびＧＵＩ表示データ２１５０から取得する表示拡大率の設定を用いて、列車ダイヤレイアウトの描画におけるユーザの作業領域の位置・サイズを特定し、前記列車ダイヤレイアウトの全体のうち前記作業領域に含まれる描画要素のデータを取得し表示する。
【００６２】
−−−イベントに伴う表示処理−−−
上述までで説明した表示処理は、ユーザが列車ダイヤ表示処理プログラムを起動する際のシステム２００での表示処理となる。一方、こうした起動時の初期表示処理以外にも、ＧＵＩのイベントに伴う再表示処理を行うことがある。この際、列車ダイヤレイアウトの再表示処理が実施される。
【００６３】
こうしたＧＵＩのイベントの例を図１０を用いて説明する。例えば、ユーザがＧＵＩにてＡ駅のエリア９３１０を選択して、その駅構内情報を表示させたり、或いは非表示にさせたりする際、駅構内エリアの表示変更イベントが発生する。また例えば、ユーザが横軸のスクールバー９２１０をクリックして、当該スクールバー９２１０を動かし、作業領域を移動させる際、作業領域の位置を変更するイベントが発生する。また例えば、ＧＵＩのメニュー９１４０にてユーザが時刻情報を変更した場合、ダイヤデータを変更するイベントが発生する。また例えば、ユーザが列車情報の線（スジ）９４１０を選択した場合、スジハイライト設定イベントが発生する。
【００６４】
上記の駅構内エリアの表示変更イベント、ダイヤデータの変更イベント、および作業領域の位置変更イベント、に伴う再表示処理について図１１を用いて説明する。駅構内エリアの表示変更イベントの場合、上述した駅構内エリアの表示・非表示の状況取得ステップ（前記ステップ１１２０）から改めて表示処理を実行し、再表示をすることによって、ユーザが指定した駅構内エリアの表示・非表示に対応する列車ダイヤレイアウトを出力することができる。ここで、駅構内エリアの表示イベントがある際に、従来通りの手法で列車ダイヤレイアウトの再レイアウトをした場合と、本実施形態により再表示を行った場合の各処理時間を、例として処理時間比較図（図１２）のグラフと表にて示す。両者を比較すると、本実施形態の手法を適用すれば従来より処理時間を９４％以上を短縮できることがわかる。
【００６５】
また、ダイヤデータの変更イベントは、ユーザが列車情報をＧＵＩ表示データ２１５０にて変更する際に発生するイベントである。例えば、前記図１０に示す例であれば、ユーザがメニュー９１４０をクリックし、表示されるダイアログボックスにて列車の出発時刻の変更をする場合に生じるイベントが想定できる。このイベントが発生する場合、変更前の列車情報に対して計算された描画要素の表示が不要になるため、前記描画要素管理部２２４０などが、対応する描画要素を、例えば描画要素テーブル５２１０から削除し（１０１３０）、作業領域を表示する。また、対応する描画要素を描画要素テーブル５２１０から削除した後、「描画要素を各分割レイアウトに描く」（前記ステップ１３１５０）処理から再び表示処理を実行することによって、作業領域の再表示処理ができる。なお、上記変更後の対象列車を表示するため、前記ダイヤ図表示部２２２０、ＧＵＩ表示部２２３０、描画要素管理部２２４０のいずれかが、対象列車情報の描画要素を計算し（１０１６０）、直接に前記作業領域に描く（１０１８０）。この作業領域に直接に描く描画要素と、分割レイアウトに描く描画要素とを識別する方法としては、例えば、描画要素テーブル５２１０での情報に作業領域に設定する旨の識別情報を持たせる方法がある。或いは、作業領域用の描画要素のテーブルを別テーブルとして、メモリ上で管理する方法も想定できる。
【００６６】
なお、上記ステップ１０１６０で計算された描画要素は、列車情報の変更が確定されるまで、描画要素テーブル５２１０に追加しない。追加しない理由については下記に説明する。
【００６７】
ＧＵＩの操作にて、ユーザが列車情報を連続的に変更させることがある、例えばドラッグ＆ドロップ操作などがある。この場合、列車情報の変更をユーザが確定する（例：確定用のボタン押下など）まで、各変更に対する再表示処理を連続的に行う必要がある。もし各変更がある度に、ステップ１３１５０以降の表示処理を行う場合、システム２００は、該当の列車情報やその描画要素を遷移表示させながら、全体の列車ダイヤレイアウトの表示処理も行うため、ドラッグ操作のレスポンスが悪くなる課題がある。
【００６８】
そこで、こうした連続的な列車情報の変更がなされる場合、上記の課題を解決するため、描画用データや分割レイアウトの生成、描画要素テーブル５２１０等への設定といった表示処理は、変更開始と変更確定の時点でのみ行う。変更開始と変更確定の時以外で変更がある場合、システム２００は例えば、作業領域に該当描画要素を表示する。変更開始と変更確定の時点以外に前記表示処理を実行しないことで、変更が生じた列車情報に関する描画要素を変更毎に計算して描画要素テーブル５２１０等に追加するのではなく、変更確定まで作業領域に描画要素を描き（１０１８０）、処理性能を向上できる。
【００６９】
他方、前記変更が確定される場合、例えば、ドラッグ＆ドロップの操作が終わる際に、変更が確定された列車情報に対する描画要素を描画要素テーブル５２１０等に追加し、前記描画要素の作業領域設定のための識別情報をクリアし、連続変更の表示処理を終了する（１０１７０）。
【００７０】
一方、作業領域を変更イベントでは、ユーザが横軸のスクロールバーまたは縦軸のスクロールバーにて列車ダイヤレイアウト等に対する作業領域の位置を変更する際に発生するイベントである。この場合、ユーザが表示したい作業エリアの位置のみが変更となるため、前記システム２００は、表示処理として「作業エリアの位置を取得」（１１５０）および「作業エリアに該当する列車ダイヤレイアウトの分を取得、表示」（１１６０）を実行することによって、作業領域を表示できる。
【００７１】
なお、列車ダイヤレイアウトのスジハイライト変更およびアニメーション設定変更イベントに伴う再表示制御処理のフローを図１３に示す。ここで例えば、列車ダイヤレイアウトの描画上にてアニメーションを表示する場合（＝例えば列車ダイヤレイアウトにあるスジを点滅表示）、連続的に対象の描画要素を変更し、変更する度に描画要素を表示することとなる。
【００７２】
また、列車ダイヤレイアウトでの列車線のハイライトについて、ユーザはＧＵＩにて列車情報を変更（例えば列車時刻の変更、列車の複写）する場合、その変更対象の列車線を選択する。システム２００は、ユーザが選択した列車線をハイライト表示することによってユーザが変更対象を識別しやすくする。
【００７３】
なお、本実施形態では、前記スジハイライト、または、アニメーションの表示方法として、列車ダイヤレイアウトを作成して表示するのではなく、作業領域に該当描画要素を描いて表示する処理を採用している。その理由は以下に示す。例えば、アニメーションを表示する場合、上記に説明した、連続的に描画要素の変更が行われるため、その一回一回の変更に伴って列車ダイヤレイアウトを変更すると、表示処理が重くなる。なお、ハイライトの描画要素ではスジを選択されている瞬間しか使用しない、且つ、頻繁にユーザがＧＵＩ操作にて選択対象列車を変更することもあるため、頻繁にハイライトに関する描画要素変更が発生する。従って、変更の度にハイライトにて列車ダイヤレイアウトを変更すると表示処理が重くなる。
【００７４】
上記課題は、ハイライト変更およびアニメーションの表示処理を直接に作業領域に描くことによって解決できる。システム２００は、スジハイライトまたはアニメーションの描画要素を計算し（１１１２０）、作業領域に描画要素を描く（１０１８０）。
【００７５】
以上、本発明を実施するための最良の形態などについて具体的に説明したが、本発明はこれに限定されるものではなく、その要旨を逸脱しない範囲で種々変更可能である。
【００７６】
こうした本実施形態によれば、駅構内エリアの表示状況の変更によって列車ダイヤ図のレイアウトサイズが変わったとしても、各分割レイアウトのサイズ変更が生じず、また、分割レイアウトに対する各描画要素の座標変更等が発生しない。すなわち駅構内エリアの表示状況の変更はあっても、再レイアウト処理が必要とならないため、列車ダイヤ図のＧＵＩ処理に関して高速処理を実現できる。また、ドラッグ＆ドロップなど列車情報を連続的に変更する状況があっても、変更された列車情報に対する描画要素のみをレイアウトすることになるため、列車ダイヤ図のＧＵＩ処理を高速なものとできる。
【００７７】
したがって、列車ダイヤ図のレイアウトに表示させる駅構内情報の描画状況に変更が生じる場合でも、列車ダイヤ図および駅構内情報に関するＧＵＩ処理を高速かつ表示上の齟齬なく実行できる。
【００７８】
本明細書の記載により、少なくとも次のことが明らかにされる。すなわち、前記列車ダイヤ表示処理方法において、前記情報処理装置が、前記処理Ｂ〜処理Ｅの少なくともいずれかを実行した後、前記記憶部の各分割レイアウトにおいて、駅間を跨って描画される設定がされた描画要素を検索し、ここで検索された描画要素を、前記連結された分割レイアウト群の描画上に追加描画する処理を実行するとしてもよい。
【００７９】
また、前記列車ダイヤ表示処理方法において、前記情報処理装置が、出力装置での描画画面内の縦横のスクロールバー位置を、前記描画画面内におけるユーザ作業領域の情報として、当該情報処理装置のＧＵＩ機能より取得し、ここで取得したユーザ作業領域に含まれる描画要素について前記処理Ｂ〜処理Ｅのいずれかを実行する、としてもよい。
【００８０】
また、前記列車ダイヤ表示処理方法において、前記情報処理装置が、出力装置にて既に描画されている各レイアウトの描画要素について、その描画位置の移動操作を入力装置で受けた場合、該当描画要素以外の描画要素については変更せず、該当描画要素に関して登録されていた表示座標のデータを記憶部にて一旦消去し、前記移動操作に伴ってレイアウト上での描画位置が遷移する前記描画要素の座標についてＧＵＩ機能より取得し、この座標を作業用の記憶領域に格納し、入力装置で位置確定の指示を受けた場合に、前記記憶領域の座標値を該当レイアウトにおける前記描画要素の表示座標として設定する、としてもよい。
【符号の説明】
【００８１】
２００  列車ダイヤ表示処理システム
２０１  記憶部
２０２  プログラム
２０３  メモリ
２０４  ＣＰＵ
２０５  入力装置
２０６  出力装置（表示装置）
２１１０  列車情報管理テーブル
２１４０  描画要素管理テーブル
２１５０  ＧＵＩ表示データ
２２２０  ダイヤ図表示部
２２４０  描画要素管理部
【図１】
2011230537.tif 000003
【図２】
2011230537.tif 000004
【図３】
2011230537.tif 000005
【図４】
2011230537.tif 000006
【図５】
2011230537.tif 000007
【図６】
2011230537.tif 000008
【図７】
2011230537.tif 000009
【図９】
2011230537.tif 000010
【図１０】
2011230537.tif 000011
【図１２】
2011230537.tif 000012
【図１３】
2011230537.tif 000013
【図８】
2011230537.tif 000014
【図１１】
2011230537.tif 000015
【図１４】
2011230537.tif 000016