(57)【要約】【課題】  マルチモニタコンピュータシステム上におけるモニタ間の表示差異を決定する。【解決手段】  第１のラインが２つのモニタにまたがって表示される。ユーザは、１つのモニタ上でラインの一方のセグメントを他方のセグメントと整列させる。第２のラインが、第１のラインと平行に、それらのモニタにまたがって表示される。次いで、ユーザは、第２のラインの一セグメントを第２のラインの他方のセグメントと整列させる。くさび形がそれらのモニタにまたがって表示される。ユーザは、そのくさび形が、モニタ間の物理的離間距離によって一部覆い隠された連続するくさび形に見えるように、くさび形の一セグメントを整列させる。次いで、システムは、モニタの相対的物理的位置合わせ、モニタの相対的画素解像度、およびモニタの表示域間の物理的離間距離を決定する。モニタが回転される場合、回転されたモニタの回転を決定するさらなるステップも実行される。【選択図】  図９Ａ
2006039540.tif 000002
【特許請求の範囲】
【請求項１】
マルチモニタ表示システムにおけるモニタ間の表示差異および離間距離を決定する方法であって、
第１のモニタと第２のモニタにまたがって第１のラインを表示するステップであって、前記第１のラインの第１のセグメントは前記第１のモニタ上に表示され、前記第１のラインの第２のセグメントは前記第２のモニタ上に表示され、前記第１のラインにおける前記２つのセグメントの一方は、ユーザにより、前記第１のラインの方向に対して垂直に位置変更可能であるステップと、
前記第１のラインの前記位置変更可能なセグメントを、ユーザが、前記第１のラインの他方のセグメントの方向に視覚的に整列されるように位置変更した後で、前記第１のラインの前記位置変更可能なセグメントの整列位置を得るステップと、
前記第１のラインの前記位置変更可能なセグメントの前記整列位置とその最初の表示位置との差異に従って、前記第１のモニタを基準として前記第２のモニタの物理的位置合わせを決定するステップと、
を具備したことを特徴とする方法。
【請求項２】
前記第１のラインと平行に、前記第１のモニタと前記第２のモニタにまたがって第２のラインを表示するステップであって、前記第２のラインの第１のセグメントは前記第１のモニタ上に表示され、前記第２のラインの第２のセグメントは前記第２のモニタ上に表示され、前記第２のラインの前記２つのセグメントの一方は、ユーザにより前記第２のラインの方向に対して垂直に位置変更可能であるステップと、
前記第２のラインの前記位置変更可能なセグメントを、前記第２のラインの前記第１のセグメントの方向に視覚的に整列されるようにユーザが位置変更した後で、前記第２のラインの前記位置変更可能なセグメントの整列位置を得るステップと、
前記第２のラインの前記位置変更可能なセグメントの前記整列位置とその最初の表示位置との差異に従って、前記第１のモニタの画素解像度に対する前記第２のモニタの画素解像度を決定するステップと、
をさらに備えることを特徴とする請求項１に記載の方法。
【請求項３】
前記第１のモニタと前記第２のモニタにまたがってくさび形を表示するステップであって、前記くさび形の第１のセグメントは前記第１のモニタ上に表示され、前記くさび形の第２のセグメントは前記第２のモニタ上に表示され、前記くさび形の前記２つのセグメントの一方はユーザにより位置変更可能であるステップと、
前記くさび形の前記位置変更可能なセグメントを、前記ユーザが前記くさび形の前記第１のセグメントと視覚的に連続するように位置変更した後で、前記くさび形の前記位置変更可能なセグメントの再配置位置を得るステップと、
前記位置変更可能なセグメントの前記再配置位置とその最初の表示位置との差異に従って、前記第１のモニタと前記第２のモニタの間のオクルージョン領域を決定するステップと、
をさらに備えることを特徴とする請求項２に記載の方法。
【請求項４】
前記第１のモニタと前記第２のモニタにまたがって第３のラインを表示するステップであって、前記第３のラインの第１のセグメントは前記第１のモニタ上に表示され、前記第３のラインの第２のセグメントは前記第２のモニタ上に表示され、前記第３のラインの前記２つのセグメントの一方は回転可能なセグメントであり、前記回転可能なセグメントは、前記第３のラインの他方のセグメントに最も近い前記回転可能なセグメントの端部にあるアンカポイントの周りを回転するステップと、
前記第３のラインの前記回転可能なセグメントを、前記第３のラインの前記他方のセグメントと平行になるように前記ユーザが回転させた後で、前記第３のラインの前記回転可能なセグメントのその最初の表示方向からの回転角を得るステップと、
前記回転角に従って、前記第１のモニタを基準として前記第２のモニタの回転を決定するステップと、
をさらに備えることを特徴とする請求項３に記載の方法。
【請求項５】
前記第３のラインを表示するステップ、前記ユーザが前記第３のラインの前記回転可能なセグメントを回転させた後で前記第３のラインの前記回転可能なセグメントの前記回転角を得るステップ、および前記第１のモニタを基準として前記第２のモニタの前記回転を決定するステップは、前記第１のラインを表示するステップの前に実行される、ことを特徴とする請求項４に記載の方法。
【請求項６】
前記ユーザが前記第２のラインの前記位置変更可能なセグメントを位置変更する際に、
前記第２のラインの前記位置変更可能なセグメントの現在位置を得るステップと、
前記第２のラインの前記位置変更可能なセグメントの前記現在位置とその最初の表示位置との差異に従って、前記第１のモニタの画素解像度に対する前記第２のモニタの画素解像度を決定するステップと、
前記他方のモニタの前記画素解像度に対する、前記第２のラインの前記位置変更可能なセグメントが表示される前記モニタの前記決定された画素解像度に従って、前記第２のラインの前記他方のセグメントのラインの太さに対応したラインの太さを用いて前記第２のラインの前記位置変更可能なセグメントを表示するステップと、
を繰り返して実行するステップをさらに備える、ことを特徴とする請求項４に記載の方法。
【請求項７】
前記マルチモニタ表示システム上で実行されているホストオペレーティングシステム上で実行されるアプリケーションから利用できるように、前記決定された値を、オペレーティングシステム値として格納するステップをさらに備える、ことを特徴とする請求項４に記載の方法。
【請求項８】
前記マルチモニタ表示システムにおけるモニタ間の前記表示差異を決定することは、前記ホストオペレーティングシステムのセットアッププロセスの一部として実行される、ことを特徴とする請求項７に記載の方法。
【請求項９】
前記マルチモニタ表示システムにおけるモニタ間の前記表示差異を決定することは、前記マルチモニタ表示システムにモニタが付加される際に実行される、ことを特徴とする請求項８に記載の方法。
【請求項１０】
第１のモニタと第２のモニタにまたがって第１のラインを表示するステップであって、前記第１のラインの第１のセグメントは前記第１のモニタ上に表示され、前記第１のラインの第２のセグメントは前記第２のモニタ上に表示され、前記第１のラインの前記２つのセグメントの一方は、ユーザにより、前記第１のラインの方向に対して垂直に位置変更可能であるステップと、
前記第１のラインの前記位置変更可能なセグメントを、前記第１のラインの他方のセグメントの方向に視覚的に整列されるようにユーザが位置変更した後で、前記第１のラインの前記位置変更可能なセグメントの整列位置を得るステップと、
前記第１のラインの前記位置変更可能なセグメントの前記整列位置とその最初の表示位置との差異に従って、前記第１のモニタを基準として前記第２のモニタの物理的位置合わせを決定するステップと、
前記第１のラインと平行に、前記第１のモニタと前記第２のモニタにまたがって第２のラインを表示するステップであって、前記第２のラインの第１のセグメントは前記第１のモニタ上に表示され、前記第２のラインの第２のセグメントは前記第２のモニタ上に表示され、前記第２のラインの前記２つのセグメントの一方は、ユーザにより、前記第２のラインの方向に対して垂直に位置変更可能であるステップと、
前記第２のラインの前記位置変更可能なセグメントを、前記第２のラインの前記第１のセグメントの方向に視覚的に整列されるようにユーザが位置変更した後で、前記第２のラインの前記位置変更可能なセグメントの整列位置を得るステップと、
前記第２のラインの前記位置変更可能なセグメントの前記整列位置とその最初の表示位置との差異に従って、前記第１のモニタの画素解像度に対する前記第２のモニタの画素解像度を決定するステップと、
前記第１のモニタと前記第２のモニタにまたがってくさび形を表示するステップであって、前記くさび形の第１のセグメントは前記第１のモニタ上に表示され、前記くさび形の第２のセグメントは前記第２のモニタ上に表示され、前記くさび形の前記２つのセグメントの一方は、ユーザにより位置変更可能であるステップと、
前記くさび形の前記位置変更可能なセグメントを、前記くさび形の前記第１のセグメントと視覚的に連続するように前記ユーザが位置変更した後で、前記くさび形の前記位置変更可能なセグメントの再配置位置を得るステップと、
前記位置変更可能なセグメントの前記再配置位置とその最初の表示位置との差異に従って、前記第１のモニタと前記第２のモニタの間のオクルージョン領域を決定するステップと、
を具備したことを特徴とする、マルチモニタ表示システムにおけるモニタ間の表示差異および離間距離を決定する方法。
【請求項１１】
コンピュータシステム上の複数のモニタ間の表示差異および離間距離を決定するコンピュータシステムであって、
コンピューティングデバイスからの情報を表示する第１のモニタと、
前記情報を表示するために第１のモニタに結合され、前記コンピュータシステムに第２のモニタを付加すると、
前記第１のモニタと前記第２のモニタにまたがって第１のラインを表示し、前記第１のラインの第１のセグメントは前記第１のモニタ上に表示され、前記第１のラインの第２のセグメントは前記第２のモニタ上に表示され、前記第１のラインの前記２つのセグメントの一方は、ユーザにより、前記第１のラインの方向に対して垂直に位置変更可能であり、
前記第１のラインの前記位置変更可能なセグメントを、前記第１のラインの他方のセグメントの方向に視覚的に整列されるように前記ユーザが位置変更した後で、前記第１のラインの前記位置変更可能なセグメントの整列位置を得、
前記第１のラインの前記位置変更可能なセグメントの前記整列位置とその最初の表示位置との差異に従って、前記第１のモニタを基準として前記第２のモニタの物理的位置合わせを決定する
ように構成されたコンピューティングデバイスと、
を具備したことを特徴とするコンピュータシステム。
【請求項１２】
前記コンピュータシステムに前記第２のモニタを付加すると、
前記第１のラインと平行に、前記第１のモニタと前記第２のモニタにまたがって第２のラインを表示し、前記第２のラインの第１のセグメントは前記第１のモニタ上に表示され、前記第２のラインの第２のセグメントは前記第２のモニタ上に表示され、前記第２のラインの前記２つのセグメントの一方は、ユーザにより、前記第２のラインの方向に対して垂直に位置変更可能であり、
前記第２のラインの前記位置変更可能なセグメントを、前記第２のラインの前記第１のセグメントの方向に視覚的に整列されるようにユーザが位置変更した後で、前記第２のラインの前記位置変更可能なセグメントの整列位置を得、
前記第２のラインの前記位置変更可能なセグメントの前記整列位置とその最初の表示位置との差異に従って、前記第１のモニタの画素解像度に対する前記第２のモニタの画素解像度を決定する、
ようにさらに構成される、ことを特徴とする請求項１１に記載のコンピュータシステム。
【請求項１３】
前記コンピュータシステムに前記第２のモニタを付加すると、
前記第１のモニタと前記第２のモニタにまたがってくさび形を表示し、前記くさび形の第１のセグメントは前記第１のモニタ上に表示され、前記くさび形の第２のセグメントは前記第２のモニタ上に表示され、前記くさび形の前記２つのセグメントの一方は、ユーザにより位置変更可能であり、
前記くさび形の前記位置変更可能なセグメントを、前記くさび形の前記第１のセグメントと視覚的に連続するように前記ユーザが位置変更した後で、前記くさび形の前記位置変更可能なセグメントの再配置位置を得、
前記位置変更可能なセグメントの前記再配置位置とその最初の表示位置との差異に従って、前記第１のモニタと前記第２のモニタの間のオクルージョン領域を決定する、
ようにさらに構成される、ことを特徴とする請求項１２に記載のコンピュータシステム。
【請求項１４】
前記コンピュータシステムに前記第２のモニタを付加すると、
前記第１のモニタと前記第２のモニタにまたがって第３のラインを表示し、前記第３のラインの第１のセグメントは前記第１のモニタ上に表示され、前記第３のラインの第２のセグメントは前記第２のモニタ上に表示され、前記第３のラインの前記２つのセグメントの一方は回転可能なセグメントであり、前記回転可能なセグメントは、前記第３のラインの他方のセグメントに最も近い前記回転可能なセグメントの端部にあるアンカポイントの周りを回転し、
前記第３のラインの前記回転可能なセグメントを、前記第３のラインの前記他方のセグメントと平行になるように前記ユーザが回転させた後で、前記第３のラインの前記回転可能なセグメントのその最初の表示方向からの回転角を得、
前記回転角に従って前記第１のモニタを基準として前記第２のモニタの回転を決定する、
ようにさらに構成される、ことを特徴とする請求項１３に記載のコンピュータシステム。
【請求項１５】
前記第１のラインが表示される前に、前記第３のラインが表示され、前記ユーザが前記第３のラインの前記回転可能なセグメントを回転させた後で前記第３のラインの回転可能なセグメントの前記回転角が得られ、前記第１のモニタを基準として前記第２のモニタの前記回転が決定されることを特徴とする請求項１４に記載のコンピュータシステム。
【請求項１６】
前記ユーザが前記第２のラインの前記位置変更可能なセグメントを位置変更する際に、繰り返して、
前記第２のラインの前記位置変更可能なセグメントの現在位置を得、
前記第２のラインの前記位置変更可能なセグメントの前記現在位置とその最初の表示位置との差異に従って前記第１のモニタの前記画素解像度に対する前記第２のモニタの前記画素解像度を決定し、
前記他方のモニタの前記画素解像度に対する前記第２のラインの前記位置変更可能なセグメントが表示される前記モニタの前記決定された画素解像度に従った前記第２のラインの前記他方のセグメントのラインの太さに対応するラインの太さを用いて前記第２のラインの前記位置変更可能なセグメントを表示する、
ようにさらに構成される、ことを特徴とする請求項１４に記載のコンピュータシステム。
【請求項１７】
前記決定された値を、ホストオペレーティングシステム上で実行されるアプリケーションから利用できるように前記コンピュータシステムのホストオペレーティングシステムのオペレーティングシステム値として格納するように、さらに構成されることを特徴とする請求項１４に記載のコンピュータシステム。
【請求項１８】
前記マルチモニタ表示システムにおけるモニタ間の前記表示差異を前記ホストオペレーティングシステムのセットアッププロセスの一部として決定する、ことを特徴とする請求項１７に記載のコンピュータシステム。
【請求項１９】
コンピュータシステム上の複数のモニタ間の表示差異および離間距離を決定するコンピュータシステムであって、
コンピューティングデバイスからの情報を表示する第１のモニタと、
前記情報を表示するために第１のモニタに結合され、前記コンピュータシステムに第２のモニタを付加すると、
前記第１のモニタと前記第２のモニタにまたがって第１のラインを表示し、前記第１のラインの第１のセグメントは前記第１のモニタ上に表示され、前記第１のラインの第２のセグメントは前記第２のモニタ上に表示され、前記第１のラインの前記２つのセグメントの一方は回転可能なセグメントであり、前記回転可能なセグメントは、前記第１のラインの他方のセグメントに最も近い前記回転可能なセグメントの端部にあるアンカポイントの周りを回転し、
前記第１のラインの前記回転可能なセグメントを、前記第１のラインの前記他方のセグメントと平行になるようにユーザが回転させた後で、前記第１のラインの前記回転可能なセグメントのその最初の表示方向からの回転角を得、
前記回転角に従って、前記第１のモニタを基準として前記第２のモニタの回転を決定し、
前記第１のモニタと前記第２のモニタにまたがって第２のラインを表示し、前記第２のラインの第１のセグメントは前記第１のモニタ上に表示され、前記第２のラインの第２のセグメントは前記第２のモニタ上に表示され、前記第２のラインの前記２つのセグメントの一方は、ユーザにより、前記第２のラインの方向に対して垂直に位置変更可能であり、
前記第２のラインの前記位置変更可能なセグメントを、前記第２のラインの他方のセグメントの方向に視覚的に整列されるように前記ユーザが位置変更した後で、前記第２のラインの前記位置変更可能なセグメントの整列位置を得、
前記第２のラインの前記位置変更可能なセグメントの前記整列位置とその最初の表示位置との差異に従って、前記第１のモニタを基準として前記第２のモニタの物理的位置合わせを決定し、
前記第２のラインと平行に、前記第１のモニタと前記第２のモニタにまたがって第３のラインを表示し、前記第３のラインの第１のセグメントは前記第１のモニタ上に表示され、前記第３のラインの第２のセグメントは前記第２のモニタ上に表示され、前記第３のラインの前記２つのセグメントの一方は、ユーザにより、前記第３のラインの方向に対して垂直に位置変更可能であり、
前記第３のラインの前記位置変更可能なセグメントを、前記第３のラインの前記第１のセグメントの方向に視覚的に整列されるようにユーザが位置変更した後で、前記第３のラインの前記位置変更可能なセグメントの整列位置を得、
前記第３のラインの前記位置変更可能なセグメントの前記整列位置とその最初の表示位置との差異に従って、前記第１のモニタの画素解像度に対する前記第２のモニタの画素解像度を決定し、
前記第１のモニタと前記第２のモニタにまたがってくさび形を表示し、前記くさび形の第１のセグメントは前記第１のモニタ上に表示され、前記くさび形の第２のセグメントは前記第２のモニタ上に表示され、前記くさび形の前記２つのセグメントの一方は、ユーザにより位置変更可能であり、
前記くさび形の前記位置変更可能なセグメントを、前記くさび形の前記第１のセグメントと視覚的に連続するように前記ユーザが位置変更した後で、前記くさび形の前記位置変更可能なセグメントの再配置位置を得、
前記位置変更可能なセグメントの前記再配置位置とその最初の表示位置との差異に従って、前記第１のモニタと前記第２のモニタの間のオクルージョン領域を決定する、
ように構成されたコンピューティングデバイスと、
を具備したことを特徴とするコンピュータシステム。
【請求項２０】
マルチモニタ表示システムのモニタ間の表示差異を決定する方法を実行するコンピュータ実行可能命令を担持するコンピュータ可読媒体であって、該コンピュータ実行可能命令は、マルチモニタコンピュータシステム上において、
第１のモニタと第２のモニタにまたがって第１のラインを表示するステップであって、前記第１のラインの第１のセグメントは前記第１のモニタ上に表示され、前記第１のラインの第２のセグメントは前記第２のモニタ上に表示され、前記第１のラインの前記２つのセグメントの一方は、ユーザにより、前記第１のラインの方向に対して垂直に位置変更可能であるステップと、
前記第１のラインの前記位置変更可能なセグメントを、前記第１のラインの他方のセグメントの方向に視覚的に整列されるようにユーザが位置変更した後で、前記第１のラインの前記位置変更可能なセグメントの整列位置を得るステップと、
前記第１のラインの前記位置変更可能なセグメントの前記整列位置とその最初の表示位置との差異に従って、前記第１のモニタを基準として前記第２のモニタの物理的位置合わせを決定するステップと、
前記第１のラインと平行に、前記第１のモニタと前記第２のモニタにまたがって第２のラインを表示するステップであって、前記第２のラインの第１のセグメントは前記第１のモニタ上に表示され、前記第２のラインの第２のセグメントは前記第２のモニタ上に表示され、前記第２のラインの前記２つのセグメントの一方は、ユーザにより、前記第２のラインの方向に対して垂直に位置変更可能であるステップと、
前記第２のラインの前記位置変更可能なセグメントを、前記第２のラインの前記第１のセグメントの方向に視覚的に整列されるようにユーザが位置変更した後で、前記第２のラインの前記位置変更可能なセグメントの整列位置を得るステップと、
前記第２のラインの前記位置変更可能なセグメントの前記整列位置とその最初の表示位置との差異に従って、前記第１のモニタの画素解像度に対する前記第２のモニタの画素解像度を決定するステップと、
前記第１のモニタと前記第２のモニタにまたがってくさび形を表示するステップであって、前記くさび形の第１のセグメントは前記第１のモニタ上に表示され、前記くさび形の第２のセグメントは前記第２のモニタ上に表示され、前記くさび形の前記２つのセグメントの一方は、ユーザにより位置変更可能であるステップと、
前記くさび形の前記位置変更可能なセグメントを、前記くさび形の前記第１のセグメントと視覚的に連続するように前記ユーザが位置変更した後で、前記くさび形の前記位置変更可能なセグメントの再配置位置を得るステップと、
前記位置変更可能なセグメントの前記再配置位置とその最初の表示位置との差異に従って、前記第１のモニタと前記第２のモニタの間のオクルージョン領域を決定するステップと
を実行する、ことを特徴とするコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンピュータ図形表示システムに関し、より詳細には、マルチモニタコンピュータシステム上におけるモニタ間の表示差異(display difference)を決定するシステムおよび方法に関する。
【背景技術】
【０００２】
コンピュータシステムの能力および容量が増大し、特に、図形表示サブシステムの能力および容量が増大するにつれて、コンピュータシステムが複数の表示装置またはモニタを含むことがますます一般的になってきている。一例として、図１に、コンピュータ１０２、第１のモニタ１０４（１次モニタと呼ばれることもある）、および第２のモニタ１０６を含む典型的な例示的マルチモニタコンピュータシステム１００を示す。
【０００３】
マルチモニタコンピュータシステムは、例示的システム１００などの典型的なデスクトップシステムだけに限定されるものではない。そうではなく、マルチモニタコンピュータシステムは、それだけに限らないが、ノートブックまたはタブレットコンピュータ、ハンドヘルド携帯情報端末（ＰＤＡ）、ミニコンピュータやメインフレームコンピュータといったマルチユーザコンピュータシステムなどを含む様々なコンピュータシステム上で見られる。さらに、コンピュータシステムに接続されない多くのマルチモニタ表示システムも存在する。
【０００４】
基礎となるベースコンピュータシステム、またはシステム一般に関係なく、各マルチモニタシステムは、複数のモニタにまたがる情報の表示をどのように処理するかという同じ問題に直面する。例えば、複数のモニタの実際の表示域は、モニタのフレーム、ならびに、以下「オクルージョン領域(occlusion area)」と呼ぶモニタの物理的離間距離(physical separation)によって隔てられる。モニタの物理的位置合(physical alignment)わせは、複数のモニタにまたがる情報の表示に影響を与える。また、システムに接続される複数のモニタは、同一でないこともあり、少なくともほぼ同一であることもある。図１に示すように、モニタ１０４およびモニタ１０６は、異なる物理的寸法(physical dimension)を持つ。画面解像度(screen resolution)、すなわちモニタ上に表示される画素数、および画素解像度(pixel resolution)、すなわち１画素の物理的サイズもマルチモニタ表示に影響を与える。これらの差異および条件すべてが、マルチモニタシステム上での情報表示を困難な問題にする要因となる。
【０００５】
大セグメントのコンピュータシステムがマルチモニタの問題を「処理(deal)する」典型的な手法は、すべてのモニタの表示域を包含する単一の、連続した表示面（以下、「表示面(display surface)」と呼ぶ）を概念化することである。ゆえに、システム、および接続された表示システムにレンダリングしようとする任意のアプリケーションから見ると、書き込むべき１つの面だけがあることになる。コンピュータシステムの図形表示サブシステムは、表示面に書き込まれる情報を、各モニタの表示域にマップする役割を果たす。ゆえに、ソフトウェアアプリケーションは、一部の情報が複数のモニタにまたがって表示され得ることを全く知らずに単一の表示面に書込みを行い、図形表示サブシステムが情報の適当なモニタ上への配置を処理する。残念ながら、この手法は、コンピュータシステムに接続された複数のモニタ間に存在する差異および条件を認識し、またはそれを補償することができない。その結果、これらの差異および条件を補償することができないことから生じる表示異常が、可能であれば、ユーザの想像によって解決されなければならなくなる。以下の例に、これらの表示異常をより明確に示す。
【０００６】
図２Ａは、１本の横線(horizontal line)２０２が引かれている例示的表示面２００を示す図である。表示面(display surface)２００は、同じ画面解像度(screen resolution)を持つマルチモニタシステム中の２つのモニタに対応する、表示域２０４および表示域２０６という２つの表示領域を包含する。図からわかるように、ソフトウェアアプリケーションは、表示面２００上に連続した横線としてライン２０２をレンダリングしており、どのような表示領域についかは知らない可能性が非常に高い。当然ながら、コンピュータユーザは、ライン２０２が連続した横線として表示されることを期待する。しかしながら、モニタ間の差異を識別し、それを補償しようする努力がなされないため、これはいつもそうなるとは限らない。
【０００７】
図２Ｂは、前述の横線２０２を表示する例示的マルチモニタコンピュータシステム１００の図である。表示域２０４および２０６（図２Ａ）は、モニタ１０４および１０６の表示域に対応する。図からわかるように、モニタ１０４と１０６の間で画面解像度(screen resolution)が同じであるときでさえも、モニタ１０４と１０６の実際の物理的寸法の差異、モニタの物理的位置合わせ(physical alignment)、およびモニタの離間距離(separation of monitors)が原因で、ライン２０２は、マルチモニタコンピュータシステム１００上に、視覚的には、線分２０８および線分２１０という２つの別個のラインとして表示される。明らかに、ユーザ／見る人が、ソフトウェアアプリケーションが１本のライン２０２をレンダリングしていることを知らない限り、ユーザ／見る人が線分２０８および２１０をライン２０２のセグメントであると解釈する可能性は低い。
【０００８】
ラインセグメント２０８およびラインセグメント２１０が実際にはライン２０２のセグメントであるかどうかに関するユーザの混乱を招く別の要因は、ラインセグメント２１０が、ラインセグメント２０８よりも太く描かれているように見えることである。これは、画素解像度の差異によるものである。前述のように、モニタ１０４およびモニタ１０６は同じ画面解像度、すなわち表示画素数を有するものと想定される。例えば、モニタ１０４とモニタ１０６の両方が１２８０×１０２４の画面解像度を持つことが考えられ、それは、各画素行に１２８０画素があり、各画素列に１０２４画素があることを意味する。しかしながら、画面解像度が同じであっても、モニタ１０４とモニタ１０６は異なる物理的サイズのものである。ゆえに、同じ画面解像度を持つ場合は、それらのモニタの画素解像度は異ならなければならない。言い換えると、モニタ１０４上の画素解像度、すなわち各画素のサイズまたは寸法は、モニタ１０６上の画素解像度より小さい。したがって、ライン２０２が表示面２００上に一定の画素の太さを用いて描かれている場合でも、ラインセグメント２０８の見かけ上の／視覚的太さは、画素解像度の差異にために、ラインセグメント２１０の見かけ上の視覚的太さより太くなる。
【０００９】
図３Ａ〜図３Ｃは、マルチモニタシステムにおける差異および条件に対処できないときに生じる別の表示問題を示す。より詳細には、図３Ａには、モニタ１０４および１０６の表示域２０４および２０６を包含する表示面２００が示されている。この場合もやはり、各モニタの画面解像度は同じであると想定される。表示面２００上で、ソフトウェアアプリケーションは、２本の斜線を、それらの斜線の第１のセグメント３０２は表示域２０４に含まれ、それらの斜線の第２のセグメント３０４は表示域２０６に含まれるようにレンダリングしている。
【００１０】
図３Ｂは、モニタ１０４およびモニタ１０６の表示域上に表示された斜線を示す図である。図からわかるように、モニタの物理的離間距離(physical separation)、モニタの整列(alignment)、モニタの物理的サイズの差異、および画素解像度(pixel resolution)の差異のために、ユーザが、斜線の第１のセグメント３０２が、斜線の第２のセグメント３０４と整列するかどうか、またはどのように整列するか思い描くことは困難である。実際、前述の差異を補償することができないために、ユーザが、２本の斜線の第１のセグメント３０２および第２のセグメント３０４を、図３Ｃの表示面２００に示すように、表示面２００上に表示された３本の斜線の２つのセグメントであると思い描く可能性が極めて高い。
【発明の開示】
【発明が解決しようとする課題】
【００１１】
したがって、求められているのは、マルチモニタコンピュータシステムにおけるモニタ間の差異を決定して、表示面２００にレンダリングを行うコンピュータシステム上のソフトウェアアプリケーションがそのような差異を補償することができるようにするシステムおよび方法である。本発明は、従来技術に見られる上記その他の問題に対処するものである。
【課題を解決するための手段】
【００１２】
本発明の諸態様によれば、マルチモニタシステムにおけるモニタ間の表示差異(display difference)および離間距離(separation)を決定する方法が提示される。第１のラインは、第１のモニタと第２のモニタにまたがって表示される。第１のラインは、第１のラインの第１のセグメントが第１のモニタに表示され、第１のラインの第２のセグメントが第２のモニタに表示されるように表示される。第１のラインの２つのセグメントの一方は、ユーザにより、第１のラインの方向に対して垂直に位置変更可能である。第１のラインの位置変更可能なセグメント(repositionable segment)の整列位置(aligned position)は、ユーザが、第１のラインの他方のセグメントの方向に視覚的に整列されるように第１のラインの位置変更可能なセグメントを位置変更した後に得られる。第１のモニタを基準とした第２のモニタの物理的位置合わせ(physical alignment)は、第１のラインの位置変更可能なセグメントの整列位置と、その最初の表示位置(displayed position)との差異に従って決定される。
【００１３】
本発明の別の態様によれば、マルチモニタ表示システムにおけるモニタ間の表示差異および離間距離を決定する方法が提示される。第１のラインは、第１のモニタと第２のモニタにまたがって表示される。第１のラインは、第１のラインの第１のセグメントが第１のモニタに表示され、第１のラインの第２のセグメントが第２のモニタに表示されるように表示される。第１のラインの２つのセグメントの一方は、ユーザにより、第１のラインの方向に対して垂直に位置変更可能である。第１のラインの位置変更可能なセグメントの整列位置は、ユーザが、第１のラインの他方のセグメントの方向に視覚的に整列されるように第１のラインの位置変更可能なセグメントを位置変更した後に得られる。第２のモニタの第１のモニタを基準として物理的位置合わせは、第１のラインの位置変更可能なセグメントの整列位置とその最初の表示位置との差異に従って決定される。第２のラインが第１のモニタと第２のモニタにまたがって表示される。第２のラインは、第１のラインと平行して表示される。第２のラインの２つのセグメントの一方は、ユーザにより、第２のラインの方向に対して垂直に位置変更可能である。ユーザが、第２のラインの位置変更可能なセグメントを、第２のラインの第１のセグメントの方向に視覚的に整列されるように位置変更した後で、第２のラインの位置変更可能なセグメントの整列位置が得られる。第１のモニタの画素解像度に対する第２のモニタの画素解像度は、第２のラインの位置変更可能なセグメントの整列位置とその最初の表示位置との差異に従って決定される。くさび形が第１のモニタと第２のモニタにまがって表示される。くさび形の第１のセグメントは第１のモニタに表示され、くさび形の第２のセグメントは第２のモニタに表示される。くさび形の２つのセグメントの一方は、ユーザにより位置変更可能である。ユーザが、くさび形の位置変更可能なセグメントを、くさび形の第１のセグメントと視覚的に連続するように位置変更した後で、くさび形の位置変更可能なセグメントの再配置位置が得られる。次いで、位置変更可能なセグメントの再配置位置とその最初の表示位置との差異に従って、第１のモニタと第２のモニタ間のオクルージョン領域が決定される。
【００１４】
本発明の別の態様によれば、システム上の複数のモニタ間の表示差異および離間距離を決定するコンピュータシステムが提示される。システムは、コンピューティングデバイスからの情報を表示する第１のモニタ、および情報を表示する第１のモニタに結合されたコンピューティングデバイスを備える。コンピューティングデバイスは、コンピュータシステムに第２のモニタが付加されると、第１のラインを、第１のモニタと第２のモニタにまたがって表示するように構成される。第１のラインの第１のセグメントは第１のモニタに表示され、第１のラインの第２のセグメントは第２のモニタに表示され、第１のラインの２つのセグメントの一方は、ユーザにより、第１のラインの方向に対して垂直に位置変更可能である。コンピューティングデバイスは、ユーザが第１のラインの位置変更可能なセグメントを第１のラインの他方のセグメントの方向に視覚的に整列されるように位置変更した後で、第１のラインの位置変更可能なセグメントの整列位置を得る。次いで、コンピューティングデバイスは、第２のモニタの第１のモニタを基準として物理的位置合わせを、第１のラインの位置変更可能なセグメントの整列位置とその最初の表示位置との差異に従って決定する。
【発明を実施するための最良の形態】
【００１５】
本発明の前述の態様およびこれに付随する利点の多くは、以下の詳細な説明を、添付の図面と併せて参照することによりそれらがより理解されれば、より容易に評価されるであろう。
【００１６】
以下の説明では、モニタ１０４および１０６が水平に整列されている、図１の例示的マルチモニタコンピュータシステムに関して説明するが、本発明の諸態様は、モニタが垂直、または対角線上に整列されるときにも同様に適用され得ることを理解すべきである。同様に、本発明を、２つのモニタだけを備えるマルチモニタコンピュータシステムに関して説明するが、これは例示のためにすぎず、本発明を限定するものであると解釈すべきではない。本発明は、好適には、２つを上回るコンピュータモニタを備えるマルチモニタコンピュータシステムに適用される。さらに、本発明を、マルチモニタに接続された典型的なデスクトップコンピュータシステム上で実施されるものとして説明するが、本発明は、それだけに限らないが、ラップトップコンピュータ、タブレットコンピュータ、ＰＤＡなどのハンドヘルドコンピューティングデバイス、ミニコンピュータおよびメインフレームコンピュータ、ビデオおよびメディアプレーヤ、ならびに、テレビ画面、ビデオウォールといった他の表示装置を含む、複数のモニタに接続された任意のベースシステムに適用可能であることを理解すべきである。
【００１７】
多くのコンピュータシステムは、複数のモニタが表示面２００を形成する際に、それらの間の関係について極めて単純化された理解を有することを、当分野の技術者は理解するであろう。より詳細には、マルチモニタに接続された多くのコンピュータシステムは、それらが表示面２００に関連する際に、表示域の配置、画面解像度、および整列について知っている。例えば、図２Ａを参照すると、コンピュータシステム１００は、表示域(display area)２０４が、表示域２０６の左側に隣接しており（配置:arrangement）、それらの表示域が、それらの表示域の上端に沿って整列されており（整列:alignment）、それらの表示域が同じ画面解像度を有していることを知っているはずである。整列、配置、および時には画面解像度は、通常、表示面２００に関連してユーザによって設定される。この「知られている(known)」情報にもかかわらず、前述のように、複数のモニタにまたがる情報の視覚表示に影響を及ぼす多くの差異がある。
【００１８】
マルチモニタコンピュータシステムにおけるモニタ間の表示差異(display difference)を適正に補償(compensate)するためには、それらの差異および条件が識別され、後で使用するために、少なくとも一時的に格納されなければならない。図４Ａおよび図４Ｂは、コンピュータシステムにおけるモニタ１０４と１０６の間の表示差異を決定する本発明の１つのステップを示す、図１の例示的マルチモニタコンピュータシステム１００の図である。より詳細には、マルチモニタコンピュータシステムにおけるモニタ間の差異を決定する第１のステップとして、一本のラインが、モニタ１０４の表示域とモニタ１０６の表示域の両方に含まれるように表示される。図４Ａに関して、１本の横線が、破線４０２で表すように、モニタ１０４および１０６の基礎をなす表示面２００上にレンダリングされる。前述のように、この横線は、モニタ１０４および１０６上に、ラインセグメント４０４およびラインセグメント４０６という２つの別個のラインセグメントとして表示されるように見える。
【００１９】
本発明によれば、ラインセグメント４０６など、これらのラインセグメントの一方は、ユーザにより位置変更される。さらに、本発明の一態様によれば、横線を表示することに加えて、位置変更アイコン４０８が、位置変更可能なラインセグメント４０６と共にモニタ上に表示される。次いで、ユーザは、位置変更アイコン４０８を使って位置変更可能なラインセグメント、この場合はラインセグメント４０６とやりとりして、位置変更可能なラインセグメント４０６を、それが他方のモニタ１０４上の他方のラインセグメント４０２と視覚的に整列されて見えるように位置変更する。図４Ｂは、ラインセグメント４０６をラインセグメント４０４と視覚的に整列するように位置変更した結果を示す。理想的には、位置変更可能なラインセグメント４０６の軸が、他方のラインセグメント４０４の軸と整列すべきである。
【００２０】
ユーザが２つのラインセグメントを視覚的に整列させた後で、システムは、ラインセグメント４０６の位置変更された場所を得る。ラインセグメント４０６の元の座標と位置変更された座標の間の差異に基づき、システムは、モニタ１０４と１０６の間の物理的位置合わせを決定する。この物理的位置合わせは、前述の内部表示面上の表示域整列とは異なることを当分野の技術者は理解するであろう。具体的には、表示域２０４が表示面２００のために表示域２０６と整列されたとしても、図４Ｂには、モニタ１０４の表示域２０４が、モニタ１０６の表示域２０６と物理的に整列されていないことが示されている。
【００２１】
モニタ１０４と１０６の間の物理的位置合わせ(physical alignment)を決定した後、２つのモニタ１０４および１０６上に表示された視覚的に整列された横線４０２をそのままにして、システムは、次に、モニタ１０４と１０６の間の画素解像度の差異の決定に移る。図５Ａに示すように、システムは、第１のライン４０２と平行に、モニタ１０４と１０６にまたがる第２のラインを表示することによってこれを達成する。システムは、モニタ１０４と１０６の間の相対的物理的位置合わせを決定しただけで、まだ、それらのモニタの相対的画素解像度を決定していないため、ライン５０２は、モニタ１０４とモニタ１０６にまたがって表示されるときに、しばしば、やはり２つの別個のラインセグメント、ラインセグメント５０４とラインセグメント５０６として表示される。
【００２２】
図４に関連して前述したライン４０２と全く同様に、ライン５０２のラインセグメントの一方はユーザにより位置変更され得る。この例では、ラインセグメント５０６が位置変更可能である。さらに、システムは、やはり、ラインセグメント５０６を移動させるために位置変更アイコン(reposition icon)４０８を表示する。第２のライン５０２および位置変更アイコン４０８を表示した後、ユーザは、ラインセグメント５０６を、その軸が、図５Ｂに示すように、ラインセグメント５０４の軸と視覚的に整列されるように整列させる。
【００２３】
ユーザがラインセグメント５０６をラインセグメント５０４と整列させた後、システムは、表示された座標と位置変更された座標の差異を得る。この情報を用い、それを表示面２００上の表示域の配置およびサイズに関してシステムによって以前に「知られている」情報、および以前に決定された物理的位置合わせと組み合わせて、システムは、第２のモニタ１０６の第１のモニタ１０４に対する画素解像度を決定することができる。
【００２４】
第２のモニタ１０６の画素解像度(pixel resolution)を決定する利点の１つは、２つのモニタ間におけるラインの太さの見かけ上の不一致に対処できることである。例えば、モニタ１０６上の画素解像度がモニタ１０４上の画素解像度の太さの２倍である場合、モニタ１０４上に２画素の太さのラインを表示するとき、このラインはモニタ１０６上に、見かけ上２画素の太さで連続され、それによって、それらのラインが両モニタにまたがって一定の太さを維持するように差異を補償することができるはずである。図５Ａに示すように、ラインセグメント５０６をラインセグメント５０４と整列させる前には、ラインセグメント５０６は、ラインセグメント５０４より実質上太く見えるが、図５Ｂで、ラインセグメント５０６をラインセグメント５０４と整列させた後には、両ラインセグメントとも同じ太さで表示される。一実施形態によれば、ライン５０６のラインの太さは、ユーザがラインセグメント５０６をラインセグメント５０４に合わせて位置変更／整列させる際に変更される。
【００２５】
モニタ１０６のモニタ１０４に対する整列を決定し、モニタ１０６のモニタ１０４に対する画素解像度を決定した後、システムは、続いてモニタ間の物理的離間距離、より正確には、表示域の物理的離間距離を決定する。前述のように、別のモニタがコンピュータシステムに付加されると、多くのシステムは、内部では、その第２のモニタを、第１のモニタに連続するものとして処理する。言い換えると、表示面２００に関連して図２Ａに示すように、モニタ１０２の表示域２０２とモニタ１０６の表示域２０６の間には「すき間(gap)」がない。しかしながら、当分野の技術者は理解するように、ほぼすべてのモニタは何らかの種類のフレームに入れられており、モニタ１０４とモニタ１０６のフレームは、これらのモニタの表示面の間の物理的離間距離(physical separation)を作り出す。さらに、モニタ１０４と１０６の間の任意の実際の物理的離間距離は、表示域２０４と２０６の間の離間距離をさらに増大させる。
【００２６】
図３Ａ，図３Ｂ，図３Ｃに関連して前述したように、２つ以上のモニタ、具体的には、モニタの表示域の間の物理的離間距離は、しばしば、ユーザに、複数のモニタにまたがって表示される情報を誤って解釈させる。ゆえに、図６Ａおよび図６Ｂを参照すると、モニタ１０４と１０６の表示域の間の物理的離間距離を補償するために、システムは、２つのモニタにまたがるくさび形または三角形を表示させる。図６Ａに見られるように、くさび形６０２は、モニタ１０４に表示されるセグメント６０４とモニタ１０６に表示されるセグメント６０６を有する。前述の横線と同様に、説明のために、くさび形６０２は、それが切れ目のない連続した表示域に表示された場合にどのように見えるか示すために、一部が破線で表示されている。
【００２７】
本発明の諸態様によれば、くさび形６０２の一セグメントは位置変更され得る。図６Ａに示すように、第２のモニタ１０６上に表示される第２のセグメント６０６は、位置変更可能である。また図６Ａには、ユーザがくさび形６０２の第２のセグメント６０６を位置変更するのを支援する位置変更アイコン４０８も示されている。この例では、ユーザは、図６Ｂに表示されるように、くさび形が視覚的に１つの連続したくさび形に見えようになるまで、くさび形の他方のセグメント６０４に向かってくさび形６０２の一セグメント６０６を位置変更する。第２のモニタ１０６から「押し」やられるくさび形６０２の位置変更可能なセグメント６０６の任意のセグメントは非表示のままとされる。ゆえに、ユーザが視覚的に連続して見えるようにくさび形６０２を位置変更すると、くさび形６０２のかなりのセグメントが、モニタ１０４と１０６の物理的離間距離と、モニタの表示域を取り囲むフレーム両方の物理的離間距離の点での表示域の離間距離によって、隠され、または遮蔽される。
【００２８】
ユーザがくさび形を連続するように見せるためにくさび形６０２の第２のセグメント６０６を位置変更した後、システムは、くさび形の最初に表示された座標と位置変更された座標の間の差異を得る。この差異を用いて、システムは、オクルージョン領域の相対的寸法、すなわち、表示域の物理的離間距離を決定することができる。
【００２９】
図６Ａおよび図６Ｂの例には、モニタ１０４と１０６の表示域間のオクルージョン領域を決定するためのくさび形の表示／使用が説明されているが、これは例示のためにすぎず、本発明を限定するものと解釈すべきではない。モニタ間のオクルージョン領域を決定するには、楕円、三角形、多角形など任意の数の形が使用され得る。くさび形が連続して表示されるとユーザが視覚化しやすいため、好ましくは、くさび形または三角形が使用される。
【００３０】
当分野の技術者は理解するように、状況によっては、第２のモニタ１０６が第１のモニタ１０４に対して回転され得る。例えば、中にはユーザが実際に回転させることのできるモニタもあり、単に水平でない面上に配置され得るモニタもある。図７Ａに、モニタ１０６がモニタ１０４に対してわずかに回転されている例示的マルチモニタコンピュータシステム１００を示す。２つのモニタ１０４と１０６の間の表示差異を決定する前述のステップのどれもまだ処理されていないものと想定すると、モニタ１０４と１０６にまたがって表示される一本の横線７０２は、２本の別個のラインセグメント７０４および７０６として表示される。また、ライン７０２は水平に表示され、モニタ１０６は回転されているため、ラインセグメント７０６は、モニタ１０６の回転を反映し、ユーザがこれら２本のラインセグメントを一本のライン７０２の一部であると解釈する可能性は低い。
【００３１】
モニタが回転されるときには、しばしば、図４Ａ〜４Ｂ，図５Ａ〜５Ｂ，図６Ａ〜６Ｂに関連して前述したような他の差異を識別しようとする前に、まずモニタ間の相対的回転を決定し、その回転を補償した方がよいことがある。この理由は、ラインセグメントの軸を整列させる際には、ユーザが、モニタの回転を考慮に入れる必要がなければ、ラインセグメントを整列させるのがより容易だからである。
【００３２】
第２のモニタ１０６の第１のモニタ１０４に対する回転を決定するために、２つのモニタにまたがってライン７０２が表示される。前述のその他のステップと同様に、ラインセグメントの一方は位置変更可能である。この場合、セグメント７０６が位置変更可能である。ライン７０２を表示するのに加えて、位置変更アイコン(reposition icon)４０８も表示される。しかしながら、前述のステップとは対照的に、このラインセグメントは、アンカポイント(anchor point)７０８の周りを回転させることしかできない。その場合、ユーザは、ラインセグメント７０６がラインセグメント７０４と平行になる、すなわち、図７Ｂに示すように、ラインセグメント７０６の軸がラインセグメント７０４の軸と平行になるまでラインセグメント７０６を回転させる。
【００３３】
ユーザがラインセグメント７０６をラインセグメント７０４に対して平行になるように回転させた後、システムは、回転量を得、それを使ってモニタ１０６のモニタ１０４に対する相対的回転を決定する。
【００３４】
他の前述のステップを実行する前に、モニタ１０６のモニタ１０４に対する相対的回転を決定することが望ましいと考えられるが、第１のステップとして回転を決定することは必須ではない。例えば、モニタ１０６が図７Ａに示すように回転された場合、ラインセグメント７０４および７０６を（図４Ａ〜４Ｂに関して前述したように）整列させることは、ラインセグメント７０６の回転を変更すること以外に、アンカポイント７０８がラインセグメント７０４の軸上に配置されるようにラインセグメント７０６を位置変更することを必然的に伴うはずである。
【００３５】
前述のシステムおよび方法は、水平に整列された複数のモニタの状況でなされているが、これは例示のためにすぎず、本発明を限定するものと解釈すべきではない。本発明の一態様によれば、本発明は、任意の向きに整列された複数のモニタにも適用され得る。例えば、２つのモニタが（表示面に関して）垂直に整列される場合、２つのモニタにまたがる横線を使用するのではなく、縦線が使用される。同様に、２つのモニタが（表示面に関して）対角線上に整列されるときには、斜線が使用され得るであろう。
【００３６】
さらに、前述のシステムおよび方法は、２つのモニタ間の差異を決定することに関して説明されている。これもまた、例示のためにすぎず、本発明を限定するものと解釈すべきではない。システムが３つ以上のモニタを含み得ることはますます頻繁に見られるようになっている。すべてのモニタの間の差異を識別するためには、システムは、単に、第１のモニタ（おそらくは基本モニタ）を選択し、それと他の１つのモニタの間の差異を決定する。それらの差異が識別された後で、別のモニタと最初の２つの処理済モニタの一方の間の差異が識別される。このプロセスが、すべてのモニタの間の差異が識別されるまで続く。
【００３７】
２つを上回るモニタの間での差異の識別をより適切に説明するために、図８に、表示モニタ間の差異が識別され得る順序を示すのに適した例示的マルチモニタコンピュータシステム８００の図を示す。第１のモニタが選択されなければならない。任意のモニタが第１のモニタとして選択され得るが、この例では、モニタ８０４がコンピュータ８０２に接続されているため、これが第１のモニタとして選択される。図４Ａ〜４Ｂ，図５Ａ〜５Ｂ，図６Ａ〜６Ｂ，図７Ａ〜７Ｂの説明と一致するように、モニタ８０８が第２のモニタとして選択され、システムは、丸１（数字１を丸印で囲んだもの）で示すように、これらのモニタ間の差異を決定する。この第１の場合には、モニタ８０４とモニタ８０８両方が処理されている。
【００３８】
モニタ８０４と８０８を処理した後、システムは、丸２（数字２を丸印で囲んだもの）で示すように、１つの処理済みモニタに対して処理するために１つの未処理のモニタを選択する。この例では、システムは、モニタ８０４に対して処理するためにモニタ８１０を選択し、２つのモニタ間の、特に、モニタ８１０のモニタ８０４に対する表示差異を決定する。これらのモニタは対角線上に位置しているため、これらのモニタにまたがって表示されるラインは、横線ではなく斜線になるはずである。
【００３９】
モニタ８１０が処理されたので、次に、これを使ってシステム中の他のモニタがさらに処理され得る。ゆえに、図８に丸３（数字３を丸印で囲んだもの）で示すように、モニタ８０６がモニタ８１０に対して処理される。さらに、丸４（数字４を丸印で囲んだもの）で示すように、モニタ８１２がモニタ８０４に関して処理され、丸５（数字５を丸印で囲んだもの）で示すように、モニタ８１４がモニタ８０８に関して処理される。このようにして、すなわち、最初の２つのモニタを処理し、その後、未処理のモニタを隣接する処理済みモニタに対して処理することにより、システムは、マルチモニタコンピュータシステムにおけるモニタ上に提示される情報が、視覚的に一体化された単一の表示域として表示され得るように、すべてのモニタ間の表示差異を識別し、格納することができる。
【００４０】
図９Ａ〜図９Ｃは、マルチモニタコンピュータシステム１００におけるモニタ間の表示差異(display difference)を決定する例示的ルーチン９００の流れ図を示す。ブロック９０２から開始して、１本のラインが、マルチモニタコンピュータシステム１００における２つのモニタ、モニタ１０４と１０６にまたがって表示される。イベント９０４において、ラインがモニタにまたがって表示された後、ユーザは、図７のモニタ１０６など、第２のモニタ上のそのラインの回転可能なセグメントをアンカポイントの周りで回転させて、その回転可能なセグメントの軸を、第１のモニタ上のそのラインの第１のセグメントの軸と平行になるように整列させる。ブロック９０６において、ユーザが、回転可能なラインセグメントを、そのラインの第１のセグメントと平行になるように回転させた後、システムは、回転されたラインセグメントのその元の表示位置からの回転角を得る。この回転角を使って、ブロック９０８において、第２のモニタの第１のモニタ１０４に対する相対的回転が決定される。
【００４１】
本発明の諸態様によれば、意図的にモニタを回転させることは比較的まれであると考えられるため、モニタ１０６のモニタ１０４に対する回転を決定することは、任意選択とみなすべきであり、回転を決定するために講じられる前述のステップは、あるモニタが回転されないという仮定がなされ得るときには省略され得る。しかしながら、モニタ１０６のモニタ１０４に対する回転を決定することが不要であるとみなされる場合でも、以下で説明するように、続けてモニタの相対的整列を決定するために、やはり、１本のラインが２つのモニタにまたがって表示されなければならない。
【００４２】
モニタ１０４と１０６にまたがって表示されたライン（および、回転補正が実行された場合には互いに平行なそのラインのラインセグメント）を用いて、イベント９１０において、ユーザは、モニタ１０６上の、ラインセグメント４０６などの位置変更可能なラインセグメントの軸を、モニタ１０４上の、ラインセグメント４０４などのラインセグメントの軸と整列させる。ブロック９１２において、ユーザがモニタ１０６上の位置変更可能なラインセグメントをモニタ１０４上の対応するラインセグメントと整列させた後、位置変更可能なラインセグメントのユーザ変更位置が得られる。ブロック９１４において、位置変更可能なラインセグメントのユーザ変更位置を使って、第２のモニタ１０６の第１のモニタ１０４に対する相対的物理的位置合わせが決定される。
【００４３】
ブロック９１６において、第１のラインに平行に、第２のラインがモニタ１０４と１０６にまたがって表示される。その後、イベント９１８において、ユーザは、ラインセグメント５０６（図５）など、第２のラインの位置変更可能なラインセグメントを、モニタ１０４上の第２のラインの第１のセグメントと整列させる。ユーザが、位置変更可能なラインセグメントを他方のモニタ上の対応するラインセグメントと整列させた後、ブロック９２０において、位置変更可能なラインセグメントの新しい位置が得られる。ブロック９２２において、最初の表示位置と、位置変更可能なラインセグメントのユーザ指定位置の間の差異に基づいて、第２のモニタの、第１のモニタを基準として画素解像度が決定される。
【００４４】
ブロック９２４において、画面がクリアされ、くさび形が両モニタにまたがって表示される。イベント９２６において、ユーザは、セグメント６０６（図６）など、くさび形の位置変更可能なセグメントを、そのくさび形が、他方のモニタ上の対応するセグメントとの関連で視覚的に連続して見えるように位置変更する。ブロック９２８において、くさび形の位置変更可能なセグメントの位置が得られる。ブロック９３０において、表示位置と、くさび形の位置変更可能なセグメントのユーザ指定位置に基づいて、システムは、モニタ間のオクルージョン領域を決定する。複数のモニタにまたがる情報の視覚表示に影響を及ぼす様々な要因の値を決定した後、ブロック９３２において、決定された値が保存され、ルーチン９００が終了する。
【００４５】
本発明の諸態様によれば、決定された値および情報は、好ましくは、すべてのソフトウェアアプリケーションからアクセス可能な場所に格納される。例えば、決定された値は、ホストオペレーティングシステムによって提供され、またはそれに関連付けられたレジストリに格納される。一実施形態では、オペレーティングシステムは、追加のモニタがシステムに付加されたときに、セットアップ手順の一部として例示的方法９００を実行する。
【００４６】
本発明の一実施形態によれば、マルチモニタコンピュータシステムにおけるモニタ間の差異、およびモニタの物理的配置を決定するプロセスは、コンピュータユーザを案内して識別可能な、別々のステップを実行させるいわゆる「ウィザード」として実施される。しかしながら、本発明の代替の態様によれば、それらの別々のステップのいずれかまたはすべてを一緒に組み合わせることもできる。例えば、第２のラインが表示される前に、第１のラインを２つのモニタにまたがって表示させ、第１のラインを整列させるのではなく、２つのラインを表示させることもでき、ユーザは、単に、同じ画面上で両方のラインを整列させる。明らかに、回転差を決定することは、１本のラインの表示と同じくらい容易に２本のラインの表示とも組み合わされ得る。さらに、表示域の物理的離間距離を決定することも、２本のラインの表示と組み合わされ得る。例えば、それら２本のラインに以外に、別のくさび形も表示される。
【００４７】
図１０Ａは、「単一画面(single screen)」プロセスにおいてマルチモニタコンピュータシステムでのモニタ間の差異および条件を決定するときに使用される例示的イメージ１００を示す図である。図１０Ａに示すように、イメージ１０００は、内部に三角形１００６を有する長方形である。長方形１０００は、２つのモニタにまたがって表示されるはずの２本のライン、上線１００２と下線１００４を持つ。図１０Ｂは、単一画面セットアップで例示的マルチモニタコンピュータシステム１００上に表示される例示的イメージ１０００を示す図である。図からわかるように、イメージ１０００は、２つの別個のセグメント、セグメント１００８および１０１０として表示される。前述のプロセスに一致して、それらのセグメントの一方が位置変更可能とされ、ユーザは、ライン１００２および１００４を、それらが視覚的に整列されるように調整し、位置変更可能なセグメントを、その三角形が、オクルージョン領域によって覆い隠されるが、視覚的に連続して見えるように位置変更する。
【００４８】
当分野の技術者は、長方形中の三角形以外にも、任意の数の形が使用され得ることを理解するであろう。さらに、任意の数の個々のステップが組み合わされ得る。言い換えると、マルチモニタコンピュータシステムにおけるモニタ間の差異および条件を決定する様々な「ステップ」は、個々にも実行されるが、それらを、実施選好に従って一緒に組み合わせることもできる。
【００４９】
システムが、マルチモニタシステムにまたがって表示される情報に関する視覚的外観に影響を及ぼす前述の要因を決定し、格納した後、ソフトウェアアプリケーションは、有利には、この情報を使用することができる。しかしながら、この情報は利用可能とすべきであるが、ソフトウェアアプリケーション設計者は、そのような情報がいつどのように使用されるべきか決定しなければならない。前述のように決定された値がいつどのように使用され得るかより適切に説明するために、図１１Ａは、様々な図形オブジェクトがレンダリングされている例示的表示面２００の図を示し、図１１Ｂは、マルチモニタコンピュータシステムのモニタ間の様々な表示差異を考慮に入れた、例示的マルチモニタコンピュータシステム１００上における図１１Ａの表示面２００の図形オブジェクトの図を示す。
【００５０】
図１１Ａに示すように、例示的表示面２００は、図形イメージ１１０２、ツールバー１１０４、および棒グラフ１１０６を含む３つの図形項目を含む。明らかに、表示面２００全体が単一の表示可能領域またはモニタに対応していた場合、表示面２００上の図形項目は、図１１Ａに示すように表示される。しかしながら、マルチモニタコンピュータシステム１００では、表示面２００全体は、単一のモニタに対応し得ない。この例では、ライン１１０８は、モニタ１０４と１０６の表示域間の表示面２００の分割を特定する。図からわかるように、ライン１１０８は、表示面２００上に表示される図形項目それぞれと交差する。
【００５１】
前述のように、図１１Ｂは、図１１Ａに示す表示面２００上にレンダリングされた図形項目を表示する例示的マルチモニタコンピュータシステム１００を示す図である。図１１Ｂに示すように、これらの図形項目をレンダリングした（１つまたは複数の）ソフトウェアアプリケーションは、決定された表示差異を異なるやり方で利用している。例えば、図形イメージ１１０２に関していえば、この図形イメージをレンダリングしたアプリケーションは、視覚的連続が重要であると判断しており、したがって、この図形イメージのかなりのセグメントを、モニタ１０４と１０６の間の物理的離間距離、およびモニタのそれぞれを取り囲む境界を含むオクルージョン領域の後に表示している。ソフトウェアアプリケーションは、さらに、図形イメージ１１０２を、モニタ１０６上に含まれるこのイメージのセグメントが、モニタ１０４上に含まれるセグメントと同じ大きさに調整されるようにレンダリングしている。ゆえに、図形イメージ１１０２は、この図形イメージのかなりのセグメントがオクルージョン領域によって隠されてはいるが、視覚的に正しく、連続しているように見える。
【００５２】
ツールバー１１０４に関して、ソフトウェアアプリケーションは、ツールバーを２つのモニタにまたがって表示させず、ツールバー１１０４全体を一方または他方のモニタ上にレンダリングすることが最も有利であると判断することができる。図１１Ｂに示すように、ソフトウェアアプリケーションは、ツールバー１１０４全体がモニタ１０４上に留まるように、ツールバー１１０４をすばやくわずかに左側に合わせている。
【００５３】
棒グラフ１１０６に関して、ソフトウェアアプリケーションは、この棒グラフをモニタ１０４と１０６にまたがってレンダリングすることが全く許容可能であると判断し、各セグメントをモニタ上に同様の大きさで表示させることができる。しかしながら、ソフトウェアアプリケーションは、棒グラフ１１０６の情報の一部がオクルージョン領域の後に隠されることは不都合なはずであると判断することができ、ゆえに、この棒グラフは「切断され」、２つのモニタ上に表示される。さらに、ソフトウェアアプリケーションは、棒グラフ１１０６は一般にモニタ１０４と１０６にまたがって表示され得るが、１本の棒の半分ずつが両方のモニタに表示されることは不都合なはずであると判断することができる。したがって、棒グラフ１１０６は、「分割」が棒グラフ中の棒と棒の間で行われ、棒グラフがわずかに左に移動されるように両モニタ上に分割される。
【００５４】
以上、好ましい実施形態を含む本発明の様々な実施形態を図示し、説明したが、本発明の精神および範囲を逸脱することなく、本発明に様々な変更が加えられ得ることが理解されるであろう。
【図面の簡単な説明】
【００５５】
【図１】例示的マルチモニタコンピュータシステム１００を示す図である。
【図２Ａ】１本の横線がレンダリングされている例示的表示面を示す図である。
【図２Ｂ】図２Ａの横線を表示する図１の例示的マルチモニタコンピュータシステムを示す図である。
【図３Ａ】２本の斜線がレンダリングされている図２の例示的表示面を示す図である。
【図３Ｂ】図３Ａの２本の斜線を表示する図１の例示的マルチモニタコンピュータシステムを示す図である。
【図３Ｃ】図３Ｂに示す斜線の典型的なユーザ知覚を示す図である。
【図４Ａ】マルチモニタコンピュータシステムにおけるモニタ間の表示差異を決定する際の１ステップを示す図１の例示的マルチモニタコンピュータシステム構成図である。
【図４Ｂ】マルチモニタコンピュータシステムにおけるモニタ間の表示差異を決定する際の１ステップを示す図１の例示的マルチモニタコンピュータシステム構成図である。
【図５Ａ】マルチモニタコンピュータシステムにおけるモニタ間の表示差異を決定する際の別のステップを示す図１の例示的マルチモニタコンピュータシステム構成図である。
【図５Ｂ】マルチモニタコンピュータシステムにおけるモニタ間の表示差異を決定する際の別のステップを示す図１の例示的マルチモニタコンピュータシステム構成図である。
【図６Ａ】マルチモニタコンピュータシステムにおけるモニタ間の表示差異を決定する際の別のステップを示す図１の例示的マルチモニタコンピュータシステム構成図である。
【図６Ｂ】マルチモニタコンピュータシステムにおけるモニタ間の表示差異を決定する際の別のステップを示す図１の例示的マルチモニタコンピュータシステム構成図である。
【図７Ａ】マルチモニタコンピュータシステムにおけるモニタ間の表示差異を決定する際の別のステップを示す図１の例示的マルチモニタコンピュータシステム構成図である。
【図７Ｂ】マルチモニタコンピュータシステムにおけるモニタ間の表示差異を決定する際の別のステップを示す図１の例示的マルチモニタコンピュータシステム構成図である。
【図８】表示モニタ間の差異が識別され得る順序を示すのに適した例示的マルチモニタコンピュータシステムを示す図である。
【図９Ａ】マルチモニタコンピュータシステムにおけるモニタ間の表示差異を決定する例示的ルーチンを示す流れ図である。
【図９Ｂ】マルチモニタコンピュータシステムにおけるモニタ間の表示差異を決定する例示的ルーチンを示す流れ図である。
【図９Ｃ】マルチモニタコンピュータシステムにおけるモニタ間の表示差異を決定する例示的ルーチンを示す流れ図である。
【図１０Ａ】単一画面プロセスにおいてマルチモニタコンピュータシステムでのモニタ間の差異および条件を決定するときに使用される例示的イメージを示す図である。
【図１０Ｂ】単一画面プロセスにおいて例示的マルチモニタコンピュータシステム上に表示される図１０Ａの例示的イメージを示す図である。
【図１１Ａ】様々な図形オブジェクトがレンダリングされている例示的表示面を示す図である。
【図１１Ｂ】マルチモニタコンピュータシステムのモニタ間の様々な表示差異を考慮に入れたときに例示的マルチモニタコンピュータシステム上に表示される図１１Ａの図形オブジェクトを示す図である。
【図１】
2006039540.tif 000003
【図２Ａ】
2006039540.tif 000004
【図２Ｂ】
2006039540.tif 000005
【図３Ａ】
2006039540.tif 000006
【図３Ｂ】
2006039540.tif 000007
【図３Ｃ】
2006039540.tif 000008
【図４Ａ】
2006039540.tif 000009
【図４Ｂ】
2006039540.tif 000010
【図５Ａ】
2006039540.tif 000011
【図５Ｂ】
2006039540.tif 000012
【図６Ａ】
2006039540.tif 000013
【図６Ｂ】
2006039540.tif 000014
【図７Ａ】
2006039540.tif 000015
【図７Ｂ】
2006039540.tif 000016
【図８】
2006039540.tif 000017
【図９Ａ】
2006039540.tif 000018
【図９Ｂ】
2006039540.tif 000019
【図９Ｃ】
2006039540.tif 000020
【図１０Ａ】
2006039540.tif 000021
【図１０Ｂ】
2006039540.tif 000022
【図１１Ａ】
2006039540.tif 000023
【図１１Ｂ】
2006039540.tif 000024
【外国語明細書】
2006039540000001.pdf