(57)【要約】【課題】ウィンドウの選択を容易にする。【解決手段】複数のディスプレイに分かれて表示されている複数のウィンドウの中から、オブジェクトの移動先となるウィンドウを選択する方法である。前記オブジェクトの移動に係る入力操作の起点と操作点との間の相対的な距離と前記起点に対する前記操作点の方向に対応する領域に存在するウィンドウを特定し、特定したウィンドウを表す移動先候補アイコンを表示する。【選択図】図２
2018081551.tif 000002
【特許請求の範囲】
【請求項１】
複数のディスプレイに分かれて表示されている複数のウィンドウの中から、オブジェクトの移動先となるウィンドウを選択する操作中に、
前記オブジェクトの移動に係る入力操作の起点と操作点との間の相対的な距離と前記起点に対する前記操作点の方向に対応する領域に存在するウィンドウを特定し、特定したウィンドウを表す移動先候補アイコンを表示する
ことを特徴とするユーザインターフェース方法。
【請求項２】
前記移動先候補アイコンを、前記起点を挟んで、特定したウィンドウと反対側に表示する
ことを特徴とする請求項１に記載のユーザインターフェース方法。
【請求項３】
前記操作点が前記移動先候補アイコン上にあり、且つ、前記操作点の移動を終了する操作が行われた場合に、前記オブジェクトを、前記移動先候補アイコンに対応するウィンドウに格納する
ことを特徴とする請求項１に記載のユーザインターフェース方法。
【請求項４】
前記オブジェクトの移動に係る入力操作の起点と操作点との間の相対的な距離と前記起点に対する前記操作点の方向に対応する領域に存在するディスプレイを特定し、特定したディスプレイを識別するディスプレイ番号を選択可能に表示する
ことを特徴とする請求項１に記載のユーザインターフェース方法。
【請求項５】
前記操作点の移動を終了する終了操作が行われた場合、前記終了操作が行われた前記移動先候補アイコンの周辺、又は、前記移動先候補アイコン内での位置を算出し、
前記位置に対応するウィンドウにおける位置を特定し、前記オブジェクトを特定した位置に配置する
ことを特徴とする請求項１に記載のユーザインターフェース方法。
【請求項６】
複数のディスプレイと接続されている情報処理装置であって、
前記複数のディスプレイに分かれて表示されている複数のウィンドウの中から、オブジェクトの移動先となるウィンドウを選択する操作中に、
前記オブジェクトの移動に係る入力操作の起点と操作点との間の相対的な距離と前記起点に対する前記操作点の方向に対応する領域に存在するウィンドウを特定する特定部と、
特定したウィンドウを表す移動先候補アイコンを表示する表示部を、備える
ことを特徴とする情報処理装置。
【請求項７】
複数のディスプレイと、
前記複数のディスプレイと接続されている情報処理装置と、を含み、
前記情報処理装置は、
前記複数のディスプレイに分かれて表示されている複数のウィンドウの中から、オブジェクトの移動先となるウィンドウを選択する操作中に、前記オブジェクトの移動に係る入力操作の起点と操作点との間の相対的な距離と前記起点に対する前記操作点の方向に対応する領域に存在するウィンドウを特定し、前記複数のディスプレイ中の前記オブジェクトを表示しているディスプレイに特定したウィンドウを表す移動先候補アイコンを表示する
ことを特徴とする情報処理システム。
【請求項８】
複数のディスプレイに分かれて表示されている複数のウィンドウの中から、オブジェクトの移動先となるウィンドウを選択する操作中に、
前記オブジェクトの移動に係る入力操作の起点と操作点との間の相対的な距離と前記起点に対する前記操作点の方向に対応する領域に存在するウィンドウを特定し、特定したウィンドウを表す移動先候補アイコンを表示する、処理をコンピュータに実行させる
ことを特徴とする情報処理プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザインターフェースに関する。
【背景技術】
【０００２】
近年、移動通信端末の普及やクラウド技術、通信技術の発展により、オフィスの自席で作成した資料を会議の場に持ち込み、プロジェクタなどで大きく映したり、大画面端末のタッチパネル操作で編集したりすることが簡単にできるようになってきている。
【０００３】
図１は、空間を使用したユーザインターフェースの例を説明する図である。複数の表示機器を連携させ、複数の表示画面を１つの大きな画面として利用可能に提供するユーザインターフェースが知られている。図１は、空間（壁とテーブル）を表示画面として利用するケースの例である。
【０００４】
壁画面１１０は、プロジェクタにより壁に映された表示画面である。壁画面１１０には、例えば、アプリ（図１では、模造紙というアプリ）のウィンドウ１１１ａ、１１１ｂが表示される。テーブル画面１２０は、プロジェクタによりテーブルに移された表示画面である。テーブル画面１２０において、ユーザは、テーブル画面１２０上にあるデジタル付箋（以下、カードと称す）に専用のペンなどを用いてメモを取ることができる。
【０００５】
壁画面１１０とテーブル画面１２０は、連携して１つの表示画面として利用可能であり、壁画面１１０の右端とテーブル画面１２０の上端が接続（連携）しているものとする。そのため、テーブル画面１２０でメモを取ったカードをドラッグ（選択）して飛ばす（移動させる動作）をユーザがすることで、カードは、矢印ａに示すように、テーブル画面１２０の上端から壁画面１１０の右端を通り壁画面１１０の画面内に移動する。カードは、ユーザの操作による飛ばす動作の慣性に従って移動する。ここで、ユーザの操作により飛ばされたカードは、例えば、はじめに重なったウィンドウに格納される。この場合、矢印ａに示すように飛ばされたカードは、ウィンドウ１１１ｂに格納される。一方、矢印ｂに示すように、ウィンドウ１１１ｂがカードとはじめに重なるウィンドウであるため、ウィンドウ１１１ｂを跨いでウィンドウ１１１ａにカードを送ることはできない。
【０００６】
ここで、各アプリは、コンピュータなどとデータの共有が可能である。そのため、ユーザは、ウィンドウ１１１ｂに格納したカードに記載したメモを、アプリをインストールしたコンピュータから閲覧可能である。
【０００７】
複数の画面からウィンドウを表示したい画面を指示し、その画面にウィンドウを表示することで、画面選択の操作負担を軽減する技術が知られている（例えば、特許文献１を参照）。
【０００８】
選択されたオブジェクトが第１のディスプレイと第２のディスプレイの境界に対向する第１のディスプレイ上の端部に移動された場合、オブジェクトを第２のディスプレイ上に表示させることで、ディスプレイ間に跨るオブジェクのドラッグ操作をサポートする技術が知られている（例えば、特許文献２を参照）。
【０００９】
オブジェクトの操作に基づいて、複数のスクリーン間での表示情報の交換を実現するシステムが知られている（例えば、特許文献３を参照）。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】特開２０１１−１３４００１号公報
【特許文献２】特開２０１１−２２７８２１号公報
【特許文献３】特開２００８−２１６４９９号公報
【発明の概要】
【発明が解決しようとする課題】
【００１１】
表示画面上のオブジェクトを移動先ウィンドウに移動させる際に、移動先ウィンドウに対応するアイコンを選択してオブジェクトを移動先ウィンドウに格納させる方法が知られている。ここで、オブジェクトを移動させる移動先候補のウィンドウが多数ある場合に、多数の移動先候補のウィンドウに対応する多数のアイコンから、移動先ウィンドウに対応するアイコンを探すことは、ユーザにとって手間である。
【００１２】
本発明は１つの側面において、ウィンドウの選択を容易にすることを目的とする。
【課題を解決するための手段】
【００１３】
ユーザインターフェース方法は、複数のディスプレイに分かれて表示されている複数のウィンドウの中から、オブジェクトの移動先となるウィンドウを選択する操作中に実行される処理である。ユーザインターフェース方法は、前記オブジェクトの移動に係る入力操作の起点と操作点との間の相対的な距離と前記起点に対する前記操作点の方向に対応する領域に存在するウィンドウを特定し、特定したウィンドウを表す移動先候補アイコンを表示する。
【発明の効果】
【００１４】
本発明によれば、ウィンドウの選択を容易にすることができる。
【図面の簡単な説明】
【００１５】
【図１】空間を使用したユーザインターフェースの例を説明する図である。
【図２】第１の実施形態に係る移動先ウィンドウの選択方法の例（その１）を説明する図である。
【図３】第１の実施形態に係る情報処理装置の構成の例を説明する図である。
【図４】第１の実施形態に係る移動先ウィンドウの選択方法の例（その２）を説明する図である。
【図５】第２の実施形態に係る情報処理装置の構成の例を説明する図である。
【図６】第２の実施形態に係る情報処理装置を用いたオブジェクトの移動方法の例を説明する図である。
【図７】オブジェクトの移動先をショートカットとして記憶する処理の例を説明する図である。
【図８】接続関係にない画面への移動例を説明する図である。
【図９】ショートカットへの格納方法の例を説明する図である。
【図１０】カードが端にある場合の処理の例を説明する図である。
【図１１】引っ張る方向の例を説明する図である。
【図１２】第１と第２の実施形態に係る情報処理装置に係るネットワーク構成の例を説明する図である。
【図１３】第１と第２の実施形態に係る情報処理装置のハードウェア構成の例を説明する図である。
【図１４】アイコンを配置する位置を算出する方法の例を説明する図である。
【図１５】表示するアイコンの判定に係る処理の例を説明する図である。
【図１６】ディスプレイの論理距離と物理距離についての例を説明する図である。
【図１７】第１の実施形態に係る情報処理装置の処理の例を説明するフローチャートである。
【図１８Ａ】第２の実施形態に係る情報処理装置の処理の例を説明するフローチャートである。
【図１８Ｂ】第２の実施形態に係る情報処理装置の処理の例を説明するフローチャートである。
【発明を実施するための形態】
【００１６】
本実施形態に係る情報処理装置は、複数のディスプレイ内のウィンドウをオブジェクトの移動先として選択するときに、ユーザの入力操作の起点と操作点の距離と方向に基づいて、移動先候補のウィンドウに対応したアイコンを表示していく。そのため、ユーザは、少数のアイコンからウィンドウを選択すればよくなり操作性が向上する。
【００１７】
以下、図面を参照しながら、実施形態を詳細に説明する。
図２は、第１の実施形態に係る移動先ウィンドウの選択方法の例（その１）を説明する図である。第１の実施形態における情報処理装置は、画面２１０の左端と画面２２０の右端とが接続された１つの画面として利用可能に提供する。情報処理装置は、画面２１０にウィンドウＡとウィンドウＢとを配置しており、更に、カード３００を配置している。更に、情報処理装置は、画面２２０に、ウィンドウＣとウィンドウＤを配置している。なお、以下において、カード３００をオブジェクトとも称す。
【００１８】
ここで、ユーザがカード３００をウィンドウＤに移動させるための操作を入力した場合の操作手順及び情報処理装置の処理を順に説明する。カード３００の移動は、「引っ張り操作」によって行われる。引っ張り操作では、カード３００を選択したまま（ドラッグ状態で）引っ張る操作を表す。これは、例えば、弓矢やパチンコのように対象物を掛けたゴムや弦などを引っ張る行為と同じである。カード３００は、引っ張り操作後にドラッグ状態を解除することで、移動する（飛ばされる）。なお、ユーザの引っ張り操作は、コンピュータによるマウス操作、タッチパネルでの操作、プロジェクタから投影された画面上の位置を読み取ることのできる専用装置などを用いて行うことができる。
【００１９】
（Ａ１）情報処理装置は、カード３００を選択する入力操作に係る操作情報を取得すると、カード３００をドラッグ状態とする。ここで、丸３１０ａは、ユーザがカード３００を選択したときに押下した箇所である。以下において、丸３１０ａを、引っ張り操作の「起点」と称す。
【００２０】
（Ａ２）情報処理装置は、ユーザがカード３００を移動させるための引っ張り操作に係る操作情報を取得する。ここで、丸３１０ｂは、移動操作中にユーザが押下中の箇所を示す。以下において、丸３１０ｂのような引っ張り操作中の点を「操作点」と称す。すると、情報処理装置は、起点と操作点との間の相対的な距離と、起点に対する操作点の方向に対応する領域に存在するウィンドウを特定する。（Ａ２）の処理においては、起点と操作点との間の距離が小さいので、操作点から見て起点の向こう側の領域であって且つ起点の近くの領域に配置されているウィンドウをサーチし、ウィンドウＡ、Ｂを特定する。そのため、情報処理装置は、特定したウィンドウＡとウィンドウＢに対応するアイコンＡとアイコンＢを表示する。アイコンＡとアイコンＢは、起点を挟んでウィンドウＡとウィンドウＢの反対側の、操作点の近傍に表示される。
【００２１】
（Ａ３）情報処理装置は、ユーザがカード３００を（Ａ２）よりも更に移動させた引っ張り操作に係る操作情報を取得する。情報処理装置は、起点と操作点との間の相対的な距離と、起点に対する操作点の方向に対応する領域に存在するウィンドウを特定する。（Ａ３）の処理においては、起点と操作点との間の距離が大きいので、操作点から見て起点の向こう側の領域であって且つ起点の（Ａ２）より遠くの領域に配置されているウィンドウをサーチし、ウィンドウＣ、Ｄを特定する。そのため、情報処理装置は、特定したウィンドウＣとウィンドウＤに対応するアイコンＣとアイコンＤを表示する。なお、アイコンＣとアイコンＤを表示した際に、（Ａ２）で表示したアイコンＡ及びアイコンＢを非表示や、選択できないことを示す薄い線で表示してもよい。
【００２２】
（Ａ４）情報処理装置は、ユーザがカード３００を移動させたいウィンドウＤに対応アイコンＤ上に、操作点を移動させた操作情報を取得する。（Ａ４）では、表示画面において操作点は、アイコンＤ上に重なった状態である。
【００２３】
（Ａ５）情報処理装置は、ユーザが操作点をアイコンＤ上で離し、ドラッグ状態を解除する操作情報を取得する。すると、情報処理装置は、アイコンＤに対応したウィンドウＤのアプリにカード３００を格納する。
【００２４】
このように、第１の実施形態に係る移動先ウィンドウの選択方法では、全てのアイコンを一度に表示せずに、引っ張り具合に応じて移動先候補のアイコンを表示することで、多数の移動先候補がある場合でも、限定して表示することができる。そのため、ユーザは、少数のアイコンから移動先のウィンドウを選択すればよい。
【００２５】
図３は、第１の実施形態に係る情報処理装置の構成の例を説明する図である。情報処理装置４００は、操作取得部４１０、方向算出部４２０、距離算出部４３０、ウィンドウ特定部４４０、ディスプレイ管理部４５０、ユーザインターフェース（ＵＩ）表示部４６０を備える。
【００２６】
操作取得部４１０は、情報処理装置４００に入力されるユーザのオブジェクトを移動させる操作に係る情報を取得する。操作取得部４１０は、（Ａ１）〜（Ａ５）における操作情報の取得処理をする。ユーザは、オブジェクトの操作を、コンピュータによるマウス操作、タッチパネルでの操作、プロジェクタから投影された画面上の位置を読み取ることのできる専用装置などを用いて入力する。
【００２７】
方向算出部４２０は、起点に対する操作点の方向を算出する。距離算出部４３０は、起点と操作点との間の相対的な距離を算出する。方向算出部４２０と距離算出部４３０は、（Ａ２）と（Ａ３）で、方向及び距離算出処理を行う。
【００２８】
ウィンドウ特定部４４０は、方向算出部４２０と距離算出部４３０で算出された距離と方向に対応する領域に存在するウィンドウを特定する。又、カード３００を特定したウィンドウに格納する処理をする。
【００２９】
図２に示す例では、情報処理装置は、画面２１０の左端と画面２２０の右端とが接続されて１つの画面のように利用可能である。ディスプレイ管理部４５０は、複数のディスプレイの接続関係などの関係性を管理する。
【００３０】
ＵＩ表示部４６０は、ウィンドウ、起点、操作点、アイコンなどを表示画面に表示する。
【００３１】
図４は、第１の実施形態に係る移動先ウィンドウの選択方法の例（その２）を説明する図である。図４では、図２の画面２１０と画面２２０から更に、画面２１０の右端に画面２３０の左端が接続された場合の例である。情報処理装置４００は、画面２３０にウィンドウＦとウィンドウＧを配置している。
【００３２】
ケース１は、ウィンドウＣ又はウィンドウＤを移動先にする場合と、ウィンドウＦ又はウィンドウＧを移動先にする場合の例である。ウィンドウＣ又はウィンドウＤは、カード３００にとって左方向に存在する。そのため、ウィンドウＣ又はウィンドウＤを移動先のウィンドウとして選択する場合、ユーザは、起点から右方向に操作点を移動させることで、ウィンドウＣ又はウィンドウＤに対応するアイコンを選択可能となる。一方、ウィンドウＦ又はウィンドウＧは、カード３００にとって右方向に存在する。そのため、ウィンドウＦ又はウィンドウＧを移動先のウィンドウとして選択する場合、ユーザは、起点から左方向に操作点を移動させることで、ウィンドウＦ又はウィンドウＧに対応するアイコンを選択可能となる。
【００３３】
ケース２は、ウィンドウを選択する前に、ディスプレイを選択する方法の例である。図４のように複数のディスプレイがある場合、情報処理装置４００は、操作点が移動すると、移動先候補のディスプレイを識別するディスプレイ番号を選択可能に表示する。図４の例では、画面２２０がＩ、画面２１０がII、画面２３０がIIIのディスプレイ番号が割り当てられている。情報処理装置４００は、移動先候補のディスプレイが選択されると、選択されたディスプレイに配置された移動先候補のウィンドウに対応するアイコンを表示する。このように、移動先ウィンドウを選択する際にディスプレイとウィンドウの２段階で選択可能に表示することで、ユーザは、移動先候補のウィンドウから移動先ウィンドウを容易に選択できる。
【００３４】
図５は、第２の実施形態に係る情報処理装置の構成の例を説明する図である。第２の実施形態に係る情報処理装置５００は、第１の実施形態に係る情報処理装置４００と同様の構成には、同じ番号を付している。情報処理装置５００は、情報処理装置４００から更に、位置算出部５１０と対応位置算出部５２０を備える。
【００３５】
第１の実施形態に係る情報処理装置４００では、カード３００の移動先としてウィンドウが選択可能であった。第２の実施形態に係る情報処理装置５００は、ウィンドウ内での位置指定や、ウィンドウ外での位置指定をして、カード３００を移動させることができる。
【００３６】
位置算出部５１０は、アイコン上にある操作点の位置、又は、アイコンの周辺にある操作点の位置を算出する。対応位置算出部５２０は、位置算出部５１０で算出されたアイコン上又はアイコン周辺にある操作点の位置に対応するウィンドウ内又はウィンドウ周辺の位置を算出する。詳しくは、図６を用いて説明する。
【００３７】
図６は、第２の実施形態に係る情報処理装置を用いたオブジェクトの移動方法の例を説明する図である。図６に示すケース３は、ユーザが操作点をアイコンＣ上の右下に置いた場合の例である。ケース３において、操作取得部４１０は、ユーザが操作点をアイコンＣ上の右下に移動させた操作情報を取得する。次に、位置算出部５１０は、操作点の具体的な位置（アイコン上の位置や、アイコン周辺の位置）を算出する。ここで、位置算出部５１０は、操作点がアイコンＣの右下に配置されていると算出する。すると、対応位置算出部５２０は、位置算出部５１０で算出されたアイコンＣ上の右下という位置をウィンドウに置き換えた場合の位置を算出する。そのため、対応位置算出部５２０は、アイコンＣ上の右下の位置に対応する位置がウィンドウＣの右下であると算出する。結果、カード３００は、ウィンドウＣの右下に格納される。
【００３８】
図６に示すケース４は、ユーザが操作点をアイコンＣ外の右下に置いた場合の例である。ケース４において、操作取得部４１０は、ユーザが操作点をアイコンＣ外の右下に移動させた操作情報を取得する。次に、位置算出部５１０は、操作点の具体的な位置（アイコン上の位置や、アイコン周辺の位置）を算出する。ここで、位置算出部５１０は、操作点がアイコンＣ外の右下に配置されていると算出する。すると、対応位置算出部５２０は、位置算出部５１０で算出されたアイコンＣ外の右下という位置をウィンドウに置き換えた場合の位置を算出する。そのため、対応位置算出部５２０は、アイコンＣ外の右下の位置に対応する位置がウィンドウＣ外の左上であると算出する。結果、カード３００は、ウィンドウＣ外の左上に移動する。
【００３９】
図７は、オブジェクトの移動先をショートカットとして記憶する処理の例を説明する図である。図７の画面２１０と画面２２０は、図２の画面２１０と画面２２０と同様のものである。ここで、ユーザは、カード３００をウィンドウＤへ格納するものとする。
【００４０】
操作取得部４１０は、カード３００の操作点がアイコンＤ上に重なねられた後に、ドラッグ状態が解除された操作を取得する。すると、ウィンドウ特定部４４０は、アイコンＤに対応するウィンドウをウィンドウＤと特定し、カード３００をウィンドウＤに格納させる。
【００４１】
図７の処理の例では、カード３００がウィンドウに格納された後に、ＵＩ表示部４６０は、カード３００がウィンドウＤに格納される前にあった位置に、「記録」ボタンを表示する。「記録」ボタンは、このウィンドウに格納する格納先を記録するか否かをユーザに問い合わせるためのボタンである。ここで、操作取得部４１０は、記録ボタンが押下された操作を取得するとする。すると、ウィンドウ特定部４４０は、記録ボタンを表示した際にカード３００を格納した先のウィンドウ（ここでは、ウィンドウＤ）を特定する。ＵＩ表示部４６０は、ウィンドウへのショートカット枠３２０を表示する。すると、ユーザは、画面２１０上にあるカードをショートカット枠３２０に動かす操作により、カードをウィンドウＤに格納することができる。
【００４２】
このように、アイコン以外にも、ショートカットを作成することで、カード３００の移動先を選択可能にすることもできる。
【００４３】
図８は、接続関係にない画面への移動例を説明する図である。図８のシステムでは、画面２１０、画面２２０、画面２３０を備え、各画面は、図４の画面と同様のものである。画面２１０の左端と画面２２０の右端は接続されている。図８のシステム例では、図４の例と異なり、画面２１０の右端と画面２３０の左端は接続されていない。しかし、画面２１０〜画面２３０は、情報処理装置４００又は情報処理装置５００とは接続関係（管理対象）にあるものとする。
【００４４】
このように、画面２１０や画面２２０と接続されていない（１つの画面として利用可能ではない）画面２３０にカード３００を移動させたい場合、ユーザは、カード３００の操作点を十分に長く引っ張る操作をすることで、接続のない画面２３０内のウィンドウＦやウィンドウＤにも、カード３００を移動可能にする。操作点が十分に長く引っ張られたか否かは、ウィンドウ特定部４４０で行われる。また、ウィンドウＦやウィンドウＤは、画面２３０が接続されていないため、方向がない。そのため、操作点を十分に長く引っ張る操作は、特に方向を限定しなくてよい。
【００４５】
図９は、ショートカットへの格納方法の例を説明する図である。図９の画面２２０と画面２１０ここまでは、ウィンドウＤへのショートカットが作成された後の図７における画面２２０と画面２１０と同じものである。
【００４６】
ここで、カード３００を移動させる操作をすると、ＵＩ表示部４６０は、ウィンドウＤへのショートカットをアイコンＤとして表示してもよい。例えば、カード３００を引っ張る操作をした場合、ＵＩ表示部４６０は、画面２１０に含まれるウィンドウＡ、ウィンドウＢ、ショートカット（ウィンドウＤ）に対応するアイコンＡ、アイコンＢ、アイコンＤを表示する。操作取得部４１０は、操作点がアイコンＤ上に重ねられた状態で、ドラッグ状態が解除する操作を取得すると、カード３００をウィンドウＤへ格納する。
【００４７】
図１０は、カードが端にある場合の処理の例を説明する図である。ケース５は、カード３００が画面の端にあり、操作点を引っ張るスペースがない場合の例である。このような場合、操作点の引っ張る操作が画面外になってしまい、アイコンの表示をするスペースや、操作スペースがないなどの事態がおこりうる。
【００４８】
ケース５のようにカード３００が画面の端にある場合、ケース６に示す処理方法で対策をする。ケース６において、起点は画面の端にあり、引っ張る操作をするスペースがない。操作取得部４１０は、操作スペースがないことを検知すると、起点３１０ａを、起点３１０ａ´のように移動させる。このように、起点３１０ａを移動させることで、引っ張る操作を行うスペースを確保できる。
【００４９】
図１１は、引っ張る方向の例を説明する図である。図２〜図１０では、カード３００を引っ張り操作により飛ばす操作を例示してきた。これらの引っ張り操作の方向は、起点を挟んでウィンドウがある方向の逆方向である。
【００５０】
図１１の例において、引っ張り操作の方向は、起点から、ウィンドウがある方向と同じ方向である。なお、ウィンドウに対応したアイコンは、起点から、引っ張り方向と同じ方向に表示される。起点〜操作点などの操作をするのに十分なスペースが有る場合、引っ張る方向は、ウィンドウがある方向と同じ方向でもよい。
【００５１】
図１２は、第１と第２の実施形態に係る情報処理装置に係るネットワーク構成の例を説明する図である。図１２に示す情報処理システム６００は、サーバ６１０、ディスプレイパーソナルコンピュータ（ＰＣ）６２０、６３０、６５０とタブレット又はスマートフォン６４０を含み、互いにネットワークで接続されている。サーバ６１０は、第１の実施形態に係る情報処理装置４００、第２の実施形態に係る情報処理装置５００として動作し、接続されているディスプレイＰＣ６２０、６３０、６５０とタブレット又はスマートフォン６４０の表示及び操作を管理する。
【００５２】
ディスプレイＰＣ６２０は、プロジェクタ６２１とカメラ６２２を備える。プロジェクタ６２１が画像を映すことで画面２１０、２２０、２３０などとして動作する。カメラ６２２は、専用の電子ペンなどを認識し、ユーザの操作を取得するために用いられる。
【００５３】
ディスプレイＰＣ６３０は、タッチパネルディスプレイ６３１を備える。タッチパネルディスプレイ６３１は、画像の表示をし、画面２１０、２２０、２３０などとして動作する。更に、タッチパネルディスプレイ６３１は、ユーザの操作を取得することができる。
【００５４】
タブレット又はスマートフォン６４０は、搭載されているディスプレイに画像を表示し、画面２１０、２２０、２３０などとして動作する。タブレット又はスマートフォン６４０は、搭載されているディスプレイからユーザの操作を取得することができる。
【００５５】
ディスプレイＰＣ６５０は、表示機器６５１とマウス６５２を備える。表示機器６５１は、液晶モニタやプロジェクタで実現され、画面２１０、２２０、２３０などとして動作する。マウス６５２は、ユーザの操作を入力する入力装置である。
【００５６】
図１３は、第１と第２の実施形態に係る情報処理装置のハードウェア構成の例を説明する図である。情報処理装置４００と情報処理装置５００は、プロセッサ１１、メモリ１２、バス１５、外部記憶装置１６、ネットワーク接続装置１９を備える。さらにオプションとして、情報処理装置４００と情報処理装置５００は、入力装置１３、出力装置１４、媒体駆動装置１７を備えても良い。情報処理装置４００と情報処理装置５００は、例えば、コンピュータなどで実現されることがある。
【００５７】
プロセッサ１１は、Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ（ＣＰＵ）を含む任意の処理経路とすることができる。情報処理装置４００において、プロセッサ１１は、操作取得部４１０、方向算出部４２０、距離算出部４３０、ウィンドウ特定部４４０、ディスプレイ管理部４５０、ＵＩ表示部４６０として動作する。情報処理装置５００において、プロセッサ１１は、操作取得部４１０、方向算出部４２０、距離算出部４３０、ウィンドウ特定部４４０、ディスプレイ管理部４５０、ＵＩ表示部４６０、位置算出部５１０、対応位置算出部５２０として動作する。ここで、ＵＩ表示部４６０は、情報処理装置４００の管理対象のディスプレイＰＣに画像を表示する。なお、プロセッサ１１は、例えば、外部記憶装置１６に記憶されたプログラムを実行することができる。メモリ１２は、プロセッサ１１の動作により得られたデータや、プロセッサ１１の処理に用いられるデータも、適宜、記憶する。ネットワーク接続装置１９は、他の装置との通信に使用される。
【００５８】
入力装置１３は、例えば、ボタン、キーボード、マウス等として実現され、出力装置１４は、ディスプレイなどとして実現される。バス１５は、プロセッサ１１、メモリ１２、入力装置１３、出力装置１４、外部記憶装置１６、媒体駆動装置１７、ネットワーク接続装置１９の間を相互にデータの受け渡しが行えるように接続する。外部記憶装置１６は、プログラムやデータなどを格納し、格納している情報を、適宜、プロセッサ１１などに提供する。媒体駆動装置１７は、メモリ１２や外部記憶装置１６のデータを可搬記憶媒体１８に出力することができ、また、可搬記憶媒体１８からプログラムやデータ等を読み出すことができる。ここで、可搬記憶媒体１８は、フロッピイディスク、Ｍａｇｎｅｔ−Ｏｐｔｉｃａｌ（ＭＯ）ディスク、Ｃｏｍｐａｃｔ  Ｄｉｓｋ  Ｒｅｃｏｒｄａｂｌｅ（ＣＤ−Ｒ）やＤｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ  Ｒｅｃｏｒｄａｂｌｅ（ＤＶＤ−Ｒ）を含む、持ち運びが可能な任意の記憶媒体とすることができる。
【００５９】
図１４は、アイコンを配置する位置を算出する方法の例を説明する図である。図１４において、画面２１０には、ウィンドウＡとウィンドウＢ、カード３００が配置されている。画面２２０には、ウィンドウＤ、ウィンドウＣが配置されている。画面２１０の左端と画面２２０の右端は接続されているものとする。図１４は、画面２１０と画面２２０を１つの画面として利用可能なシステムにおいて、カード３００が起点Ｏから操作点ｌまで引っ張り操作がされた場合の例である。
【００６０】
まず、起点Ｏから操作点ｌまでの引っ張り操作の線を延長した直線を直線Ｌとする。図１４では、ウィンドウＣとウィンドウＤに対応するアイコンを配置する位置を算出するものとする。方向算出部４２０は、ウィンドウＣとウィンドウＤの中心と起点Ｏとがなす角θが所定の閾値よりも小さい場合に、以下の式１と式２を満たすように、アイコンを配置する位置を算出する。なお、式１と式２で用いられる定数ｋは予め設定されている。
∠ｃＯｌ＝ｋ×∠ＣＯＬ・・・数１
∠ｄＯｌ＝ｋ×∠ＤＯＬ・・・数２
【００６１】
このように、式１及び式２を満たすように、方向算出部４２０がアイコンを配置する位置を算出することで、アイコンＣとアイコンＤとは重ならず、操作点の周辺に表示される。
【００６２】
図１５は、表示するアイコンの判定に係る処理の例を説明する図である。図１５において、画面２１０には、ウィンドウＡとウィンドウＢ、カード３００が配置されている。画面２２０には、ウィンドウＤ、ウィンドウＣが配置されている。画面２１０の左端と画面２２０の右端は接続されているものとする。図１５は、画面２１０と画面２２０を１つの画面として利用可能なシステムにおいて、カード３００が起点Ｏから操作点ｌまで引っ張り操作がされた場合の例である。起点Ｏから操作点ｌまでの引っ張り操作の線を延長した直線を直線Ｌとする。起点Ｏから操作点ｌまでの直線Ｌ上の距離を距離ｒとする。距離算出部４３０には、予め定数α、定数βが設定されているものとする。
【００６３】
まず、距離算出部４３０は、起点Ｏから操作点ｌまでの引っ張り操作の距離ｒに定数αを掛けて判定領域の中心点までの距離ｄを算出する。次に、距離算出部４３０は、判定領域の中心点までの距離ｄに定数βを掛けて、判定領域ｗを算出する。すると、ウィンドウ特定部４４０は、起点Ｏから距離ｄの位置を中心として判定領域±ｗの点線の中に含まれているウィンドウが、ウィンドウＣとウィンドウＤであると特定する。なお、ウィンドウ特定部４４０は、ウィンドウが判定領域±ｗの点線の中に、ウィンドウの中心からの垂線の足が含まれているか否かで判定する。
【００６４】
このように、ウィンドウ特定部４４０は、距離算出部４３０の結果に基づいて、判定領域に含まれるウィンドウを特定することができる。
【００６５】
図１６は、ディスプレイの論理距離と物理距離についての例を説明する図である。物理的ディスプレイ配置の例では、２つのディスプレイが並べられている。２つのディスプレイ間には、物理的に離れて配置されているものとする。この場合、点Ａと点Ｂとの距離には、ディスプレイ間の物理的な距離が含まれてしまう。
【００６６】
一方、論理的ディスプレイ配置の例では、２つのディスプレイが隙間なく、接続されて並べられている。そのため、ディスプレイ間の距離がない。
【００６７】
ディスプレイ管理部４５０は、論理座標系で算出された方向や距離を物理座標系に基づく数値に変換する。ディスプレイ管理部４５０は、ディスプレイの配置されている位置などを管理しており、物理座標系に基づいて、オブジェクトの移動先となるディスプレイを特定可能となる。
【００６８】
図１７は、第１の実施形態に係る情報処理装置の処理の例を説明するフローチャートである。操作取得部４１０は、オブジェクト（カード３００）の移動操作の開始に係る操作情報を取得したか否かを判定する（ステップＳ１０１）。操作情報を取得していない場合（ステップＳ１０１でＮＯ）、操作取得部４１０は、ステップＳ１０１の処理を繰り返す。操作情報を取得した場合（ステップＳ１０１でＹＥＳ）、方向算出部４２０と距離算出部４３０は、移動操作における引っ張り操作の軌跡（起点〜操作点）から方向と距離を算出する（ステップＳ１０２）。ディスプレイ管理部４５０は、ディスプレイの接続関係を表す情報をウィンドウ特定部４４０に通知する（ステップＳ１０３）。ウィンドウ特定部４４０は、ディスプレイの接続関係を表す情報から、ウィンドウの位置情報を取得する（ステップＳ１０４）。ウィンドウ特定部４４０は、算出した方向と距離に対応した判定領域に含まれるウィンドウを特定する（ステップＳ１０５）。ＵＩ表示部４６０は、特定したウィンドウに対応するアイコンを表示する（ステップＳ１０６）。
【００６９】
操作取得部４１０は、移動操作が終了したか否かを判定する（ステップＳ１０７）。移動操作が終了していない場合（ステップＳ１０７でＮＯ）、情報処理装置４００は、処理をステップＳ１０２から繰り返す。移動操作が終了した場合（ステップＳ１０７でＹＥＳ）、ウィンドウ特定部４４０は、操作終了位置にアイコンがあるか否かを判定する（ステップＳ１０８）。操作終了位置にアイコンがある場合（ステップＳ１０８でＹＥＳ）、ウィンドウ特定部４４０は、オブジェクトをアイコンに対応するウィンドウに格納する（ステップＳ１０９）。操作終了位置にアイコンがない場合（ステップＳ１０８でＮＯ）、及び、ステップＳ１０９が終了すると、情報処理装置４００は、オブジェクトの移動に係る処理を終了する。
【００７０】
図１８Ａと図１８Ｂは、第２の実施形態に係る情報処理装置の処理の例を説明するフローチャートである。操作取得部４１０は、オブジェクト（カード３００）の移動操作の開始に係る操作情報を取得したか否かを判定する（ステップＳ２０１）。操作情報を取得していない場合（ステップＳ２０１でＮＯ）、操作取得部４１０は、ステップＳ２０１の処理を繰り返す。操作情報を取得した場合（ステップＳ２０１でＹＥＳ）、方向算出部４２０と距離算出部４３０は、移動操作における引っ張り操作の軌跡（起点〜操作点）から方向と距離を算出する（ステップＳ２０２）。ディスプレイ管理部４５０は、ディスプレイの接続関係を表す情報をウィンドウ特定部４４０に通知する（ステップＳ２０３）。ウィンドウ特定部４４０は、ディスプレイの接続関係を表す情報から、ウィンドウの位置情報を取得する（ステップＳ２０４）。ウィンドウ特定部４４０は、算出した方向と距離に対応した判定領域に含まれるウィンドウを特定する（ステップＳ２０５）。ＵＩ表示部４６０は、特定したウィンドウに対応するアイコンを表示する（ステップＳ２０６）。
【００７１】
操作取得部４１０は、移動操作が終了したか否かを判定する（ステップＳ２０７）。移動操作が終了していない場合（ステップＳ２０７でＮＯ）、情報処理装置５００は、処理をステップＳ２０２から繰り返す。移動操作が終了した場合（ステップＳ２０７でＹＥＳ）、ウィンドウ特定部４４０は、操作終了位置にアイコンがあるか否かを判定する（ステップＳ２０８）。
【００７２】
操作終了位置にアイコンがある場合（ステップＳ２０８でＹＥＳ）、位置算出部５１０はアイコン内における操作終了位置を算出する（ステップＳ２０９）。対応位置算出部５２０は、アイコン内の操作終了位置に対応するウィンドウ内での位置を算出する（ステップＳ２１０）。ウィンドウ特定部４４０は、オブジェクトをウィンドウ内の算出した位置に格納する（ステップＳ２１１）。
【００７３】
操作終了位置にアイコンがない場合（ステップＳ２０８でＮＯ）、位置算出部５１０は、操作終了位置を算出し、最も近くにあるアイコンを特定する（ステップＳ２１２）。位置算出部５１０は、操作終了位置と最も近くにあるアイコンが所定の距離以内であるか否かを判定する（ステップＳ２１３）。操作終了位置と最も近くにあるアイコンが所定の距離以内である場合（ステップＳ２１３でＹＥＳ）、位置算出部５１０はアイコン外における操作終了位置を算出する（ステップＳ２１４）。対応位置算出部５２０は、アイコン外の操作終了位置に対応するウィンドウ外での位置を算出する（ステップＳ２１５）。ステップＳ２１５の処理が終了すると、情報処理装置５００は、ステップＳ２１１の処理を実行する。
【００７４】
ステップＳ２１１の処理が終了する、又は、操作終了位置と最も近くにあるアイコンが所定の距離よりも離れている場合（ステップＳ２１３でＮＯ）、情報処理装置５００は、オブジェクトの移動に係る処理を終了する。
【００７５】
以上記載した各実施例を含む実施形態に関し、さらに以下の付記を開示する。
（付記１）
複数のディスプレイに分かれて表示されている複数のウィンドウの中から、オブジェクトの移動先となるウィンドウを選択する操作中に、
前記オブジェクトの移動に係る入力操作の起点と操作点との間の相対的な距離と前記起点に対する前記操作点の方向に対応する領域に存在するウィンドウを特定し、特定したウィンドウを表す移動先候補アイコンを表示する
ことを特徴とするユーザインターフェース方法。
（付記２）
前記移動先候補アイコンを、前記起点を挟んで、特定したウィンドウと反対側に表示する
ことを特徴とする付記１に記載のユーザインターフェース方法。
（付記３）
前記操作点が前記移動先候補アイコン上にあり、且つ、前記操作点の移動を終了する操作が行われた場合に、前記オブジェクトを、前記移動先候補アイコンに対応するウィンドウに格納する
ことを特徴とする付記１に記載のユーザインターフェース方法。
（付記４）
前記オブジェクトの移動に係る入力操作の起点と操作点との間の相対的な距離と前記起点に対する前記操作点の方向に対応する領域に存在するディスプレイを特定し、特定したディスプレイを識別するディスプレイ番号を選択可能に表示する
ことを特徴とする付記１に記載のユーザインターフェース方法。
（付記５）
前記操作点の移動を終了する終了操作が行われた場合、前記終了操作が行われた前記移動先候補アイコンの周辺、又は、前記移動先候補アイコン内での位置を算出し、
前記位置に対応するウィンドウにおける位置を特定し、前記オブジェクトを特定した位置に配置する
ことを特徴とする付記１に記載のユーザインターフェース方法。
（付記６）
複数のディスプレイと接続されている情報処理装置であって、
前記複数のディスプレイに分かれて表示されている複数のウィンドウの中から、オブジェクトの移動先となるウィンドウを選択する操作中に、
前記オブジェクトの移動に係る入力操作の起点と操作点との間の相対的な距離と前記起点に対する前記操作点の方向に対応する領域に存在するウィンドウを特定する特定部と、
特定したウィンドウを表す移動先候補アイコンを表示する表示部を、備える
ことを特徴とする情報処理装置。
（付記７）
前記表示部は、
前記移動先候補アイコンを、前記起点を挟んで、特定したウィンドウと反対側に表示する
ことを特徴とする付記６に記載の情報処理装置。
（付記８）
前記操作点の移動操作を取得する操作取得部を更に備え、
前記操作点が前記移動先候補アイコン上にあり、且つ、前記操作点の移動を終了する操作を前記操作取得部が取得すると、
前記特定部は、前記オブジェクトを、前記移動先候補アイコンに対応するウィンドウに格納する
ことを特徴とする付記６に記載の情報処理装置。
（付記９）
前記特定部は、
前記オブジェクトの移動に係る入力操作の起点と操作点との間の相対的な距離と前記起点に対する前記操作点の方向に対応する領域に存在するディスプレイを特定し、
前記表示部は、
特定したディスプレイを識別するディスプレイ番号を選択可能に表示する
ことを特徴とする付記６に記載の情報処理装置。
（付記１０）
前記操作点の移動を終了する終了操作が行われた場合、前記終了操作が行われた前記移動先候補アイコンの周辺、又は、前記移動先候補アイコン内での位置を算出する位置算出部と、
前記位置に対応するウィンドウにおける位置を特定し、前記オブジェクトを特定した位置に配置する対応位置算出部と、を更に備える
ことを特徴とする付記６に記載の情報処理装置。
（付記１１）
複数のディスプレイと、
前記複数のディスプレイと接続されている情報処理装置と、を含み、
前記情報処理装置は、
前記複数のディスプレイに分かれて表示されている複数のウィンドウの中から、オブジェクトの移動先となるウィンドウを選択する操作中に、前記オブジェクトの移動に係る入力操作の起点と操作点との間の相対的な距離と前記起点に対する前記操作点の方向に対応する領域に存在するウィンドウを特定し、前記複数のディスプレイ中の前記オブジェクトを表示しているディスプレイに特定したウィンドウを表す移動先候補アイコンを表示する
ことを特徴とする情報処理システム。
（付記１２）
複数のディスプレイに分かれて表示されている複数のウィンドウの中から、オブジェクトの移動先となるウィンドウを選択する操作中に、
前記オブジェクトの移動に係る入力操作の起点と操作点との間の相対的な距離と前記起点に対する前記操作点の方向に対応する領域に存在するウィンドウを特定し、特定したウィンドウを表す移動先候補アイコンを表示する、処理をコンピュータに実行させる
ことを特徴とする情報処理プログラム。
【符号の説明】
【００７６】
４００、５００  情報処理装置
４１０  操作取得部
４２０  方向算出部
４３０  距離算出部
４４０  ウィンドウ特定部
４５０  ディスプレイ管理部
４６０  ＵＩ表示部
５１０  位置算出部
５２０  対応位置算出部
【図１】
2018081551.tif 000003
【図２】
2018081551.tif 000004
【図３】
2018081551.tif 000005
【図４】
2018081551.tif 000006
【図５】
2018081551.tif 000007
【図６】
2018081551.tif 000008
【図７】
2018081551.tif 000009
【図８】
2018081551.tif 000010
【図９】
2018081551.tif 000011
【図１０】
2018081551.tif 000012
【図１１】
2018081551.tif 000013
【図１２】
2018081551.tif 000014
【図１３】
2018081551.tif 000015
【図１４】
2018081551.tif 000016
【図１５】
2018081551.tif 000017
【図１６】
2018081551.tif 000018
【図１７】
2018081551.tif 000019
【図１８Ａ】
2018081551.tif 000020
【図１８Ｂ】
2018081551.tif 000021