しかしながら、上記に示される従来の技術にあっては、画面の画像データを周期的に会議PC端末へ送信する場合、この画像データはサイズが大きいため送信に時間がかかり会議が中断され集中力を削ぎ会議の効率が低下する。また、全端末に会議資料の変更が反映されない中で説明があると十分な理解が得られないなどの問題点があった。なお、特許文献この方式ではウィンドウ表示状態を管理するサーバーが必要となり、また表示位置については管理されていない。この特許文献2の方式ではウィンドウが表示する内容が更新された場合に表示内容の更新はできない。この特許文献3の場合、会議資料がページ単位にファイル化される必要がある。
また、上書き描画は画面の固定位置に表示されるため表示文書の内容と上書内容が合わなくなり意味をもたなくなるため消去、再描画する手間が発生する。しかし、時間が限られている会議においてはこの手間が会議の集中を削ぐことになる。また、特許文献4の場合、会議資料、上書きが画像データとして保存されデータ量が膨大となる。また、特許文献5の場合、通信コストが高くなり一般のPCは2回線も持っておらず専用端末が必要となる。
また、個人的に表示とは異なるページを見たり、複数の資料が会議に用いられる場合に別の資料を見ることが困難であった。一方、特許文献6の場合、同一ページにおいてスクロール操作が行われるとこれが反映されず画面統一ができなくなる。また、特許文献7の場合、画面データ量が膨大となる。また、会議資料が半ページ分スクロール表示されメモ書きすると半分同じ画像をまた保存することにもなる。また、特許文献2の場合、会議専用プログラムが表示するウィンドウが対象となり会議資料を会議専用APLで作成する必要があり通常業務でしようするプログラム(Officeが最も使われている)でないため覚えようとせず使われないことになる。また、ウィンドウ位置、大きさがあってもウィンドウ内でスクロール表示があれば反映できないことになる。
本発明は、上記に鑑みてなされたものであって、通信データ量を最小限にすることにより、円滑な会議を可能とすることを第1の目的とする。また、本発明は、会議情報の表示状態に上書き位置を自動調整することを第2の目的とする。また、本発明は会議中に会議資料への書き込み、別資料の参照を可能とすることを第3の目的とする。
上述した課題を解決し、目的を達成するために、請求項1にかかる発明は、ネットワーク上に相互通信可能に接続された複数のPC端末と、前記PC端末で作成した会議情報を前記会議情報表示手段および(または)参加するPC端末に表示出力する電子会議システムであって、前記会議情報表示手段および(または)会議に参加するPC端末に表示出力する会議情報の表示内容の変更を監視する表示内容監視手段を備え、会議情報の表示内容に変化があった場合、変更された会議情報の表示内容と同じ情報を他のPC端末に送信することを特徴とする。
この請求項1にかかる発明によれば、複数のPC端末を通信可能に接続して相互に情報を表示して電子会議を行なう際に、会議情報の表示内容に変化があった場合、変更された会議情報の表示内容と同じ情報を他のPC端末に送信することにより、PC画面を共通化するのに必要なデータ量を軽減することが可能になると共に、画面表示変更が遅れることなく全会議端末に反映することが可能になる。
また、請求項2にかかる発明は、前記表示内容監視手段は、前記会議情報が表示される水平スクロール摘み位置を監視することにより水平スクロール操作による表示内容の変更を検知し、会議に参加するPC端末の水平スクロール摘み位置を同値にし、表示画像を共通にすることを特徴とする。
この請求項2にかかる発明によれば、請求項1において、会議情報が表示される水平スクロール摘み位置を監視することにより水平スクロール操作による表示内容の変更を検知し、会議に参加するPC端末の水平スクロール摘み位置を同値にし、表示画像を共通にすることにより、PC画面を共通化するのに必要なデータ量を軽減することが可能になると共に、画面表示変更が遅れることなく全会議端末に反映することが可能になる。
また、請求項3にかかる発明は、前記表示内容監視手段は、前記会議情報が表示される垂直スクロール摘み位置を監視することにより垂直スクロール操作による表示内容の変更を検知し、会議に参加するPC端末の垂直スクロール摘み位置を同値にし、表示画像を共通にすることを特徴とする。
この請求項3にかかる発明によれば、請求項1において、前記会議情報が表示される垂直スクロール摘み位置を監視することにより垂直スクロール操作による表示内容の変更を検知し、会議に参加するPC端末の垂直スクロール摘み位置を同値にし、表示画像を共通にすることにより、PC画面を共通化するのに必要なデータ量を軽減することが可能になると共に、画面表示変更が遅れることなく全会議端末に反映することが可能になる。
また、請求項4にかかる発明は、前記表示内容監視手段は、文書作成プログラムが表示する会議資料のファイル名を取得し、当該会議資料ファイルを会議参加端末へ自動配布することを特徴とする。
この請求項4にかかる発明によれば、請求項1において、文書作成プログラムが表示する会議資料のファイル名を取得し、当該会議資料ファイルを会議参加端末へ自動配布することにより、会議資料の変更における特別な操作が不要となる。
また、請求項5にかかる発明は、前記表示内容監視手段は、文書作成プログラムが表示する会議資料のファイル名を監視することにより会議資料の表示変更を検知し、会議に参加するPC端末の表示ファイルを同ファイルとして画像を共通にすることを特徴とする。
この請求項5にかかる発明によれば、請求項1において、文書作成プログラムが表示する会議資料のファイル名を監視することにより会議資料の表示変更を検知し、会議に参加するPC端末の表示ファイルを同ファイルとして画像を共通にすることにより、会議資料の変更における特別な操作が不要となる。
また、請求項6にかかる発明は、前記表示内容監視手段は、キーボード入力を監視してキーコードを取得し、会議に参加するPC端末の文書アプリケーションへキーコードを渡し、キーボード入力文字をを共通にすることを特徴とする。
この請求項6にかかる発明によれば、請求項1において、キーボード入力を監視してキーコードを取得し、会議に参加するPC端末の文書アプリケーションへキーコードを渡し、キーボード入力文字をを共通にすることにより、通常の会議室内における会議と同様に会議資料の修正や議事録の作成等が可能となる。
また、請求項7にかかる発明は、前記表示内容監視手段は、キーボードによる入力時のキャレット座標、フォント種類、サイズ、色情報を取得し、会議に参加するPC端末のテキスト入力情報を同値として画像を共通にすることを特徴とする。
この請求項7にかかる発明によれば、請求項1において、キーボードによる入力時のキャレット座標、フォント種類、サイズ、色情報を取得し、会議に参加するPC端末のテキスト入力情報を同値として画像を共通にすることにより、通常の会議室内における会議と同様に会議資料の修正や議事録の作成等が可能となる。
また、請求項8にかかる発明は、前記表示内容監視手段は、マウスからの入力、キーボードからの入力を監視し、操作権を持たないPC端末の会議制御用のツールバー操作以外は破棄することを特徴とする。
この請求項8にかかる発明によれば、請求項1において、マウスからの入力、キーボードからの入力を監視し、操作権を持たないPC端末の会議制御用のツールバー操作以外は破棄することにより、誤操作を防止できる。
また、請求項9にかかる発明は、会議情報を作成するPC端末と、前記PC端末で作成した会議情報を前記会議情報表示手段および(または)参加端末に表示出力する電子会議システムであって、前記会議情報表示手段および(または)会議に参加するPC端末に表示出力する会議情報の表示状態に応じて当該会議情報に上書きされた上書き情報の位置を調整する上書き位置調整手段を備えたことを特徴とする。
この請求項9にかかる発明によれば、会議に参加するPC端末に表示出力する会議情報の表示状態に応じて当該会議情報に上書きされた上書き情報の位置を調整することにより、会議資料のページ変更、表示倍率変更、スクロール表示に対して、自動的に描画時の会議資料への上書き位置を算出し、同位置に描画することで効果的な会議資料への上書きが可能となる。
また、請求項10にかかる発明は、前記上書き位置調整手段は、前記上書き情報を消去するときのドラッグ軌跡座標を送信し、受信するPC端末がドラッグ軌跡内の上書き文字を消去し、前記会議情報の表示領域の左上原点座標、幅、高さ、表示倍率、ページ番号を取得し、保存ストローク座標を画面座標へ変換し、ドラッグ軌跡内のストロークデータを削除することを特徴とする。
この請求項10にかかる発明によれば、請求項9において、上書き情報を消去するときのドラッグ軌跡座標を送信し、受信するPC端末がドラッグ軌跡内の上書き文字を消去し、会議情報の表示領域の左上原点座標、幅、高さ、表示倍率、ページ番号を取得し、保存ストローク座標を画面座標へ変換し、ドラッグ軌跡内のストロークデータを削除することにより、会議資料のページ変更、表示倍率変更、スクロール表示に対して、自動的に描画時の会議資料への上書き位置を算出し、同位置に描画することで効果的な会議資料への上書きが可能となる。
また、請求項11にかかる発明は、前記上書き位置調整手段は、前記会議情報のウィンドウ表示位置、大きさの変更を検知し、前記会議情報とこの前記会議情報に上書きされた上書き情報とを整合して再描画することを特徴とする。
この請求項11にかかる発明によれば、請求項9において、会議情報のウィンドウ表示位置、大きさの変更を検知し、前記会議情報とこの前記会議情報に上書きされた上書き情報とを整合して再描画することにより、会議資料のページ変更、表示倍率変更、スクロール表示に対して、自動的に描画時の会議資料への上書き位置を算出し、同位置に描画することで効果的な会議資料への上書きが可能となる。
また、請求項12にかかる発明は、前記上書き位置調整手段は、前記会議情報のスクロール表示をスクロール摘み位置の変化により自動検知し、前記会議情報とこの前記会議情報に上書きされた上書き情報の上書き位置を描画時の位置と整合して再描画することを特徴とする。
この請求項12にかかる発明によれば、請求項9において、会議情報のスクロール表示をスクロール摘み位置の変化により自動検知し、前記会議情報とこの前記会議情報に上書きされた上書き情報の上書き位置を描画時の位置と整合して再描画することにより、会議資料のページ変更、表示倍率変更、スクロール表示に対して、自動的に描画時の会議資料への上書き位置を算出し、同位置に描画することで効果的な会議資料への上書きが可能となる。
また、請求項13にかかる発明は、前記上書き位置調整手段は、前記会議情報の表示ページの変更を検知し、前記会議情報とこの前記会議情報に上書きされた上書き情報の上書き位置を描画時の位置と整合して再描画することを特徴とする。
この請求項13にかかる発明によれば、請求項9において、会議情報の表示ページの変更を検知し、前記会議情報とこの前記会議情報に上書きされた上書き情報の上書き位置を描画時の位置と整合して再描画することにより、会議資料のページ変更、表示倍率変更、スクロール表示に対して、自動的に描画時の会議資料への上書き位置を算出し、同位置に描画することで効果的な会議資料への上書きが可能となる。
また、請求項14にかかる発明は、前記上書き位置調整手段は、前記会議情報の表示倍率の変更を検知し、前記会議情報とこの前記会議情報に上書きされた上書き情報の上書き位置を描画時の位置と整合して再描画することを特徴とする。
この請求項14にかかる発明によれば、請求項9において、会議情報の表示倍率の変更を検知し、前記会議情報とこの前記会議情報に上書きされた上書き情報の上書き位置を描画時の位置と整合して再描画することにより、会議資料のページ変更、表示倍率変更、スクロール表示に対して、自動的に描画時の会議資料への上書き位置を算出し、同位置に描画することで効果的な会議資料への上書きが可能となる。
また、請求項15にかかる発明は、前記上書き位置調整手段は、他の会議者の上書きに追加上書きする場合、他の会議者上書きをペンに設定できない色、単色にて再描画することを特徴とする。
この請求項15にかかる発明によれば、請求項9において、他の会議者の上書きに追加上書きする場合、他の会議者上書きをペンに設定できない色、単色にて再描画することにより、他の意見を参照しながら、あるいは比較しながら自分の意見を上書きすることが可能になる。
また、請求項16にかかる発明は、前記上書き位置調整手段は、再描画を行なう際、上書き者を示すボタンを再描画色にて表示し、ボタン操作により上書きの消去、再表示を可能とすることを特徴とする。
この請求項16にかかる発明によれば、請求項15において、再描画を行なう際、上書き者を示すボタンを再描画色にて表示し、ボタン操作により上書きの消去、再表示を可能とすることにより、他の意見の表示、非表示が行なえ、邪魔となる場合に非表示、し参照する場合に表示することが可能となる。
また、請求項17にかかる発明は、前記上書き位置調整手段は、複数者の上書きを同時に描画する場合、ペンに設定できない色またはそれぞれ異なる単色にて再描画することを特徴とする。
この請求項17にかかる発明によれば、請求項9または15において、複数者の上書きを同時に描画する場合、ペンに設定できない色またはそれぞれ異なる単色にて再描画することにより、会議参加者それぞれの意見が一目瞭然にわかる。
また、請求項18にかかる発明は、ネットワーク上に相互通信可能に接続された複数のPC端末と、前記PC端末で作成した会議情報を前記会議情報表示手段および(または)参加するPC端末に表示出力する電子会議システムであって、前記PC端末間で相互に会議情報による電子会議を行なう会議モードと、会議から抜け出し他の資料を閲覧する資料閲覧モードとを備え、この資料閲覧モードを実行した後、前の会議モードに復帰可能にしたことを特徴とする。
この請求項18にかかる発明によれば、電子会議において、PC端末間で相互に会議情報による電子会議を行なう会議モードと、会議から抜け出し他の資料を閲覧する資料閲覧モードとを備え、この資料閲覧モードを実行した後、前の会議モードに復帰可能にしたことにより、会議を抜け、個別に会議資料のページ捲り、別資料の参照が可能となる。
また、請求項19にかかる発明は、前記資料閲覧モードは、前記会議情報の任意ページを表示し、上書きペンによる描画軌跡を取得し、当該描画軌跡のマウス座標を前記会議情報の座標へ変換し、会議情報のファイル、ページ番号と関連付けてストローク情報を保存することを特徴とする。
この請求項19にかかる発明によれば、請求項18において、会議情報の任意ページを表示し、上書きペンによる描画軌跡を取得し、当該描画軌跡のマウス座標を会議情報の座標へ変換し、会議情報のファイル、ページ番号と関連付けてストローク情報を保存することにより、電子会議において、会議を抜け、個別に会議資料への書き込みが可能となる。
また、請求項20にかかる発明は、前記資料閲覧モードは、前記会議情報の任意ページを表示し、上書き操作が選択されたとき、前記会議情報の表示ウィンドウ情報および表示情報を取得し、上書きファイルを自動検索し、前記会議情報の座標から画面座標を算出して描画時の位置へ上書きを表示することを特徴とする。
この請求項20にかかる発明によれば、請求項18において、会議情報の任意ページを表示し、上書き操作が選択されたとき、前記会議情報の表示ウィンドウ情報および表示情報を取得し、上書きファイルを自動検索し、前記会議情報の座標から画面座標を算出して描画時の位置へ上書きを表示することにより、電子会議において、会議を抜け、個別に会議資料への書き込みが可能となる。
また、請求項21にかかる発明は、前記資料閲覧モードは、前記会議情報のスクロール操作、ページ捲り操作を自動検知し、前記会議情報の表示ウィンドウ情報および表示情報を取得し、前記会議情報の座標から画面座標を算出して描画時の位置へ上書きを再表示することを特徴とする。
この請求項21にかかる発明によれば、請求項18において、会議情報のスクロール操作、ページ捲り操作を自動検知し、前記会議情報の表示ウィンドウ情報および表示情報を取得し、前記会議情報の座標から画面座標を算出して描画時の位置へ上書きを再表示することにより、電子会議において、会議を抜け、個別に会議資料への書き込みが可能となる。
また、請求項22にかかる発明は、前記資料閲覧モードは、上書きページ一覧表示(サムネイル表示)ページ選択により上書きされた前記会議情報のページを表示し、前記会議情報のウィンドウ情報および表示情報を取得し、前記会議情報の座標から画面座標を算出て描画時の位置へ上書きを表示することを特徴とする。
この請求項22にかかる発明によれば、請求項18において、上書きページ一覧表示(サムネイル表示)ページ選択により上書きされた会議情報のページを表示し、前記会議情報のウィンドウ情報および表示情報を取得し、前記会議情報の座標から画面座標を算出て描画時の位置へ上書きを表示することにより、電子会議において、会議を抜け、個別に会議資料への書き込みが可能となる。
また、請求項23にかかる発明は、さらに、電子会議中において、発言ボタンにより表示中の会議情報に対する上書きファイルを自動検索し、上書きページ一覧表示(サムネイル表示)ページ選択により同ページへの発言要求を行なう発言処理手段を備えたことを特徴とする。
この請求項23にかかる発明によれば、請求項18において、さらに、発言ボタンにより表示中の会議情報に対する上書きファイルを自動検索し、上書きページ一覧表示(サムネイル表示)ページ選択により同ページへの発言要求を行なう発言処理手段を備えたことにより、発言ページが容易に検索が可能になる。
また、請求項24にかかる発明は、前記発言処理手段は、会議主催者により発言が許可された場合、自動的に発言ページが全てのPC端末に表示することを特徴とする。
この請求項24にかかる発明によれば、請求項23において、会議主催者により発言が許可された場合、自動的に発言ページが全てのPC端末に表示することにより、発言ページを迅速に表示することが可能になる。
また、請求項25にかかる発明は、前記発言処理手段は、会議主催者により発言が許可された場合、前記会議情報の表示ウィンドウ情報および表示情報を取得し、前記会議情報の座標から画面座標を算出して描画時の位置へ上書き情報を表示することを特徴とする。
この請求項25にかかる発明によれば、請求項23または24において、会議主催者により発言が許可された場合、前記会議情報の表示ウィンドウ情報および表示情報を取得し、前記会議情報の座標から画面座標を算出して描画時の位置へ上書き情報を表示することにより、質問内容を明確にすることが可能になる。
また、請求項26にかかる発明は、前記発言処理手段は、発言端末の会議情報のスクロール操作、ページ捲り操作を自動検知し、前記会議情報の表示ウィンドウ情報および表示情報を取得し、前記会議情報の座標から画面座標を算出して描画時の位置へ上書き情報を再表示することを特徴とする。
この請求項26にかかる発明によれば、請求項23、24または25において、発言端末の会議情報のスクロール操作、ページ捲り操作を自動検知し、前記会議情報の表示ウィンドウ情報および表示情報を取得し、前記会議情報の座標から画面座標を算出して描画時の位置へ上書き情報を再表示することにより、質問内容を明確にすることが可能になる。
本発明(請求項1)にかかる電子会議システムは、複数のPC端末を通信可能に接続して相互に情報を表示して電子会議を行なう際に、会議情報の表示内容に変化があった場合、変更された会議情報の表示内容と同じ情報を他のPC端末に送信することにより、PC画面を共通化するのに必要なデータ量を軽減することが可能になると共に、画面表示変更が遅れることなく全会議端末に反映することが可能になるため、円滑なPC会議が実現するという効果を奏する。
また、本発明(請求項2)にかかる電子会議システムは、請求項1において、会議情報が表示される水平スクロール摘み位置を監視することにより水平スクロール操作による表示内容の変更を検知し、会議に参加するPC端末の水平スクロール摘み位置を同値にし、表示画像を共通にすることにより、PC画面を共通化するのに必要なデータ量を軽減することができると共に、画面表示変更が遅れることなく全会議端末に反映することが可能になるため、円滑なPC会議が実現するという効果を奏する。
また、本発明(請求項3)にかかる電子会議システムは、請求項1において、前記会議情報が表示される垂直スクロール摘み位置を監視することにより垂直スクロール操作による表示内容の変更を検知し、会議に参加するPC端末の垂直スクロール摘み位置を同値にし、表示画像を共通にすることにより、PC画面を共通化するのに必要なデータ量を軽減することが可能になると共に、画面表示変更が遅れることなく全会議端末に反映することが可能になるため、円滑なPC会議が実現するという効果を奏する。
また、本発明(請求項4)にかかる電子会議システムは、請求項1において、文書作成プログラムが表示する会議資料のファイル名を取得し、当該会議資料ファイルを会議参加端末へ自動配布することにより、会議資料の変更における特別な操作が不要となるため、円滑なPC会議が実現するという効果を奏する。
また、本発明(請求項5)にかかる電子会議システムは、請求項1において、文書作成プログラムが表示する会議資料のファイル名を監視することにより会議資料の表示変更を検知し、会議に参加するPC端末の表示ファイルを同ファイルとして画像を共通にすることにより、会議資料の変更における特別な操作が不要となるため、円滑なPC会議が実現するという効果を奏する。
また、本発明(請求項6)にかかる電子会議システムは、請求項1において、キーボード入力を監視してキーコードを取得し、会議に参加するPC端末の文書アプリケーションへキーコードを渡し、キーボード入力文字をを共通にすることにより、通常の会議室内における会議と同様に会議資料の修正や議事録の作成等が可能となるため、PC会議の用途を高められて実際に人が集まらなければ開催できない会議を減らすことができる。このため、移動による時間の無駄、交通費、宿泊費などを軽減することができるという効果を奏する。
また、本発明(請求項7)にかかる電子会議システムは、請求項1において、キーボードによる入力時のキャレット座標、フォント種類、サイズ、色情報を取得し、会議に参加するPC端末のテキスト入力情報を同値として画像を共通にすることにより、通常の会議室内における会議と同様に会議資料の修正や議事録の作成等が可能となるため、PC会議の用途を高められて実際に人が集まらなければ開催できない会議を減らすことができる。このため、移動による時間の無駄、交通費、宿泊費などを軽減することができるという効果を奏する。
また、本発明(請求項8)にかかる電子会議システムは、請求項1において、マウスからの入力、キーボードからの入力を監視し、操作権を持たないPC端末の会議制御用のツールバー操作以外は破棄することにより、誤操作が防止されるので、円滑なPC会議ができるという効果を奏する。
また、本発明(請求項9)にかかる電子会議システムは、会議に参加するPC端末に表示出力する会議情報の表示状態に応じて当該会議情報に上書きされた上書き情報の位置を調整することにより、会議資料のページ変更、表示倍率変更、スクロール表示に対して、自動的に描画時の会議資料への上書き位置を算出し、同位置に描画することで効果的な会議資料への上書きが可能となるため、会議の効率化、理解度の向上を図ることができるという効果を奏する。
また、本発明(請求項10)にかかる電子会議システムは、請求項9において、上書き情報を消去するときのドラッグ軌跡座標を送信し、受信するPC端末がドラッグ軌跡内の上書き文字を消去し、会議情報の表示領域の左上原点座標、幅、高さ、表示倍率、ページ番号を取得し、保存ストローク座標を画面座標へ変換し、ドラッグ軌跡内のストロークデータを削除することにより、会議資料のページ変更、表示倍率変更、スクロール表示に対して、自動的に描画時の会議資料への上書き位置を算出し、同位置に描画することで効果的な会議資料への上書きが可能となるため、会議の効率化、理解度の向上を図ることができるという効果を奏する。
また、本発明(請求項11)にかかる電子会議システムは、請求項9において、会議情報のウィンドウ表示位置、大きさの変更を検知し、前記会議情報とこの前記会議情報に上書きされた上書き情報とを整合して再描画することにより、会議資料のページ変更、表示倍率変更、スクロール表示に対して、自動的に描画時の会議資料への上書き位置を算出し、同位置に描画することで効果的な会議資料への上書きが可能となるため、会議の効率化、理解度の向上を図ることができるという効果を奏する。
また、本発明(請求項12)にかかる電子会議システムは、請求項9において、会議情報のスクロール表示をスクロール摘み位置の変化により自動検知し、前記会議情報とこの前記会議情報に上書きされた上書き情報の上書き位置を描画時の位置と整合して再描画することにより、会議資料のページ変更、表示倍率変更、スクロール表示に対して、自動的に描画時の会議資料への上書き位置を算出し、同位置に描画することで効果的な会議資料への上書きが可能となるため、会議の効率化、理解度の向上を図ることができるという効果を奏する。
また、本発明(請求項13)にかかる電子会議システムは、請求項9において、会議情報の表示ページの変更を検知し、前記会議情報とこの前記会議情報に上書きされた上書き情報の上書き位置を描画時の位置と整合して再描画することにより、会議資料のページ変更、表示倍率変更、スクロール表示に対して、自動的に描画時の会議資料への上書き位置を算出し、同位置に描画することで効果的な会議資料への上書きが可能となるため、会議の効率化、理解度の向上を図ることができるという効果を奏する。
また、本発明(請求項14)にかかる電子会議システムは、請求項9において、会議情報の表示倍率の変更を検知し、前記会議情報とこの前記会議情報に上書きされた上書き情報の上書き位置を描画時の位置と整合して再描画することにより、会議資料のページ変更、表示倍率変更、スクロール表示に対して、自動的に描画時の会議資料への上書き位置を算出し、同位置に描画することで効果的な会議資料への上書きが可能となるため、会議の効率化、理解度の向上を図ることができるという効果を奏する。
また、本発明(請求項15)にかかる電子会議システムは、請求項9において、他の会議者の上書きに追加上書きする場合、他の会議者上書きをペンに設定できない色、単色にて再描画することにより、他の意見を参照しながら、あるいは比較しながら自分の意見を上書きすることが可能になるため、理解度の向上を図ることができるという効果を奏する。
また、本発明(請求項16)にかかる電子会議システムは、請求項15において、再描画を行なう際、上書き者を示すボタンを再描画色にて表示し、ボタン操作により上書きの消去、再表示を可能とすることにより、他の意見の表示、非表示が行なえ、邪魔となる場合に非表示、し参照する場合に表示することが可能となるため、理解度の向上を図ることができるという効果を奏する。
また、本発明(請求項17)にかかる電子会議システムは、請求項9または15において、複数者の上書きを同時に描画する場合、ペンに設定できない色またはそれぞれ異なる単色にて再描画することにより、会議参加者それぞれの意見が一目瞭然にわかるため、会議の効率化を図ることができるという効果を奏する。
また、本発明(請求項18)にかかる電子会議システムは、電子会議において、PC端末間で相互に会議情報による電子会議を行なう会議モードと、会議から抜け出し他の資料を閲覧する資料閲覧モードとを備え、この資料閲覧モードを実行した後、前の会議モードに復帰可能にしたことにより、会議を抜け、個別に会議資料のページ捲り、別資料の参照が可能となるため、紙資料による会議と同様に形態が実現し、電子会議の円滑化を図ることができるという効果を奏する。
また、本発明(請求項19)にかかる電子会議システムは、請求項18において、会議情報の任意ページを表示し、上書きペンによる描画軌跡を取得し、当該描画軌跡のマウス座標を会議情報の座標へ変換し、会議情報のファイル、ページ番号と関連付けてストローク情報を保存することにより、電子会議において、会議を抜け、個別に会議資料への書き込みが可能となるため、紙資料による会議と同様に形態が実現し、電子会議の円滑化を図ることができるという効果を奏する。
また、本発明(請求項20)にかかる電子会議システムは、請求項18において、会議情報の任意ページを表示し、上書き操作が選択されたとき、前記会議情報の表示ウィンドウ情報および表示情報を取得し、上書きファイルを自動検索し、前記会議情報の座標から画面座標を算出して描画時の位置へ上書きを表示することにより、電子会議において、会議を抜け、個別に会議資料への書き込みが可能となるため、紙資料による会議と同様に形態が実現し、電子会議の円滑化を図ることができるという効果を奏する。
また、本発明(請求項21)にかかる電子会議システムは、請求項18において、会議情報のスクロール操作、ページ捲り操作を自動検知し、前記会議情報の表示ウィンドウ情報および表示情報を取得し、前記会議情報の座標から画面座標を算出して描画時の位置へ上書きを再表示することにより、電子会議において、会議を抜け、個別に会議資料への書き込みが可能となるため、紙資料による会議と同様に形態が実現し、電子会議の円滑化を図ることができるという効果を奏する。
また、本発明(請求項22)にかかる電子会議システムは、請求項18において、上書きページ一覧表示(サムネイル表示)ページ選択により上書きされた会議情報のページを表示し、前記会議情報のウィンドウ情報および表示情報を取得し、前記会議情報の座標から画面座標を算出て描画時の位置へ上書きを表示することにより、電子会議において、会議を抜け、個別に会議資料への書き込みが可能となるため、紙資料による会議と同様に形態が実現し、電子会議の円滑化を図ることができるという効果を奏する。
また、本発明(請求項23)にかかる電子会議システムは、請求項18において、さらに、発言ボタンにより表示中の会議情報に対する上書きファイルを自動検索し、上書きページ一覧表示(サムネイル表示)ページ選択により同ページへの発言要求を行なう発言処理手段を備えたことにより、発言ページが容易に検索が可能になるため、電子会議の効率化を図ることができるという効果を奏する。
また、本発明(請求項24)にかかる電子会議システムは、請求項23において、会議主催者により発言が許可された場合、自動的に発言ページが全てのPC端末に表示することにより、発言ページを迅速に表示することが可能になるため、電子会議の効率化を図ることができるという効果を奏する。
また、本発明(請求項25)にかかる電子会議システムは、請求項23または24において、会議主催者により発言が許可された場合、前記会議情報の表示ウィンドウ情報および表示情報を取得し、前記会議情報の座標から画面座標を算出して描画時の位置へ上書き情報を表示することにより、質問内容を明確にすることが可能になるため、電子会議の効率化を図ることができるという効果を奏する。
また、本発明(請求項26)にかかる電子会議システムは、請求項23、24または25において、発言端末の会議情報のスクロール操作、ページ捲り操作を自動検知し、前記会議情報の表示ウィンドウ情報および表示情報を取得し、前記会議情報の座標から画面座標を算出して描画時の位置へ上書き情報を再表示することにより、質問内容を明確にすることが可能になるため、電子会議の効率化を図ることができるという効果を奏する。
以下に添付図面を参照して、この発明にかかる電子会議システムの最良な実施の形態を詳細に説明する。なお、本明細書に記載するWindows(登録商標)は米マイクロソフト社の登録商標であり、以下、その都度の明記を省略する。
(第1の実施の形態)
この実施の形態では、通信データ量を最小限にすることにより円滑な会議を可能とするものである。また、複数の会議資料を用いて会議を行なう場合、会議資料の配布に何らかの操作が必要となれば円滑な会議を妨げることになり、また、操作が不明であれば他端末に配布できず会議の進行を止めることになる。そこで、会議資料の変更を円滑にするものである。また、原案を作成するなどの会議においては会議中に会議資料の修正が発生する。この入力内容が全会議端末に反映されないと内容の確認などが曖昧となり効果的な会議ができなくなる。そこで、本発明は会議中におけ会議資料への追記を可能にするものである。さらに、間違って操作した結果が画面表示に反映され、自端末のみ表示内容が変更されると会議の内容が判らなくなる。そこで、本発明は誤操作による表示変更を防止するものである。以下、これらを解決する具体的な例について詳述する。
図1−1〜図1−3は、本発明の第1の実施の形態にかかるPC会議システムの構成例を示すブロック図である。これらの図に示すように、会議システムには、離れた場所に通信ネットワークを介して相互通信可能に接続された端末を用いた「多地点会議」、会議室などにおいて通信ネットワークを介して相互通信可能に接続された端末を用いた「室会議」、机上での会議や連絡などを行なう「机上会議」に分けられる。なお、この明細書においてはパーソナルコンピュータの機能を有する端末をPCあるいはPC端末と略して記述する。
これらの図において、符号10はLAN(Local Area Network:企業情報通信網)、符号20はスクリーン、符号30はプロジェクタ、符号40はルータ、符号50はWAN(Wide Area Network:広域通信網)、符号60は基地局、符号70は一般の電話、符号75は電話回線、符号100TはタブレットPC、符号100Tmは無線通信によるタブレットPC、符号100Pは一般的に普及されているパーソナルコンピュータ、符号110は表示一体型座標入力装置(PDP:液晶リアプロジェクタなど)である。
タブレットPC100T(図1−1下側)は、LAN10、ルータ40、WAN50を介して遠隔地、LAN10内の各PC端末と接続されている。大型の表示一体型座標入力装置110をディスプレイとするPC端末は、会議室などに設置され複数の人に画面が共有される。タブレットPC100Tmは、無線モデムにより構外から他のPC端末と接続される。タブレットPC100T(図1−1上側)は、プロジェクタ30へ画像出力、スクリーン表示によって画面を共有する。一般的なPC100Pは、ペン操作に比べて操作性が劣るがマウスで操作を行なう。なお、会議で使用するプログラムは各PC端末に存在する。
また、会議資料を作成する文書作成プログラムは表示文書の「ページ情報」(Microsot Wordにおける「ページ番号」、Excelにおける「シート番号」、PowerPointにおける「スライド番号」等)、「表示倍率」(50%、100%等)、表示ファイル名の取得、指定機能を提供するものとする。また、OSが提供するAPLウィンドウの位置、大きさ、スクロール摘み位置の取得、指定機能により、各PC端末の会議資料表示を共通化、実施する会議における会議資料閲覧、発言方式を請求の範囲とする。(現在この機能はMicrosoft WordEXcel、PowerPointにより提供されている。また、文書作成プログラムは各PC端末に存在するものとする。)
図2は、図1における表示一体型座標入力装置110の構成を示す説明図である。ここでは、表示一体型座標入力装置110として、大型(50インチ、60インチなど)の液晶プロジェクタを例にとって説明する。この表示一体型座標入力装置110は、大きくは、座標入力装置111、表示装置112、ホスト装置113から構成されている。座標入力装置111は、表示装置112の画面を隠さないように設置された画面上に触れた座標指示物の位置を表示装置112の画素(ピクセル)数(X軸方向1024、Y軸方向768など)に対応した(X,Y)座標を周期的(5ms、10msなど)を検出し、ホスト装置113へPCI/F(RS232C、USBなどの通信手段)を介して送出する。表示装置112は、ホスト装置113が出力するRGB画像データを液晶画面、PDP画面へ表示する。
図3は、図2の座標入力装置111における座標検知方式を示す説明図である。ここでは、光遮断方式を例にとって説明する。左座標指示物検知器115、右座標指示物検知器116は、半導体レーザーにより照射光を発光し、光再帰性販社部材114により反射される光を検知してアナログデータに変換し、座標検知制御装置117へ送出する。画面上に指、ペンなどの座標指示物がない場合、照射光は光再帰性販社部材114により180度反対方向に反射され受光される(画面右側の矢印参照)。
他方、座標指示物が画面上に存在する場合、照射光は遮られ光再帰性販社部材114に反射されず左座標指示物検知器115、右座標指示物検知器116は受光しない。この受光のない方向(光遮断角)を左座標指示物検知器115、右座標指示物検知器116により左光遮断角度(θL)、右光遮断角度(θR)を検出し、図示するH,W,θL,θRから下記の式にしたがって座標指示物のX座標、Y座標を算出する。
X=W×tanθR/(tanθL+tanθR)
Y=H−W×tanθL×tanθR/(tanθL+tanθR)
その後、この検知座標は、ホストPC113に標準装備されているRS232C、USBなどの通信手段により通知される。
図4は、図1におけるタブレットPCの構成を示す説明図である。タブレットPCは、キーボードとマウス操作を前提とする既存のPCに代わり、ペンでマウスの代わりに操作し、キーボードの代わりにテキスト入力を手書き文字描画、あるいは文字認識により行なえるタッチパネルが標準装備になっている。また、米MicrOSoft社からタブレットPC用OSである「Windows(登録商標) PC Tablet PC EditiON」がリリースされ、手書き文字認識エンジン、音声認識エンジンなどが提供されている。
タブレットPCは、一般的なノートPCと同様に液晶ディスプレイとキーボード、マウスで構成され同様の操作が可能になる。また、図4右側に、ディスプレイを180度回転させ折りたたんだ状態を示す。電子ペン101とタブレットPCにより内臓されたセンサーによりディスプレイ上の電子ペン101の座標位置を検知し、マウスのクリック、ドラッグ操作をエミュートする。水平のディスプレイと電子ペン101によりマウス操作では困難な手書き文字が紙に文字を書く感覚で描画可能になる。
図4右側下部に、電子ペン101が描画するディスプレイ102の構成を示す。電子ペン101が直接接触する面には強化ガラス102aが設けられ、液晶ディスプレイユニット102bが傷つくのを防止する。液晶ディスプレイユニット102bの下には電子ペン101の位置を検知する電磁誘導センサーユニット102cが設けられ、ディスプレイの画像品質を損なわない構造となっている。なお、ここでは、ディスプレイを折りたたむ形式を例にとったが、ディスプレイ部分を取り外せるタイプもある。
図5−1は、図4における電磁誘導による座標検知方式例を示す説明図である。この図において、コイル104とコンデンサ105を有する共振回路103が電子ペン101に内臓され、電磁誘導センサーユニット102cのセンサーコイル106に流れる電流による磁界により、コイル103に誘導起電圧が生じ、コンデンサ104を有する共振回路103が励磁され共振電流が流れる。センサーコイル106は、座標検知精度に比例した密度に設置される。この図ではX軸方向を検知するためのセンサーコイルの一部を示している。図示しないが、これと直角方向にY軸方向を検知するためのセンサーコイルが配置されている。座標検知制御装置107は、送受切替スイッチ108を制御して送受切替スイッチ108をACに接続し、交流電源からセンサーコイルに電流を流し、X軸コイル切替スイッチ109を制御し、高速にスイッチを切り替え順次センサーコイルへ電流を流す。これにより、センサーコイル上に順次磁界が発生する。この磁界により電子ペン101が共振することになる。つぎに、送受切替スイッチ108をBCに接続し、X軸コイル切替スイッチ109を順次高速に切り替える。このとき、電子ペン101の共振電流が発する磁界によりセンサーコイルに誘導電圧が発生する。このセンサーコール106に発生する誘導起電圧を増幅し測定(V)する。
図5−2に上記の誘導起電圧分布図を示す。電子ペン101がセンサーコイル106の(2)上にある場合、センサーコイル106の(2)から受信される誘導起電圧がもっとも高くなる。これにより、誘導起電圧分布のもっとも高い点を検出することによりX座標が確定する。また、図示していないが同様にしてY座標を確定する。
このように検知した電子ペン101の座標は、PCI/F(RS232C、USBなど汎用I/Fまたは専用I/F)によりPCへ通知される。なお、座標検知制御装置107はディスプレイ102に内蔵されている。
つぎに、図6を参照しウィンドウ情報取得について説明する。ウィンドウ情報はOS(オペレーションシステム)が提供するI/F(インターフェース)を介して取得する。画面幅(SW)、画面高さ(SH)を取得する(図6[1]参照)。画面がXGAである場合、SW(1024)、SH(768)が取得されることになる。文書を表示するAPLウィンドウの左上原点座標(X,Y)、ウィンドウ幅(W)、ウィンドウ高さ(H)を取得する(図6[2]参照)。ウィンドウキャプション情報を取得する。ウィンドウキャプションには一般的にプログラム名、開いているファイル名が設定される(図6[3]参照)。
つぎに、図7を参照し文書情報取得について説明する。文書作成プログラムが提供するI/Fを介して、開いている文書ファイルパス、表示ページ番号(Excelはシート番号、PowerPointはスライド番号)、表示倍率を取得する(図7[1]参照)。OSが提供するI/Fを介して水平スクロール摘み位置(PH)を取得する(図7[2]参照)。OSが提供するI/Fを介して垂直スクロール摘み位置(PV)を取得する(図7[3]参照)。
つぎに、図8を参照しテキスト入力情報取得について説明する。OSが提供するI/Fを介してフォントの種類、サイズ、色を取得する(図8[1]参照)。OSが提供するI/Fを介してテキストの入力座標(キャレット座標)を取得する(図8[2]参照)。
つぎに、図9を参照し会議画面統一方法について説明する。操作権端末は文書APL(文書作成プログラム)ウィンドウ表示位置、大きさ、文書のページ番号、表示倍率、文書ファイル名、スクロール摘み位置を監視、変化があった場合「画面表示パケット120」データを他端末へ送信する(図9[1]参照)。受信端末は、文書ファイルを作業領域に作成、文書ファイルにより文書APLを起動する(図9[2]参照)。OSが提供するI/Fを介して文書作成APLウィンドウを左上原点座標(X,Y)、ウィンドウ幅(W)、ウィンドウ高さ(H)へ表示する(図9[3]参照)。文書作成プログラムが提供するI/Fを介してページ番号、表示倍率を変更する(図9[4]参照)。OSが提供するI/Fを介して水平スクロール摘み位置(PH)へ移動する(図9[5]参照)。OSが提供するI/Fを介して水平スクロール摘み位置(PV)へ移動する(図9[6]参照)。
つぎに、図10を参照しテキスト入力表示方法について説明する。キーボード入力を監視、キーボード入力開始時キャレット座標、フォント情報を取得「テキストパケット122」により他端末へ送信する(図10[1]参照)。テキストパケット122に続きキーボード入力データを「キーボードパケット121」により送信する(図10[2]参照)。OSが提供するI/Fを介してフォント種類、サイズ、色を設定する(図10[3]参照)。OSが提供するI/Fを介してキャレット座標へ移動する(図10[4]参照)。OSが提供するキーボードI/Fへキーコードを出力する(図10[5]参照)。このキーコードは文書APLへ渡り、かな漢変換などが施されキャレット座標から設定されたフォントにより表示される。
つぎに、図11を参照しPC会議制御について説明する。マウスデータを監視(WidnowsにおけるHook機能)、マウス操作(タブレットPCペン操作)によるマウスデータを全て入力、マウスI/F129を介して文書APL131へ渡す。マウス入力をトリガとして表示中の「表示ファイル名」、「ページ番号」、「表示倍率」、「水平スクロール摘み位置」、「垂直スクロール位置」、APL文章ウィンドウ「左上原点座標」「幅」、「高さ」を取得、変化がある場合、「画面表示パケット」により各端末へ送信する。また、キーボードデータを監視(Windows(登録商標)におけるHook機能)、キーボードにより入力されるキーコードを全て入力、キーボードI/F130を介して文書APL131へ渡す。また、キャレット座標、テキスト入力する「フォント種類」、「フォントサイズ」、「フォント色」を取得「テキストパケット」、入力キーコードを「キーボードパケット」により各端末へ送信する。マイクからの音声データを「音声パケット」により各端末へ送信する。また、他端末から音声データパケットを受信スピーカへ出力する。文書APL131から「表示ファイル名」、「ページ番号」、「表示倍率」を取得する。文書APLウィンドウの「左上原点座標」、「ウインドウ幅」、「ウィンドウ高さ」、「水平スクロール摘み位置」、「垂直スクロール摘み位置」、テキスト入力時の「キャレット座標」、「フォント種類」、「フォントサイズ」、「フォント色」を取得する。会議データパケット134を送受信する。マウスデータを監視、非操作権端末はマウスデータ入力を文書APL131へ渡さず破棄する。会議制御ツールバーへの操作は実行する。キーボードデータを監視、非操作権端末はキーコードを文書APL131へ渡さず破棄する。「音声パケット」の音声データをスピーカへ出力する。また、マイクからの音声データを「音声データパケット」により各端末へ送信する。「キーボードパケット」のキーコードを出力する。「画面表示パケット」のページ番号、表示倍率へ文書表示する。また、テキスト入力のフォント種類、サイズ、色を設定する。「会議ファイルパケット」によりファイルを作成、ファイルを表示する文書APLを起動する。「画面表示パケット」により文書APLウィンドウを左上原点座標、幅、高さへ表示、「水平スクロール摘み位置」、「垂直スクロール摘み位置」へ移動する。会議データパケット134を送受信する。
つぎに、図12を参照し会議制御プログラムの構成について説明する。会議開始制御135は、会議制御プログラムが起動時に実行され初期設定、独立して動作するマウス入力制御、キーボード入力制御、音声入力制御、会議パケット受信制御を起動する。マウス入力制御136は、タブレットPCのペン、あるいはマウスによるマウスデータを入力、文書APLのウィンドウ情報、文書情報を取得、変化がある場合「会議ファイルパケット144」、「画面表示パケット120」を作成し送信する。また、操作権ツールバー制御により「操作権パケット145」、「会議終了パケット146」を作成送信する。キーボード入力制御137は、キーボードデータを入力、「テキストパケット122」、「キーボードパケット121」を作成送信する。操作権がない場合は入力データを破棄する。音声入力制御138は、マイクによる音声データを入力、「音声パケット147」を作成し送信する。会議パケット受信制御139は、ネットワーク網を介して会議データパケットを受信実行する。
会議開始パケット143は、会議開始ダイアログボックスを表示、会議メンバテーブルを設定する。会議ファイルパケット144は、会議ファイルを作成、文書APLを起動し表示する。画面表示パケット120は、ウィンドウ表示、文書表示を変更する。操作権パケット145は、画面操作権の獲得制御を実行する。テキストパケット122は、テキスト入力のフォント情報、キャレット座標を設定する。キーボードパケット121は、キーボードから入力されたキーコードを文書APL131へ渡す。会議終了パケット146は、PC会議を終了する。会議メンバテーブル140は、会議開始制御、マウス入力制御、キーボード入力制御、音声入力制御、会議パケット受信制御に共通に参照、変更されPC会議参加メンバの情報が設定される。画面表示テーブル141は、画面表示情報が設定される。会議ファイルテーブル142は、会議資料として表示されるファイル情報が設定される。会議ファイル156,157は、文書APL131が表示するファイルが格納される。
つぎに、図13を参照し会議時ネットワークを介して送受信する会議データパケットの構造について説明する。会議開始パケット143では、会議参加者情報が設定される。会議ファイルパケット144では、会議資料となる会議ファイルが設定される。会議資料を表示する文書APL131は各端末PCにインストールされているものとする。画面表示パケット120では、文書のファイル名、ページ番号、表示倍率、水平スクロール摘み位置、垂直スクロール摘み位置が設定される。音声パケット147では、マイクより入力される音声データ(WAVE、MIDI、RealAudio形式等)を設定する。テキストパケット122では、キーボードにより入力されるテキストのキャレット座標、フォント種類、フォントサイズ、フォント色が設定される。キーボードパケット121では、キーコードが設定される。操作権パケット145では、非操作権の要求、移動、開放、許可、却下が設定される。会議終了パケット146では、会議終了端末情報が設定される。
つぎに、図14を参照し会議開始制御、マウス入力制御、キーボード入力制御、音声入力制御、会議パケット受信制御により共通に参照、変更される情報について説明する。画面表示テーブル141では、現在の文書APL131ウィンドウの表示位置、大きさ、表示している文書のページ番号、表示倍率、スクロール位置情報、表示中の会議ファイル名が設定される。会議メンバテーブル140では、会議参加メンバの名前、所属、ネットワークアドレス、主催者、操作権を持っている端末情報が設定される。会議ファイルテーブル142では、PC会議で使用されているファイル情報が設定される。会議ファイル156,157,158は、会議ファイルパケット144により操作権端末より送信され会議中一時保存される。
つぎに、図15を参照し会議主催操作方法について説明する。デスクトップアイコンのダブルクリック等OSが提供するプログラム起動手段により「会議制御プログラム」を起動すると「会議ツールバー」を表示する(図15[1]参照)。「主催ボタン」へのペンタッチ(左クリック)により「会議主催ダイアログボックス」を表示する(図15[2]参照)。会議名を入力、予め登録されている登録者から「参加」により参加者、「主催」により主催者を選択する。「登録ボタン」により「会議者登録ダイアログボックス」を表示、会議参加予定者の名前、所属、ネットワークアドレスを登録、保存する(図15[3]参照)。「開始ボタン」により会議を開始、「操作権ツールバー」を表示する図15[4]参照)。「会議開始パケット143」に会議名、会議参加者を設定送信する。会議資料が文書APL131により表示されている場合、あるいは表示されるのを監視、自動的に会議資料ファイル名を取得、「会議ファイルパケット144」を送信する。会議資料表示ページ番号、表示倍率、文書APLウィンドウ左上原点座標、幅、高さ、水平スクロール摘み位置、垂直スクロール摘み位置を取得「画面表示パケット120」を送信、会議を開始する。
つぎに、図16を参照し会議参加操作方法について説明する。会議制御プログラム125(図11、12参照)を起動、「会議ツールバー」を表示する(図16[1]参照)。「参加ボタン」へのペンタッチ(左クリック)により会議へ参加する(図16[2]参照)。会議主催端末から「会議開始パケット143」が送信されると「会議開始ダイアログボックス」が表示される(図16[3]参照)。「会議ファイルパケット144」の受信により会議ファイルを作業領域へ保存、文書APLを起動表示する(図16[4]参照)。このとき、文書APLが検索できない場合、「検索ダイアログボックス」を表示する。
つぎに、図17を参照し画面操作権の遷移について説明する。PC画面操作権は、開始時PC会議主催端末に有り、PC会議参加端末は「操作権」ボタンへのタッチによりPC会議主催端末へ「操作権パケット(要求)145−1」を送信する(図17[1]参照)。PC会議主催端末に他端末から操作権パケット(要求)の受信があると要求メッセージが表示される(図17[2]参照)。PC会議主催端末が「却下」ボタンを押すと操作権要求端末へ「操作権パケット(却下)145−3」が送信され却下メッセージが表示される(図17[2]参照)。PC会議主催端末が「許可」ボタンを押すと操作権要求端末以外へ「操作権パケット(移動)145−4」が送信され移動メッセージが表示される(図17[4]参照)。操作権移動パケットを受信した端末で操作権を持っている端末は「操作権パケット(開放)145−5」によりPC会議主催端末へ操作権を開放したことを通知する(図17[4]参照)。PC会議主催端末は「操作権パケット(開放)」受信により「操作権パケット(許可)145−2」により要求端末へ通知する(図17[6]参照)。操作権要求端末は「操作権パケット(許可)145−2」を受信すると許可メッセージが表示され操作が可能となる(図17[7]参照)。
つぎに、図18−1、図18−2のフローチャートを参照し会議開始制御フローを説明する。会議制御プログラム125(図11、図123参照)が起動されると、まず、「会議ツールバー」を表示する(ステップS1)。続いて、マウスデータ入力の有無を判断し(ステップS2)、マウスデータ入力であれば、クリック(ペンダウン、マウスボタンON)開始座標のボタン情報を保存し(ステップS3)、クリック開始座標ボタンを選択表示する(ステップS4)。この場合、ボタンは通常表示、選択表示の2形態を持つ。続いて、クリックOFF(ペンアップ、マウスボタンOFF)までのマウスデータを受け取る(ステップS5)。続いて、クリックOFFであるかを判断し(ステップS6)、クリックOFFでなければ、さらにクリックボタン上座標であるかを判断する(ステップS7)。ここで、クリックボタン上座標でなければ、ドラッグ操作によりクリックボタン外となった場合クリックボタンを通常表示へ戻す(ステップS8)。ステップS7においてクリックボタン上座標であれば、クリックボタンを選択表示にする(ステップS9)。ステップS6においてクリックOFFであれば、クリックボタンを通常表示とし(ステップS10)、主催ボタンであるかを判断する(ステップS11)。ここで、主催であれば、「主催」ボタンにより、「会議主催ダイアログボックス」を表示、会議名を設定、会議メンバを選択する(ステップS12)。ステップS11において主催でなければ、さらに登録ボタンであるかを判断し(ステップS13)、登録であれば、「登録ボタン」により、「会議者登録ダイアログボックス」を表示、会議メンバを登録する(ステップS14)。ステップS11において登録でなければ会議ツールバーを消去し(ステップS15)、会議ファイルテーブルを初期化(会議ファイル数=0)する(ステップS16)。続いて、画面表示テーブルを初期化(会議ファイル名を0クリア)し(ステップS17)、会議メンバテーブルに自端末ネットワークアドレスを設定、初期化(会議メンバ数=0)する(ステップS18)。
続いて、参加ボタンの入力有無を判断し(ステップS19)、参加ボタンの入力であれば、「参加」ボタンにより「会議パケット受信制御」を起動、会議開始パケットの受信を待ち会議を開始する(ステップS20)。続いて、参加ボタンの入力でなければ、さらに開始ボタンの入力有無を判断し(ステップS21),開始ボタンの入力であれば、「開始」ボタンにより会議主催ダイアログボックスにより入力したメンバ情報を会議メンバテーブルへ設定する(ステップS22)。続いて、会議開始パケットを会議参加端末へ送信し(ステップS23)、文書APLが会議資料を表示するのを監視する(ステップS24)。続いて、会議ファイル名が設定されているかを判断し(ステップS25)、会議ファイル名が設定されていれば、「会議パケット受信制御」(ステップS26)、「マウス入力制御」」(ステップS27)、「キーボード入力制御」」(ステップS28)、「音声データ入力制御」を起動する(ステップS29)。ステップS21において開始ボタンの入力でなければ、さらに終了ボタンの入力有無を判断し(ステップS30)、終了であれば本制御動作を終了ボタンによって終了する。
つぎに、図19のフローチャートを参照しマウス入力制御動作について説明する。OSが提供するI/Fによりマウスデータを監視(Windows(登録商標)におけるHook機能)全マウスデータを入力し(ステップS31)、操作権ツールバーを表示する(ステップS32)。続いて、会議が主催であるかを判断し(ステップS33)、会議主催端末である場合、操作権を持っていることを示すため操作権ボタンを選択表示する(ステップS34)。続いて、終了の通知であるかを判断し(ステップS35)、「終了」ボタン、主催端末から「会議終了パケット」により終了する。終了でなければ、さらにマウスデータの入力有無を判断し(ステップS36)、マウスデータの入力(タブレットペン、マウスからの座標、ボタン情報は周期的に検出され入力される)があれば、さらに操作権端末のツールバー上座標であるかを判断する(ステップS37)。ここで、操作権端末のツールバー上座標でなければ、操作権ツールバー以外のマウスデータはOSが提供I/F介して他のAPLプログラムへ渡す(ステップS38)。ステップS37において操作権端末のツールバー上座標であれば、操作権ツールバー上である場合、操作権ツールバー制御を実行する(ステップS39)。ステップS35において終了時、会議資料として配布された会議ファイルを削除し(ステップS40)、マウスデータ監視を終了通常モードへ戻し(ステップS41)操作権ツールバーを消去する(ステップS42)。
つぎに、図20のフローチャートを参照しAPLマウス入力制御動作について説明する。ここでは、クリックON(ペンダウン)開始時のマウスデータが引数として渡される。まず、マウス入力回数を1に設定し(ステップS51)、入力したマウスデータをOSが提供するマウスI/Fへ出力、APLプログラムへ渡す(ステップS52)。さらに、クリックOFF(ペンアップ)までのマウスデータを入力する(ステップS53)。マウスデータを再生し(ステップS54)、クリックOFFであるかを判断する(ステップS55)。クリックOFFでなければ、マウス入力回数を1つ進ませ(ステップS56)、マウス入力回数/M=0であるかを判断する(ステップS57)。ここで、マウス入力回数/M=0であれば、マウス入力特定回数(テストにより得られる最適値)毎に「表示監視制御」を実行する(ステップS58)。ステップS55においてクリックOFFであれば、表示監視制御を実行する(ステップS59)。
つぎに、図21のフローチャートを参照し操作権ツールバー制御動作について説明する。ここでは、クリックON(ペンダウン)開始時のマウスデータが引数として渡される。まず、ボタン表示状態(通常表示、選択表示の2形態を持つ)を保存する(ステップS61)。クリック座標ボタン番号を保存し(ステップS62)、クリック座標ボタンを選択表示する(ステップS63)。続いて、クリックOFF(ペンアップ)までのマウスデータを入力する(ステップS64)。続いて、クリックOFFであるかを判断し(ステップS65)、クリックOFFでなければ、さらにクリックボタン上座標であるかを判断する(ステップS66)。ここで、クリックボタン上座標でなければ、ドラッグ操作によりクリックボタン外となった場合、ボタン表示を通常表示へ戻す(ステップS67)。ステップS66においてクリックボタン上座標であれば、クリックボタンを選択表示にする(ステップS68)。ステップS65においてクリックOFFであれば、ボタン表示状態を復旧し(ステップS69)、クリックボタン上座標であるかを判断する(ステップS70)。クリックOFF座標がクリックボタン外である場合実行しない。クリックボタン上座標であれば、さらに操作権ボタンであるかを判断し(ステップS71)、操作権ボタンであれば、さらに操作権有りであるかを判断する(ステップS72)。ここで、操作権有りでなければ、さらに会議が主催であるかを判断し(ステップS73)、会議が主催であれば、主催端末は全端末へ「操作権(移動)パケット」により、操作権の移動通知と開放を要求する(ステップS74)。ステップS73において会議が主催でなければ、参加端末は主催端末へ「操作権(要求)パケット」を送信する(ステップS75)。ステップS71において操作権ボタンでなければ、さらに終了ボタンであるかを判断し(ステップS76)、終了ボタンであれば、「終了ボタン」により「会議終了パケット」を送信する(ステップS77)。参加端末は自端末のみ、主催端末である場合、全端末が終了する。マウス入力制御、キーボード入力制御、音声データ入力、会議パケット受信制御を終了させる(ステップS78)。
つぎに、図22のフローチャートを参照しキーボード入力制御動作について説明する。まず、OSが提供するI/Fによりキーボードデータを監視(Windows(登録商標)におけるHook機能)全キーボードデータを入力し(ステップS81)、キー入力制御をアイドルに設定する(ステップS82)。続いて、終了の通知であるかを判断する(ステップS83)。ここで、終了通知であれば、キーボード入力制御を終了する(ステップS104)。一方、終了通知でなければ、さらにキーボードデータ入力であるかを判断し(ステップS84)、キーボードデータ入力であれば、さらに操作権有りであるかを判断する(ステップS85)。自端末が操作権を持っていない場合、キーボード入力を破棄する。操作権があれば、キー入力制御をアイドルに設定しているかを判断し(ステップS86)、アイドルに設定されていれば、キーボード入力中、テキスト入力モードに設定する(ステップS87)。続いて、キー入力数を0にし(ステップS88)、テキスト入力先のキャレット座標を取得する(ステップS89)。続いて、テキスト入力されるフォント情報を取得し(ステップS90)、取得したキャレット座標、フォント情報により「テキストパケット」を作成送信する(ステップS91)。続いて、キーコードを保存し(ステップS92)、入力したキーコードをOSが提供するキーボードI/Fへ出力、文書APLへ渡す(ステップS93)。続いて、キー入力数を1つ進め(ステップS94)、キー入力数が特定数(K)であるかを判断する(ステップS95)。ここで、キー入力数が特定数(K)であれば、キー入力が特定数(テストによる最適値)に達したら「キーボードパケット」を作成し送信する(ステップS96)。さらに、キー入力数を0にし(ステップS97)、次のキー入力が特定時間内(テストによる最適値)にあるか監視するためタイマーをスタートする(ステップS98)。ステップS84においてキーボードデータ入力でなければ、さらにキーボード入力タイム合うとであるかを判断し(ステップS99)、タイムアウトであれば、キーボード入力監視タイマを停止し(ステップS100)、特定時間内に次のキー入力がない場合、キー入力制御をアイドルモードにする(ステップS101)。続いて、キー入力数>0であるかを判断し(ステップS102)、キー入力数>0であれば、キーボードパケットを送信し(ステップS103)、ステップS83に戻る。キーボード入力監視を終了、通常モードへ戻す(ステップS104)。
つぎに、図23のフローチャートを参照し音声データの入力制御動作について説明する。まず、音声入力制御をアイドルに設定し(ステップS111)、音声データ数を0にする(ステップS112)。続いて、終了通知であるかを判断し(ステップS113)、終了通知により音声入力制御を終了する。終了通知でなければ、さらに音声データ入力であるかを判断し(ステップS114)、音声データ入力であれば、その音声データを保存し(ステップS115)、マイクより入力された音声データをスピーカへ出力する(ステップS116)。さらに、音声データ数を1つ進ませ(ステップS117)、音声データ数=特定長(S)であるかを判断する(ステップS118)。音声データ数=特定長(S)であれば、さらに音声入力制御がアイドルであるかを判断し(ステップS119)、音声入力制御がアイドルであれば、音声入力制御を音声入力に設定し(ステップS120)、マイク入力開始時、音声パケット制御コードを開始に設定する(ステップS121)。ステプS118において音声データ数=特定長(S)でなければ、マイク入力中、音声パケット制御コードを継続に設定する(ステップS122)。さらに音声データ特定長(テストによる最適値)に達した場合「音声パケット」を作成送信する(ステップS123)。続いて、音声データ数を0にし(ステップS124)、音声入力が停止、次の音声入力が特定時間内にあるかタイマー監視する(ステップS125)。ステップS114において音声データ入力でない場合、さらに音声入力タイムアウトであるかを判断し(ステップS126)、音声入力タイムアウトであれば、音声入力監視タイマーを停止し(ステップS127)、音声データ数>0であるかを判断する(ステップS128)。音声データ数>0でなければ、音声入力タイムアウト時、音声データがない場合も音声入力の終了を通知するため音声パケットを作成する(ステップS129)。さらに音声パケット制御コードを終了に設定し(ステップS130)、音声パケットを送信する(ステップS131)。
つぎに、図24のフローチャートを参照し表示監視制御動作について説明する。まず、全ウィンドウ情報(ウィンドウキャプション、左上原点座標、幅、高さ)取得する(ステップS141)。続いて、文書APLが起動中であるかを判断し(ステップS142)、すなわち、ウィンドウキャプションのAPL名から文書情報を提供する文書APLが起動中か判定する。文書APLが起動中であれば、文書APLから表示中のファイルパスを取得する(ステップS143)。続いて、文書APLから表示中のページ番号、表示倍率を取得し(ステップS144)、OSが提供するI/Fを介して水平スクロール摘み位置、垂直スクロール摘み位置を取得する(ステップS145)。続いて、新規ファイルであるかを判断する(ステップS146)。すなわち、表示中ファイルが会議ファイルテーブルに設定されているか判定する。新規ファイルであれば、新規に表示したファイルである場合、会議ファイルテーブルに設定し(ステップS147)、取得したファイルパスからファイルを入力し(ステップS148)、会議ファイルパケットを作成送信する(ステップS149)。続いて、画面表示情報が変更であるかを判断する(ステップS150)。すなわち、取得したウィンドウ情報、文書情報、文書ファイル情報、スクロール摘み位置情報と画面表示テーブルを比較し変更があるか判定する。画面表示情報が変更であれば、画面表示テーブルを更新し(ステップS151)、画面表示パケットを作成し送信する(ステップS152)。
つぎに、図25のフローチャートを参照し会議パケット送信制御動作について説明する。ここでは、会議データパケットが引数として渡される。まず、操作権パケットであるかを判断し(ステップS161)、操作権パケットであれば、制御コードが要求であるかを判断する(ステップS162)。制御コードが要求であれば、操作権要求パケットを主催端末へ送信する(ステップS163)。ステップS162において制御コードが要求でなければ、さらに制御コードが許可であるかを判断し(ステップS164)、制御コードが許可であれば、操作権許可パケットを要求端末へ送信する(ステップS165)。ステップS166において制御コードが許可でなければ、さらに制御コードが却下であるかを判断し(ステップS166)、制御コードが却下であれば、操作権却下パケットを要求端末へ送信する(ステップS167)。ステップS166において制御コードが却下でなければ、さらに制御コードが移動であるかを判断し(ステップS168)、制御コードが移動であれば、操作権移動パケットを要求端末以外へ送信する(ステップS169)。ステップS168において制御コードが移動でなければ、さらに制御コードが開放であるかを判断し(ステップS170)、制御コードが開放であれば、操作権開放パケットを主催端末へ送信する(ステップS171)。ステップS161において操作権パケットでなければ、操作権パケット以外は全他端末へ送信する(ステップS172)。
つぎに、図26のフローチャートを参照し会議パケット受信制御動作について説明する。まず、終了通知であるかを判断し(ステップS181)、終了通知であれば、終了通知により会議パケット受信制御を終了する。終了通知でなければ、他PC会議参加端末からネットワーク網より会議データパケットを受信する(ステップS182)。続いて、会議開始パケットであるかを判断し(ステップS183)、会議開始パケットであれば、会議開始パケットの受信制御を実行する(ステップS184)。ステップS183において会議開始パケットでなければ、さらに会議ファイルパケットであるかを判断し(ステップS185)、会議ファイルパケットであれば、会議ファイルパケットの受信制御を実行する(ステップS186)。ステップS185において会議ファイルパケットでなければ、さらに画面表示パケットであるかを判断し(ステップS187)、画面表示パケットであれば、画面表示パケットの受信制御を実行する(ステップS188)。ステップS187において画面表示パケットでなければ、さらに音声パケットであるかを判断し(ステップS189)、音声パケットであれば、音声データをスピーカへ出力する(ステップS190)。ステップS189において音声パケットでなければ、さらにテキストパケットであるかを判断し(ステップS191)、キストパケットであれば、テキスト入力位置へキャレットを移動し(ステップS192)、テキストのフォント種類、フォントサイズ、フォント色を設定する(ステップS193)。ステップS191においてテキストパケットでなければ、さらにキーボードパケットであるかを判断し(ステップS194)、キーボードパケットであれば、キーコードをOSが提供するキーボードI/Fへ出力、文書APLへ渡す(ステップS195)。これによりテキストパケット情報のテキストが表示される。ステップS194においてキーボードパケットでなければ、さらに操作権パケットであるかを判断し(ステップS196)、操作権パケットであれば、操作権パケットの受信制御を実行する(ステップS197)。ステップS196において操作権パケットでなければ、さらに会議終了パケットであるかを判断し(ステップS198)、会議終了パケットの場合、会議終了パケットの受信制御を実行する(ステップS199)。
つぎに、図27のフローチャートを参照し会議開始パケットの受信制御動作について説明する。まず、会議開始パケットの内容を「会議開始ダイアログボックス」へ表示し(ステップS201)、会議開始パケットの内容を「会議メンバテーブル」へ設定する(ステップS202)。続いて、「マウス入力制御」を起動、マウス入力を開始し(ステップS203)、「キーボード入力制御」を起動、キーボード入力を開始し(ステップS204)、さらに「音声データ入力制御」を起動、音声入力を開始する(ステップS205)。
つぎに、図27のフローチャートを参照し会議ファイルパケットの受信制御動作について説明する。まず、会議ファイルパケットのファイルデータを作業領域へ保存し(ステップS211)、ファイル名を会議ファイルテーブルへ設定する(ステップS212)。続いて、会議ファイルを指定し文書APLを起動表示する(ステップS213)。その後、起動エラーであるかを判断し(ステップS214)、起動エラーでなければ、文書APL起動エラー時「検索ダイアログボックス」を表示、文書APLパスを取得する(ステップS215)。検索ダイアログボックスの「キャンセル」ボタンにより文書APL検索を中止する(ステップS216)。
つぎに、図29のフローチャートを参照し画面表示パケットの受信制御動作について説明する。まず、会議ファイル変更であるかをを判断する(ステップS221)。すなわち、画面表示パケットと画面表示テーブルを比較変化があるか比較する。会議ファイル変更であれば、会議ファイルを表示する文書APLを最前面へ移動する(ステップS222)。続いて、ページ番号変更であるかを判断し(ステップS223)、ページ番号変更であれば、文書APLへページ番号を渡し表示ページを変更する(ステップS224)。続いて、表示倍率変更であるかを判断し(ステップS225)、表示倍率変更であれば、文書APLへ表示倍率を渡し表示倍率を変更する(ステップS226)。続いて、ウィンドウ表示変更であるかを判断し(ステップS227)、ウィンドウ表示変更であれば、OSが提供するI/Fにより文書APLウィンドウを左上原点座標、幅、高さを変更する(ステップS228)。続いて、水平スクロール摘み位置変更であるかを判断し(ステップS229)、水平スクロール摘み位置変更であれば、OSが提供するI/Fにより水平スクロール摘み位置を変更、表示文書を水平スクロール表示する(ステップS230)。続いて、垂直スクロール摘み位置変更であるかを判断し(ステップS231)、垂直スクロール摘み位置変更であれば、OSが提供するI/Fにより垂直スクロール摘み位置を変更、表示文書を垂直スクロール表示する(ステップS232)。さらに画面表示パケットを画面表示テーブルへ設定する(ステップS233)。
つぎに、図30−1、図30−2のフローチャートを参照し操作権パケットの受信制御動作について説明する。まず、操作権要求であるかを判断し(ステップS241)、操作権要求であれば、主催端末は操作権要求パケット受信時「操作権要求ダイアログボックス」の処理を行なう(ステップS242)。続いて、操作権許可であるかを判断し(ステップS243)、、操作権許可であれば、あるかを判断し(ステップS244)、操作権有りであれば、主催端末が操作権を持っている場合、操作権ボタンを通常表示とする(ステップS245)。続いて、会議メンバテーブルの操作権端末を更新し(ステップS246)、要求端末へ操作権許可パケットを送信する(ステップS247)。さらに要求端末以外へ操作権の移動を通知する(ステップS248)。ステップS243において操作権許可でなければ、さらに操作権却下であるかを判断し(ステップS249)、操作権却下であれば、操作権却下パケットを要求端末へ送信する(ステップS250)。ステップS241において操作権要求でなければ、操作権開放であるかを判断し(ステップS251)、操作権開放でれば、さらに要求端末が自端末であるかを判断し(ステップS252)、要求端末をが自端末であれば、操作権開放パケット受信時、主催端末が要求端末である場合、「操作権許可ダイアログボックス」を表示、操作権を獲得したことを通知する(ステップS253)。続いて、操作権ボタンを選択表示、操作権があることを示す(ステップS254)。さらに、操作権端末の更新処理を実行する(ステップS255)。ステップS252において要求端末が自端末でなければ、要求端末へ操作権許可パケットを送信する(ステップS256)。ステップS251において操作権開放でなければ、さらに操作権許可であるかを判断し(ステップS257)、操作権許可であれば、操作権許可パケット受信時、「操作権許可ダイアログボックス」を表示、操作権を獲得したことを通知する(ステップS258)。続いて、操作権ボタンを選択表示し(ステップS259)、操作権端末を更新する(ステップS260)。ステップS257において操作権許可でなければ、さらに操作権却下であるかを判断し(ステップS261)、操作権却下であれば、操作権却下パケット受信時、「操作権却下ダイアログボックス」を表示、操作権が獲得できないことを通知する(ステップS262)。ステップS261において操作権却下でなければ、さらに操作権移動であるかを判断し(ステップS263)、操作権移動であれば、操作権移動パケット受信時、「操作権移動ダイアログボックス」を表示、操作権が移動したことを通知する(ステップS264)。続いて、操作権有りであるかを判断し(ステップS265)、操作権有りであれば、操作権を持っている端末は操作権ボタンを通常表示する(ステップS266)。さらに、操作権開放パケットを主催端末へ送信し(ステップS267)、会議メンバテーブルの操作権端末を更新する(ステップS268)。
つぎに、図31のフローチャートを参照し会議終了パケットの受信制御動作について説明する。まず、会議主催端末であるかを判断し(ステップS271)、会議主催端末でなければ、会議終了パケットが主催端末以外からの場合、終了端末を会議メンバテーブルから削除する(ステップS272)。会議主催端末であれば、主催端末からの会議終了パケットによりPC会議を終了する(ステップS273)。
(第2の実施の形態)
この実施の形態では、先に述べたように、会議文書の表示状態に上書き位置を自動調整するものである。また、他の意見を参照しながら自分の意見を上書きする場合、上書きのペン色が同じであればどちらの上書きかわかりにくくなる。また、ペン色を参加者ごとに分けると複数の色を使い判りややすい説明したときなどに制限を受けることになる。そこで、本発明は上書き者ごとに上書きが判るようにするものである。また、他者の上書きを参照する必要がない場合に邪魔となる。そこで、本発明は上書き者ごとに上書きの表示、消去を可能にするものである。さらに、他の意見を参照しながら自分の意見を上書きする場合、上書きのペン色が同じであればどちらの上書きかわかりにくくなる。そこで、本発明は上書き者ごとに上書きが判るようにするものである。以下、具体的に詳述する。
この第2の実施の形態におけるシステム構成などは前述した図1〜図5と同様である。よって、ここでの重複説明は省略する。
図32を参照しウィンドウ表示制御について説明する。このウィンドウ表示制御はOSが提供するI/Fを介して制御する。画面幅(SW)、画面高さ(SH)を取得する。
画面がXGAである場合、SW(1024)、SH(768)が取得されることになる(図32[1]参照)。文書を表示するAPLウィンドウの左上原点座標(X,Y)、ウィンドウ幅(W)、ウィンドウ高さ(H)を取得する(図32[2]参照)。また、左上原点座標、幅、高さにウィンドウ表示する。ウィンドウキャプション情報を取得する(図32[3]参照)。ウィンドウキャプションには一般的にプログラム名、開いているファイル名が設定される。OSが提供するI/Fを介して水平スクロール摘み位置(PH)を取得する(図32[4]参照)。また、水平スクロール摘み位置を指定して水平スクロール表示する。OSが提供するI/Fを介して垂直スクロール摘み位置(PV)を取得する(図32[5]参照)。また、垂直スクロール摘み位置を指定して垂直スクロール表示する。
つぎに、図33を参照し文書表示制御について説明する。この文書表示制御は文書APLが提供するI/Fを介して制御する。この機能は現在MicrOSoft OFFice(Woord、EXcel、PowerPoint)が提供している。表示文書の「ファイルパス」、「ページ番号」(P)、「表示倍率」(V)を取得する。また、ページ番号、表示倍率を指定して文書表示する(図33[1]参照)。文書APLに表示される文書領域の「左上原点座標」(DX,DY)、「文書幅」(DW)、「文章高さ」(DH)を取得する(図33[2]参照)。拡大表示、スクロール表示する場合、文書左上原点座標(−DX,−DY)となる(図33[3]参照)。
つぎに、図34を参照し文書座標算出方法について説明する。文書の左上原点座標(DX,DY)、文書幅(DW)、文章高さ(DH)、表示倍率%(V)を文書APLが提供するI/Fにより取得する。画面幅(SW)、画面高さ(SH)はOSが提供するI/Fにより取得する。左上原点が画面内にある場合、画面座標(X,Y)の文書座標(PX,PY)は以下となる(図34[1]参照)。
文書座標は100%表示時に換算保存する。
PX = (X − DX) × (100 / V)
PY = (Y − DY) × (100 / V)
左上原点が画面外となる場合、(−DX)、(−DY)となり画面座標(X,Y)の文書座標(PX,PY)は以下となる(図34[2]参照)。
PX = (X − (-DX)) × (100 / V)
PY = (Y − (-DY)) × (100 / V)
(DY+DH)<SHである場合文書が2ページに跨って表示されていると判定、文書APLが提供するI/Fによりページ間隔「DS」を取得する(図34[3]参照)。
ページ間領域は前ページ領域とする。
文書2上の画面座標(X,Y)の文書座標(PX1,PY1)は以下となる(図34[4]参照)。
PX1 = (X − DX) × (100 / V)
PY1 = (Y − (DY+DH+DS)) × (100 / V)
つぎに、図35を参照し文書座標から画面座標への算出方法を説明する。文書の左上原点座標(DX,DY)、文書幅(DW)、文書高さ(DH)、表示倍率%(V)、画面幅(SH)、画面高さ(SW)を取得する。文書1ページの文書座標(PX,PY)の画面座標(X,Y)は以下となる(図35[1]参照)。
X = PX×(V / 100)+DX
Y = PY×(V / 100)+DY
文書1ページの画面領域は左上座標(0,0)、右下座標(SW−1、DY+DH+DS−1)となり、この領域外である場合画面外となる(図35[2]参照)。
文書2ページの文書座標(PX1,PY1)の画面座標(X1,Y1)は以下となる(図35[3]参照)。
X1 = PX1×(V / 100)+DX
Y1 = PY1×(V / 100)+(DY+DH+DS))
文書2ページの画面領域は左上座標(0,DY+DH+DS)、右下座標(SW−1、SH−1)となり、この領域外である場合画面外となる(図35[4]参照)。
つぎに、図36を参照し上書き描画について説明する。上書きは背景を透明とする全画面サイズの上書きウィンドウを作成、透明ウィンドウ上にペンに設定されている色、太さにてドラッグ座標間を線描画する(図36[1]参照)。上書き者毎に上書きウィンドウを作成、OSが提供するI/Fにより上書きウィンドウ番号(ハンドル)を取得、上書き者を管理する(図36[2]参照)。
つぎに、図37を参照し上書き文字消去について説明する。(X0,Y0)、(X1,Y1)、(X2,Y2)、(X3,Y3)、(X4,Y4)、(X5,Y5)が1ストロークのドラッグ軌跡を示す。手書き文字描画は2点間((X0,Y0)−(X1,Y1)、(X0,Y0)−(X1,Y1)、...)を設定されている色、太さにて線描画することにより描画する。手書き文字はストローク単位(ペンダウン〜ペンアップ)に色、太さ、ストローク座標を保存する。
ペンダウン座標(Xp,Yp)、消しゴム長(L)である場合、消しゴムカーソルの矩形領域は右上座標(Xp−(L/2),Yp−(L/2))、右下座標(Xp+(L/2),Yp+(L/2))となる。手書き文字ドラッグ座標(X,Y)がこの領域内にある場合これに接続される座標間線分を削除する。(X2、Y2)−(X3,Y3)線分、(X3,Y3−(X4,Y4)線分が削除されることになる。消去によりストロークが分断される場合、ストロークを分ける。(X0,Y0)−(X2,Y2)ストロークと(X4,Y4)−(X5,Y5)の2ストロークとする。
ここで、テキスト入力情報取得、会議画面統一、テキスト入力表示については、全中値した図8〜図10と同様に行なう。よって、ここでの重複説明は省略する。
つぎに、図38を参照し会議資料への上書き方法について説明する。上書き制御が起動されると上書きツールバーが表示される(図38[1]参照)。「ペン」ボタンにより文書APL上に透明ウィンドウ(背景が透けて見えるウィンドウ)を表示、ドラッグ座標間をペンに設定されている色、太さにて線描画することにより上書き文字(図形)を描画する(図38[2]参照)。このドラッグ座標は文書座標に変換、上書きファイルへ保存される。ペンダウン(クリックON)からペンアップ(クリックOFF)のドラッグ座標により「描画パケット」を作成、送信する(図38[3]参照)。他端末はこのドラッグ座標により描画する。「消去」ボタンによりドラッグ座標を中心とする矩形領域内にある上書き文字(図形)を消去する。(図38[4]参照)また、上書きファイルから消去されたストローク情報を削除する。ペンダウン(クリックON)からペンアップ(クリックOFF)のドラッグ座標により「消去パケット」を作成送信する(図38[5]参照)。他端末はこのドラッグ座標により表示されている上書き文字を消去、上書きファイルから削除する。
ここで、会議制御については前述した図11と同様であるので、ここでの直副説明は省略する。
つぎに、図39を参照し会議制御プログラムの構成について説明する。会議開始制御135は、会議制御プログラム125が起動されたときに実行され初期設定、独立して動作するマウス入力制御136、キーボード入力制御137、音声入力制御138、上書き制御205、会議パケット受信制御139を起動する。マウス入力制御136は、タブレットPCのペン、あるいはマウスによるマウスデータを入力、文書APL131のウィンドウ情報、文書情報を取得、変化がある場合「会議ファイルパケット144」、「画面表示パケット120」を作成し送信する。また、操作権ツールバー制御により「操作権パケット145」、「会議終了パケット146」を作成し送信する。キーボード入力制御137は、キーボードデータを入力、「テキストパケット122」、「キーボードパケット121」を作成送信する。操作権がない場合は入力データを破棄する。音声入力制御138は、マイクによる音声データを入力、「音声パケット147」を作成送信する。上書き制御205は、ペンあるいはマウスのドラッグ操作により会議文書上への上書き文字(図形)を描画、「描画パケット206」を作成し送信する。または、上書き文字を消去、「消去パケット207」を作成送信する。これらのデータパケットの詳細な内容を下記表1に示す。
また、「会議制御テーブル」は、会議開始制御135、マウス入力制御136、キーボード入力制御137、音声入力制御138、上書き制御205、会議パケット受信制御139により参照、更新可能領域に設けられPC会議を制御する。会議制御テーブルの内容を下記表2に示す。
また、「会議制御ファイル」会議で使用するファイルが保存される(下記表3参照)。
つぎに、図40を参照し会議時ネットワークを介して送受信する会議データパケットの構造について説明する。会議開始パケット143では、会議参加者情報が設定される。会議ファイルパケット144では、会議資料となる会議ファイルが設定される。会議資料を表示する文書APL131は各端末PCにインストールされているものとする。画面表示パケット120では、文書のファイル名、ページ番号、表示倍率、水平スクロール摘み位置、垂直スクロール摘み位置が設定される。音声パケット147では、マイクより入力される音声データ(WAVE、MIDI、RealAudio形式等)を設定する。テキストパケット122では、キーボードにより入力されるテキストのキャレット座標、フォント種類、フォントサイズ、フォント色が設定される。キーボードパケット121では、キーコードが設定される。操作権パケット145では、非操作権の要求、移動、開放、許可、却下が設定される。会議終了パケット155では、会議終了端末情報が設定される。また、この会議制御テーブルの詳細な内容を図41に示す。
つぎに、図42を参照し会議主催操作方法について説明する。デスクトップアイコンのダブルクリック等OSが提供するプログラム起動手段により「会議制御プログラム125」を起動「会議ツールバー」を表示する(図42[1]参照)。「主催ボタン」へのペンタッチ(左クリック)により「会議主催ダイアログボックス」を表示する(図42[2]参照)。会議名を入力、あらかじめ登録されている登録者から「参加」により参加者、「主催」により主催者を選択する。「登録ボタン」により「会議者登録ダイアログボックス」を表示、会議参加予定者の名前、所属、ネットワークアドレスを登録、保存する(図42[3]参照)。「開始ボタン」により会議を開始、「操作権ツールバー」を表示する(図42[4]参照)。「会議開始パケット143」に会議名、会議参加者を設定送信する。会議資料が文書APLにより表示されている場合、あるいは表示されるのを監視、自動的に会議資料ファイル名を取得、「会議ファイルパケット144」を送信する。会議資料表示ページ番号、表示倍率、文書APLウィンドウ左上原点座標、幅、高さ、水平スクロール摘み位置、垂直スクロール摘み位置を取得「画面表示パケット120」を送信、会議を開始する。
つぎに、図43を参照し会議参加操作方法について説明する。会議制御プログラムを起動、「会議ツールバー」を表示する(図43[1]参照)。「参加ボタン」へのペンタッチ(左クリック)により「操作権ツールバー」を表示、会議へ参加する(図43[2]参照)。会議主催端末から「会議開始パケット143」が送信されると「会議開始ダイアログボックス」が表示される(図43[3]参照)。「会議ファイルパケット144」の受信により会議ファイルを作業領域へ保存、文書APL131を起動表示する(図43[3]参照)。このとき、文書APL131が検索できない場合、「検索ダイアログボックス」を表示する。
つぎに、図44を参照し上書き操作について説明する。操作権を持っている端末のみ「上書き」ボタンが有効となる(図44[1]参照)。上書きボタンにより「上書きツールバー」を表示する(図44[2]参照)。表示ページへの上書きデータが存在する場合、上書き者名ボタンを表示する(図44[3]参照)。「ペン」ボタンにより、ドラッグ軌跡をペンに設定されている色、太さにより線描画、ドラッグ座標を文章座標へ変換ストロークデータを上書きファイルへ保存する(図44[4]参照)。「消去」ボタンにより、ドラッグ座標を中心とする矩形領域内の手書き上書き文字を消去、消去したストロークデータを上書きファイルから削除する(図44[5]参照)。「上書き者」ボタンにより選択された上書き上書き時の色で表示、表示されている上書きをペンが選択できない描画色一色表示へ変更する(図44[6]参照)。「設定」ボタンにより「上書きの設定」ダイアログボックスを表示、上書きモードを設定する(図44[7]参照)。上書き文字の色、太さ、消しゴムの大きさを選択する(図44[8]参照)。上書き操作者を入力、登録する(図44[]参照)。上書き操作者名を選択、「削除」ボタンにより削除、「OK」ボタンにより上書き操作者選択する(図44[9]参照)。
つぎに、図45を参照し画面操作権の遷移について説明する。PC画面操作権は、開始時PC会議主催端末に有り、PC会議参加端末は「操作権」ボタンへのタッチによりPC会議主催端末へ「操作権パケット(要求)145−1」を送信する(図45[1]参照)。PC会議主催端末に他端末から操作権パケットの受信があると要求メッセージが表示される(図45[2]参照)。PC会議主催端末が「却下」ボタンを押すと操作権要求端末へ「操作権パケット(却下)145−3」が送信され却下メッセージが表示される(図45[3]参照)。PC会議主催端末が「許可」ボタンを押すと操作権要求端末以外へ「操作権パケット(移動)145−4」が送信され移動メッセージが表示される(図45[4]参照)。操作権移動パケットを受信した端末で操作権を持っている端末は「操作権パケット(開放)145−5」によりPC会議主催端末へ操作権を開放したことを通知する(図45[5]参照)。PC会議主催端末は「操作権パケット(開放)」受信により「操作権パケット(許可)」により要求端末へ通知する(図45[6]参照)。操作権要求端末は「操作権パケット(許可)145−2」受信により許可メッセージが表示されPC画面操作が可能となる(図45[7]参照)。
つぎに、図46−1、図46−2のフローチャートを参照し会議開始制御について説明する。会議制御プログラムが起動されると「会議ツールバー」を表示する(ステップS301)。マウスデータ入力有無を判断し(ステップS302)、クリック(ペンダウン)開始座標のボタン情報を保存し(ステップS303)、クリック開始座標のボタンを選択表示する(ステップS304)。ボタンは通常表示、選択表示の2形態を持つ。続いて、マウスデータ入力有無を判断し(ステップS305)、マウスデータ入力であれば、さらにクリックOFFであるかを判断する(ステップS306)。クリックOFFでなければ、さらにクリックボタン上座標であるかを判断し(ステップS307)、クリックボタン上座標でなければ、ドラッグ操作によりクリックボタン外となった場合、クリックボタンを通常表示へ戻す(ステップS308)。ステップS307においてクリックボタン上座標であれば、クリックボタンを選択表示にする(ステップS309)。ステップS306においてクリックOFFであれば、クリックボタンを通常表示にする(ステップS310)。続いて、主催ボタンであるかを判断し(ステップS311)、主催ボタンであれば、「主催」ボタンにより、「会議主催ダイアログボックス」を表示、会議名を設定、会議メンバを選択する(ステップS312)。ステップS311において主催ボタンでなければ、さらに登録ボタンであるかを判断し(ステップS313)、登録ボタンであれば、「登録ボタン」により、「会議者登録ダイアログボックス」を表示、会議メンバを登録する(ステップS314)。ステップS313において登録ボタンでなければ、会議ツールバーを消去し(ステップS315)、会議ファイルテーブルを初期化(会議ファイル数=0)する(ステップS316)。続いて、上書きファイルテーブルを初期化(上書きファイル数=0)し(ステップS317)、上書きテーブルに「上書きの設定ダイアログボックス」で登録されているペン色、ペン太さ、消しゴム長、上書き操作者を設定、上書きを未実行に設定する(ステップS318)。続いて、画面表示テーブルを初期化(会議ファイル名に0X00設定)し(ステップS319)、会議メンバテーブルに自端末ネットワークアドレスを設定、初期化(会議メンバ数=0)する(ステップS320)。
続いて、参加ボタンの入力であるかを判断し(ステップS321)、参加ボタンの入力であれば、「参加」ボタンにより会議パケット143の受信制御を起動、会議開始パケット143の受信を待ち開始する(ステップS322)。ステップS321において参加ボタンの入力でなければ、さらに開始ボタンの入力であるかを判断し(ステップS323)、開始ボタンの入力であれば、「開始」ボタンにより会議主催ダイアログボックスにより入力したメンバ情報を会議メンバテーブル140へ設定する(ステップS324)。続いて、「会議開始パケット143」を会議参加端末へ送信、会議を開始し(ステップS325)、文書APL131が会議ファイルを表示するのを監視する(ステップS326)。続いて、会議ファイル名が設定されているかを判断し(ステップS327)、会議ファイル名が設定されていれば、会議パケット受信制御、マウス入力制御、キーボード入力制御、音声データ入力制御を起動する(ステップS328)。続いて、マウス入力制御の起動を行ない(ステップS329)、さらにキーボード入力制御の起動を行ない(ステップS330)、さらに音声データ入力制御の起動を行なう(ステップS331)。ステップS323において開始ボタンの入力でなければ、終了ボタンの入力であるかを判断する(ステップS332)。
つぎに、図47のフローチャートを参照しマウス入力制御動作についてを説明する。まず、OSが提供するI/Fによりマウスデータを監視(Windows(登録商標)におけるHook機能)全マウスデータを入力し(ステップS341)、操作権ツールバーを表示する(ステップS342)。続いて、会議主催端末であるかを判断し(ステップS343)、会議主催端末である場合、操作権を持っていることを示すため操作権ボタンを選択表示する(ステップS344)。さらに、終了通知であるかを判断する(ステップS345)。「終了」ボタン、主催端末から「会議終了パケット」により終了する。終了通知でなければ、タブレットペン、マウスからの座標、ボタン情報は周期的に検出され入力される(ステップS346)。続いて、操作権ツールバー上座標であるかを判断し(ステップS347)、操作権ツールバー上座標でなければ、操作権ツールバー以外のマウスデータはOSが提供するI/Fを介してAPLプログラムへ渡す(ステップS348)。ステップS347において操作権ツールバー上座標である場合、操作権ツールバー制御を実行する(ステップS349)。ステップS345において終了通知であれば、終了時、会議資料として配布された会議ファイルを削除する(ステップS350)。続いて、マウスデータ監視を終了通常モードへ戻し(ステップS351)、操作権ツールバーを消去する(ステップS352)。
つぎに、図48のフローチャートを参照しAPLマウスの入力制御動作について説明する。ここでは、クリックON(ペンダウン)開始時のマウスデータが引数として渡される。まず、マウス入力回数を1に設定し(ステップS361)、入力したマウスデータをOSが提供するマウスI/Fへ出力、APLプログラムへ渡す(ステップS362)。クリックOFF(ペンアップ)までのマウスデータを入力する(ステップS363)。続いて、マウスデータを再生し(ステップS364)、クリックOFFであるかを判断する(ステップS365)、クリックOFFでなければ、マウス入力回数を1つ進め(ステップS366)、マウス入力回数/M=0であるかを判断し(ステップS367)、マウス入力回数/M=0であれば、マウス入力特定回数(テストにより得られる最適値)毎に「表示監視制御」を実行する(ステップS368)。ステップS365においてクリックOFFであれば、表示監視制御を実行する(ステップS369)。
つぎに、図49のフローチャートを参照し操作権ツールバーの制御動作について説明する。ここでは、クリックON(ペンダウン)開始時のマウスデータが引数として渡される。まず、ボタン表示状態(ボタンは通常表示、選択表示の2形態を持つ)を保存する(ステップS371)。続いて、クリック座標ボタン番号を保存し(ステップS372)、クリック座標ボタンを選択表示する(ステップS373)。クリックOFF(ペンアップ)までのマウスデータを入力する(ステップS374)。続いて、クリックOFFであるかを判断し(ステップS375)、クリックOFFでなければ、さらにクリックボタン上座標であるかを判断し(ステップS376)、クリックボタン上座標であれば、クリックOFFまでにドラッグ操作によりクリックボタン外となった場合、ボタン表示状態を戻す(ステップS377)。ステップS376においてクリックボタン上座標でなければ、クリックボタンを選択表示する(ステップS378)。ステップS375においてクリックOFFであれば、クリックボタンを選択表示する(ステップS379)。続いて、クリック上座標であるかを判断し(ステップS380)、クリック上座標であれば、さらに操作権ボタンであるかを判断する(ステップS381)。クリックOFF座標がクリックボタン外である場合実行しない。操作権ボタンであれば、さらに操作権有りであるかを判断し(ステップS382)、操作権なしであれば、さらに会議主催端末であるかを判断し(ステップS383)、会議主催端末であれば、主催端末は全端末へ「操作権(移動)パケット」により、操作権の移動通知と開放を要求する(ステップS384)。ステップS383において会議主催端末でなければ、参加端末は主催端末へ「操作権(要求)パケット」を送信する(ステップS385)。ステップS381において操作権ボタンの入力でなければ、さらに上書きボタンの入力であるかを判断し(ステップS386)、上書きボタンの入力であれば、さらに操作権有りであるかを判断する(ステップS387)。上書きは操作権を持っている場合可能となる。操作権有りであれば、上書き制御を起動する(ステップS388)。ステップS386において上書きボタンの入力でなければ、さらに終了ボタンの入力であるかを判断する(ステップS389)。終了ボタンの入力であれば、「終了ボタン」により「会議終了パケット」を送信する(ステップS390)。主催端末である場合、全端末が終了する。さらに、マウス入力制御、キーボード入力制御、音声データ入力、会議パケット受信制御を終了させる(ステップS391)。
つぎに、図50のフローチャートを参照しキーボードの入力制御動作について説明する。まず、OSが提供するI/Fによりキーボードデータを監視(Windows(登録商標)におけるHook機能)全キーボードデータを入力する(ステップS401)。続いて、キー入力制御をアイドルに設定し(ステップS402)、終了通知であるかを判断する(ステップS403)。終了通知でなければ、さらに、キーボードデータ入力であるかを判断し(ステップS404)、キーボードデータ入力であれば、操作権有りであるかを判断する(ステップS405)。自端末が操作権を持っていない場合、キーボード入力を破棄する。操作権有りであれば、さらにキー入力制御がアイドルであるかを判断し(ステップS406)、キー入力制御がアイドルであれば、キーボード入力中、テキスト入力モードに設定する(ステップS407)。続いて、キー入力数を0にし(ステップS408)、テキスト入力先のキャレット座標を取得し(ステップS409)、テキスト入力されるフォント情報を取得し(ステップS410)、取得したキャレット座標、フォント情報により「テキストパケット」を作成し送信する(ステップS411)。続いて、キーコードを保存し(ステップS412)、入力したキーコードをOSが提供するキーボードI/Fへ出力、文書APLへ渡す(ステップS413)。続いて、キー入力数を1つ進め(ステップS414)、キー入力数=特定数(K)であるかを判断し(ステップS415)、キー入力が特定数(テストによる最適値)に達したら「キーボードパケット」を作成し送信する(ステップS416)。続いて、キー入力数を0にし(ステップS417)、つぎのキー入力が特定時間内(テストによる最適値)にあるか監視するためタイマーをスタートする(ステップS418)。ステップS404においてキーボードデータ入力でなければ、さらにキーボード入力タイムアウトであるかを判断する(ステップS419)。タイムアウトであれば、キーボード入力監視タイマーを停止する(ステップS420)。特定時間内につぎのキー入力がない場合、キー入力制御をアイドルモードにする(ステップS421)。続いて、キー入力数>0であるかを判断し(ステップS422)、キー入力数>0であれば、キーボードパケットの送信処理を実行する(ステップS423)。ステップS403において終了通知であれば、キーボード入力監視を終了、通常モードへ戻す(ステップS424)。
つぎに、図51のフローチャートを参照し音声データの入力制御動作について説明する。音声入力制御をアイドルモードに設定し(ステップS431)、音声データ数を0にし(ステップS432)、終了通知であるかを判断する(ステップS433)。終了通知により音声入力制御を終了する。終了通知でなければ、さらに音声データ入力であるかを判断し(ステップS434)、音声データ入力であれば、音声データを保存し(ステップS435)、マイクより入力された音声データをスピーカへ出力する(ステップS436)。続いて、音声データ数を1つ進ませ(ステップS437)、音声データ数=Sであるかを判断し(ステップS438)、音声データ数=Sであれば、さらに音声入力制御がアイドルモードであるかを判断する(ステップS439)。音声入力制御がアイドルモードであれば、音声入力制御を音声入力に設定し(ステップS440)、マイク入力開始時、音声パケット制御コードを開始に設定する(ステップS441)。ステップS439において音声入力制御がアイドルモードでなければ、マイク入力中、音声パケット制御コードを継続に設定する(ステップS442)。続いて、音声データ特定長(テストによる最適値)に達した場合「音声パケット」を作成送信する(ステップS443)。さらに音声データ数を0に設定し(ステップS444)、音声入力が停止、次の音声入力が特定時間内にあるかタイマー監視する(ステップS445)。ステップS434において音声データ入力でなければ、さらに音声入力タイムアウトであるかを判断し(ステップS446)、音声入力タイムアウトであれば、音声入力監視タイマを停止し(ステップS447)、音声データ数>0であるかを判断し(ステップS448)、音声データ数>0でなければ、音声入力タイムアウト時、音声データがない場合も音声入力の終了を通知するため音声パケットを作成する(ステップS449)。さらに、音声パケット制御コードを終了に設定し(ステップS450)、音声パケットを送信処理する(ステップS451)。
つぎに、図52のフローチャートを参照し表示監視の制御動作について説明する。まず、全ウィンドウ情報(ウィンドウキャプション、左上原点座標、幅、高さ)取得する(ステップS461)。さらに、ウィンドウキャプションのAPL名から文書情報を提供する文書APLが起動中か判定する(ステップS462)。文書APL起動中であれば、文書APLから表示中のファイルパスを取得する(ステップS463)。続いて、文書APLから表示中のページ番号、表示倍率を取得し(ステップS464)、OSが提供するI/Fを介して水平スクロール摘み位置、垂直スクロール摘み位置を取得する(ステップS465)。続いて、表示中ファイルが会議ファイルテーブルに設定されているか判定する(ステップS466)。新規に表示したファイルである場合、会議ファイルテーブルに設定する(ステップS467)。さらに、取得したファイルパスからファイルを入力し(ステップS468)、会議ファイルパケットを作成し送信する(ステップS469)。続いて、取得したウィンドウ情報、文書情報、文書ファイル情報、スクロール摘み位置情報と画面表示テーブルを比較変更があるか判定する(ステップS470)。画面表示情報の変更であれば、画面表示テーブルを更新し(ステップS471)、画面表示パケットを送信し(ステップS472)、画面表示を統一する。さらに、上書きを画面表示に合わせて変更する(ステップS473)。
つぎに、図53のフローチャートを参照し会議パケットの送信制御動作について説明する。ここでは、会議データパケットが引数として渡される。まず、操作権パケットであるかを判断し(ステップS481)、操作権パケットであれば、制御コードが操作権要求であるかを判断し(ステップS482)、操作権要求であれば、操作権要求パケットを主催端末へ送信する(ステップS483)。ステップS482において操作権要求でなければ、さらに操作権許可の制御コードであるかを判断し(ステップS484)、操作権許可であれば、操作権許可パケットを要求端末へ送信する(ステップS485)。ステップS484において操作権許可でなければ、さらに操作権却下の制御コードであるかを判断し(ステップS486)、操作権却下であれば、操作権却下パケットを要求端末へ送信する(ステップS487)。ステップS486において操作権却下でなければ、さらに操作権移動の制御コードであるかを判断し(ステップS488)、操作権移動であれば、操作権移動パケットを要求端末以外へ送信する(ステップS489)。ステップS488において操作権移動でなければ、さらに操作権開放の制御コードであるかを判断し(ステップS490)、操作権開放であれば、操作権開放パケットを主催端末へ送信する(ステップS491)。ステップS481において操作権パケットでなければ、操作権パケット以外は全他端末へ送信する(ステップS492)。
つぎに、図54−1、図54−2のフローチャートを参照し会議パケットの受信制御動作について説明する。まず、終了通知であるかを判断する(ステップS501)。終了通知により会議パケット受信制御を終了する。終了通知でなければ、他PC会議参加端末からネットワーク網より会議データパケットを受信する(ステップS502)。続いて、会議開始パケットであるかを判断し(ステップS503)、会議開始パケットであれば、会議開始パケットの受信制御を実行する(ステップS504)。ステップS503において会議開始パケットでなければ、さらに会議ファイルパケットであるかを判断し(ステップS505)、会議ファイルパケットであれば、会議ファイルパケットの受信制御を実行する(ステップS506)。ステップS505において会議ファイルパケットでなければ、さらに画面表示パケットであるかを判断し(ステップS507)、画面表示パケットであれば、画面表示パケットの受信制御を実行する(ステップS508)。ステップS507において画面表示パケットでなければ、さらに音声パケットであるかを判断し(ステップS509)、音声パケットであれば、音声データをスピーカへ出力する(ステップS510)。ステップS509において音声パケットでなければ、さらにテキストパケットであるかを判断し(ステップS511)、テキストパケットであれば、テキスト入力位置へキャレットを移動し(ステップS512)、テキストのフォント種類、フォントサイズ、フォント色を設定する(ステップS513)。ステップS511においてテキストパケットでなければ、さらにキーボードパケットであるかを判断し(ステップS514)、キーボードパケットであれば、キーコードをOSが提供するキーボードI/Fへ出力、文書APLへ渡す(ステップS515)。ステップS514においてキーボードパケットでなければ、さらに操作権パケットであるかを判断し(ステップS516)、操作権パケットであれば、操作権パケットの受信制御を実行する(ステップS517)。ステップS516において操作権パケットでなければ、さらに上書きパケットであるかを判断し(ステップS518)、上書きパケットであれば、上書きパケットの受信制御を実行する(ステップS519)。ステップS518において上書きパケットでなければ、さらに描画パケットであるかを判断し(ステップS520)、描画パケットであれば、描画パケットの受信制御を実行する(ステップS521)。ステップS520において描画パケットでなければ、さらに消去パケットであるかを判断し(ステップS522)、消去パケットであれば、消去パケットの受信制御を実行する(ステップS523)。ステップS522において消去パケットでなければ、さらに会議終了パケットであるかを判断し(ステップS524)、会議終了パケットであれば、会議終了パケットの受信制御を実行する(ステップS525)。
つぎに、図55のフローチャートを参照し会議開始パケットの受信制御動作について説明する。まず、会議開始パケットの内容を「会議開始ダイアログボックス」へ表示し(ステップS531)、会議開始パケットの内容を「会議メンバテーブル」へ設定する(ステップS532)。続いて、「マウス入力制御136」を起動し、マウス入力を開始し(ステップS533)、「キーボード入力制御137」を起動し、キーボード入力を開始し(ステップS534)、「音声データ入力制御138」を起動し、音声入力を開始する(ステップS535)。
つぎに、図56のフローチャートを参照し会議ファイルパケットの受信制御動作について説明する。まず、会議ファイルパケットのファイルデータを作業領域へ保存し(ステップS541)。ファイル名を会議ファイルテーブルへ設定する(ステップS542)。続いて、会議ファイルを指定し文書APLを起動し表示する(ステップS543)。さらに、起動エラーであるかを判断し(ステップS544)、文書APL起動エラー時「検索ダイアログボックス」を表示、文書APLパスを取得する(ステップS545)。検索ダイアログボックスの「キャンセル」ボタンにより文書APL検索を中止する(ステップS546)。
つぎに、図57のフローチャートを参照し画面表示パケットの受信制御動作について説明する。まず、画面表示パケットと画面表示テーブルを比較変化があるか比較する(ステップS551)。会議ファイル変更であれば、会議ファイルを表示する文書APLを最前面へ表示する(ステップS552)。続いて、ページ番号変更であるかを判断し(ステップS553)、ページ番号変更であれば、文書APLへページ番号を渡し表示ページを変更する(ステップS554)。続いて、表示倍率変更であるかを判断し(ステップS555)、表示倍率変更であれば、文書APLへ表示倍率を渡し表示倍率を変更する(ステップS556)。続いて、ウィンドウ表示変更であるかを判断し(ステップS557)、ウィンドウ表示変更であれば、OSが提供するI/Fにより文書APLウィンドウを左上原点座標、幅、高さを変更する(ステップS558)。続いて、水平スクロール摘み位置変更であるかを判断し(ステップS559)、水平スクロール摘み位置変更であれば、OSが提供するI/Fにより水平スクロール摘み位置を変更、表示文書を水平スクロール表示する(ステップS560)。続いて、垂直スクロール摘み位置変更であるかを判断し(ステップS561)、垂直スクロール摘み位置変更であれば、OSが提供するI/Fにより垂直スクロール摘み位置を変更、表示文書を垂直スクロール表示する(ステップS562)。続いて、画面表示パケットを画面表示テーブルへ設定し(ステップS563)、文書表示変更に合わせて上書きを再表示する(ステップS564)。
つぎに、図58−1、図58−2のフローチャートを参照し操作権パケットの受信制御動作について説明する。操作権要求であるかを判断し(ステップS571)、操作権要求であれば、主催端末は操作権要求パケット受信時「操作権要求ダイアログボックス」表示、許可、却下する(ステップS572)。操作権許可であるかを判断し(ステップS573)、操作権許可であれば、さらに操作権有りであるかを判断し(ステップS574)、主催端末が操作権を持っている場合、操作権ボタンを通常表示にする(ステップS575)。続いて、会議メンバテーブルの操作権端末を更新し(ステップS576)、要求端末へ操作権許可パケットを送信する(ステップS577)。続いて、上書き制御実行中であるかを判断し(ステップS578)、上書き制御実行中の場合、上書き制御へ停止通知し(ステップS579)、要求端末以外へ操作権の移動を通知する(ステップS580)。ステップS573において操作権許可でなければ、さらに操作権却下であるかを判断し(ステップS581)、操作権却下であれば、操作権却下パケットを要求端末へ送信する(ステップS582)。ステップS571において操作権要求でなければ、さらに操作権開放であるかを判断し(ステップS583)、操作権開放であれば、さらに要求端末が自端末であるかを判断し(ステップS584)、操作権開放パケット受信時、主催端末が要求端末である場合、「操作権許可ダイアログボックス」を表示、操作権を獲得したことを通知する(ステップS585)。続いて、操作権ボタンを選択表示、操作権があることを示す(ステップS586)。さらに、操作権端末を更新し(ステップS587)、上書き制御実行中であるかを判断する(ステップS588)。操作権を得たとき、上書き制御実行中であれば上書き制御を起動する(ステップS589)。ステップS584において要求端末が自端末でなければ、操作権要求端末へ操作権許可パケットを送信する(ステップS590)。ステップS583において操作権開放でなければ、さらに操作権許可であるかを判断し(ステップS591)、操作権許可パケット受信時、「操作権許可ダイアログボックス」を表示、操作権を獲得したことを通知する(ステップS592)。続いて、操作ボタンを選択表示とし(ステップS593)、操作権端末を更新し(ステップS594)、上書き制御実行中であるかを判断する(ステップS595)。操作権を得た時、上書き制御実行中であれば上書き制御を起動する(ステップS596)。ステップS591において操作権許可でなければ、さらに操作権却下であるかを判断し(ステップS597)、操作権却下パケット受信時、「操作権却下ダイアログボックス」を表示、操作権が獲得できないことを通知する(ステップS598)。ステップS597において操作権却下でなければ、さらに操作権移動であるかを判断し(ステップS599)、操作権移動であれば、操作権移動パケット受信時、「操作権移動ダイアログボックス」を表示、操作権が移動したことを通知する(ステップS600)。続いて、操作権有りであるかを判断し(ステップS601)、操作権移動通知時、操作権を持っている端末は操作権ボタンを通常表示へ戻す(ステップS602)。さらに、操作権開放パケットを主催端末へ送信する(ステップS603)。続いて、上書き制御実行中であるかを判断し(ステップS604)、上書き制御実行中である場合、上書き制御に上書きの停止を通知し(ステップS605)、会議メンバテーブルの操作権端末を更新する(ステップS606)。
つぎに、図59のフローチャートを参照し上書きパケットの受信制御について説明する。ここでは、上書きパケットを入力値として実行される。まず、上書き開始であるかを判断し(ステップS611)、上書き開始であれば、上書き「開始」パケット受信により上書き開始制御を実行する(ステップS612)。ステップS611において上書き開始でなければ、さらに上書き追加であるかを判断し(ステップS613)、上書き追加であれば、上書き「追加」パケット受信により上書き者追加制御を実行する(ステップS614)。ステップS613において上書き追加でなければ、さらに上書き表示であるかを判断し(ステップS615)、上書き表示であれば、上書き「表示」上書き表示中に設定し(ステップS616)、描画色を上書きパケット描画色に設定する(ステップS617)。続いて、上書き色描画であるかを判断し(ステップS618)、描画色が上書き色である場合、上書き者ボタンを選択表示にする(ステップS619)。ステップS618において描画色が上書き色でない場合、上書き者ボタンを描画色表示にし(ステップS620)、上書き表示制御を実行する(ステップS621)。ステップS615において上書き表示でなければ、上書き非表示であるかを判断し(ステップS622)、上書き非表示であれば、上書き「非表示」パケット受信により上書き消去制御を実行する(ステップS623)。ステップS622において上書き非表示でなければ、さらに上書き終了であるかを判断し(ステップS624)、上書き終了であれば、上書き「終了」パケット受信により上書き終了制御を実行する(ステップS625)。
つぎに、図60のフローチャートを参照し描画パケットの受信制御動作について説明する。ここでは、描画パケットを入力値とする。まず、上書きファイルテーブルから上書きファイルを検索する(ステップS631)。続いて、上書きファイルから上書きテーブルを検索、上書きウィンドウ番号を取得し(ステップS632)、さらに上書きファイルを取得する(ステップS633)。続いて、文書APLから文書左上原点座標(DX,DY)、幅(DW)、高さ(DH)、表示倍率(V)を取得する(ステップS634)。さらに、画面幅(SW)、高さ(SH)を取得する(ステップS635)。続いて、ドラック座標No=0に設定し(ステップS636)、ドラッグ座標間を描画色、描画太さで線描画する(ステップS637)。さらに、ドラック座標Noを1つ進ませ(ステップS638)、ドラッグ座標NO<座標数であるかを判断し(ステップS639)、ドラッグ座標NO<座標数でなければ、2ページ表示であるかを判断する(ステップS640)。すなわち、(DY+DH)<SHの場合文書が2ページに渡って表示されていると判定する。2ページ表示であれば、文書APLからページ間隔(DS)を取得する(ステップS641)。ドラッグ開始Y座標<(DY+DH+DS)の場合、上書きページ番号への上書きとする(ステップS642)。ステップS642において開始座標文書1領域であれば、ドラッグ座標を文書座標へ変換し(ステップS643)、上書きファイルの上書きページ番号へストロークデータを追加する(ステップS644)。ステップS642において開始座標文書1領域でなければ、文書座標をドラッグ座標に設定し(ステップS645)、上書きファイル(上書きページ番号+1)へストロークデータを追加する(ステップS646)。
つぎに、図61のフローチャートを参照し消去パケットの受信制御動作について説明する。ここでは、消去パケットを入力値とする。まず、上書きファイルテーブルから上書きファイルを検索する(ステップS651)。続いて、上書きファイルから上書きテーブルを検索、上書きウィンドウ番号を取得し(ステップS652)、さらに上書きファイルを取得する(ステップS653)。続いて、文書APLから文書左上原点座標(DX,DY)、幅(DW)、高さ(DH)、表示倍率(V)を取得し(ステップS654)、さらに画面幅(SW)、高さ(SH)を取得する(ステップS655)。続いて、上書きファイルから上書きページ番号ストロークデータを入力する(ステップS656)。さらに、2ページ表示であるかを判断する(ステップS657)。すなわち、(DY+DH)<SHの場合、文書が2ページに渡って表示されていると判定する。2ページ表示である場合、上書きファイルから(上書きページ番号+1)ストロークデータを入力する(ステップS658)。続いて、ストローク座標(文書座標)を画面座標へ変換し(ステップS659)、ドラッグ座標NOを0にし(ステップS660)、ドラッグ座標を矩形の中心とする消しゴムカーソル領域を算出する(ステップS661)。続いて、消しゴムカーソル領域内の画面座標を検索し(ステップS662)、カーソル領域有りであるかを判断する(ステップS663)。カーソル領域有りであれば、上書きウィンドウの消しゴム領域を透明色とし上書き文字を消去する(ステップS664)。さらに、消しゴムカーソル領域にかかる画面座標を削除し(ステップS665)、ストロークの途中が消去される場合ストロークを分ける。ドラッグ座標NOを1つ進め(ステップS666)、ドラッグ座標NO<座標数であるかを判断する(ステップS667)。ドラッグ座標NO<座標数でなければ、画面座標をストローク座標(文書座標)へ変換し(ステップS668)、上書きページ番号の上書きファイルストロークデータと置き換える(ステップS669)。続いて、2ページ表示であるかを判断し(ステップS670)、2ページ表示であれば、ストローク座標を文書2画面座標に変換し(ステップS671)、(上書きページ番号+1)の上書きファイルストロークデータと置き換える(ステップS672)。
つぎに、図62のフローチャートを参照し会議終了パケットの受信制御動作について説明する。まず、会議主催端末であるかを判断し(ステップS681)、会議主催端末でなければ、会議終了パケットが主催端末以外からの場合、終了端末を会議メンバテーブルから削除する(ステップS682)。一方、会議主催端末であれば、主催端末からの会議終了パケットによりPC会議を終了する(ステップS683)。
つぎに、図63のフローチャートを参照し上書き制御動作について説明する。まず、上書きボタン」クリックにより上書き制御が起動されると上書きツールバーを表示し(ステップS691)、操作モードをペンに初期設定、ペンボタンを選択表示(通常表示、選択表示の2形態を持つ)にする(ステップS692)。続いて、上書き開始パケットを送信し(ステップS693)、上書き開始制御を実行する(ステップS694)。さらに、上書き操作者が上書きを実行、上書きファイルを作成しているか検索する(ステップS695)。続いて、上書き追加パケットを送信し(ステップS696)、上書き追加制御を実行し(ステップS697)、上書き表示切替制御を実行、上書き操作者の上書きを最前面へ表示する(ステップS698)クリック(ペンダウン)開始時のマウスデータを入力する(ステップS699)。上書きツールバー上座標であるかを判断し(ステップS700)、クリック座標が上書きツールバー上である場合、上書きツールバー制御を実行する(ステップS701)。ステップS700において上書きツールバー上座標でなければ、さらにクリック座標が上書き者ボタン上であるかを判断し(ステップS702)、クリック座標が上書き者ボタン上である場合、上書き者ツールバー制御を実行する(ステップS703)。ステップS702においてクリック座標が上書き者ボタン上でなければ、さらに操作モードが「ペン」であるかを判断し(ステップS704)、操作モードが「ペン」である場合、描画操作制御を実行する(ステップS705)。ステップS704において操作モードが「消去」であるかを判断し(ステップS706)、操作モードが「消去」である場合、消去操作制御を実行する(ステップS707)。ステップS699においてマウス入力でなければ、さらに停止通知であるかを判断し(ステップS708)、停止通知でなければ、さらに終了通知であるかを判断し(ステップS709)、終了通知であれば、「終了ボタン」により「上書き終了パケット」を送信し(ステップS710)、上書き終了制御を実行する(ステップS711)。ステップS708において操作権が移動した場合、上書きツールバーを消去、上書き制御を終了する(ステップS712)。
つぎに、図64−1、図64−2のフローチャートを参照し上書きツールバーの制御動作について説明する。ここでは、クリックON(ペンダウン)開始時のマウス座標を入力値として実行される。まず、上書きツールバーボタン表示状態(通常表示、選択表示)を保存する(ステップS721)。さらに、クリック開始座標のボタン番号を保存する(ステップS722)、クリック開始座標ボタンを選択表示とする(ステップS723)。クリックOFF(ペンアップ)までのマウスデータを入力する(ステップS724)。続いて、クリックOFFであるかを判断し(ステップS725)、クリックOFFでなければ、さらにクリックボタン上座標であるかを判断する(ステップS726)。ドラッグ操作によりクリックボタン外となった場合、ボタン表示状態を戻す(ステップS727)。ステップS726においてクリックボタン上座標でなければ、クリックボタンの選択表示を行なう(ステップS728)。ステップS725においてクリックOFFであれば、ボタン表示状態を復旧し(ステップS729)、クリックボタン上座標であるかを判断する(ステップS730)。クリックOFF座標がクリックボタン外である場合、機能実行しない。クリックボタン上座標であれば、さらに設定ボタンの入力であるかを判断し(ステップS731)、設定ボタンの入力であれば、「設定」ボタンにより「上書きの設定ダイアログボックス」を表示し、実行する(ステップS732)。続いて、上書き操作者変更であるかを判断し(ステップS733)、上書き操作者変更であれば、さらに上書きファイル有りであるかを判断する(ステップS734)。上書き操作者が変更され上書きファイルが作成されていない場合、上書き追加パケットを送信する(ステップS735)。続いて、上書き者追加制御を実行し(ステップS736)、上書き操作者の上書きを最前面へ表示する(ステップS737)。ステップS731において設定ボタンの入力でなければ、全ボタンを通常表示し(ステップS738)、ペンボタンの入力であるかを判断する(ステップS739)。上書き者ボタンにより上書き操作者の上書きを非表示、あるいは上書き操作者以外の上書きを最前面に表示したとき非表示モードとなる(ステップS740)。続いて、上書き操作者上書きを最前面へ表示し(ステップS741)、ペンの操作モードに設定し(ステップS742)、ペンボタンを選択表示し、ペンモードであることを示す(ステップS743)。ステップS739においてペンボタンの入力でなければ、さらに消去ボタンの入力であるかを判断し(ステップS744)、消去ボタンの入力であれば、さらに非表示の操作モードであるかを判断し(ステップS745)、非表示の操作モードであれば、上書き表示切替制御を実行する(ステップS746)。続いて、消去の操作モードに設定し(ステップS747)、消去ボタンの選択表示を行なう(ステップS748)。ステップS744において消去ボタンの入力でなければ、さらに終了ボタンの入力であるかを判断し(ステップS749)、終了ボタンの入力であれば、上書きの終了を上書き制御へ通知する(ステップS750)。
つぎに、図65のフローチャートを参照し上書き者ボタンの制御動作について説明する。ここでは、クリックON(ペンダウン)開始時のマウス座標を入力値として実行される。まず、上書き者ボタン表示状態(通常表示、選択表示、描画色表示)を保存する(ステップS751)。続いて、クリック開始座標の上書き者を保存し(ステップS752)、クリック開始座標のボタンを選択表示とする(ステップS753)。クリックOFF(ペンアップ)までのマウスデータを入力する(ステップS754)。続いて、クリックOFFであるかを判断し(ステップS755)、クリックOFFでなければ、さらにクリックボタン上座標であるかを判断する(ステップS756)。ドラッグ操作によりクリックボタン外となった場合、ボタン表示状態を戻す(ステップS757)。ステップS756においてクリックボタン上座標であれば、クリックボタンを選択表示する(ステップS758)。ステップS755においてクリックOFFであれば、ボタン表示状態を復旧し(ステップS759)、クリックボタン上座標であるかを判断する(ステップS760)。クリックOFF座標がクリックボタン外である場合、機能実行しない。続いて、上書き表示中であるかを判断し(ステップS761)、クリックボタンの上書き者の上書きが表示中の場合、上書き非表示パケットを送信し(ステップS762)、上書き消去する(ステップS763)。さらに、上書き操作者ボタンであるかを判断し(ステップS764)、上書き操作者ボタンである場合、非表示モードにする(ステップS765)。ステップS761において上書き表示中でなければ、クリックボタン上書き者の上書きを最前面へ表示する(ステップS766)。続いて、上書き操作者ボタンであるかを判断し(ステップS767)、上書き操作者ボタンである場合、ペンモードにする(ステップS768)。ステップS767において上書き操作者以外の上書きが最前面へ表示された場合、非表示モードとする(ステップS769)。
つぎに、図66のフローチャートを参照し上書き設定の制御動作について説明する。まず、「上書きの設定ダイアログボックス」を表示し(ステップS771)、上書きダイアログボックス入力処理を実行する(ステップS772)。続いて、ダイアログボックスで選択された「ペン色」を上書きテーブルへ設定し(ステップS773)、ダイアログボックスで選択された「ペン太さ」を上書きテーブルへ設定する(ステップS774)。さらに、ダイアログボックスで選択された「消しゴム長」を上書きテーブルへ設定し(ステップS775)、ダイアログボックスで設定された「上書き操作者」を上書きテーブルへ設定する(ステップS776)。
つぎに、図67のフローチャートを参照し上書き開始の制御動作について説明する。上書き制御実行中であるかを判断し、上書き制御実行中であれば、上書き制御を実行中とする(ステップS781)。続いて、現在の会議ファイル(画面表示テーブル)の全上書きファイルを検索する。(ステップS782)。さらに、検索された上書きファイルからページ番号の上書きを検索し(ステップS783)、検索した上書きファイル、上書き者を上書きテーブルへ設定する(ステップS784)。続いて、上書きを非表示に設定し(ステップS785)、上書き者ボタンを通常表示する(ステップS786)。
つぎに、図68のフローチャートを参照し上書き者追加の制御動作について説明する。上書き者を入力値として実行される。まず、上書き者上書きファイルを作成し(ステップS791)、上書きファイルテーブルを設定する(ステップS792)。続いて、上書きテーブルを設定し(ステップS793)、上書きを非表示に設定し(ステップS794)、さらに上書き者ボタンを通常表示する(ステップS795)。
つぎに、図69のフローチャートを参照し描画操作の制御動作について説明する。描画開始時のマウス座標を入力値として実行する。上書き操作者の上書きウィンドウを上書きテーブルから取得する(ステップS801)。さらに、上書き操作者の上書きファイルを上書きテーブルから取得し(ステップS802)、描画開始時のマウス座標を保存する(ステップS803)。さらに、クリックOFF(ペンアップ)までのマウスデータを入力する(ステップS804)。続いて、クリックOFFであるかを判断し(ステップS805)、クリックOFFでなければ、描画操作によるドラッグ座標を保存し(ステップS806)、上書きテーブルに設定されているペン色、ペン太さにて座標間を線描画する(ステップS807)。ステップS805においてクリックOFFであれば、描画パケットを送信し(ステップS808)、文書APLから文書左上原点座標(DX,DY)、幅(DW)、高さ(DH)、表示倍率(V)を取得し(ステップS809)、さらに画面幅(SW)、高さ(SH)を取得する(ステップS810)。続いて、2ページ表示であるかを判断する(ステップS811)。すなわち、(DY+DH)<SHの場合文書が2ページに渡って表示されていると判定する。2ページ表示であれば、文書APLからページ間隔(DS)を取得する(ステップS812)。ドラッグ開始Y座標<(DY+DH+DS)の場合、上書きページ番号への上書きとする(ステップS813)。ここで、開始座標文書1領域であれば、ドラッグ座標を文書座標へ変換し(ステップS814)、上書きファイルの上書きページ番号ブロックデータへストロークデータを追加する(ステップS815)。ステップS813において開始座標文書1領域でなければ、文書座標をドラッグ座標に変換し(ステップS816)、上書きファイル(上書きページ番号+1)ブロックデータへストロークデータを追加する(ステップS817)。
つぎに、図70のフローチャートを参照し消去操作の制御動作について説明する。消去開始時のマウス座標を入力値として実行する。まず、上書き操作者の上書きウィンドウを上書きテーブルから取得し(ステップS821)、さらに上書き操作者の上書きファイルを上書きテーブルから取得する(ステップS822)。続いて、文書APLから文書左上原点座標(DX,DY)、幅(DW)、高さ(DH)、表示倍率(V)を取得し(ステップS823)、さらに画面幅(SW)、高さ(SH)を取得する(ステップS824)。続いて、上書きファイルから上書きページ番号ストロークデータを入力する(ステップS825)。続いて、2ページ表示であるかを判断する(ステップS826)。すなわち、(DY+DH)<SHの場合文書が2ページに渡って表示されていると判定する。2ページ表示であれば、上書きファイルから(上書きページ番号+1)ストロークデータを入力し(ステップS827)、ストローク座標(文書座標)を画面座標へ変換する(ステップS828)。続いて、消去開始時のマウス座標を保存し(ステップS829)、クリックOFF(ペンアップ)までのマウスデータを入力する(ステップS830)。続いて、クックOFFであるかを判断し(ステップS831)、クリックOFFでなければ、消去操作によるドラッグ座標を保存する(ステップS832)。さらに、ドラッグ座標を矩形の中心とする消しゴムカーソル領域を算出し(ステップS833)、消しゴムカーソル領域内の画面座標を検索する(ステップS834)。続いて、カーソル領域有りであるかを判断し(ステップS835)、カーソル領域有りであれば、上書きウィンドウの消しゴム領域を透明色とし上書き文字を消去する(ステップS836)。さらに消しゴムカーソル領域にかかる画面座標を削除する(ステップS837)。ストロークの途中が消去される場合ストロークを分ける。続いて、消去パケットを送信し(ステップS838)、画面座標をストローク座標へ変換する(ステップS839)。さらに上書きファイルの上書きページ番号ブロックデータと置き換える(ステップS840)。続いて、2ページ表示であるかを判断し(ステップS841)、2ページ表示であれば、ストローク座標を文書2画面座標に変換し(ステップS842)、上書きファイルの(上書きページ番号+1)ブロックデータと置き換える(ステップS843)。
つぎに、図71のフローチャートを参照し上書き表示切替の制御動作について説明する。ここでは、上書き者を入力値として実行される。まず、上書き者を0にし(ステップS851)、上書き者<上書き者数であるかを判断する(ステップS852)。上書き者<上書き者数であれば、さらに上書き表示中であるかを判断し(ステップS853)、上書き表示中であれば、上書き時の色で表示されている上書きを検索する(ステップS854)。描画色=上書き色でなければ、上書き者を1つ進める(ステップS855)。描画色=上書き色の場合、上書き非表示パケットを送信し(ステップS856)、上書きを消去する(ステップS857)。続いて、描画色テーブルから未使用描画色を検索し(ステップS858)、上書き者ボタンを描画色表示にする(ステップS859)。続いて、描画色を使用に設定し(ステップS860)、さらに上書きテーブルに描画色を設定する(ステップS861)。続いて、上書き表示パケットを送信し(ステップS862)、上書きを検索した描画色1色で描画する(ステップS863)。続いて、上書き表示中であるかを判断し(ステップS864)、上書き表示中であれば、上書き非表示パケットを送信し(ステップS865)、上書き者の上書きを消去する(ステップS866)。さらに、上書き者ボタンを選択表示し(ステップS867)、描画色を上書き色に設定する(ステップS868)。続いて、上書き表示中とし(ステップS869)、上書き表示パケットを送信し(ステップS870)、さらに上書き者の上書きを最善面へ表示する(ステップS871)。
つぎに、図72のフローチャートを参照し上書き追従の制御動作について説明する。この制御動作は、画面表示変更があったときに実行される。まず、上書き制御実行中であるかを判断し(ステップS881)、上書き制御実行中であれば、さらにページ変更であるかを判断する(ステップS882)。ページ変更でなければ、さらに会議ファイル変更であるかを判断し(ステップS883)、会議ファイル、あるいはページ番号が変更となった場合、全上書き者ボタンを消去する(ステップS884)。続いて、全上書きウィンドウを消去(閉じる)、上書きを消去し(ステップS885)、上書き開始制御を実行する(ステップS886)。続いて、操作権端末であるかを判断し(ステップS887)、操作権端末であれば、さらに上書き操作者ファイルがあるかを判断する(ステップS888)。上書き操作者の上書きファイルがない場合、上書き者追加パケットを送信し(ステップS889)、上書き追加制御を実行し(ステップS890)、上書き者上書きを最前面へ表示する(ステップS891)。ステップS883において会議ファイル変更でなければ、上書き者を0にし(ステップS892)、上書き者<上書き者数であるかを判断する(ステップS893)。上書き者<上書き者数であれば、さらに上書き表示中であるかを判断し(ステップS894)、上書き表示中であれば、上書きの再表示のため消去し(ステップS895)、上書き文書位置に合わせて再描画する(ステップS896)。そして、上書き者数を1つ進め(ステップS897)、ステップS893に戻る。
つぎに、図73のフローチャートを参照し上書き終了の制御動作について説明する。まず、上書き者を0にし(ステップS901)、上書き者<上書き者数であるかを判断する(ステップS902)。上書き者<上書き者数であれば、さらに上書き表示中であるかを判断し(ステップS903)、上書き表示中であれば、上書きウィンドウを消去(閉じる)上書きを消去する(ステップS904)。続いて、上書き者ボタンを消去し(ステップS905)、上書き者数を1つ進め(ステップS906)、ステップS902に戻る。ステップS902において上書き者<上書き者数でなければ、上書き制御未実行とする(ステップS907)。
つぎに、図74のフローチャートを参照し上書き表示の制御動作について説明する。ここでは、上書き者、描画色を入力値として実行される。まず、上書きウィンドウを作成最前面へ表示し(ステップS911)、上書きウィンドウ番号を上書きテーブルへ設定する(ステップS912)。続いて、文書APLから文書左上原点座標(DX,DY)、幅(DW)、高さ(DH)、表示倍率(V)を取得し(ステップS913)、画面幅(SW)、高さ(SH)を取得し(ステップS914)、さらに上書きファイルから上書きページ番号ストロークデータを入力する(ステップS915)。続いて、2ページ表示であるかを判断する(ステップS916)。すなわち、(DY+DH)<SHの場合文書が2ページに渡って表示されていると判定する。2ページ表示であれば、上書きファイルから(上書きページ番号+1)ストロークデータを入力し(ステップS917)、ストローク座標(文書座標)を画面座標へ変換し(ステップS918)、さらにストローク単位に描画する(ステップS919)。続いて、直前座標を0XFFFFとし(ステップS920)、画面座標が(0,0)から(SW−1、SH−1)内であるか判定する(ステップS921)。ここで画面内座標でなければ、直前座標を0XFFFFとする(ステップS922)。また、画面内座標であれば、直前座標=0XFFFFであるかを判断し(ステップS923)、直前座標=0XFFFFでなければ、さらに描画色=上書き色であるかを判断する(ステップS924)。描画色=上書き色であれば、上書き色描画の場合、ストロークに設定されている色、太さにて座標間を線描画する(ステップS925)。描画色=上書き色でなければ、描画色が指定されている場合、ストロークに設定されている太さ、描画色にて座標間を線描画する(ステップS926)。続いて、直前座標を画面座標に変換し(ステップS927)、1ストローク画面座標について上記処理を完了したかを判断し(ステップS928)、1ストローク画面座標について上記処理を完了した場合、さらに全ストローク画面座標について上記処理を完了したかを判断し(ステップS929)、完了してなければ、ステップSS919に戻る。
つぎに、図75のフローチャートを参照し上書き消去の制御動作について説明する。ここでは、上書き者を入力値として実行される。まず、描画色=上書き色であるかを判断し(ステップS931)、指定描画色にて描画している場合、描画色を未使用に設定する(ステップS932)。続いて、上書き者ボタンを通常表示とし(ステップS933)、上書きを非表示とし(ステップS934)、さらに上書きウィンドウを消去(閉じる)上書きを消去する(ステップS935)。
(第3の実施の形態)
この実施の形態は、先に述べたように、会議中に会議資料への書き込み、別資料の参照を可能とするものである。また、。会議資料表示、マウスドラッグ操作により手書き文字(図形)を描画することにより会議資料への書き込みが可能である。手書き文字は描画時の画面表示内容に対してのみ意味を持つため会議資料のどのページの何処へ描画したかの情報が必要となる。このため、手書き文字を描画した画面の画像データを保存することになるがデータが膨大となるばかりか、会議資料のページ番号を処かに描画しないと、どのページへの書き込みか不明となったり、画像から会議資料のページを検索する手間が発生する。そこで、本発明はデータ量の軽減と書き込みページの自動検索を可能にするものである。また、一般的に会議では複数の資料が用いられ会議進行により随時変更され、それぞれに書き込みが実行される。会議資料に対する上書きでないと書き込み内容が意味不明となる。このため上書き時上書きファイルを選択する必要がある。そこで、本発明は会議資料に対する上書きファイルを自動検索するものである。
また、一般的に会議においては自分に直接関係ない部分の説明時、あるいは説明を聞くより会議資料を読んだ方が早い等の理由から説明ページに関係なく会議資料を捲り、必要事項を書き込み、書き込み内容を再度確認、追加書き込み等が実行される。書き込みを画像データとして保存する場合、保存画像データにないページ内部分への追加書き込みが必要である場合、会議資料を表示、ページ検索、書き込む必要がある。さらに、先に書き込んだ内容が必要である場合は再度書き込む必要、不要となったページの削除など操作が必要となる。そこで、本発明は書き込みの修正を容易にするものである。
また、会議資料のページを捲り、書き込みを表示、目的ページを検索する場合手間がかかる。そこで、本発明は上書きページ検索を容易にするものである。また、一般的に会議では複数の資料が用いられ会議進行により随時変更されされる。質問のためのページを検索していると時間の無駄となる。そこで、本発明は発言ページの選択を容易にするものである。また、発言を受け付け、発言ページを検索、全端末へ表示するのに時間がかかり会議の円滑な進行を妨げる。そこで、本発明は発言ページの表示を迅速に行うものである。また、質問内容があいまいであると会議の円滑な進行を妨げることになる。そこで、本発明は質問内容を明確にするものである。さらに、書き込み時の文書位置へ上書きを表示しないと意味不明となる。そこで、本発明は上書きが意味あるものにする。
この実施の形態におけるシステム構成は、前述した図1〜図6と同様である。また、ウィンドウ表示制御、文書表示制御、文書座標算出については残術した図32〜図34と同様であり、また、画面座標算出については図9と同様であるので、ここでの重複説明は省略する。
図76を参照し上書き描画、消去について説明する。図示するいうに、(X0,Y0)、(X1,Y1)、(X2,Y2)、(X3,Y3)、(X4,Y4)、(X5,Y5)が1ストロークのドラッグ軌跡を示す(図76[1]参照)。手書き文字描画は2点間((X0,Y0)−(X1,Y1)、(X0,Y0)−(X1,Y1)、...)を設定されている色、太さにて線描画することにより描画する。ドラッグ座標は文書座標(ストローク座標)へ変換、ストローク単位(ペンダウンからペンアップまで)に上書きファイルへ保存する(図76[2]参照)。消しゴムカーソル座標(Xp,Yp)、消しゴム長(L)である場合、右上座標(Xp−(L/2),Yp−(L/2))、右下座標(Xp+(L/2),Yp+(L/2))からなる矩形領域内となる描画を消去する(図76[3]参照)。(X2,Y2)−(X3,Y3)線分、(X3,Y3)−(X4,Y4)線分が削除されることになる(図76[4]参照)。消去によりストロークが分断される場合、ストロークを分ける。(X0,Y0)−(X2,Y2)ストロークと(X4,Y4)−(X5,Y5)の2ストロークに分け保存する(図76[5]参照)。
この実施の形態におけるテキスト入力情報取得、会議画面統一方法、テキスト入力表示、会議制御については前述と同様であるので、ここでの重複説明は省略する。
つぎに、図77を参照し会議制御プログラムの構成について説明する。会議開始制御135は、会議制御プログラム125が起動されたときに実行され初期設定、独立して動作するマウス入力制御136、キーボード入力制御137、音声入力制御138、会議資料閲覧制御305、会議発言制御306、会議パケット受信制御139を起動する。マウス入力制御136は、タブレットPCのペンあるいはマウスによるマウスデータを入力、文書APL131のウィンドウ情報、文書情報を取得、変化がある場合「会議ファイルパケット144」、「画面表示パケット120」を作成し送信する。また、会議制御ツールバー「終了」ボタン「会議終了パケット」を作成送信する。キーボード入力制御137は、キーボードデータを入力、「テキストパケット122」、「キーボードパケット121」を作成送信する。操作権がない場合は入力データを破棄する。声入力制御138は、マイクによる音声データを入力、「音声パケット307」を作成し送信する。会議資料閲覧制御305は、ペンあるいはマウスのドラッグ操作により会議文書上へ上書き文字(図形)を描画、ストロークデータを上書きファイルへ保存する。会議発言制御306は、「発言パケット307」を作成し送信、発言権を取得、上書きファイルに保存されている発言ページへの上書きを表示、「上書きパケット310」を作成し送信する。会議パケット受信制御139は、ネットワーク網を介して会議データパケットを受信実行する。下記表4にデータパケットを示す。
会議制御テーブル308は、会議開始制御135、マウス入力制御136、キーボード入力制御137、音声入力制御138、会議資料閲覧制御305、会議発言制御306、会議パケット受信制御139により参照、更新可能領域に設けれPC会議を制御する。会議制御テーブル308を下記表5に示す。
また、「会議制御ファイル」会議で使用するファイルを保存する。この保存ファイルは前述の表3と同様である。
また、図78にこの実施の形態にかかる会議データパケットの詳細内容を示す。図79に会議制御テーブルの詳細内容を示す。
つぎに、図80を参照し会議主催操作方法について説明する。デスクトップアイコンのダブルクリック等OSが提供するプログラム起動手段により「会議制御プログラム125」を起動し「会議ツールバー」を表示する(図80[1]参照)。「主催ボタン」へのペンタッチ(左クリック)により「会議主催ダイアログボックス」を表示する(図76[]2参照)。会議名を入力、あらかじめ登録されている登録者から「参加」により参加者、「主催」により主催者を選択する(図80[3]参照)。「登録ボタン」により「会議者登録ダイアログボックス」を表示、会議参加予定者の名前、所属、ネットワークアドレスを登録、保存する(図80[3]参照)。「開始ボタン」により会議を開始、「操作権ツールバー」を表示する(図80[5]参照)。「会議開始パケット143」に会議名、会議参加者を設定送信する。会議資料が文書APL131により表示されている場合、あるいは表示されるのを監視、自動的に会議資料ファイル名を取得、「会議ファイルパケット144」を送信する。会議資料表示ページ番号、表示倍率、文書APLウィンドウ左上原点座標、幅、高さ、水平スクロール摘み位置、垂直スクロール摘み位置を取得「画面表示パケット120」を送信、会議を開始する。
つぎに、図81を参照し会議参加操作方法について説明する。会議制御プログラムを起動、「会議ツールバー」を表示する(図81[1]参照)。「参加ボタン」へのペンタッチ(左クリック)により「操作権ツールバー」を表示、会議へ参加する(図81[2]参照)。会議主催端末から「会議開始パケット143」が送信されると「会議開始ダイアログボックス」が表示される(図81[3]参照)。「会議ファイルパケット144」の受信により会議ファイルを作業領域へ保存、文書APLを起動表示する(図81[4]参照)。このとき、文書APLが検索できない場合、「検索ダイアログボックス」を表示する。
つぎに、図82−1、図82−2を参照し会議資料閲覧上書き操作について説明する。会議制御ツールバー「閲覧」ボタンによりPC会議から抜ける(図82−1[1]参照)。「上書きツールバー」を表示する(図82−1[2]参照)。「ペン」ボタンにより、上書きモードへ移行、全画面サイズの透明ウィンドウを作成、手書き文字(図形)を描画、会議資料表示プログラムが提供するI/Fにより文書の左上原点座標、幅、高さ、倍率、ページ番号を取得、文書座標へ変換ストロークデータを上書きファイルへ保存する(図82−1[3]参照)。「APL」ボタンにより、通常のPC操作モードへ戻し、会議資料のページ捲り、スクロール表示を可能とする(図82−1[4]参照)。上書きモードへ移行した時、表示中のページへの上書きがあれば文書座標を画面座標へ変換、描画時の文書位置へ上書きを表示する(図82−1[5]参照)。「設定」ボタンにより、「上書きの設定」ダイアログボックスを表示、上書き時の色、太さを設定する(図82−2[6]参照)。ドラッグ操作により消しゴムの大きさを設定する(図82−2[7]参照)。「一覧」ボタンにより、上書き一覧を表示する(図82−2[8]参照)。上書きページをクリック、「編集」ボタンにより上書きページを選択する(図82−2[9]参照)。会議資料表示プログラムが提供するI/Fにより、上書きが実行された文書ページを表示、文書座標を画面座標へ変換、描画時の文書位置へ上書きを表示する(図82−2[10]参照)。
つぎに、図83−1、図83−2、図83−3を参照し会議発言操作方法について説明する。会議制御ツールバー「発言」ボタンにより発言モードへ移行する(図83−1[1]参照)。表示中の会議ファイルへの上書きファイルを検索、上書きファイルに保存されている上書きをページ単位にサムネイル表示する(図83−1[2]参照)。上書きページをクリック、「発言」ボタンにより発言ページを選択する(図83−1[3]参照)。「発言(要求)パケット」を会議主催端末(議長)へ送信、発言要求する(図83−1[4]参照)。会議主催端末に「発言要求」ダイアログボックスが表示される(図83−1[5]参照)。「却下」ボタンにより「発言(却下)パケット」を送信する(図83−1[6]参照)。発言(却下)パケット受信により「発言却下」ダイアログボックスを表示する(図83−1[7]参照)。「許可」ボタンにより、発言ページを表示、「画面表示パケット」を送信する(図83−1[8]参照)。発言要求端末へ「発言(許可)パケット」を送信する(図83−1[9]参照)。
また、画面表示パケットにより全会議参加端末が発言ページを表示する(図83−2[10]参照)。発言(許可)パケット受信により、全端末は「発言許可」ダイアログボックスを表示する(図83−2[11]参照)。発言(許可)パケット受信により、全端末は「発言者」ボタンを表示する(図83−2[12]参照)。発言要求端末は「発言」ツールバーを表示、発言モードへ移行する(図83−2[13]参照)。上書きファイルから発言ページへの上書き文字(図形)の文書座標を画面座標へ変換、上書き時の文書位置へ表示する(図83−2[14]参照)。「上書きパケット」により全端末へ上書きデータを送信する(図83−2[15]参照)。上書きパケットを受信、上書き文字(図形)の文書座標を画面座標へ変換、上書き時の文書位置へ表示する(図83−2[16]参照)。
また、発言端末は「APL」ボタンにより会議モードを抜け、会議資料のスクロール表示、ページ捲り操作が可能となる(図83−3[17]参照)。「会議」ボタンにより会議へ復帰、文書表示情報を取得、上書き文字(図形)の文書座標を画面座標へ変換、上書き時の文書位置へ表示する(図83−3[18]参照)。会議資料のスクロール、ページ捲りにより表示変更があると「画面表示パケット」が送信され会議資料の表示変更、上書きの表示変更が行われる(図83−3[19]参照)。「終了」ボタンにより、上書きを消去、発言ツールバーを消去、「発言(終了)パケットを送信、操作権を会議主催端末へ戻す(図83−3[20]参照)。
つぎに、図84−1、図84−2のフローチャートを参照し会議開始の制御動作について説明する。まず、会議制御プログラムが起動されると「会議ツールバー」を表示する(ステップS1001)。マウスデータの入力有無を判断し(ステップS1002)。マウスデータの入力であれば、クリック(ペンダウン)開始座標のボタン情報を保存する(ステップS1003)。クリック開始座標のボタンを選択表示する(ステップS1004)。ボタンは通常表示、選択表示の2形態を持つ。マウスデータ入力有無を判断し(ステップS1005)。マウスデータ入力であれば、さらにクリックOFFであるかを判断し(ステップS1006)、クリックOFFでなければ、さらにクリックボタン上座標であるかを判断する(ステップS1007)。ドラッグ操作によりクリックボタン外となった場合、クリックボタンを通常表示へ戻す(ステップS1008)。クリックボタン上座標であれば、クリックボタンを選択表示する(ステップS1009)。ステップS1006においてクリックOFFであれば、クリックボタンを通常。表示する(ステップS1010)。続いて、主催ボタンの入力であるかを判断し(ステップS1011)、主催ボタンの入力であれば、「主催」ボタンにより、「会議主催ダイアログボックス」を表示、会議名を設定、会議メンバを選択する(ステップS1012)。ステップS1011において主催ボタンの入力でなければ、さらに登録ボタンの入力であるかを判断し(ステップS1013)、登録ボタンの入力であれば、「登録ボタン」により、「会議者登録ダイアログボックス」を表示、会議メンバを登録する(ステップS1014)。ステップS1013において登録ボタンの入力dなければ、会議ツールバーを消去し(ステップS1015)、会議制御テーブルを0クリア、「上書きの設定ダイアログボックス」で登録されている描画色、描画太さ、消しゴム長を設定する(ステップS1016)。続いて、会議メンバテーブルを0クリア、自端末のネットワークアドレスを設定し(ステップS1017)、画面表示テーブルを0クリアする(ステップS1018)、さらに会議モード(画面制御テーブル)を「会議」に設定する(ステップS1019)。参加ボタンの入力であるかを判断し、参加ボタンの入力であれば、「参加」ボタンにより会議パケット受信制御を起動、会議開始パケットの受信を待ち会議を開始する(ステップS1020)。参加ボタンの入力であれば、会議パケット受信の制御を実行する(ステップS1021)。参加ボタンの入力でなければ、さらに開始ボタンの入力であるかを判断し(ステップS1022)、開始ボタンの入力であれば、「開始」ボタンにより会議主催ダイアログボックスにより入力したメンバ情報を会議メンバテーブルへ設定する(ステップS1023)。続いて、「会議開始パケット」を会議参加端末へ送信し、会議を開始する(ステップS1024)。その後、文書APLが会議ファイルを表示するのを監視する(ステップS1025)。続いて、会議ファイル設定であるかを判断し(ステップS1026)、会議ファイル設定であれば、会議パケット受信制御、マウス入力制御、キーボード入力制御、音声データ入力制御を起動する(ステップS1027)。続いて、マウス入力制御を起動し(ステップS1028)、キーボード入力制御を起動し(ステップS1029)、さらに音声データ入力制御を起動する(ステップS1030)。ステップS1022において開始ボタンの入力でなければ、さらに終了ボタンの入力であるかを判断する(ステップS1031)。
つぎに、図85のフローチャートを参照しマウス入力の制御動作について説明する。まず、OSが提供するI/Fによりマウスデータを監視(Windows(登録商標)におけるHook機能)全マウスデータを入力し(ステップS1031)、会議制御ツールバーを表示する(ステップS1032)。続いて、会議終了通知であるかを判断する(ステップS1033)。会議制御ツールバー「終了」ボタン、あるいは主催端末から「会議終了パケット」により終了する。会議終了通知でなければ、さらに会議復帰通知であるかを判断する(ステップS1034)。会議復帰通知であれば、会議資料閲覧制御(閲覧モード)、会議発言制御起動(発言モード)からの会議復帰通知により、会議制御テーブル「会議モード」を会議に設定、会議モードへ戻す(ステップS1035)、会議制御ツールバーを表示する(ステップS1036)。続いて、タブレットペン、マウスからの座標、ボタン情報は周期的に検出され入力される(ステップS1037)。会議モードが会議であるかを判断し(ステップS1038)、会議モードが会議であれば、さらに会議制御ツールバー上座標であるかを判断し(ステップS1039)、会議制御ツールバー上座標である場合、会議制御ツールバー制御を実行する(ステップS1040)。会議制御ツールバー上座標ではない場合、さらに会議主催端末であるかを判断し(ステップS1041)、会議主催端末であれば、会議主催端末、閲覧モード、発言モード時のみ画面操作(PC操作)権が与えられマウスデータがAPLへ通知される(ステップS1042)。ステップS1033において会議終了の通知であれば、終了時、会議資料として配布された会議ファイルを削除する(ステップS1043)。さらに、マウスデータ監視を終了通常モードへ戻し(ステップS1044)、会議制御ツールバーを削除する(ステップS1045)。
つぎに、図86のフローチャートを参照しAPLマウス入力の制御動作について説明する。ここでは、クリックON(ペンダウン)開始時のマウスデータが引数として渡される。まず、マウス入力回数を1に設定し(ステップS1051)、入力したマウスデータをOSが提供するマウスI/Fへ出力、APLプログラムへ渡す(ステップS1052)。クリックOFF(ペンアップ)までのマウスデータを入力する(ステップS1053)。続いて、マウスデータを再生し(ステップS1054)、クリックOFFであるかを判断し(ステップS1055)、クリックOFFでなければ、マウス入力回数を1つ進ませ(ステップS1056)、マウス入力回数/M=0であるかを判断し(ステップS1057)、マウス入力回数/M=0であれば、マウス入力特定回数(テストにより得られる最適値)毎に「表示監視制御」を実行する(ステップS1058)。ステップS1055においてクリックOFFであれば、表示監視制御を実行する(ステップS1059)。
つぎに、図87のフローチャートを参照し会議制御ツールバーの制御動作について説明する。ここでは、クリックON(ペンダウン)開始時のマウスデータが引数として渡される。まず、ボタン表示状態(ボタンは通常表示、選択表示の2形態を持つ)を保存する(ステップS1061)。続いて、クリック座標ボタン番号を保存し(ステップS1062)、クリック座標ボタンを選択表示、他は通常表示とする(ステップS1063)。クリックOFF(ペンアップ)までのマウスデータを入力する(ステップS1064)。その後、クリックOFFであるかを判断し(ステップS1065)、クリックOFFでなければ、さらにクリックボタン上座標であるかを判断し(ステップS1066)、クリックOFFまでにドラッグ操作によりクリックボタン外となった場合、ボタン表示状態を戻す(ステップS1067)。ステップS1066においてクリックボタン上座標でなければ、クリックボタンを選択表示する(ステップS1068)。ステップS1065においてクリックOFFであれば、ボタン表示状態を復旧させ(ステップS1069)、クリックボタン上座標であるかを判断する(ステップS1070)。クリックOFF座標がクリックボタン外である場合実行しない。ステップS1070においてクリックボタン上座標であれば、さらに発言ボタンの入力であるかを判断し(ステップS1071)、発言ボタンの入力であれば、さらに発言中であるかを判断する(ステップS1072)。「発言」ボタンにより、発言権を持っている端末がない場合に発言要求が可能となる。発言中でなければ、発言の会議モードに設定し(ステップS1073)、会議制御ツールバーを消去し(ステップS1074)、会議発言制御を起動する(ステップS1075)。ステップS1071において発言ボタンの入力でなければ、さらに閲覧ボタンの入力であるかを判断する(ステップS1076)。閲覧ボタンの入力であれば、閲覧の会議モードに設定し(ステップS1077)、会議制御ツールバーを消去し(ステップS1078)、「閲覧」ボタンにより、会議資料閲覧制御を起動する(ステップS1079)。ステップS1076において閲覧ボタンの入力でなければ、さらに終了ボタンの入力であるかを判断し(ステップS1080)、終了ボタンの入力であれば、「終了」ボタンにより「会議終了パケット」を送信会議を終了する(ステップS1081)。さらに、会議参加端末は自端末のみ終了、会議主催端末の終了により全端末が終了する。マウス入力制御、キーボード入力制御、音声データ入力制御、パケット受信制御へ終了通知する(ステップS1082)。
つぎに、図88のフローチャートを参照しキーボード入力の制御動作について説明する。まず、OSが提供するI/Fによりキーボードデータを監視(Windows(登録商標)におけるHook機能)全キーボードデータを入力する(ステップS1111)。続いて、キー入力制御をアイドルに設定し(ステップS1112)、終了通知であるかを判断する(ステップS1113)。終了通知でなければ、さらに、キーボードデータ入力であるかを判断し(ステップS1114)、キーボードデータ入力であれば、操作権有りであるかを判断する(ステップS1115)。自端末が操作権を持っていない場合、キーボード入力を破棄する。操作権有りであれば、さらに会議のモードであるかを判断し(ステップS1116)、会議のモードであれば、さらにキー入力制御がアイドルであるかを判断し(ステップS1117)、キー入力制御がアイドルであれば、キーボード入力中、テキスト入力モードに設定する(ステップS1118)。続いて、キー入力数を0にし(ステップS1119)、テキスト入力先のキャレット座標を取得し(ステップS1120)、テキスト入力されるフォント情報を取得し(ステップS1121)、取得したキャレット座標、フォント情報により「テキストパケット」を作成し送信する(ステップS1122)。続いて、キーコードを保存し(ステップS1123)、入力したキーコードをOSが提供するキーボードI/Fへ出力、文書APLへ渡す(ステップS1124)。続いて、キー入力数を1つ進め(ステップS1125)、キー入力数=特定数(K)であるかを判断し(ステップS1126)、キー入力が特定数(テストによる最適値)に達したら「キーボードパケット」を作成し送信する(ステップS1127)。続いて、キー入力数を0にし(ステップS1128)、つぎのキー入力が特定時間内(テストによる最適値)にあるか監視するためタイマーをスタートする(ステップS1129)。ステップS1114においてキーボードデータ入力でなければ、さらにキーボード入力タイムアウトであるかを判断する(ステップS1130)。タイムアウトであれば、キーボード入力監視タイマーを停止する(ステップS1131)。特定時間内につぎのキー入力がない場合、キー入力制御をアイドルモードにする(ステップS1132)。続いて、キー入力数>0であるかを判断し(ステップS1133)、キー入力数>0であれば、キーボードパケットの送信処理を実行する(ステップS1135)。ステップS1113において終了通知であれば、キーボード入力監視を終了、通常モードへ戻す(ステップS1134)。
つぎに、図89のフローチャートを参照し音声データの入力制御動作について説明する。音声入力制御をアイドルモードに設定し(ステップS1141)、音声データ数を0にし(ステップS1142)、終了通知であるかを判断する(ステップS1143)。終了通知により音声入力制御を終了する。終了通知でなければ、さらに音声データ入力であるかを判断し(ステップS1144)、音声データ入力であれば、音声データを保存し(ステップS1145)、マイクより入力された音声データをスピーカへ出力する(ステップS1146)。続いて、音声データ数を1つ進ませ(ステップS1147)、音声データ数=Sであるかを判断し(ステップS1148)、音声データ数=Sであれば、さらに音声入力制御がアイドルモードであるかを判断する(ステップS1149)。音声入力制御がアイドルモードであれば、音声入力制御を音声入力に設定し(ステップS1150)、マイク入力開始時、音声パケット制御コードを開始に設定する(ステップS1151)。ステップS1149において音声入力制御がアイドルモードでなければ、マイク入力中、音声パケット制御コードを継続に設定する(ステップS1152)。続いて、音声データ特定長(テストによる最適値)に達した場合「音声パケット」を作成送信する(ステップS1153)。さらに音声データ数を0に設定し(ステップS1154)、音声入力が停止、次の音声入力が特定時間内にあるかタイマー監視する(ステップS1155)。ステップS1144において音声データ入力でなければ、さらに音声入力タイムアウトであるかを判断し(ステップ1156)、音声入力タイムアウトであれば、音声入力監視タイマを停止し(ステップS1157)、音声データ数>0であるかを判断し(ステップS1158)、音声データ数>0でなければ、音声入力タイムアウト時、音声データがない場合も音声入力の終了を通知するため音声パケットを作成する(ステップS1159)。さらに、音声パケット制御コードを終了に設定し(ステップS1160)、音声パケットを送信処理する(ステップS1161)。
つぎに、図90のフローチャートを参照し表示監視の制御動作について説明する。まず、全ウィンドウ情報(ウィンドウキャプション、左上原点座標、幅、高さ)取得する(ステップS1171)。さらに、ウィンドウキャプションのAPL名から文書情報を提供する文書APLが起動中か判定する(ステップS1172)。文書APL起動中であれば、文書APLから表示中のファイルパスを取得する(ステップS1173)。続いて、文書APLから表示中のページ番号、表示倍率を取得し(ステップS1174)、文書APLから表示中のページ番号、表示倍率を取得し(ステップS1175)、OSが提供するI/Fを介して水平スクロール摘み位置、垂直スクロール摘み位置を取得する(ステップS1176)。続いて、表示中ファイルが会議ファイルテーブルに設定されているか判定する(ステップS1177)。新規に表示したファイルである場合、会議ファイルテーブルに設定する(ステップS1178)。さらに、取得したファイルパスからファイルを入力し(ステップS1179)、会議ファイルパケットを作成し送信する(ステップS1180)。続いて、取得したウィンドウ情報、文書情報、文書ファイル情報、スクロール摘み位置情報と画面表示テーブルを比較変更があるか判定する(ステップS1181)。画面表示情報の変更であれば、画面表示テーブルを更新し(ステップS1182)、画面表示パケットを送信し(ステップS1183)、画面表示を統一する。
つぎに、図91のフローチャートを参照し会議パケット送信の制御動作について説明する。ここでは、会議データパケットが引数として渡される。まず、発言パケットであるかを判断し(ステップS1191)、発言パケットであれば、制御コードが要求であるかを判断し(ステップS1192)、発言要求であれば、発言要求パケットを主催端末へ送信する(ステップS1193)。ステップS1192において発言要求でなければ、さらに発言許可の制御コードであるかを判断し(ステップS1194)、発言許可であれば、発言許可パケットを要求端末へ送信する(ステップS1195)。ステップS1194において発言許可でなければ、さらに発言却下の制御コードであるかを判断し(ステップS1196)、発言却下であれば、発言却下パケットを要求端末へ送信する(ステップS1197)。ステップS1196において発言却下でなければ、さらに発言終了の制御コードであるかを判断し(ステップS1198)、発言終了であれば、発言終了パケットを全他端末へ送信する(ステップS1199)。ステップS1191において発言パケットでなければ、発言パケット以外は全他端末へ送信する(ステップS1200)。
つぎに、図92のフローチャートを参照し会議パケット受信の制御動作について説明する。まず、終了通知であるかを判断する(ステップS1201)。終了通知により会議パケット受信制御を終了する。終了通知であれば、他PC会議参加端末から会議データパケットを受信する(ステップS1202)。会議データパケットを受信したならば、さらに会議開始パケットであるかを判断し(ステップS1203)、会議開始パケットであれば、会議開始パケットの受信制御を実行する(ステップS1204)。ステップS1203において会議開始パケットでなければ、さらに会議ファイルパケットであるかを判断し(ステップS1205)、会議ファイルパケットであれば、会議ファイルパケットの受信制御を実行する(ステップS1206)。ステップS1205において会議ファイルパケットでなければ、さらに画面表示パケットであるかを判断し(ステップS1207)、画面表示パケットであれば、画面表示パケットの受信制御を実行する(ステップS1208)。ステップS1207において画面表示パケットでなければ、さらに音声パケットであるかを判断し(ステップS1209)、音声パケットであれば、音声データをスピーカへ出力する(ステップS1210)。ステップS1209において音声パケットでなければ、さらにテキストパケットであるかを判断し(ステップS1211)、テキストパケットであれば、テキスト入力位置へキャレットを移動し(ステップS1212)、テキストのフォント種類、フォントサイズ、フォント色を設定する(ステップS1213)。ステップS1211においてテキストパケットでなければ、さらにキーボードパケットであるかを判断し(ステップS1214)、キーボードパケットであれば、キーコードをOSが提供するキーボードI/Fへ出力、APLへ渡す(ステップS1215)。ステップS1214において)、キーボードパケットでなければ、さらに発言パケットであるかを判断し(ステップS1216)、発言パケットであれば、発言パケットの受信制御を実行する(ステップS1217)。ステップS1216において発言パケットでなければ、さらに上書きパケットであるかを判断し(ステップS1218)、上書きパケットであれば、上書きパケットの受信制御を実行する(ステップS1219)。ステップS1218において上書きパケットでなければ、さらに会議終了パケットであるかを判断し(ステップS1220)、会議終了パケットであれば、会議終了パケットの受信制御を実行する(ステップS1221)。
つぎに、図93のフローチャートを参照し会議開始パケットの受信制御動作について説明する。まず、会議開始パケットの内容を「会議開始ダイアログボックス」表示し(ステップS1231)、会議開始パケットの内容を「会議メンバテーブル」へ設定する(ステップS1232)。続いて、「マウス入力制御」を起動してマウス入力を開始し(ステップS1233)。さらに、「キーボード入力制御」を起動てキーボード入力を開始し(ステップS1234)、「音声データ入力制御」を起動し、音声入力を開始する(ステップS1235)。
つぎに、図94のフローチャートを参照し会議ファイルパケットの受信制御動作について説明する。まず、会議ファイルパケットのファイルデータを作業領域へ保存し(ステップS1241)、ファイル名を会議制御テーブル「会議ファイル名」、「カレント会議ファイル」に設定する(ステップS1242)。上書きファイル、カレント上書きファイルを0クリアする。続いて、保存した会議ファイル名を指定し、文書APLを起動する(ステップS1243)。起動エラーであるかを判断し(ステップS1244)、文書APL起動エラー時「検索ダイアログボックス」を表示、文書APLパスを取得する(ステップS1245)。さらに、検索ダイアログボックスの「キャンセル」ボタンにより文書APL検索を中止する(ステップS1246)。
つぎに、図95のフローチャートを参照し画面表示パケットの受信制御動作について説明する。まず、会議モードが会議であるかを判断し(ステップS1251)、会議モードが会議であれば、さらに会議ファイル変更であるかを判断する(ステップS1252)。ここでは画面表示パケットと画面表示テーブルを比較、画面表示が変更されているか判定する。会議ファイル変更であれば、会議ファイルを表示する文書APLを最前面へ表示する(ステップS1253)。続いてページ番号変更であるかを判断し(ステップS1254)、ページ番号変更であれば、文書APLへページ番号を渡し表示ページを変更する(ステップS1255)。続いて、表示倍率変更であるかを判断し(ステップS1256)、表示倍率変更であれば、文書APLへ表示倍率を渡し表示倍率を変更する(ステップS1257)。続いて、ウィンドウ表示変更であるかを判断し(ステップS1258)、ウィンドウ表示変更であれば、OSが提供するI/Fにより文書APLウィンドウを左上原点座標、幅、高さを変更する(ステップS1259)。続いて、水平スクロール摘み位置変更であるかを判断し(ステップS1260)、水平スクロール摘み位置変更であれば、OSが提供するI/Fにより水平スクロール摘み位置を変更、表示文書を水平スクロール表示する(ステップS1261)。続いて、垂直スクロール摘み位置変更であるかを判断し(ステップS1262)、垂直スクロール摘み位置変更であれば、OSが提供するI/Fにより垂直スクロール摘み位置を変更、表示文書を垂直スクロール表示する(ステップS1263)。続いて、上書き表示中であるかを判断し(ステップS1264)、上書き表示中であれば、カレント上書きファイルが設定(0以外)されている場合、上書きウィンドウを消去、現在の上書きを消去する(ステップS1265)。続いて、新画面表示に合わせ上書きを表示し(ステップS1266)、画面表示パケットを画面表示テーブルへ設定する(ステップS1267)。
つぎに、図96−1、図96−2のフローチャートを参照し発言パケットの受信制御動作について説明する。ここでは、発言パケットが引数として渡される。まず、要求の制御コードであるかを判断し(ステップS1271)、要求の制御コードであれば、発言要求パケットにより「発言要求」ダイアログを表示する(ステップS1272)。続いて、発言許可であるかを判断し(ステップS1273)、発言許可であれば、発言要求ダイアログ「許可」ボタンにより、発言パケット「発言ページ」を表示する(ステップS1274)。さらに「画面表示パケット」を送信、全端末を発言ページ表示に統一する(ステップS1275)。続いて、発言要求端末へ「発言(許可)パケット」を送信し(ステップS1276)、会議メンバテーブルの発言者の発言権を「有」に設定し(ステップS1277)、発言者名ボタンを表示する(ステップS1278)。ステップS1273において発言許可でなければ、さらに発言却下であるかを判断し(ステップS1279)、発言却下であれば、発言要求ダイアログ「却下」ボタンにより、「発言(却下)パケット」を送信する(ステップS1280)。ステップS1271において要求の制御コードでなければ、さらに発言却下の制御コードであるかを判断し(ステップS1281)、発言却下の制御コードであれば、「発言却下パケット」により「発言却下」ダイアログを表示する(ステップS1282)。ダイアログは数秒表示、自動的に消去される。さらに「会議発言制御」へ発言却下を通知する(ステップS1283)。ステップS1281において発言却下の制御コードでなければ、さらに発言許可の制御コードであるかを判断し(ステップS1284)、発言許可の制御コードであれば、「発言許可パケット」により「発言許可」ダイアログを表示する(ステップS1285)。ダイアログは数秒表示、自動的に消去される。さらに、会議メンバテーブルの発言者の発言権を「有」に設定し(ステップS1286)、発言者名ボタンを表示する(ステップS1287)。続いて、発言要求端末であるかを判断し(ステップS1288)、発言要求端末である場合、「会議発言制御」へ発言許可を通知する(ステップS1289)。ステップS1284において発言許可の制御コードでなければ、さらに終了の制御コードであるかを判断し(ステップS1290)、終了の制御コードであれば、発言終了により、会議メンバテーブルの発言者の発言権を「無」に設定し(ステップS1291)、発言者名ボタンを消去する(ステップS1292)。続いて、上書き消去中であるかを判断し(ステップS1293)、上書きを表示(カレント上書きファイルが設定)している場合、上書きウィンドウを消去する(ステップS1294)。続いて、会議制御テーブルの「カレント上書きファイル」を0クリアし(ステップS1295)、上書きファイルを削除する(ステップS1296)。
つぎに、図97のフローチャートを参照し上書きパケットの受信制御動作について説明する。ここでは、上書きパケットが引数として渡される。まず、上書きパケットからストロークデータを抽出し、文書ページ番号のみの上書きファイルを作成する(ステップS1301)。続いて、会議制御テーブルの「カレント上書きファイル」を設定し(ステップS1302)、上書きを表示する(ステップS1303)。
つぎに、図98のフローチャートを参照し会議終了パケットの受信制御動作について説明する。まず、会議主催端末であるかを判断し(ステップS1311)、会議主催端末でなければ、会議終了パケットが主催端末以外からの場合、終了端末を会議メンバテーブルから削除する(ステップS1312)。ステップS1311において会議主催端末であれば、主催端末からの会議終了パケットによりマウス入力制御、キーボード入力制御、音声データ入力制御、会議パケット受信制御へ終了通知、PC会議を終了する(ステップS1313)。
つぎに、図99のフローチャートを参照し会議資料閲覧の制御動作について説明する。まず、上書きツールバーを表示し(ステップS1321)、操作モードを「APL」に設定する(ステップS1322)。さらにAPLボタンを選択表示する(ステップS1323)。上書きツールバー「終了」ボタンにより会議資料閲覧制御を終了する(ステップS1324)。「APL」モード時は上書きツールバーへのマウス座標、「ペン」「消去」モード時は全マウスデータが通知される(ステップS1325)。続いて、上書きツールバー座標であるかを判断し(ステップS1326)、マウス座標が上書きツールバー上である場合、上書きツールバー制御を実行する(ステップS1327)。ステップS1326において上書きツールバー座標でなければ、さらにペンの操作モードであるかを判断し(ステップS1328)、上書きツールバー座標外で「ペン」モードの場合、描画操作制御を実行する(ステップS1329)。ステップS1328においてペンの操作モードでなければ、さらに消去の操作モードであるかを判断し(ステップS1330)、上書きツールバー座標外で「消去」モードの場合、消去操作制御を実行する(ステップS1331)。ステップS1324において会議資料閲覧終了であれば、会議資料閲覧制御終了時、上書きツールバーを消去する(ステップS1332)。続いて、上書きウィンドウを消去し(ステップ1333)、会議制御テーブル「カレント上書きファイル」を0クリアする(ステップS1334)。さらに、会議状態へ画面表示状態を戻し(ステップS1335)、「マウス入力制御」へ会議への復帰を通知する(ステップS1336)。
つぎに、図100−1、図100−2のフローチャートを参照し上書きツールバーの制御動作について説明する。ここでは、クリックON(ペンダウン)開始時のマウスデータが引数として渡される。まず、ボタン表示状態(ボタンは通常表示、選択表示の2形態を持つ)を保存する(ステップS1341)。続いて、クリック座標ボタン番号を保存し(ステップS1342)、クリック座標ボタンを選択表示、他は通常表示する(ステップS1343)。クリックOFF(ペンアップ)までのマウスデータを入力する(ステップS1344)。続いて、クリックOFFであるかを判断し(ステップS1345)、クリックOFFでなければ、さらにクリックボタン上座標であるかを判断し(ステップS1346)、クリックOFFまでにドラッグ操作によりクリックボタン外となった場合、ボタン表示状態を戻す(ステップS1347)。ステップS1346においてクリックボタン上座標であれば、クリックボタンを選択表示する(ステップS1348)。ステップS1345においてクリックOFFであれば、クリックOFF座標がクリックボタン外である場合実行しない(ステップS1349)。さらに、ペンボタンの入力であるかを判断し(ステップS1350)、ペンボタンの入力であれば、さらにAPLの操作モードであるかを判断し(ステップS1351)、APLモードにおいて「ペン」ボタンが押下された場合、会議資料が表示されていれば上書きウィンドウを表示、同ページへの上書きを表示、ペンモードへ移行する(ステップS1352)。続いて、会議資料を表示中であるかを判断し(ステップS1353)、会議資料を表示中でなければ、ボタン表示状態を復旧する(ステップS1354)。ステップS1351においてAPLの操作モードでなければ、さペンの操作モードに設定する(ステップS1355)。ステップS1350においてペンボタンの入力でなければ、さらに消去ボタンの入力であるかを判断し(ステップS1356)、消去ボタンの入力であれば、さらにAPLの操作モードであるかを判断し(ステップS1357)、APLモードにおいて「消去」ボタンが押下された場合、会議資料が表示されていれば上書きウィンドウを表示、同ページへの上書きを表示、消去モードへ移行する(ステップS1358)。続いて、会議資料表示中であるかを判断し(ステップS1359)、会議資料表示中でなければ、ボタン表示状態を復旧する(ステップS1360)。ステップS1357においてAPLの操作モードでなければ、操作モードを消去に設定する(ステップS1361)。
また、ステップS1356において消去ボタンの入力でなければ、さらにAPLボタンの入力であるかを判断し(ステップ1362)、APLボタンの入力であれば、さらに操作モードがAPLであるかを判断し(ステップS1363)、操作モードがAPLでなければ、「APL」ボタンにより、上書きウィンドウを消去、上書きツールバー外のマウス座標を他のプログラムへ渡し通常のPC操作を可能とする(ステップS1364)。さらに、操作モードをAPLに設定する(ステップS1365)。ステップS1362においてAPLボタンの入力でなければ、ボタン表示状態を復旧し(ステップS1366)、一覧ボタンの入力であるかを判断し(ステップS1367)、一覧ボタンの入力であれば、さらにAPLの操作モードであるかを判断し(ステップS1368)、APLの操作モードであれば、「一覧」ボタンにより、上書きページ一覧を表示する(ステップS1369)。続いて、編集であるかを判断し(ステップS1370)、編集であれば、上書きページ一覧ダイアログ「編集」ボタンにより選択された上書きの文書ページ番号を会議制御テーブルへ設定する(ステップS1371)。続いて、現在の上書きを消去し(ステップS1372)、選択された文書ページを会議資料表示APLが提供するI/Fを介して表示する(ステップS1373)。さらに、会議資料への上書きを表示する(ステップS1374)。ステップS1367において、一覧ボタンの入力でなければ、さらに設定ボタンの入力であるかを判断し(ステップS1375)、設定ボタンの入力であれば、「設定」ボタンにより、上書き設定ダイアログを表示し、設定する(ステップS1376)。続いて、上書き設定ダイアログで設定された描画色を会議制御テーブルへ設定し(ステップS1377)、さらに上書き設定ダイアログで設定された描画太さを会議制御テーブルへ設定し(ステップS1378)、さらに上書き設定ダイアログで設定された消しゴム長を会議制御テーブルへ設定する(ステップS1379)。ステップS1375において設定ボタンの入力でなければ、さらに終了ボタンの入力であるかを判断し(ステップS1380)、終了ボタンの入力であれば、「終了」ボタンにより会議資料閲覧制御へ終了を通知する(ステップS1381)。
つぎに、図101のフローチャートを参照し会議発言の制御動作について説明する。まず、画面表示テーブルの会議ファイル名から上書きファイルを検索する(ステップS1401)。上書きファイル有りであるかを判断し(ステップS1402)、上書きファイル有りであれば、会議資料への上書きページ一覧を表示する(ステップS1403)。続いて、発言であるかを判断し(ステップS1404)、上書き一覧ダイアログにおいて「発言」ボタンにより上書きページが選択された場合、発言要求パケットを会議主催端末へ送信する(ステップS1405)。続いて、会議主催端末からの発言却下、発言許可通知を待つ(ステップS1406)。発言却下通知がなければ、さらに発言許可通知であるかを判断し(ステップS1407)、発言許可通知があれば、会議ファイル、上書きファイルをカレント会議ファイル、カレント上書きファイルへ設定する(ステップS1408)。続いて、発言許可通知により上書きを表示し(ステップS1409)、発言ページの会議資料は発言許可通知前に画面表示パケットにより全端末へ通知され表示される。さらに、会議資料ページへの上書きを他端末へ送信表示する(ステップS1410)。続いて、発言ツールバーを表示し(ステップS1411)、発言権を得ると会議資料のページ捲り、スクロール表示等のPC操作が可能となる。さらに、会議発言制御の制御モードを「会議」に設定する(ステップS1412)。続いて、発言ツールバー「終了」ボタンにより会議発言制御を終了する(ステップS1413)。会議発言終了通知でなければ、クリックON(ペンダウン)開始時のマウスデータを入力する(ステップS1414)。会議モードでは全マウスデータ、APLモードでは発言ツールバー上のマウスデータのみ入力される。マウス入力であれば、さらに発言ツールバー上座標であるかを判断する(ステップS1415)。発言ツーバー座標である場合、発言ツールバー制御を実行する(ステップS1416)。ステップS1413において会議発言終了通知でなければ、会議発言制御終了時、発言ツールバーを消去する(ステップS1417)。さらに、上書きウィドウを消去し(ステップS1418)、発言終了パケットを他端末へ送信する(ステップS1419)。続いて、会議メンバテーブル発言権を「無」に設定し(ステップS1420)、カレント上書きファイルを0クリアし(ステップS1421)、「マウス入力制御」へ会議復帰を通知する(ステップS1422)。
つぎに、図102のフローチャートを参照し発言ツールバーの制御動作について説明する。ここでは、クリックON(ペンダウン)開始時のマウスデータが引数として渡される。まず、ボタン表示状態(ボタンは通常表示、選択表示の2形態を持つ)を保存する(ステップS1431)。続いて、クリック座標ボタン番号を保存し(ステップS1432)、クリック座標ボタンを選択表示、他は通常表示とする(ステップS1433)。クリックOFF(ペンアップ)までのマウスデータを入力する(ステップS1434)。続いて、クリックOFFであるかを判断し(ステップS1435)、クリックOFFでなければ、さらにクリックボタン上座標であるかを判断する(ステップS1436)。クリックOFFまでにドラッグ操作によりクリックボタン外となった場合、ボタン表示状態を戻す(ステップS1437)。ステップS1436においてクリックボタン上座標であれば、クリックボタンを選択表示する(ステップS1438)。ステップS1435においてクリックOFFであれば、クリックボタン上座標であるかを判断する(ステップS1439)。クリックOFF座標がクリックボタン外である場合実行しない。ここでクリックボタン上座標であれば、さらにAPLボタンの入力であるかを判断し(ステップS1440)、APLボタンの入力であれば、さらに発言モードがAPLであるかを判断し(ステップS1441)、発言モードがAPLであれば、「APL」ボタンにより、上書きウィンドウを消去し(ステップS1442)、スクロール表示等のPC操作を可能にする。さらに、発言モードをAPLに設定する(ステップS1443)。ステップS1440においてAPLボタンの入力でなければ、さらに会議ボタンの入力であるかを判断し(ステップS1444)、会議ボタンの入力であれば、さらに発言モードが会議であるかを判断する(ステップS1445)。発言モードが会議でなければ、画面表示内容を全端末統一し(ステップS1446)、変更された会議資料表示に対する上書きを表示する(ステップS1447)。続いて、発言モードを発言に設定する(ステップS1448)。ステップS1444において会議ボタンの入力でなければ、さらに終了ボタンの入力であるかを判断し(ステップS1449)、終了ボタンの入力であれば、「終了」ボタンにより会議発言制御へ終了を通知する(ステップS1450)。
つぎに、図103のフローチャートを参照し上書き開始の制御動作について説明する。まっず、最前面ウィンドウ情報を取得し(ステップS1451)、最前面のウィンドウキャプション情報を取得、会議資料を表示する文書APLか判定する(ステップS1452)。文書APLであれば、文書APLが提供するI/Fを介して表示しているファイルパスを取得し(ステップS1453)、会議制御テーブルに設定されている会議ファイルか判定する(ステップS1454)。取得したファイル名を会議制御テーブルの「カレント会議ファイル」へ設定する(ステップS1455)。さらに、会議ファイルへの上書きファイルが既に作成されているか会議制御テーブルを検索する(ステップS1456)。続いて、上書きファイルを作成し(ステップS1457)、上書きファイルを会議制御テーブルに設定する(ステップS1458)。続いて、上書きファイルを「カレント上書きファイル」、会議ファイルを「カレント会議ファイル」へ設定する(ステップS1459)。さらに、文書APLが提供するI/Fを介して表示中のページ番号を取得する(ステップS1460)。続いて、文書ページ番号を会議制御テーブルへ設定し(ステップS1461)、表示中の会議資料への上書きを表示する(ステップS1462)。
つぎに、図104のフローチャートを参照し描画操作の制御動作について説明する。ここでは、描画開始時のマウス座標が引数として渡される。まず、会議制御テーブルから上書きウィンドウ番号(ハンドル)を取得する(ステップS1471)。さらに会議制御テーブルからカレント上書きファイルを取得し(ステップS1472)、描画開始時のマウス座標を保存する(ステップS1473)。クリックOFF(ペンアップ)までのマウスデータを入力する(ステップS1474)。続いて、クリックOFFであるかを判断し(ステップS1475)、クリックOFFでなければ、描画操作によるドラッグ座標を保存する(ステップS1476)。さらに、会議制御テーブルに設定されている描画色、描画太さにて座標間を線描画する(ステップS1477)。ステップS1475においてクリックOFFであれば、会議資料を表示するAPLが提供するI/Fを介して文書左上原点座標(DX,DY)、幅(DW)、高さ(DH)、表示倍率(V)を取得する(ステップS1478)。さらに、OSが提供するI/Fを介して画面幅(SW)、高さ(SH)を取得する(ステップS1479)。続いて、2ページ表示であるかを判断する(ステップS1480)。すなわち、(DY+DH)<SHの場合文書が2ページに渡って表示されていると判定する。2ページ表示であれば、会議資料を表示するAPLからページ間隔(DS)を取得する(ステップS1481)。開始座標文書1領域であるかを判断する(ステップS1482)。すなわち、ドラッグ開始Y座標<(DY+DH+DS)の場合、文書ページ番号への上書きとする。開始座標文書1領域であれば、ドラッグ座標を文書座標へ変換する(ステップS1483)。さらに、上書きファイルの文書ページ番号ブロックデータへストロークデータを追加する(ステップS1484)。ステップS1482において開始座標文書1領域でなければ、文書座標をドラッグ座標に変換し(ステップS1485)、上書きファイル(文書ページ番号+1)ブロックデータへストロークデータを追加する(ステップS1486)。
つぎに、図105のフローチャートを参照し消去操作の制御動作について説明する。ここでは、消去開始時のマウス座標が引数として渡される。まず、会議制御テーブルから上書きウィンドウ番号(ハンドル)を取得する(ステップS1491)。続いて、会議制御テーブルからカレント上書きファイルを取得する(ステップS1492)。さらに会議資料を表示する文書APLが提供するI/Fを介して、文書左上原点座標(DX,DY)、幅(DW)、高さ(DH)、表示倍率(V)を取得する(ステップS1493)。続いて、OSが提供するI/Fを介して画面幅(SW)、高さ(SH)を取得し(ステップS1494)、上書きファイルから文書ページ番号ストロークデータを入力する(ステップS1495)。続いて、2ページ表示であるかを、(DY+DH)<SHの場合、文書が2ページに渡って表示されていると判定する(ステップS1496)。2ページ表示であれば、上書きファイルから(文書ページ番号+1)ストロークデータを入力する(ステップS1497)。続いて、ストローク座標(文書座標)を画面座標へ変換する(ステップS1498)。さらにクリックOFF(ペンアップ)までのマウスデータを入力する(ステップS1499)。続いて、クリックOFFであるかを判断し(ステップS1500)、クリックOFFでなければ、ドラッグ座標を矩形の中心とする消しゴムカーソル領域を算出する(ステップS1501)。さらに、マウス座標を中点とする消しゴムカーソル領域内の画面座標を検索する(ステップS1502)。続いて、カーソル領域有りであるかを判断し(ステップS1503)、カーソル領域有りであれば、上書きウィンドウの消しゴム領域を透明色とし上書き文字を消去する(ステップS1504)。さらに、消しゴムカーソル領域にかかる画面座標を削除する(ステップS1505)。ストロークの途中が消去される場合ストロークを分ける。続いて、画面座標をストローク座標へ変換し(ステップS1506)、上書きファイルの文書ページ番号ブロックデータと置き換える(ステップS1507)。続いて、2ページ表示であるかを判断し(ステップS1508)、2ページ表示であれば、ストローク座標−文書ページ番号+1画面座標とし(ステップS1509)、上書きファイルの(文書ページ番号+1)ブロックデータと置き換える(ステップS1510)。
つぎに、図106のフローチャートを参照し上書き表示の制御動作について説明する。まず、背景が透明色からなる全画面サイズの上書きウィンドウを作成、最前面へ表示し(ステップS1511)、上書きウィンドウ番号(ハンドル)を会議制御テーブルへ設定する(ステップS1512)。続いて、会議資料を表示する文書APLが提供するI/Fを介して文書左上原点座標(DX,DY)、幅(DW)、高さ(DH)、表示倍率(V)を取得する(ステップS1513)。さらにOSが提供するI/Fを介して画面幅(SW)、高さ(SH)を取得し(ステップS1514)、上書きファイルから文書ページ番号ストロークデータを入力する(ステップS1515)。続いて、2ページ表示であるかを、(DY+DH)<SH の場合文書が2ページに渡って表示されていると判定する(ステップS1516)。2ページ表示である場合、上書きファイルから(文書ページ番号+1)ストロークデータを入力する(ステップS1517)。続いて、ストローク座標(文書座標)を画面座標へ変換する(ステップS1518)。続いて、ストローク単位に描画し(ステップS1519)、直前座標を0xFFFFとし(ステップS1520)、画面座標が(0,0)から(SW−1、SH−1)内であるか判定する(ステップS1521)。ここで画面内座標でなければ、直前座標を0xFFFFとする(ステップS1522)。ステップS1521において画面内座標であれば、直前座標が0xFFFFであるかを判断し(ステップS1523)、直前座標が0xFFFFでなければ、ストロークに設定されている色、太さにて座標間を線描画する(ステップS1524)。続いて、直前座標を画面座標に変換し(ステップS1525)、1ストローク画面座標について上記処理が完了したかを判断し(ステップS1526)、1ストローク画面座標について完了したならば、さらに全ストロークについて完了したかを判断する(ステップS1527)。
つぎに、図107のフローチャートを参照し画面統一の制御動作について説明する。まず、会議ファイルを表示する文書APLのウィンドウ情報(左上原点座標、幅、高さ、水平スクロール摘み位置、垂直スクロール摘み位置)を取得する(ステップS1531)。さらに会議ファイルを表示する文書APLが提供するI/Fを介して文書情報(ページ番号、表示倍率)を取得する(ステップS1532)。続いて、画面表示テーブルに設定されている値と取得値に違いがあるか判定する(ステップS1533)。ここで画面表示情報変更であれば、取得値により画面表示テーブルを更新し(ステップS1534)、画面表示パケットを送信する(ステップS1535)。
つぎに、図108のフローチャートを参照し会議復帰の制御動作について説明する。まず、「会議ファイル名」を指定して会議資料表示プログラムを起動する(ステップS1541)。さらに、会議資料表示プログラムが提供するI/Fを介して「ページ番号」を表示する(ステップS1542)。続いて、会議資料表示プログラムが提供するI/Fを介して「表示倍率」表示とする(ステップS1543)。さらに、OSが提供するI/Fを介して会議資料表示ウィンドウを「ウィンドウ左上原点座標」、「ウィンドウ幅」、「ウィンドウ高さ」に表示調整する(ステップS1544)。続いて、OSが提供するI/Fを介して水平スクロール摘みを「水平スクロール摘み位置」へ移動する(ステップS1545)。そして、OSが提供するI/Fを介して垂直スクロール摘みを「垂直スクロール摘み位置」へ移動する(ステップS1546)。