(57)【要約】【課題】同じ画面を共有しながら、その共有画面に書き込みを行い、議論を可能にする画面共有方法などを提供することを目的とする。【解決手段】共通のコンテンツが画面表示される画面共有方法であって、複数のクライアントそれぞれの画面に表示したコンテンツをサーバに送信し、コンテンツを受信したサーバで、それぞれを統合し、複数のクライアントそれぞれに配信し、それぞれのクライアントのコンテンツに重ね合わせて画面に表示させる。【選択図】図３
2006031359.tif 000002
【特許請求の範囲】
【請求項１】
クライアントとサーバとからなる複数のコンピュータがネットワークに接続され、該クライアントと該サーバとに共通のコンテンツが画面表示される画面共有方法であって、
複数のクライアントそれぞれの画面に表示したコンテンツをサーバに送信し、
前記複数のクライアントそれぞれから前記コンテンツを受信した前記サーバで、受信した該コンテンツそれぞれを統合し、該サーバの共有画面に統合コンテンツを表示させると共に、表示された該統合コンテンツを前記複数のクライアントそれぞれに配信し、
前記サーバから配信された前記統合コンテンツを、前記サーバに送信されたそれぞれのクライアントの前記コンテンツに重ね合わせて該クライアントの画面に表示させることを特徴とする画面共有方法。
【請求項２】
クライアントとサーバとからなる複数のコンピュータがネットワークに接続され、該クライアントと該サーバとに共通のコンテンツが画面表示される会議支援システムであって、
サーバは、
複数のクライアントそれぞれとデータの送受信を行う第1の通信手段と、
前記複数のクライアントそれぞれから受信したデータをマージして統合コンテンツを画面表示する第１の表示手段とを有し、
前記複数のクライアントそれぞれは、
前記サーバとデータの送受信を行う第２の通信手段と、
データを入力する入力手段と、
前記サーバから受信したマージされたデータによる前記統合コンテンツを画面表示すると共に、前記入力手段から入力されたデータによるコンテンツを該統合コンテンツに重ね合わせて画面表示する第２の表示手段とを有し、
前記第２の通信手段は、前記入力手段から入力されて、前記第２の表示手段により画面表示されたデータを前記サーバに送信し、
前記第1の通信手段は、前記第1の表示手段により画面表示された前記統合コンテンツを表す、マージされたデータを前記複数のクライアントそれぞれに配信することを特徴とする会議支援システム。
【請求項３】
前記第１の表示手段は、前記複数のクライアントそれぞれから受信したベクトルデータをマージすることにより統合描画像を画面表示するものであって、
前記サーバは、ベクトルデータを入力するサーバ入力手段を備え、該サーバ入力手段から入力されたベクトルデータによる描画像を前記第１の表示手段により表示された前記統合描画像に重ね合わせて表示することを特徴とする請求項２記載の会議支援システム。
【請求項４】
前記第２の表示手段は、前記入力手段から入力されたベクトルデータによる描画像を、前記統合描画像が表示されるウインドウとは異なるウインドウに表示するか、又は該統合描画像が表示されるウインドウに上書きすることにより該統合描画像に重ね合わせて表示することを特徴とする請求項３記載の会議支援システム。
【請求項５】
前記第１の表示手段は、前記クライアント毎に異なる複数のウインドウを有し、該複数のウインドウに表示された描画像が重ね合わされた前記統合描画像を共有画面に表示させることを特徴とする請求項３記載の会議支援システム。
【請求項６】
前記第１の表示手段は、前記画面の最前面に、前記統合描画像を透過する透過ウインドウを表示させるものであって、前記サーバ入力手段から入力された前記ベクトルデータによる描画像を該透過ウインドウに表示することを特徴とする請求項３記載の会議支援システム。
【請求項７】
前記第１の表示手段は、前記統合描画像及び前記描画像を表すベクトルデータの全部又は一部を、同時に保存することを特徴とする請求項３記載の会議支援システム。
【請求項８】
前記第２の表示手段は、前記画面の最前面に、前記統合描画像を透過する透過ウインドウを表示させるものであって、前記入力手段から入力された前記ベクトルデータによる描画像を該透過ウインドウに表示し、
前記第１の通信手段は、前記第１の表示手段により前記透過ウインドウの背後に表示された前記統合描画像を表す、マージされたデータを前記複数のクライアントそれぞれに配信し、
前記第２の通信手段は、前記第２の表示手段により前記透過ウインドウに表示させた前記描画像を表すベクトルデータを前記サーバに送信することを特徴とする請求項６記載の会議支援システム。
【請求項９】
前記第１の表示手段は、前記透過ウインドウに表示された前記描画像を表すベクトルデータと該透過ウインドウの背後に表示された前記統合描画像を表すベクトルデータとを分離して保存し、保存された該ベクトルデータにより、該統合描画像を該描画像の背後に表示することを特徴とする請求項６記載の会議支援システム。
【請求項１０】
前記第１の表示手段は、前記統合描画像を表すベクトルデータを前記複数のクライアント毎に分離して保存し、保存された該ベクトルデータにより前記統合描画像を表示することを特徴とする請求項６記載の会議支援システム。
【請求項１１】
前記第１の表示手段は、前記統合描画像を表すベクトルデータを前記複数のクライアント毎に分離して保存し、保存された該ベクトルデータにより前記複数のクライアントのうちの選択された所定のクライアントのベクトルデータをマージして、統合描画像を表示することを特徴とする請求項６記載の会議支援システム。
【請求項１２】
前記第１の表示手段は、所定の文書データによる文書画像を表示させ、前記複数のクライアントから受信したベクトルデータにより表される描画像を、表示させた該文書画像上の指定を受けた位置に貼り付ける機能を有することを特徴とする請求項５記載の会議支援システム。
【請求項１３】
前記第１の表示手段は、前記統合描画像を画面表示する際に、前記複数のクライアントから受信したベクトルデータそれぞれに基づき表示される部分それぞれに、前記アドレスに応じて割り当てられた色を付することを特徴とする請求項３記載の会議支援システム。
【請求項１４】
前記複数のクライアントは、それぞれに割り当てられた異なる色を有し、
前記第１の表示手段は、前記統合描画像を画面表示する際に、前記統合コンテンツの構成部分それぞれに該複数のクライアントそれぞれに割り当てられた色を付することを特徴とする請求項３記載の会議支援システム。
【請求項１５】
前記第１の表示手段は、前記統合描画像を表すマージされたベクトルデータを保存する際に、前記複数のクライアントそれぞれに割り当てられた色の情報を併せて保存することを特徴とする請求項１３又は１４記載の会議支援システム。
【請求項１６】
前記第２の通信手段は、前記第２の表示手段により画面表示されたポインタの位置を表すデータを前記サーバに送信し、
前記第１の表示手段は、前記第１の通信手段により前記複数のクライアントから受信した前記ポインタの位置を表すデータに基づいて前記統合描画像を表示するウインドウに、受信した該ポインタの位置を所定のマークで表示することを特徴とする請求項５記載の会議支援システム。
【請求項１７】
前記所定のマークは、前記複数のクライアントそれぞれに応じて異なる形状を有するか、または該複数のクライアントそれぞれを識別する識別子を含むものであることを特徴とする請求項１６記載の会議支援システム。
【請求項１８】
前記第１の通信手段は、前記複数のクライアントから受信された前記ベクトルデータそれぞれの書込権の有無を判断する書込権管理手段を備え、
前記複数のクライアントそれぞれは、前記入力手段により前記ベクトルデータが入力されたときに、前記書込権の有無に応じて該ベクトルデータを前記第２の通信手段から前記サーバに送信し、
前記第１の表示手段は、前記書込権管理手段により書込権を有すると判断された前記ベクトルデータによる描画像を画面表示することを特徴とする請求項５記載の会議支援システム。
【請求項１９】
前記書込権管理手段は、前記書込権を有するクライアントから受信される前記ベクトルデータが所定の時間を超えて停止状態のときは、該クライアントの該書込権を解除する機能を有するものであって、該書込権が解除された後、前記第１の通信手段に最初に前記ベクトルデータを送信したクライアントに該書込権を付与することを特徴とする請求項１８記載の会議支援システム。
【発明の詳細な説明】
【技術分野】
【０００１】
クライアントとサーバとからなる複数のコンピュータがネットワークに接続され、それらクライアントとサーバとが共通のコンテンツを画面表示する画面共有技術に関する。
【背景技術】
【０００２】
今日、映像、文字、図形、音楽などのさまざまなコンテンツをデジタル化しブロードバンドを用いて配信する技術が進展している。しかしながら、それらの情報量は大きいので、配信先のアドレスを付して一斉に配信する方法では、伝送される情報量が膨大になる上、配信側のサーバ負荷が極めて重くなるというボトルネックがある。
【０００３】
そこで、例えば伝送経路上のノードでコンテンツを複製することにより、次々に配送、配信する方法が脚光を浴びている。
【０００４】
一方、マルチメデイアを取り扱うシステムの開発も活発に行われており、例えば複数のパーソナルコンピュータ（以下、「ＰＣ」という。）を利用した電子会議システムに関する発明や、複数の手書き入力装置同士で通信を行い、複数のＰＣや複数の手書き入力装置に関する書き込み内容の同期を取る発明が多数なされている。
【０００５】
その中には画面共有技術を用い、複数の参加者が画面上のポインタで文字や図形などの書込を行う、いわゆるホワイトボードと称するものがある。また、１つのサーバに接続された複数のクライアントが、同一の画面を閲覧することや、遠隔操作を行うことを可能にするツール（例えば、Ｍｉｃｒｏｓｏｆｔ社のＮｅｔＭｅｅｔｉｎｇや、ＡＴ＆Ｔ社のＶＮＣなど）が開発されている。
【０００６】
そこで、ホワイトボードアプリケーションを起動し、サーバＰＣ自体は、ローカルでホワイトボードへの書き込みを行う一方、クライアントＰＣは、画面共有アプリケーションにより、サーバＰＣをリモート操作し、そのホワイトボードに書き込みを行う方法がある。
【０００７】
しかし、この方法は、ホワイトボードに書き込みを行うための入力手段は論理的に一つしか存在しないので、複数の人が同時に書込を行うことは出来ない。
【０００８】
そこで、排他制御を行うなどにより操作者を一人に限定し、書き込みの競合を回避している。
【０００９】
また、書き込み内容を、複数のＰＣで画面共有する技術も多数開発されている。
【００１０】
例えば、テレビ会議システムにおいて複数のポインタを表示する場合に、権利のある人のポインタのみが表示され、ポインタの色や形で人物を識別するものがある（特許文献１参照）。
【００１１】
しかし、この技術では、表示されたポインタそれぞれにより画面を操作することや書き込みを行うことは出来ない。
【００１２】
また、アプリケーションによる操作は排他制御されるが、ポインタによる操作権は複数に与えられるものがある（特許文献２参照）。
【００１３】
しかしながら、この方法は、基本的には排他制御であり、複数のユーザーからの同時書き込みは出来ない。また、画面共有ではなく、ネットワークリモートマウスであり、反応速度が遅くなり、思い通りの描画が出来ない。
【００１４】
そこで、描画データを半透明にして、あるクライアントのデータを、サーバを介して他のクライアントに配信し、受信データを重ね合わせるものがある（特許文献３参照）。
【特許文献１】特開平７−２９８２３５号公報
【特許文献２】特開２０００−１８１８４６号公報
【特許文献３】特開２００３−１４３３４９号公報
【発明の開示】
【発明が解決しようとする課題】
【００１５】
しかしながら、特許文献３などに記載された方法は、サーバを介して、全クライアントに書き込みデータを送信し、受信したクライアントは、それぞれのデータを重ね合わせて描画する必要があるので、処理量が多い上、途中から参加するときに問題が生じる。
【００１６】
また全員に描画データを送信し、受信データをそれぞれのＰＣで描画するので、複数の人が同時に書き込みを行う場合に、通信状態やＰＣの処理能力によっては、書き込まれる順番が異なる等の問題が生じ、全員に同じ描画画面が表示されているという保証がない。
【００１７】
本発明は、上記事情に鑑み、グループを構成する各ＰＣに表示されている画面を共有しながら、その共有画面に書き込みを行う、すなわち、会議参加者がプレゼンテーションや報告書の文書の画面等を共有しながら、それぞれが必要な書き込みを行い、参加者全員が同じ画面を見ながらの議論を可能にすることにより、会議の支援を行う画面共有方法、及び会議支援システムを提供することを目的とする。
【課題を解決するための手段】
【００１８】
上記の目的を達成する本発明の画面共有方法は、クライアントとサーバとからなる複数のコンピュータがネットワークに接続され、該クライアントと該サーバとに共通のコンテンツが画面表示される画面共有方法であって、
複数のクライアントそれぞれの画面に表示したコンテンツをサーバに送信し、
上記複数のクライアントそれぞれから上記コンテンツを受信した上記サーバで、受信した該コンテンツそれぞれを統合し、該サーバの共有画面に統合コンテンツを表示させると共に、表示された該統合コンテンツを上記複数のクライアントそれぞれに配信し、
上記サーバから配信された上記統合コンテンツを、上記サーバに送信されたそれぞれのクライアントの上記コンテンツに重ね合わせて該クライアントの画面に表示させることを特徴とする。
【００１９】
このように、グループを構成する各ＰＣの画面に表示したコンテンツをサーバに送り、サーバでそれらを統合した後、配信される統合コンテンツが、画面に表示されたコンテンツに重ね合わせてリアルタイムで表示されるので、グループのメンバーは共通の画面を見ながら、例えばそれぞれが同時に書込を行ったコンテンツをもその画面で共有することができる。
【００２０】
上記の目的を達成する本発明の会議支援システムは、クライアントとサーバとからなる複数のコンピュータがネットワークに接続され、該クライアントと該サーバとに共通のコンテンツが画面表示される会議支援システムであって、
サーバは、
複数のクライアントそれぞれとデータの送受信を行う第1の通信手段と、
上記複数のクライアントそれぞれから受信したデータをマージして統合コンテンツを画面表示する第１の表示手段とを有し、
上記複数のクライアントそれぞれは、
上記サーバとデータの送受信を行う第２の通信手段と、
データを入力する入力手段と、
上記サーバから受信したマージされたデータによる上記統合コンテンツを画面表示すると共に、上記入力手段から入力されたデータによるコンテンツを該統合コンテンツに重ね合わせて画面表示する第２の表示手段とを有し、
上記第２の通信手段は、上記第２の表示手段により重ね合わせて画面表示された上記コンテンツを表すデータを上記サーバに送信し、
上記第1の通信手段は、上記第1の表示手段により画面表示された上記統合コンテンツを表す、マージされたデータを上記複数のクライアントそれぞれに配信することを特徴とする。
【００２１】
グループを構成する各ＰＣで、例えば書き込まれることにより表示されているコンテンツがサーバに送信され、サーバは、それらをマージして各ＰＣに配信する。各ＰＣは、共通の画面を同時に見ることが出来る上、画面に表示されたコンテンツに重ねて各ＰＣから同時に書き込まれたコンテンツも共有することが可能になる。したがって、参加メンバー全員が同じ画面を見ながら書込を行ったり、議論したりすることができる。
【発明の効果】
【００２２】
本発明の画面共有方法、及び会議支援システムによれば、グループを構成する各ＰＣに共通に表示されている共有画面に書き込みを行うことができるので、参加者全員が同じ画面を見ながらの議論が可能となる。
【発明を実施するための最良の形態】
【００２３】
以下に本発明の画面共有方法を用いた、本発明の会議支援システムの実施形態について説明する。
（第１の実施形態）
ネットワークに接続された複数のＰＣにおける表示画面を見ながら、参加者がその表示画面上に文字や図形を書き込み、議論を行う場合は、参加者全員が同じ画面を見ることができるのが原則である。そこで、本実施形態の会議支援システムは、複数のＰＣそれぞれが、画面に表示されたポインタを移動させることにより文字や図形を描画することができるホワイトボード機能と、複数のＰＣそれぞれに描画された描画像を統合した統合描画像を、複数のＰＣそれぞれに描画された描画像に重ね合わせてリアルタイムに表示することにより複数のＰＣそれぞれが表示された画面を共有する、画面共有機能とを併有する。
これにより、会議参加者は、各ＰＣにおいて同じ画面を共有しながら、マウス等を用いてそれぞれが同時に書き込むことができる。
【００２４】
図１及び図２は、本発明の会議支援システムの実施形態を示す模式図であり、図１は、画面共有機能を説明する図であり、図２は、ホワイトボード機能を説明する図である。
【００２５】
本実施形態の会議支援システムは、ネットワークに接続された複数のパーソナルコンピュータ（以下「ＰＣ」という。）により構成され、複数のＰＣのうちの１つはサーバで、他のＰＣはクライアントである。しかし、便宜上、ここではサーバ１つとクライアント１つとにより構成された会議支援システムにより説明する。
【００２６】
図１及び図２に示す、本実施形態の会議支援システムは、サーバＰＣとクライアントＰＣとにより構成され、サーバＰＣ１０とクライアントＰＣ２０とは、例えばＬＡＮ等のネットワーク３０により接続され、相互間はＴＣＰ／ＩＰプロトコルに従って通信を行う。
【００２７】
図１に示すように、サーバＰＣ１０は、ネットワーク３０とのインタフェースとなるＯＳ通信部と、統合描画像を画面に表示する画面共有サーバ１２とを備え、クライアントＰＣ２０は、ネットワーク３０とのインタフェースとなるＯＳ通信部２１と、統合描画像を画面に表示する画面共有クライアント２２とを備え、ている。
【００２８】
画面共有サーバ１２は、ＯＳ通信部１１を介してクライアントＰＣ２０から操作イベントを受信する受信部１３と、受信部１３で受信した操作イベントを元にサーバＰＣ１０に操作イベントを発生させる実行部１４を備えている。また、サーバＰＣ１０のデスクトップ画面に表示された画面データを取得する取得部１５と、ＯＳ通信部を介してクライアントＰＣに取得した画面データをリアルタイムに送信する送信部１６とを備えている。
【００２９】
また画面共有クライアント２２は、ＯＳ通信部２１を介してサーバＰＣ１０から画面データを受信する受信部２３と、受信部２３で受信した画面データによる統合描画像を画面に表示する表示部２４と、マウスの移動により入力される操作イベントを取得する取得部２５と、ＯＳ通信部２１を介してサーバＰＣ１０に取得部２５で取得された操作イベントを送信する送信部２６とを備えている。
【００３０】
なお、表示部２４は、クライアントＰＣ２０のＯＳに表示要求を行い、取得部２５は、ＯＳの指令により操作イベントを取得する。
【００３１】
ここで、本実施形態では、ベクトルデータの入力手段として、マウスを用いるが、キーボードやトラックボールを用いることもできる。
【００３２】
図２に示すように、サーバＰＣ１０は、ネットワーク３０とのインタフェースとなるＯＳ通信部１１と、サーバＰＣ１０自体のマウスにより入力されるベクトルデータによる描画像とクライアントＰＣ２０から受信したベクトルデータとをマージした統合描画像とを画面に重ね合わせて表示するホワイトボードサーバ１とを備え、クライアントＰＣ２０は、ネットワーク３０とのインタフェースとなるＯＳ通信部２１と、クライアントＰＣ２０自体のマウスにより入力されるベクトルデータによる描画像とサーバＰＣ１０から受信した、マージされたベクトルデータによる統合描画像とを画面に重ね合わせて表示するホワイトボードクライアント３１とを備え、ている。
【００３３】
ホワイトボードサーバ１は、サーバＰＣ１０自体のマウスにより書き込まれたマウスイベントによるベクトルデータを取得する取得部４と、ＯＳ通信部１１を介して受信したクライアントＰＣ２０のベクトルデータを受信する受信部２と、クライアントＰＣ２０を管理するクライアント管理部３と、取得部４で取得され、受信部２で受信されたベクトルデータを記憶するデータ記憶部５と、データ記憶部５に記憶されたベクトルデータをマージして画面に表示する描画部６とを有する。なお、取得部４は、サーバＰＣ１０のＯＳの指令を受けてベクトルデータを取得する。
【００３４】
ホワイトボードクライアント３１は、クライアントＰＣ２０自体のマウスにより書き込まれたマウスイベントによるベクトルデータを取得する取得部３５と、取得部３５により取得されたベクトルデータ及びサーバＰＣ１０から受信したベクトルデータを記憶するデータ記憶部３２と、データ記憶部３２に記憶された取得部３５により取得されたベクトルデータを、ＯＳ通信部２１を介してサーバＰＣ１０に送信する送信部３３と、データ記憶部３２に記憶されたベクトルデータによる統合描画像及びクライアントＰＣ２０で書き込まれた描画像を画面に表示する描画部３４とを有する。
【００３５】
なお、なお、取得部３５は、クライアントＰＣ２０のＯＳの指令を受けてベクトルデータを取得し、描画部３４は、ＯＳに対して表示要求を行う。
【００３６】
ここでホワイトボードとは、マウス等の入力装置から得られた座標をもとに、線分の描画を行う機能であり、例えば、Ｍｉｃｒｏｓｏｆｔ社のＭＳペイント等、多くのアプリケーションプログラムが知られている。
【００３７】
図３は、本発明の会議支援システムの実施形態を示す図である。
【００３８】
図３に示す本実施形態の会議支援システムは、１つのサーバと、２つのクライアントＡ、Ｂとを有する。
【００３９】
サーバＰＣ１０及びクライアントＰＣ２０は、それぞれ、ホワイトボードサーバ１、ホワイトボードクライアント３１、画面共有サーバ１２、画面共有クライアント２２、及び自己がサーバとして機能するのか、クライアントとして機能するのかの役割に応じて、ホワイトボード機能及び画面共有機能を切り替える接続制御部４０を有する。
【００４０】
ここで、本実施形態のサーバ及びクライアントは何れもＰＣであり、例えば、イーサネット（登録商標）により接続することができる。
【００４１】
各ＰＣ上では、本実施形態のホワイトボードアプリケーションが起動し、サーバとして起動するホワイトボードは、画面共有機能を備えている。
【００４２】
この画面共有機能により、サーバのデスクトップあるいは、その一部の画面データをクライアントに送信し、クライアントは受信した画面データを表示することにより、サーバーの画面データを共有できる。これらのソフトウエアにおいては、クライアントからマウス、キーボード等の入力イベントをサーバに送信してやることにより、クライアントからサーバーＰＣを遠隔操作することが可能である。
【００４３】
なお、画面共有機能を備えるソフトウェアとして、例えばＡＴ＆Ｔ社のＶＮＣ（Ｖｉｒｔｕａｌ  Ｎｅｔｗｏｒｋ  Ｃｏｍｐｕｔｉｎｇ）やＭｉｃｒｏｓｏｆｔ社のＮｅｔＭｅｅｔｉｎｇを用いることができる。
【００４４】
本実施形態の会議支援システムでは、ホワイトボードサーバ１の画面を、画面共有機能によりクライアントが閲覧するので、同一のホワイトボード画面を複数のＰＣで閲覧できる。したがって、書き込みデータをマージして統合することが可能であり、何れかのＰＣに異なる描画画面が表示されてしまうなどの問題が回避できる。
【００４５】
また、本実施形態の会議支援システムにおけるホワイトボードサーバ１は、サーバ自身のマウス等からの入力を描画する機能と、クライアントからネットワークを介して送られてくるベクトルデータ、例えば始点と終点の座標で構成されるベクトル情報を受信し、そのベクトル情報を元に、画面上に描画を行うことができる。
【００４６】
したがって、本実施形態のホワイトボードでは、マウスの入力イベントを送信するのではなく、ベクトルデータを送信し、サーバは、受信したベクトルデータを順次線分として描画する。このため、複数のクライアントから同時に書き込みを行っても、描画が可能であり、さらにサーバＰＣのマウスにより描画も可能である。
【００４７】
本実施形態の会議支援システムにおいては、サーバＰＣ１０は、接続制御部４０によりホワイトボードサーバ１と、画面共有サーバ１２とが起動し、クライアントＰＣ２０Ａ、Ｂは、接続制御部４０によりホワイトボードクライアント３１と、画面共有クライアント２２とが起動し、サーバＰＣ１０とクライアントＰＣ２０とは、ホワイトボードサーバ１とホワイトボードクライアント３１とが接続され、画面共有サーバ１２と画面共有クライアント２２とが接続されている。
【００４８】
このように、サーバＰＣ１０及びクライアントＰＣ２０双方の機能を備え、接続制御部４０によりその役割に応じて機能を切り替えることができるので、会議の状態に合わせて、例えば議長役を任意に設定することができる。
【００４９】
図４は、ホワイトボードクライアントとホワイトボードサーバとの一例を示す図である。
【００５０】
図４に示す、左側の３つの画面はクライアントＰＣ１０の画面をあらわし、右側の３つの画面はサーバＰＣ２０の画面をあらわしている。
【００５１】
クライアントＰＣ１０の画面は、ローカルホワイトボード（クライアントＰＣの画面の上段）と共有画面（中段）のウィンドウとにより構成され、実際には、ローカルホワイトボードと共有画面とが重ね合わされて表示される（下段）。
【００５２】
一方、サーバＰＣ２０は、クライアントから受信したベクトルデータが描画される（上、中、下段）。
【００５３】
クライアントＰＣ２０は、マウスをクリックしながら、ローカルホワイトボード上に表示されるポインタ（図示していない）を動かすと、ローカルホワイトボードに描画像が表示され、同時にそのベクトルデータがサーバＰＣ１０に送られる。
【００５４】
サーバＰＣ１０は、クライアントＰＣ２０から受信したベクトルデータにより、画面表示が更新されると、サーバＰＣ１０の画面共有機能は、この画面変化を検出し、画面に表示されているベクトルデータをクライアントＰＣ２０に送信する。クライアントＰＣ２０は、ベクトルデータを受信すると、共有画面を更新する。
【００５５】
このとき、先程描画を行ったクライアントＰＣ２０では、ローカルホワイトボードのみならず、共有画面にも書き込んだ内容が描画される。
【００５６】
これらの動作をフローチャートで示す。
【００５７】
図５は、クライアントホワイトボードのうち共有画面の動作を示すフローチャートである。
【００５８】
図５に示すように、クライアントＰＣの共有画面には、サーバから新しい画面データが受信される（Ｓ１）と、共有画面が更新され（Ｓ２）、サーバーホワイトボードと同一の画面が表示される。
【００５９】
図６は、クライアントホワイトボードのうちローカルホワイトボードの動作を示すフローチャートである。
【００６０】
図６に示すように、ユーザがマウスをクリックしながら、クライアントホワイトボード画面上のポインタを動かすと（Ｓ５）、例えば１０ｍｓ単位で座標が読み取られベクトルデータが取得される（Ｓ６）。そして、２つの座標を結ぶ線分がローカルホワイトボードに描画される（Ｓ７）。そして、ローカルホワイトボードに描画されたベクトルデータが例えば０．５秒単位で、サーバーホワイトボードに送信される（Ｓ８）。すなわち、描かれた内容を始点座標から、終点座標へのベクトルデータとして一時記憶し、０．５秒経過したら記憶したベクトルデータ列がサーバーに送信される。
【００６１】
ここで、取得されるデータは、必ずしも、ベクトルデータである必要はなく、座標データであっても良いし、ビットマップデータでも、あるいはベクトルデータや座標データやビットマップデータを、ＺＬＩＢ形式やＺＩＰ形式等の、任意の圧縮方式で圧縮したデータであってもよい。
【００６２】
また、座標を読み取る時間間隔は、ＰＣのＯＳやＣＰＵ等の基本性能、ＣＰＵ負荷等に応じて決定される。また、データをサーバに送信する時間間隔は、必ずしも０．５秒単位である必要はなく、応答性を良くするため、例えば０．２秒にしてもよいし、通信環境がよくない場合は、１秒間隔にしても良い。あるいは、マウスボタンをＵＰしたのを検出する度に、一筆単位に送信することにしても良い。
【００６３】
このような構成とするのは、ユーザがローカルホワイトボードに書き込む際の使い勝手をよくするためであり、取得したベクトルデータを直接サーバに送信し、サーバのホワイトボードに表示された描画像を、画面共有によって閲覧するという手順を踏むと、クライアントの画面に表示されるまでのタイムラグが大きくなり、クライアントＰＣのポインタの軌跡に描画像の表示が追随しないという事態を回避するためである。
【００６４】
なお、これにより、クライアントのローカルホワイトボードに表示される描画像と、クライアントからサーバに送信したベクトルデータがサーバ上で共有画面に表示され、それを受信して、クライアントの共有画面に表示される描画像とは、重複し、冗長に表示されることになるが、これら重複して表示される描画像は、座標と表示倍率とを同一にすることにより、ぴったりと重ね合わされ、例えばエコー等による２重の描画像が表示されないようになっている。
【００６５】
これにより、自分が書き込みを行ったクライアントは、画面が変化したことを全く意識することなく、比較的早い速度で書き込みを行うことが出来る。
【００６６】
なお本実施形態の会議支援システムは、クライアントがローカルホワイトボードを有するので、そのローカルホワイトボードに書き込まれたベクトルデータをクライアントが保存したり、再利用したりすることもできる。
（第２の実施形態）
第２の実施形態は、第１の実施形態と較べて、クライアントにはローカルホワイトボードがないため、共有画面に書き込みを行う点は相違するが、それ以外の点は共通する。したがって、相違点について説明する。
【００６７】
図７及び図８は、クライアントの共有画面の動作を示すフローチャートである。
【００６８】
図７に示すように、ユーザがマウスをクリックしながら、共有画面上のポインタを動かすと（Ｓ１１）、座標が読み取られベクトルデータが取得される（Ｓ１２）。そして、２つの座標を結ぶ線分が共有画面に、既に表示されている描画像に重ね合わせて上書きされる（Ｓ１３）。そして、読み取られたベクトルデータは、サーバーホワイトボードに送信される（Ｓ１４）。
【００６９】
図８に示すように、ユーザによりマウスをクリックしながら共有画面に書き込まれた描画像が、既に表示されている描画像に重ね合わせて一時表示されているとき（Ｓ１３）、サーバから、サーバのホワイトボードに表示された新たなベクトルデータが受信されると（Ｓ１５）と、一時表示されていた共有画面が更新され、サーバのホワイトボードに表示されているのと同じ描画像が表示される（Ｓ１６）。
【００７０】
クライアントが書き込みを行ったある１画素に注目して、具体的に説明する。
【００７１】
書き込みを行う前は、この画素は白色であったが、例えば書き込みにより黒色に塗りつぶされたものとする。書き込まれた時点では、サーバや他のクライアントのホワイトボードにおける当該座標は白色のままである。そして、クライアントからその画素を含むベクトルデータが送信され、サーバ上のホワイトボードに描画されると、サーバーホワイトボードの当該座標におけるその注目画素が黒色に塗り替えられる。そこで、画面共有機能によって、この画素を含む画面領域の変化が検出されると、全クライアントにこの注目画素を黒色にするという情報が送信される。書き込みを行ったクライアントの注目画素は、一時的に黒色にしていたが、最新の共有画面のベクトルデータがサーバーから受信されると、そのベクトルデータに更新され、その画素は黒色に上書きされる。これによりクライアントの表示も一時的なものから、サーバと同じものとなる。
【００７２】
図９は、クライアントの共有画面に表示される描画像を時間の経過に従って模式的に示す図である。
【００７３】
図９に示す共有画面は、時間の経過に従って図の左側から右側に遷移し、上段は、共有画面上に、マウス等を用いて書き込まれる上書部分、中段は、サーバのホワイトボードと共通の共有画面、下段は、ＰＣに実際に表示される画面を表している。
【００７４】
ホワイトボードが真っ白な状態で、あるクライアントが画面左側に×印を書いた後（１）、画面中央下部に斜線を書き込んだ（２）とする。
【００７５】
図の左列は、ローカルで書き込んだ直後の様子を示すもので、サーバとの共有画面（中段）は、真っ白のままであり、書き込みを行ったクライアントのみ、真っ白な共有画面にローカルで×印と斜線とが描かれている（上段、下段）。
【００７６】
図の中列は、先に書きこんだ左側の×印のベクトルデータ（３）がサーバに送信され（上段）、サーバのホワイトボードで描画される。そのホワイトボードに描画されたベクトルデータは、サーバから各クライアントに送信される。書き込みを行ったクライアントは、サーバから×印のベクトルデータ（４）を受信して、×印を含む点線に囲まれた画面領域の画面データを更新する（中段）。クライアントがローカルで書き変えていた×印は、サーバから受信した画面データ（５）によって完全に書き換えられている。
【００７７】
一方、斜線は、相変わらず書き込みを行ったクライアントが共有画面データをローカルに書き変えたままになっている（上段）。
【００７８】
サーバから受信しても、同じタイミングで他のクライアントが同じ領域に書き込みを行ったりしていない限り、書き込みを行ったクライアントにとって画面の変化は感じられない（下段）。なお、他のクライアントの共有画面やサーバのホワイトボードには、×印のみが表示され、斜線は表示されていない。
【００７９】
図の右列は、斜線のベクトルデータ（６）がサーバーホワイトボードに送信され（上段）、斜線を含む画面領域の画面データがサーバに描画される。
【００８０】
書き込みを行ったクライアントでは、共有画面に×印と斜線とが描かれ、先程までローカルで共有画面のデータを書き変えて表示されていた斜線は、完全に最新の共有画面のデータによって上書きされている（中段、下段）。
【００８１】
このようにすれば、共有画面の一時書き換えを行って、遅延なく遠隔書き込みが出来るようになっている。
【００８２】
ここで、本実施形態のクライアントの共有画面に表示される描画像について１つのクライアントから書き込む場合を例に説明したが、複数のクライアントから同時に書き込みを行う場合も同様である。
【００８３】
本実施形態は、第１の実施形態と較べて、クライアントがローカルで描画するベクトルデータを永続的に保持する必要がないので、メモリの節約になる。また画面データが１枚分で済み、重ね合わせの必要もないので、ＣＰＵの負荷を減らすことも出来る。
（第３の実施形態）
第３の実施形態は、第１の実施形態と較べて、サーバＰＣ及びクライアントＰＣが画面バッファを複数備えており、複数のデスクトップ画面を持つことも、ネットワークを介して他のＰＣに表示させることもできる点が相違する。
【００８４】
図１０は、本発明の会議支援システムの第３の実施形態を示す図である。
【００８５】
図１０に示す本実施形態の会議支援システムは、１つのサーバと、２つのクライアントＡ、Ｂとを有する。
【００８６】
サーバＰＣ１０及びクライアントＰＣ２０は、それぞれ、ホワイトボードサーバ１、ホワイトボードクライアント３１、画面共有サーバ１２、画面共有クライアント２２、及び自己がサーバとして機能するのか、クライアントとして機能するのかの役割に応じて、ホワイトボード機能及び画面共有機能とを切り替える接続制御部４０を有する。
【００８７】
本実施形態の会議支援システムにおいては、サーバＰＣ１０は、接続制御部４０によりホワイトボードサーバ１と、ホワイトボードクライアント３１と、画面共有サーバ１２とが起動され、クライアントＰＣ２０Ａ、Ｂは、接続制御部４０によりホワイトボードクライアント３１と、画面共有クライアント２２とが起動される。サーバＰＣ１０とクライアントＰＣ２０とは、ホワイトボードサーバ１とホワイトボードクライアント３１とが接続され、画面共有サーバ１２と画面共有クライアント２２とが接続されている。
【００８８】
また、本実施形態のサーバＰＣ１０は、第１の実施形態のサーバＰＣと異なり、サーバＰＣ１０自体の画面に書き込みを行う場合には、同時に起動されたホワイトボードクライアント３１の機能が使用される。
【００８９】
ここで、サーバＰＣ１０及びクライアントＰＣ２０には、ＵＮＩＸ（登録商標）系のＯＳが用いられるが、複数の画面バッファを持つ機能を有するＯＳであればよく、必ずしもＵＮＩＸ（登録商標）系に限定されない。
【００９０】
図１１は、第３の実施形態の会議支援システムのサーバのホワイトボード機能を説明する図である。
【００９１】
図１１に示すように、本実施形態のサーバのホワイトボード機能は、図２で説明した第１の実施形態のサーバのホワイトボード機能と較べると、マウスイベントを取得する取得部がホワイトボードクライアントに設けられ、ホワイトボードサーバには設けられていない。しかしながら、それ以外の機能は、第１の実施形態で説明したものと共有するので、同一の機能には同一の符号を付し説明を省略する。
【００９２】
図１２は、サーバの画面バッファの一例を示す図である。
【００９３】
図１２に示すように、ホワイトボードサーバ１は、２つの画面バッファを起動する。
【００９４】
第１の画面バッファ１００上でホワイトボードサーバ１が起動されるが、第１の画面バッファ１００は、ディスプレイには表示せず、非表示の状態にする。一方、ディスプレイには表示される第２の画面バッファ２００上でホワイトボードクライアント３１が起動され、起動されたホワイトボードクライアント３１は、ホワイトボードサーバ１に接続されている。
【００９５】
ホワイトボードサーバ１は非表示なので、ディスプレイに表示される場合よりも高速で描画される。また、画面共有機能を用いて、ホワイトボードサーバ１の画面変化が検出されるが、実描画を行っていないので、画面更新の検出が高速になり、システム全体の追随性が向上する。
【００９６】
ここで、ホワイトボードサーバ１は、直接マウスで描画を行う必要がなくなるので、クライアントからのベクトルデータのみを受信し、描画を行うようにしても良いし、サーバＰＣ１０のマウスから書き込みを行う場合であっても、ホワイトボードクライアントにより行うため、クライアントＰＣ２０と同様に扱うことが可能になり、データ処理が簡略化される。
（第４の実施形態）
第４の実施形態は、第１〜第３の実施形態と較べて、サーバのホワイトボードが複数のウインドウを持つと共に、複数のウインドウに表示された描画像が重ね合わされて表示される点は相違するが、それ以外の点は共通する。したがって、相違点について説明する。
【００９７】
図１３は、第４の実施形態のサーバのホワイトボードを模式的に示す図である。
【００９８】
図１３に示すように、ホワイトボードサーバ１は、デスクトップ５０の上にクライアントＡ用ウインドウ５１及びクライアントＢ用ウインドウ５２が配置され、マウスイベントにより取得されたベクトルデータを描画するサーバ用ウインドウ５３が最上面に配置されている。
【００９９】
ホワイトボードサーバ１は、ユーザ毎に描画面を管理すると共に、クライアントからの接続を待ち受ける図示しないソケットを持ち、新たな描画面を共有画面に表示する機能や削除する機能を有する。
【０１００】
各ウインドウは、それぞれ別個のソケットをもち、ホワイトボードクライアント３１は、そのソケットを利用し、サーバＰＣに対して例えばＴＣＰ／ＩＰによる接続を行うことができる。
【０１０１】
図１４は、第４の実施形態のサーバのホワイトボードの動作を示すフローチャートである。
【０１０２】
図１４に示すように、サーバーホワイトボードによる接続待ち受けが開始されると（Ｓ２１）、クライアントホワイトボードからの接続を受け付けると（Ｓ２２）、そのクライアント用に新たにウインドウを作成する（Ｓ２３）と共に、新たなソケットが作成される（Ｓ２４）。そして、待ち受けソケットで接続して来たクライアントをこの新規ウインドウのソケットに結び付け、ウインドウとクライアントホワイトボードを接続する（Ｓ２５）。さらに、新規ウインドウを他のウインドウと同じように、重ね合わせて、サーバＰＣの画面上に表示する（Ｓ２６）。
【０１０３】
あるクライアントが切断しても、そのクライアント用のウインドウとそのウインドウに描画されたベクトルデータ、及びそのクライアントのネットワークアドレスは保持しておき、クライアントが再接続して来た場合に、同一のウインドウを再度割り当てる機能を付加することにより、ネットワークがトラブルを起こした場合でもそれに耐えられるシステムとすることが出来る。
【０１０４】
本実施形態の会議支援システムは、各ウインドウ毎に、別個のソケットが割り当てられているので、ウインドウ毎に、通信機能と描画機能とを備えるように設計することにより、複数のクライアントから同時に書き込みが行われた場合の処理が簡単化され、高速に描画することができる。また、ウインドウ毎に色を割り振ることにより、ユーザの判別が容易になると共に、処理を高速にすることができる。
【０１０５】
次に、ウインドウ毎の色の割り振りについて説明する。
【０１０６】
図１５は、ウインドウ毎に色を割り振った場合の例を示す図である。
【０１０７】
図１５に示すように、クライアントＡのウインドウ５１には書き込みの色として黒色が、クライアントＢのウインドウ５２には書き込みの色として赤色が、サーバのウインドウ５３には書き込みの色として青色がそれぞれ指定されている。その場合、クライアントがサーバに送信するベクトルデータには色情報は含まれていない。また、サーバが各ウインドウに色表示する際に、どのクライアントから書き込まれた描画であるか判断して、ベクトルデータに色を付する必要もない。
【０１０８】
このようにして指定された色の描画像は、図の左上のように、重ね合わされて表示される。したがって、ＰＣの処理能力、通信量、データ量に関わりなく、ユーザー毎に自動的に色付けして、書き込んだ内容を表示することが出来る。
【０１０９】
また、サーバがクライアントに対して色を割り当てた時点で、サーバはクライアントに色を指示し、クライアントにローカルで表示される描画像の色もその指定された色に従うよう変更することも出来る。
【０１１０】
図１６及び図１７は、クライアント毎に色を割り振った場合の例を示す図である。
【０１１１】
サーバーホワイトボードは、クライアントと各クライアントに割り当てた色の情報を管理している。
【０１１２】
図１６に示すように、クライアントが接続してくると（Ｓ３１）、ネットワークアドレスやクライアントの名前などの情報を取得する（Ｓ３２）。この取得情報に基づいてクライアントに対して割り当てる色を決める（Ｓ３３）。
【０１１３】
例えば、接続して来た順番に割りつける色が、黒、赤、青、緑等と決まっているときは、アドレスと色の情報を対にして管理することができる。
【０１１４】
そして、図１７に示すように、クライアントにより書き込みが行われ、サーバがそのベクトルデータを受信すると（Ｓ３５）、そのクライアントからＩＰアドレスを取得する（Ｓ３６）。取得したＩＰアドレスに対して、どの色が割り当てられているかを照合し（Ｓ３７）、割り当てられている色で、ベクトルデータをサーバーホワイトボードに表示する（Ｓ３８）。
【０１１５】
ここで、サーバで割り当てる色は、任意のタイミングで、自由に変更することができる。
【０１１６】
次に、図１５で説明したウインドウ毎に色を割り振った場合のデータの保存について説明する。
【０１１７】
図１５のように、参加者３人により図の左上のような書き込みが行われた場合に、参加者毎に、ウインドウに表示された描画像のデータに管理データを付すことにより、別々に保存することができる。
【０１１８】
例えば、会議資料の画像（背景画像）はｂｇ−０００１．ｂｍｐ、サーバーの描画像はｓｖｒ−０００１．ｂｍｐ、クライアントＡの描画像はｃｌ１−０００１．ｂｍｐ、クライアントＢの描画像はｃｌ２−０００１．ｂｍｐというファイル名で保存されているものとすると、ｗｂｄ−０００１．ｗｂｄというファイル名で保存されている管理データファイルには、
[Ｂａｃｋｇｒｏｕｎｄ]
ｆｉｌｅ＝ｂｇ−０００１．ｂｍｐ
[Ｓｅｒｖｅｒ]
ｆｉｌｅ＝ｓｖｒ−０００１．ｂｍｐ
[Ｃｌｉｅｎｔ１]
ｆｉｌｅ＝ｃｌ１−０００１．ｂｍｐ
[Ｃｌｉｅｎｔ２]
ｆｉｌｅ＝ｃｌ２−０００１．ｂｍｐと記述されている。
保存したホワイトボードの画面を後に再現したい場合には、ホワイトボードを閲覧するアプリケーションで管理データファイルを読み込み、そこに記述されたデータに基づいて背景画像を読み込み、それを下地にして、その上にサーバ及び各クライアントの描画像を重ね合わせて表示する。
【０１１９】
このとき、特定のユーザの書き込みのみが表示されると、誰がどの書き込みを行ったが、分かりやすくなる。
【０１２０】
例えば図１８に示すホワイトボードの画面データが保存され、管理データファイルには、以下のようにユーザ名が記録されている。
【０１２１】
なお、図１８には、太郎、花子、Ａ田、Ｂ川の描画像（それぞれ、「これ」「？」「手のマーク」「×と斜線」）がそれぞれのマークと共に表示されている。
[Ｂａｃｋｇｒｏｕｎｄ]
ｆｉｌｅ＝ｂｇ−０００１．ｂｍｐ
[Ｓｅｒｖｅｒ]
ｆｉｌｅ＝ｓｖｒ−０００１．ｂｍｐ
ｃｏｌｏｒ＝ＢＬＡＣＫ
ｎａｍｅ＝太郎
[Ｃｌｉｅｎｔ１]
ｆｉｌｅ＝ｃｌ１−０００１．ｂｍｐ
ｃｏｌｏｒ＝ＲＥＤ
ｎａｍｅ＝花子
[Ｃｌｉｅｎｔ２]
ｆｉｌｅ＝ｃｌ２−０００１．ｂｍｐ
ｃｏｌｏｒ＝ＢＬＵＥ
ｎａｍｅ＝Ａ田
[Ｃｌｉｅｎｔ３]
ｆｉｌｅ＝ｃｌ３−０００１．ｂｍｐ
ｃｏｌｏｒ＝ＧＲＥＥＮ
ｎａｍｅ＝Ｂ川
ホワイトボード画面を閲覧するとき、例えば「表示ユーザー選択ダイアログ」５５により「太郎」と「花子」が選択表示されるように指定されると、図１９に示すような画面が表示され、Ａ田とＢ川の書き込み（×と斜線）は、非表示となる。その場合、管理データにユーザ名が記録されている場合には「表示ユーザー選択ダイアログ」５５に、ユーザがどの色を用いたかを視覚的に分かり易く表示することもできる。
【０１２２】
ここで、以下のようにアドレスで色を割り振った場合も、同様の機能を実現できる。
[Ｂａｃｋｇｒｏｕｎｄ]
ｆｉｌｅ＝ｂｇ−０００１．ｂｍｐ
[Ｄｒａｗｉｎｇ]
ｆｉｌｅ＝ｄｒｗ−０００１．ｂｍｐ
[Ｓｅｒｖｅｒ]
ｎａｍｅ＝太郎
ｃｏｌｏｒ＝ＢＬＡＣＫ
[Ｃｌｉｅｎｔ１]
ｎａｍｅ＝花子
ｃｏｌｏｒ＝ＲＥＤ
[Ｃｌｉｅｎｔ２]
ｎａｍｅ＝Ａ田
ｃｏｌｏｒ＝ＢＬＵＥ
[Ｃｌｉｅｎｔ３]
ｎａｍｅ＝Ｂ川
ｃｏｌｏｒ＝ＧＲＥＥＮ
ここで、クライアントから書き込みを行うときに、何の前触れもなく共有画面に書き込みが行われ、線だけが描かれるのは、画面を見た人に不自然な印象を与える場合があり、その解決策として、サーバのホワイトボードにおける最新のベクトルデータの位置に、マーク５６を画像として描画することができる。すなわち、このマークは、サーバーホワイトボードにマウスの座標によって表示されるポインタとは異なり、画像であるから、このマーク５６によりホワイトボードを操作することはできない。
【０１２３】
このマーク５６の形状を、例えばクライアント毎に変えることや、ユーザ名を一緒に表示することによって、誰が何を書いているのか分かりやすくすることができる。
【０１２４】
例えば、図１８に一例を示すように、太郎と花子とＢ川という３人のユーザがそれぞれ書き込みを行っており、Ａ田はポインティングのみを行っていることがわかる。
【０１２５】
なお、クライアント毎にウインドウを持っている場合は、ウインドウ毎にマークの形状や表示するユーザ名を登録し、ウインドウ毎にマークを表示することもできる。
【０１２６】
ただし、画面共有機能に対する負担が問題となる場合には、サーバのホワイトボードにはマークを描画せず、全クライアントに座標を送信し、各クライアント上で、ローカルに各参加者のマークを描画することもできる。
（第５の実施形態）
第５の実施形態は、第１〜第４の実施形態と異なり、会議の参加者全員が共通のデスクトップ画面（例えば会議資料）を見ながら、そのデスクトップ画面に重ねて各ＰＣでホワイトボードに書き込まれた描画像を重ね合わせて表示し、議論を行うことが出来るように構成されている。
【０１２７】
図２０は、第５の実施形態の会議支援システムを示す図である。
【０１２８】
図２０に示す本実施形態の会議支援システムは、１つのサーバと、２つのクライアントＡ、Ｂとを有する。
【０１２９】
サーバＰＣ１０は、デスクトップ画面５０が最下面にあり、このデスクトップ画面５０でアプリケーションを実行し、文書を開くことができる。デスクトップ画面５０の上には、各クライアントのウインドウ５１〜５２と、サーバのウインドウ５３とが背景を透明にして重ね合わせて重畳表示されるウインドウ５４がある。
【０１３０】
クライアントＰＣ２０は、サーバＰＣ１０のウインドウ５４との共有画面６０が最下面にあり、その共有画面の上には、各クライアントが書込を行うローカルのウインドウ６１と、ローカルのウインドウ６１と共有画面６０とが重ね合わせ重畳表示されるウインドウ６２がある。
【０１３１】
ここで、背景を透明にして重ね合わせるには、例えばMｉｃｒｏｓｏｆｔ社のＷｉｎｄｏｗｓ（登録商標）２０００以上のＯＳであれば、Ｌａｙｅｒｅｄ  Ｗｉｎｄｏｗと呼ばれるＡＰＩ関数群を使用することにより実現することができる。
【０１３２】
サーバＰＣ１０の画面では、デスクトップ画面５０上で起動しているアプリケーションの画面の上に、ホワイトボードの書き込みが重ね合わされ重畳表示されたウインドウ５４が、画面共有機能によって各クライアントＰＣ２０と共有される。
【０１３３】
また、ホワイトボードに書き込まれた描画像を保存する際に、サーバＰＣ１０の表示画面全体、もしくはサーバＰＣ１０のデスクトップ上で起動しているアプリケーションの画面を同時に保存する機能を有することにより、議論の内容を、後日見たときに分かり易い形で保存することが出来る。
【０１３４】
なお、保存するデータの形式としては、例えばデスクトップ画面にホワイトボード画面が重ねて表示された状態をビットマップデータに限定される必要はなくＪＰＥＧ形式、ＧＩＦ形式、ＰＮＧ形式等の圧縮フォーマットで保存することもできる。
【０１３５】
ここで、デスクトップ上に文書を開き、その上にホワイトボードを重ねて表示したときに、ホワイトボードの書き込み内容をビットマップデータのような画像データとして会議資料等のデータに貼り付けることができる。
【０１３６】
図２１は、ホワイトボードの書き込み内容を会議資料などに貼り付ける処理を行うフローチャートの一例を示す図である。
【０１３７】
図２１に示すように、サーバーホワイトボードで、文書への貼付けを指示すると、まずホワイトボードの書き込み内容を画像データとして取得する（Ｓ４１）。例えば、表示している画像のビットマップデータを取得する。
【０１３８】
そして、このビットマップデータを共有メモリにコピーする(Ｓ４２)。
【０１３９】
次に、貼り付ける対象の文書を開いているアプリケーションのハンドルを取得する（Ｓ４３）。例えば、一旦ホワイトボードを最小化表示して、書き込みを貼り付けたい文書をクリックして指定する。
【０１４０】
すると、指定されたハンドルのアプリケーションに対して、共有メモリにある書き込みビットマップデータを貼り付ける指示が出され（Ｓ４４）、共有メモリにある書き込みビットマップデータが文書のデータに貼り付けられる（Ｓ４５）。
【０１４１】
このような動作は、例えば、Ｍｉｃｒｏｓｏｆｔ社のＯｆｆｉｃｅのように、開発環境が提供されているソフトウェアを用いることによって、文書を開いているソフトウエアを操作する外部プログラムを作成することにより実現することができる。具体的には、文書の上にホワイトボードを重ねて表示しているとき、ホワイトボードの画像の位置と、文書の位置を合わせることにより、あたかも文書に直接書きこんだかのように、書き込み画像をビットマップデータとして貼り付けることができる。ビットマップデータを貼り付ける際、文書に対して、位置と大きさを合わせ、更にビットマップの背景を透明にして貼り付ける。
【０１４２】
ここで、文書のハンドルを取得する場合に、ホワイトボードより下のウィンドウのうちもっとも上面にあるものを自動的に指定してもよいし、現在開いているウィンドウの一覧を表示させて、ユーザにどのウィンドウが貼り付ける対象の文書のものであるかを指示するようなダイアログを表示しても良い。
【０１４３】
また、アプリケーションのマクロを利用して文書にビットマップデータを貼り付けることにしてもよい。すなわち、位置を合わせてビットマップ画像を貼り付けるマクロを作成し、文書または文書を表示するアプリケーション環境にインストールして、そのマクロを外部から呼び出すようにする。
【０１４４】
さらに、Ｃｔｒｌ＋Ｖ等のキーイベントをアプリケーションに対して送信することにより文書にビットマップデータを貼り付けることにしてもよい。ただし、この方法は、位置合わせや、背景の透明化が出来ない場合がある。
【０１４５】
なお、画像データの形式はビットマップ形式に限定する必要はなく、例えばＪＰＥＧ形式、ＧＩＧ形式、ＰＮＧ形式の圧縮画像の貼り付けが可能なアプリケーションによって文書ファイルを開いている場合に、そのような形式の画像データを文書に貼り付けるようにしてもよい。
【０１４６】
次に、データの保存方法について説明する。
【０１４７】
図２２は、デスクトップに表示された会議資料等の画像と、書き込み画像とを別々に保存する場合のフローチャートである。
【０１４８】
図２２に示すように、ホワイトボードにおいて保存を開始すると(Ｓ４６)、デスクトップ画面のスクリーンショット画像が例えばビットマップ形式の画像データとして保存される（Ｓ４７）。次に、各クライアントのウインドウに表示された描画像が重ね合わされた統合描画像の描画データがビットマップ形式の画像データとして保存される（Ｓ４８）。そして、最後に、この２つの画像データを関連付ける管理データが保存される（Ｓ４９）。
【０１４９】
後に、ホワイトボード画像を閲覧する際は、まず管理データを読み込み、管理データに関連付けられた画像データと描画データとを読み込み、前者に後者を重ね合わせて表示する。なお、描画データは、ベクトルデータ列として保存してもよい。
【０１５０】
図２３は、ホワイトボードが起動されたとき、ホワイトボードを透明にする場合のフローチャートである。
【０１５１】
図２３に示すように、ホワイトボードが起動されたとき、真っ白な画面が表示され、デスクトップに表示された会議資料等の画像が隠されてしまうのを回避する処理が行われる。ホワイトボードが起動したときに、デスクトップ画面のスクリーンショット画像を撮影し（Ｓ５０）、その画面をホワイトボードの背景画像に設定する（Ｓ５１）。
【０１５２】
クライアントが接続されたとき（Ｓ５２）、そのクライアントに、デスクトップ画面の画像を送信する（Ｓ５３）。
【０１５３】
ここで、本実施形態では、ホワイトボードにデスクトップ画面の画像を表示させているが、ホワイトボードの背景色を透明にしてデスクトップ画面に重ねて表示することにしてもよい。
（第６の実施形態）
第６の実施形態は、第１〜第５の実施形態と較べて、サーバがホワイトボードへの書込権を管理する機能を有する点が相違するので、相違点について説明する。
【０１５４】
図２４及び図２５は、第６の実施形態の会議支援システムにおけるクライアントの動作を例示するフローチャートである。
【０１５５】
本実施形態のサーバのホワイトボードは、書込権を管理し、あるクライアントに与えられた書き込み権が他のクライアントに譲渡された場合、図２４の例では、クライアントが書き込み権を有するか否かを判断し、図２５の例ではクライアントに書き込み権が与えられたことはサーバから通知される。
【０１５６】
図２４に示す例においては、クライアントは、マウスからベクトルデータを取得すると（Ｓ５５）、書込権が与えられているか否かを判断し（Ｓ５６）、書き込み権が与えられていないときはベクトルデータを蓄積し（Ｓ５７）、書き込み権が与えられているときはベクトルデータをサーバに送信する（Ｓ５８）。
【０１５７】
このように、書き込み権がない場合は、ローカルの描画を行ってもベクトルデータは送信せず、ローカルのメモリ等に一時的に蓄積する。また、書き込み権が譲渡されたことを検出すると、蓄積しておいたベクトルデータを順次サーバーに送信し、書き込んだ描画像をサーバ上に描画させる。
【０１５８】
ここで、書き込み権が与えられていないクライアントは、ローカルのウインドウを表示しないようにし、クライアントが描画出来ないようにすることも可能である。
【０１５９】
図２５に示す他の例においては、書込権を次の人に渡すのではなく、書込権を開放し、書込権が開放された状態では、最初に書込みを開始した人に書込権が与えられる。
【０１６０】
書き込み権が開放されていれば（Ｓ６２）、早い者勝ちで、先に書き込みを行ったユーザに書き込み権が与えられる（Ｓ６３）。書き込み権を得ると、サーバーホワイトボード上では、タイマーが作動する（Ｓ６４）。このタイマーは、例えば１５秒に設定する。
【０１６１】
書き込みが行われると（Ｓ６６）、このタイマーはリセットされ（Ｓ６７）、書き込みをやめるとタイマーが再びスタートする（Ｓ６４）。書き込みを止めてから１５秒が経過してタイマーが終了すると（Ｓ６５）、書き込み権は自動的に開放される（Ｓ６８）。
【０１６２】
以下、早い者勝ちで、先に書き込みを行ったユーザに書き込み権が与えられる。
【０１６３】
なお、誰かが書き込み権を得ている間は、他のユーザは書き込みを行うことは出来ない。
【０１６４】
ここで、タイマーは１５秒に設定されているが、必ずしも１５秒である必要はなく、場面に応じて例えば３０秒にしてもよいし、任意の時間に設定できるようにしても良い。
また、書き込み権を持たないクライアントでは、ローカル描画を行おうとしても共有画面のローカル上書きを行わないようにすることも出来る。
【０１６５】
ここに示す方法の他にも、サーバーホワイトボードで書き込み権の許否を管理することもできる。
【図面の簡単な説明】
【０１６６】
【図１】本発明の会議支援システムの実施形態を示す模式図（画面共有機能）である。
【図２】本発明の会議支援システムの実施形態を示す模式図（ホワイトボード機能）である。
【図３】本発明の会議支援システムの実施形態を示す図である。
【図４】クライアントホワイトボードとサーバホワイトボードとの一例を示す図である。
【図５】クライアントホワイトボードのうち共有画面の動作を示すフローチャートである。
【図６】クライアントホワイトボードのうちローカルホワイトボードの動作を示すフローチャートである。
【図７】クライアントの共有画面の動作を示すフローチャートである。
【図８】クライアントの共有画面の動作を示すフローチャートである。
【図９】クライアントの共有画面に表示される描画像を時間の経過に従って模式的に示す図である。
【図１０】本発明の会議支援システムの第３の実施形態を示す図である。
【図１１】第３の実施形態の会議支援システムのサーバのホワイトボード機能を説明する図である。
【図１２】サーバの画面バッファの一例を示す図である。
【図１３】第４の実施形態のサーバのホワイトボードを模式的に示す図である。
【図１４】第４の実施形態のサーバのホワイトボードの動作を示すフローチャートである。
【図１５】ウインドウ毎に色を割り振った場合の例を示す図である。
【図１６】クライアント毎に色を割り振った場合の例を示す図である。
【図１７】クライアント毎に色を割り振った場合の例を示す図である。
【図１８】ホワイトボード画面を示す図である。
【図１９】ホワイトボード画面を示す図である。
【図２０】第５の実施形態の会議支援システムを示す図である。
【図２１】ホワイトボードの書き込み内容を会議資料などに貼り付ける処理を行うフローチャートの一例を示す図である。
【図２２】デスクトップに表示された会議資料等の画像と、書き込み画像とを別々に保存する場合のフローチャートである。
【図２３】ホワイトボードが起動されたとき、ホワイトボードを透明にする場合のフローチャートである。
【図２４】第６の実施形態の会議支援システムにおけるクライアントの動作を例示するフローチャートである。
【図２５】第６の実施形態の会議支援システムにおけるクライアントの動作を例示するフローチャートである。
【符号の説明】
【０１６７】
１  ホワイトボードサーバ
２  ベクトルデータ受信部
３  クライアント管理部
４  マウスイベント取得部
５  データ記憶部
６  描画部
１０  サーバＰＣ
１１、２１  ＯＳ通信部
１２  画面共有サーバ
１３  操作イベント受信部
１４  操作イベント実行部
１５  画面データ取得部
１６  画面データ送信部
２０  クライアントＰＣ
２２  画面共有クライアント
２３  画面データ受信部
２４  画面データ表示部
２５  操作イベント取得部
２６  操作イベント送信部
３０  ネットワーク
３１  ホワイトボードクライアント
３２  データ記憶部
３３  ベクトルデータ送信部
３４  ベクトルデータ描画部
３５  マウスイベント取得部
４０  接続制御部
５０  デスクトップ画面
５１  クライアントＡ用ウインドウ
５２  クライアントＢ用ウインドウ
５３  サーバ用ウインドウ
５４、６２  重畳表示されたウインドウ
５５  表示ユーザ選択ダイアログボックス
５６  マーク
６０  共有画面
６１  ローカルのウインドウ
１００  第１の画面バッファ
２００  第２の画面バッファ
【図１】
2006031359.tif 000003
【図２】
2006031359.tif 000004
【図３】
2006031359.tif 000005
【図４】
2006031359.tif 000006
【図５】
2006031359.tif 000007
【図６】
2006031359.tif 000008
【図７】
2006031359.tif 000009
【図８】
2006031359.tif 000010
【図９】
2006031359.tif 000011
【図１０】
2006031359.tif 000012
【図１１】
2006031359.tif 000013
【図１２】
2006031359.tif 000014
【図１３】
2006031359.tif 000015
【図１４】
2006031359.tif 000016
【図１５】
2006031359.tif 000017
【図１６】
2006031359.tif 000018
【図１７】
2006031359.tif 000019
【図１８】
2006031359.tif 000020
【図１９】
2006031359.tif 000021
【図２０】
2006031359.tif 000022
【図２１】
2006031359.tif 000023
【図２２】
2006031359.tif 000024
【図２３】
2006031359.tif 000025
【図２４】
2006031359.tif 000026
【図２５】
2006031359.tif 000027