(57)【要約】【課題】  ポインティングする点を１つしかもたないポインティングデバイスによる操作によって、複数のオブジェクトを整列させる場合、手順が繁雑になる。【解決手段】  上記の課題を解決するために、本発明に係る情報処理装置は、オブジェクトを表示する表示手段と、前記表示手段上の複数の位置が指定されたことを認識する認識手段と、前記認識手段によって複数のオブジェクトが表示された領域に含まれる第１の位置が認識され、かつ前記表示手段上の第２の位置が認識された状態で、前記第１の位置又は前記第２の位置の移動が検出されたとき、移動軌跡に応じて、前記表示手段上の複数のオブジェクトを整列させる整列手段とを有する。【選択図】  図２
2010040029.tif 000002
【特許請求の範囲】
【請求項１】
オブジェクトを表示する表示手段と、
前記表示手段上の複数の位置が指定されたことを認識する認識手段と、
前記認識手段によって複数のオブジェクトが表示された領域に含まれる第１の位置が認識され、かつ前記表示手段上の第２の位置が認識された状態で、前記第１の位置又は前記第２の位置の移動が検出されたとき、移動軌跡に応じて、前記表示手段上の複数のオブジェクトを整列させる整列手段とを有する情報処理装置。
【請求項２】
前記移動軌跡が直線であると判定された場合、前記整列手段は、前記複数のオブジェクトを一次元に整列させることを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記認識手段が、まず特定の方向に向かって直線的に移動し、続いて前記特定の方向と直角とみなされる関係である方向に向かって直線的に移動したことを検知した場合、前記整列手段は、前記複数のオブジェクトを二次元に整列させることを特徴とする請求項１に記載の情報処理装置。
【請求項４】
前記移動軌跡が円弧であると判定された場合、前記整列手段は、前記複数のオブジェクトを扇形状に整列させることを特徴とする請求項１に記載の情報処理装置。
【請求項５】
オブジェクトを表示する表示手段と、前記表示手段上の複数の位置が指定されたことを認識する認識手段と、前記認識手段によって複数のオブジェクトが表示された領域に含まれる第１の位置が認識され、かつ前記表示手段上の第２の位置が認識された状態で、前記第１の位置又は前記第２の位置の移動が検出されたとき、移動軌跡に応じて、前記表示手段上の複数のオブジェクトを整列させる整列手段とを備えた情報処理装置の動作方法であって、
前記オブジェクトを表示する表示工程と、
前記表示手段上の複数の位置が指定されたことを認識する認識工程と、
前記認識工程によって複数のオブジェクトが表示された領域に含まれる第１の位置が認識され、かつ前記表示手段上の第２の位置が認識された状態で、前記第１の位置又は前記第２の位置の移動が検出されたとき、前記整列手段が、移動軌跡に応じて、前記表示手段上の複数のオブジェクトを整列させる整列工程と実行する情報処理装置の動作方法。
【請求項６】
コンピュータに請求項５に記載の動作方法を実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、図形、画像、文字等によって構成されるオブジェクトを整列させる技術に関する。
【背景技術】
【０００２】
従来、コンテンツ上にユーザが配置したオブジェクトを整列させる機能を有する描画ツール等が知られている。しかし、オブジェクトを整列させる際に用いるポインティングデバイスは、ポインティングする点を１つしかもたないマウス等である。
【０００３】
従って、複数のオブジェクトを整列させる場合、例えば、まずマウスのドラッグして複数のオブジェクトを選択し、次に右クリックして整列用のメニューを表示させる。
【０００４】
更にメニューに示された項目の中からユーザが所望する種類の整列様式を選択するという一連の手順を踏む。
【０００５】
また従来、タッチパネル等に対して、指で同時に複数の位置を指定（マルチタッチ）する技術が知られている。
【０００６】
特に、特許文献１には、指で指定された２点の距離の変化、角度の変化等に基づいて、オブジェクトを拡大・縮小・回転させる技術が開示されている。
【先行技術文献】
【特許文献】
【０００７】
【特許文献１】特開２００１−２９０５８５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００８】
しかしながら、マウス等のポインティングする点を１つしかもたないポインティングデバイスによる操作によって、複数のオブジェクトを整列させる場合、手順が繁雑になるという課題がある。
【０００９】
また、従来、マルチタッチによる操作は、１つのオブジェクトに対する操作に限られていた。
【００１０】
本発明は、複数のオブジェクトを効率良く整列させることを目的とする。また、複数のオブジェクトを整列させる際の操作性を向上させることを目的とする。また、直感的な操作によって、複数のオブジェクトを整列させることを目的とする。
【課題を解決するための手段】
【００１１】
本発明に係る情報処理装置は、オブジェクトを表示する表示手段と、前記表示手段上の複数の位置が指定されたことを認識する認識手段と、前記認識手段によって複数のオブジェクトが表示された領域に含まれる第１の位置が認識され、かつ前記表示手段上の第２の位置が認識された状態で、前記第１の位置又は前記第２の位置の移動が検出されたとき、移動軌跡に応じて、前記表示手段上の複数のオブジェクトを整列させる整列手段とを有する。
【発明の効果】
【００１２】
本発明によれば、複数のオブジェクトを効率良く整列させることが可能となる。また、複数のオブジェクトを整列させる際の操作性を向上させることが可能となる。また、直感的な操作によって、複数のオブジェクトを整列させることが可能となる。
【図面の簡単な説明】
【００１３】
【図１】本発明に係る情報処理装置の構成を示す図である。
【図２】画面上のオブジェクトの配置例を示す図である。
【図３】コンテンツ管理テーブル４３のデータ構造例を示す図である。
【図４】画面上のオブジェクトの配置例を示す図である。
【図５】表示制御処理を示すフローチャートである。
【図６】指定開始処理を示すフローチャートである。
【図７】移動処理を示すフローチャートである。
【図８】指定解除処理を示すフローチャートである。
【図９】整列処理を示すフローチャートである。
【図１０】画面上のオブジェクトの配置例を示す図である。
【図１１】コンテンツ管理テーブル４３のデータ構造例を示す図である。
【図１２】指定開始処理を示すフローチャートである。
【図１３】移動処理を示すフローチャートである。
【図１４】指定解除処理を示すフローチャートである。
【発明を実施するための形態】
【００１４】
以下、図面を参照して本発明の好適な実施形態について詳細に説明する。なお、本発明は以下の実施形態に限定されるものではなく、本発明の実施に有利な具体例を示すにすぎない。
また、以下の実施形態の中で説明されている特徴の組み合わせの全てが本発明の課題解決手段として必須のものであるとは限らない。
【００１５】
（実施形態１）
図１（Ａ）は、本実施形態における情報処理装置のハードウェア構成を示すブロック図である。
【００１６】
この情報処理装置は、装置全体の制御を司るＣＰＵ１、ブートプログラムや固定的なデータ等を記憶しているＲＯＭ２、主記憶装置として機能するＲＡＭ３をはじめ、以下の構成を備える。
ＨＤＤ４はハードディスク装置で、ここにオペレーティングシステム（ＯＳ）４１、コンテンツ表示プログラム４２、コンテンツ管理テーブル４３が格納される。
【００１７】
ＬＣＤ５は表示部の一例である液晶ディスプレイで、そこへのイメージデータの供給はＬＣＤコントローラ５ａにより行われる。ＬＣＤ５の表面には座標入力部を構成するタッチパネル６が重ねて装着されている。
【００１８】
タッチパネルの方式としては、超音波方式、光電方式、静電容量方式など任意の公知の方式を採用できる。
【００１９】
タッチパネルコントローラ６ａは、ユーザがタッチパネル６に接触した位置の座標を検出し、割り込み信号としてＣＰＵ１に発行する。ここでは、タッチパネルコントローラ６ａは、少なくとも２箇所のタッチ操作を受け付けるように構成されている。
【００２０】
図１（Ｂ）は、本実施形態における情報処理装置の機能構成を示すブロック図である。
【００２１】
情報処理装置は、座標入力部１０１、指示判定部１０２、指示状態管理部１０３、表示制御部１０４、コンテンツ編集部１０５、オブジェクト管理部１０６、画像表示部１０７を備える。
【００２２】
座標入力部１０１は、ＬＣＤ５上の点の指定、移動、指定解除を検知する。指示判定部１０２は、座標入力がどの指示に該当するかを判定する。指示状態管理部１０３は、複数の座標入力により決定される指示状態を管理する。
【００２３】
表示制御部１０４は、オブジェクトを配置するコンテンツの表示可能な部分を取り出して表示させる。コンテンツ編集部１０５は、オブジェクトの配置や座標の変更を行う。
【００２４】
オブジェクト管理部１０６は、オブジェクトの状態を管理する。画像表示部１０７は表示可能な部分を表示する。
【００２５】
次に、本実施形態における情報処理装置で実現できる機能の概要を説明する。
【００２６】
本実施形態におけるコンテンツ表示プログラム４２は、例えば、写真ファイル等のコンテンツのブラウザプログラムで、コンテンツ表示プログラム４２を起動すると、ＬＣＤ５には図２（Ａ）に示すような画面が表示される。
【００２７】
各オブジェクトは、作成時刻などの属性によりソートして配置することも可能である。ユーザの移動操作による配置も可能であり、ユーザの判断でオブジェクトの位置をまとめることもできる。
【００２８】
ユーザはこれを見て各グループのオブジェクトの数をおおまかに把握することができる。なお、各オブジェクトはサムネイル画像等で表示してもよい。
【００２９】
図３（Ａ）は、ＬＣＤ５に図２（Ａ）に示す画面が表示されているときのコンテンツ管理テーブル４３のデータ構造例を示す図である。
【００３０】
このテーブルには、図示の如く、各オブジェクトのＩＤ毎に、形状、中心位置、サイズ、回転、選択状態、整列状態、整列前位置のデータが保持される。表示制御部１０４はこのコンテンツ管理テーブル４３を参照して各オブジェクトを配置する。
【００３１】
図２（Ａ）の状態はいずれのオブジェクトも選択されず、整列していない状態であるため、管理テーブル４３において、各オブジェクトの「選択」及び「整列」の項目はすべて「ＦＡＬＳＥ」となっている。
【００３２】
即ち、図２（Ａ）の７０１で示されるオブジェクトのグループのデータ構造は、図３（Ａ）のＩＭＧ０００１〜ＩＭＧ０００７（８０１）に相当する。
【００３３】
図２（Ｂ）は、ユーザがタッチパネル６上でオブジェクトの外側を右手の指９０１で押さえ、処理対象とする１又は２以上のオブジェクトを囲むようになぞることで、オブジェクトの選択を行った場面を示す図である。
【００３４】
なぞり終えると、図２（Ｃ）に示すように、選択されたグループ１００１の各オブジェクトが強調表示される。
【００３５】
このとき選択されたグループ１００１のオブジェクトのＩＤがＩＭＧ０００１〜ＩＭＧ０００７であるとすると、図３（Ｂ）に示すように、コンテンツ管理テーブル４３におけるＩＭＧ０００１〜ＩＭＧ０００７の「選択」の項目が「ＴＲＵＥ」に変更される。
【００３６】
図２（Ｄ）は、ユーザが例えば左手の指１２０１で選択されたオブジェクトを押さえて１点指示状態として整列グループを指定する例を示す図である。
【００３７】
ここでは、選択されたグループのうちの１つのオブジェクトを押さえるだけで、選択されたグループ１００１の全てのオブジェクトを整列対象として指定できる。
【００３８】
このとき、図３（Ｃ）に示すように、コンテンツ管理テーブル４３におけるＩＭＧ０００１〜ＩＭＧ０００７の「整列」の項目が「ＴＲＵＥ」に変更される。
【００３９】
ユーザは、図２（Ｄ）のように左手の指１２０１で選択オブジェクトに対応する第１の位置を押さえた状態から、図２（Ｅ）に示すように、右手の指１４０１で選択オブジェクトに対応する第２の位置を押下し右方向へ直線的になぞることができる。
【００４０】
なぞった後に左手の指１２０１と右手の指１４０１を放すと、図２（Ｆ）に示すように、対象のオブジェクト１５０１はその移動軌跡の方向に沿って、横一直線（一次元）に整列表示される。
【００４１】
このとき、図３（Ｄ）に示すように、コンテンツ管理テーブル４３におけるＩＭＧ０００１〜ＩＭＧ０００７の「中心位置」の項目は直線的な整列が実現される座標値とされている。
【００４２】
具体的には、ＩＭＧ０００１〜ＩＭＧ０００７の「中心位置」のｙ座標は全て同じ値となり、ｘ座標は、互いが重ならない値とされる。
【００４３】
また、ユーザが、図４（Ａ）に示すように、右手の人差し指１７０１で１７０３の選択オブジェクトに対応する第１の位置を押え、右手の親指１７０２で選択オブジェクトの領域外の第２の点を押え、人差し指１８０１で弧を描き、１７０１と１８０１を放す。
【００４４】
すると、図４（Ｂ）の１８０１に示すように、対象のオブジェクトが扇形状に整列表示される。このときの１７０１が移動する移動点は整列グループの領域内であるが、１８７２が示す固定点は整列グループの領域外である。
【００４５】
この場合、第１の入力位置は選択オブジェクトの領域内で、第２の入力位置は選択オブジェクトの領域外となっている。
【００４６】
また、図４（Ｃ）に示すように、左手の指１９０１で選択オブジェクトの１点をおさえて、右手１９０２での指でまず上方向に向かって直線になぞり、終点の押下を継続した状態で、右方向に向かって直線になぞり、１９０１と１９０２を放す。
【００４７】
即ち、指で押さえられた位置が、まず特定の方向に向かって直線的に移動し、続いて前記特定の方向と略直角の関係をもつ方向に向かって直線的に移動した場合である。尚、略直角とは、直角に近似可能な角度をいう。
【００４８】
すると、図４（Ｄ）の２００１に示すように、対象のオブジェクトはマトリクス状（二次元）に整列される。すなわち、移動点の軌跡が直角線を描く場合には、複数行複数列（二次元）に整列する。
【００４９】
尚、図４（Ｄ）は、縦横の比が最小となり、支点位置に近い方に重心をおく整列方法をとるが、この限りではない。
【００５０】
例えば、ユーザが描く直角の軌跡の縦横比にあわせてマトリクス状に整列してもよい。即ち、縦が長く横が短い直角の軌跡を描くと、縦に長いマトリクス状に整列してもよい。
【００５１】
また、縦方向の軌跡の長さがオブジェクトの２つ分に相当し、横方向の軌跡の長さがオブジェクト４つ分に相当する場合、オブジェクトを縦２行、横４列に整列させてもよい。
【００５２】
また、本実施形態における情報処理装置でコンテンツ表示プログラム４２を実行することで実現できる整列の種類は、上記の直線状、円弧状、直角線状に限らない。
【００５３】
例えば、軌跡が円や渦巻きなど、さまざまな形状であった場合、その軌跡に応じた整列を行えるようにしてもよい。
【００５４】
次に、上記した機能を実現するための処理を詳しく説明する。図５は、本実施形態に係る情報処理装置における表示制御処理を示すフローチャートである。
【００５５】
この処理は、座標入力部１０１からの入力を受け付け、入力に対応した処理を行い、表示を更新するもので、この処理は、停止命令がない限り繰り返される。
【００５６】
なお、このフローチャートに対応するプログラムはコンテンツ表示プログラム４２に含まれ、ＲＡＭ３にロードされ、ＣＰＵ１によって実行される。
【００５７】
まず、ステップＳ２０１で、指示判定部１０２は、座標入力部１０１から入力を受け付ける。ステップＳ２０２では、指示判定部１０２は、入力が指定開始であるか判定する。例えばタッチパネル６上の任意の点の押下がこれに相当する。
【００５８】
ステップＳ２０２で指定開始と判定された場合はステップＳ２０３の処理を実行し、後述する指定開始処理を行い、更に、ステップＳ２０８の処理を実行する。
【００５９】
一方、ステップＳ２０２で指定開始でないと判定された場合は、ステップＳ２０４の処理を実行し、指示判定部１０２は、入力が移動かどうかの判定を行う。尚、「移動」とは指定された点がすでにありその点が動いていることを検知することで判断する。
【００６０】
例えば図２（Ｂ）に示したタッチパネル６上でのなぞりがこれに該当する。ステップＳ２０４で移動と判定された場合は、ステップＳ２０５で後述する移動処理を行い、その後ステップＳ２０８の処理を実行する。
【００６１】
一方、ステップＳ２０４で、移動でないと判断された場合は、ステップＳ２０６で、指示判定部１０２は、指定解除かどうかの判定を行う。尚、指定解除とは、タッチパネル６上の点の押下解除がこれに該当する。
【００６２】
ステップＳ２０６で指定解除と判定された場合は、ステップＳ２０７で後述する指定解除処理を行い、その後ステップＳ２０８の処理を実行する。
【００６３】
また、ステップＳ２０６で、指定解除と判定されなかった場合は、ステップＳ２０８の処理を実行する。
【００６４】
ステップＳ２０８では、表示制御部１０４は、必要な箇所の画像の作成、再表示、表示更新等を行う。
【００６５】
なお、この処理は同時に複数の点の指定を受け付ける。指定開始、移動、指定解除を別々のイベントとして処理することで、ある点を押下して動作を解除するまでの間に、他の点の押下を処理可能である。
【００６６】
同時に複数の入力位置が認識された場合にも、キューに入れて一つずつ処理する。
【００６７】
図６は、ステップＳ２０３において実行される指定開始処理を示すフローチャートである。
【００６８】
まずステップＳ３０１で、指示判定部１０２は、現在範囲指定中かどうかの判定を行う。範囲指定中ならばそのまま終了する。これは、範囲指定中に誤って指定されていない他のオブジェクトを選択することを防ぐためである。
【００６９】
ステップＳ３０１で、範囲指定中で無いと判定された場合、ステップＳ３０２で、指示判定部１０２は、整列指示中か否かの判定を行う。整列指示中ならば処理を終了する。尚、この処理も誤って指定されていないオブジェクトを選択することを防ぐためである。
【００７０】
ステップＳ３０２で整列指示中でないと判断された場合、ステップＳ３０３で、指示判定部１０２は、指定点がオブジェクト領域内かどうかの判定を行う。ステップＳ３０３でオブジェクト領域内と判定された場合は、ステップＳ３０４の処理を実行する。
【００７１】
一方、ステップＳ３０３でオブジェクト領域外と判定された場合は、ステップＳ３０９の処理を実行する。
【００７２】
ステップＳ３０４で、指示判定部１０２は、指定座標に選択オブジェクトがあるか否か判定する。
【００７３】
指定座標に選択オブジェクトが無いと判断された場合には、ステップＳ３０５で指示状態管理部１０３は、指定座標にあるオブジェクトを選択して、一連の処理を終了する。
【００７４】
一方、ステップＳ３０４で選択オブジェクトであると判定された場合、ステップＳ３０６で、指示状態管理部１０３は、既に１点での選択オブジェクトの選択及び継続（１点指示）があるかどうかを判定する。
【００７５】
これは、タッチパネル６上で、選択オブジェクトを押さえたまま他の１点で選択オブジェクトを押さえたかの判定に相当する。
【００７６】
ステップＳ３０６で前述の１点指示がない、つまり今回の指示が最初の１点指示であると判定された場合（図１２の例で左手の指１２０１で選択オブジェクトを押えたときに該当）には、ステップＳ３０７の処理を実行する。
【００７７】
ステップＳ３０７で、オブジェクト管理部１０６は、指示された座標にある選択オブジェクトを整列状態にして整列すべきオブジェクトのグループつまり整列グループを設定する。
【００７８】
尚、１点指示されたオブジェクトと連鎖的に領域が重なる選択オブジェクトについても同様に整列状態となる。即ち、直接指定座標にないオブジェクトも整列グループに含まれるものとする。
【００７９】
次にステップＳ３０８で、オブジェクト管理部１０６は、１点指示の状態に設定して終了する。
【００８０】
ステップＳ３０３でオブジェクト領域外であると判定された場合、ステップＳ３０９で、指示状態管理部１０３は、１点指示状態か否かの判定を行う。
【００８１】
これは既に１点で整列グループを押さえており、もう１点でオブジェクト領域外つまり背景部分の押下があったかどうかの判定に当たる。ステップＳ３０９で１点指示状態であると判定された場合、ステップＳ３１０の処理を実行する。
【００８２】
ステップＳ３０６で１点指示があると判定された場合、ステップＳ３１０で、指示状態管理部１０３は、２点指示の設定を行う。
【００８３】
尚、ステップＳ３０６からステップＳ３１０に来たパスの場合、２点指示は共に整列グループ上にあり、ステップＳ３０９からステップＳ３１０に来たパスの場合は１点が整列グループ上、１点が背景上にある。
【００８４】
ステップＳ３１０の処理が実行されると、次にステップＳ３１１で、オブジェクト管理部１０６は、整列指示を開始して一連の処理を終了する。尚、整列指示状態は指示が解除されるまで継続される。
【００８５】
これは、図２（Ａ）の１４０１で２点目が指示されたときや、図４（Ａ）の１７０２で２点目が指示されたときや、図４（Ｃ）の１９０２で２点目が指示されたときに該当する。
【００８６】
一方、ステップＳ３０９で１点指示がないと判定された場合には、ステップＳ３１２で、オブジェクト管理部１０６は、範囲指定を開始して終了する。
【００８７】
これは背景部分のなぞりで複数のオブジェクトを選択するための範囲指定の開始である。範囲指定状態はそれが解除されるまで継続される。これは図２（Ｂ）の９０１で背景を押下したときに該当する。
【００８８】
図７は、ステップＳ２０５における移動処理を示すフローチャートである。
【００８９】
ステップＳ４０１で、オブジェクト管理部１０６は、現在範囲指定中かどうかの判定を行う。範囲指定中ならばステップＳ４０６で、指示判定部１０２は、移動の軌跡を記録して、一連の処理を終了する。
【００９０】
一方、ステップＳ４０１で範囲指定中でないならば、ステップＳ４０２で、指示状態管理部１０３は、整列指示中であるか否かの判定を行う。整列指示中ならば、ステップＳ４０３で、指示判定部１０２は、指定座標が移動点であるか否か判定する。
【００９１】
移動点と固定点の設定は２点指示が設定された後の最初の移動の検知後、その移動が２点のうちのどちらかであればステップＳ４０５で設定される。
【００９２】
ステップＳ４０３で移動点であると判定された場合は、ステップＳ４０６で、指示状態管理部１０３は、軌跡を記録して一連の処理を終了する。
【００９３】
一方、ステップＳ４０３で移動点でないと判定された場合は、ステップＳ４０４で、指示状態管理部１０３は、固定点があるか否かの判定を行う。これは、まだ固定点と移動点が設定されていない状態かどうかの判定である。
【００９４】
固定点がない場合は、ステップＳ４０５で、指示状態管理部１０３は、固定点と移動点の設定を行う。ここでは、２点指示を設定した点のうち、移動を検知した点を移動点とし、もう１点を固定点とする。
【００９５】
次にステップＳ４０６で、指示状態管理部１０３は、軌跡を記録して一連の処理を終了する。
【００９６】
一方、ステップＳ４０２で整列指示中でないと判定された場合またはステップＳ４０４で固定点があると判定された場合には、ステップＳ４０７で、オブジェクト管理部１０６は、移動点にあるのは選択オブジェクトであるか否かの判定を行う。
【００９７】
選択オブジェクトである場合は、ステップＳ４０８で、オブジェクト感知部１０６は、選択オブジェクトが移動するよう座標を変更して、一連の処理を終了する。
【００９８】
尚、ステップＳ４０４で固定点があるとしてこのパスを通ったものは、固定点が移動しており、固定点にある選択オブジェクトをドラッグすることになる。
【００９９】
また、ステップＳ４０７で選択オブジェクトでないと判定された場合には、何もせずに一連の処理を終了する。
【０１００】
尚、この移動処理は移動開始から終了までの間、繰り返し行われる。
【０１０１】
図８は、ステップＳ２０７における指定解除処理を示すフローチャートである。
【０１０２】
ステップＳ５０１で、指示状態管理部１０３は、範囲指定中か否かの判定を行う。範囲指定中の場合は、ステップＳ５０２でオブジェクト管理部１０６は、指定した範囲の中にオブジェクトが存在するか否かの判定を行う。
【０１０３】
オブジェクトが存在する場合は、ステップＳ５０３で、オブジェクト管理部１０６は、オブジェクトを選択して、ステップＳ５０４の処理を実行する。一方、オブジェクトが存在しない場合は、そのままステップＳ５０４の処理を実行する。
【０１０４】
ステップＳ５０４では、指示状態管理部１０３が、範囲指定を解除して、一連の処理を終了する。これは、図２（Ｂ）の右手９０１でオブジェクトの周囲を丸くなぞり終わって右手９０１を放し、図２（Ｃ）のオブジェクト１００１を選択した状態に該当する。
【０１０５】
一方、ステップＳ５０１で、範囲指定中でないと判定された場合、ステップＳ５０５で、指示状態管理部１０３は、整列指示中か否かの判定を行う。これは２点指示状態で移動点を移動して１点を解除したか否かの判定に相当する。
【０１０６】
整列指示中の場合には、ステップＳ５０６で、コンテンツ編集部１０５は、整列処理を行う。整列処理については図９を用いて後述する。
【０１０７】
ステップＳ５０６の整列処理後、ステップＳ５０７で、オブジェクト管理部は、整列グループを解除し、ステップＳ５０８で、指示状態管理部１０３は、整列指示解除を行って一連の処理を終了する。
【０１０８】
これは図２（Ｆ）、図４（Ｂ）、図４（Ｄ）の整列後の状態に該当する。
【０１０９】
一方、ステップＳ５０５で整列指示中でないと判定された場合、ステップＳ５０９で、指示状態管理部１０３は、２点指示中か否かの判定を行う。これは２点指示を行った後、整列指示をしないままに１点を解除したかどうかの判定に当たる。
【０１１０】
２点指示中の場合には、ステップＳ５１０で、指示状態管理部１０３は、１点指示設定を行い、一連の処理を終了する。
【０１１１】
尚、このとき１点指示に戻るので次の２点指示を受け入れられる状況になる。即ち、２点指示のどちらか片方の指定をやり直すことが可能となる。
【０１１２】
一方、ステップＳ５０９で２点指示中でないと判定された場合、一連の処理を終了する。なお、ここでは、選択状態のオブジェクトの解除方法については言及しない。選択状態のオブジェクトの解除方法については後述する。
【０１１３】
図９は、ステップＳ５０６における整列処理を示すフローチャートである。
【０１１４】
まず、ステップＳ６０１で、指示判定部１０２は、移動軌跡を解析する。次に、ステップＳ６０２で、移動軌跡が図２（Ｅ）に示したような直線と判定された場合は、ステップＳ６０３の処理を実行する。
【０１１５】
次に、ステップＳ６０３で、表示制御部１０４、コンテンツ編集部１０５は、図２（Ｆ）の１５０１に示したように、固定点を支点として横方向に整列グループを整列させ、一連の処理を終了する。
【０１１６】
一方、ステップＳ６０２で軌跡が直線でないと判定された場合は、ステップＳ６０４で、指示判定部１０２は、軌跡が図４（Ａ）の１７０１の軌跡に示したような弧であるか否かの判定を行う。
【０１１７】
ステップＳ６０４で軌跡が弧であると判定された場合、ステップＳ６０５で、表示制御部１０４、コンテンツ編集部１０５は、固定点が扇の要となるように整列グループを扇形に整列させ一連の処理を終了する（図４（Ｂ）の１８０１）。
【０１１８】
ステップＳ６０４で軌跡が弧でないと判定された場合は、ステップＳ６０６で、指示判定部１０２は、軌跡が図４（Ｃ）の１９０２の軌跡に示したような直角線状であるか否かの判定を行う。
【０１１９】
ステップＳ６０６で直角線状であると判定された場合、ステップＳ６０７で、表示制御部１０４、コンテンツ編集部１０５は、行列状に整列させ、一連の処理を終了する（図４（Ｄ）の２００１）。
【０１２０】
一方、ステップＳ６０６で直角線状でないと判定された場合、ステップＳ６０８で、表示制御部１０４、コンテンツ編集部１０５は、整列グループを軌跡上に配置して、一連の処理を終了する。
【０１２１】
尚、軌跡の形状の判断手段の一つとして次のものが考えられる。まず、開始点と終了地点から直線を求める。その線と軌跡の距離の累積が任意の値より小さい場合を直線とする。
【０１２２】
移動中の第一点と第二点の距離のぶれの累積が任意の値より小さい場合を弧とする。開始点と終了点の直線を底辺とし頂点を９０度とする二等辺三角形の２辺を求めその２辺と軌跡の距離の累積が任意の値より小さい場合を直角線とする。
【０１２３】
また、軌跡の形状の判断手段は、直線、軌跡、カギの順番を入れ替えてもよいし、順番に判断するのではなく、累積の距離が一番小さいものを選ぶようにしてもよい。
【０１２４】
また、別の図形近似の手法を使って、軌跡と形状の類似度を求め、もっとも近いものを適用するようにしてもよい。ゆれやぶれのある手書きの軌跡を幾何学的形状に近似する方法については既存であるのでここでは省略する。
【０１２５】
また、多く利用する形状に近似しやすいよう、整列指示の情報を保存しておき、多く利用する形状の判定を先にするよう、順番を入れ替えてもよいし、類似度計算に重み付けを行なってもよい。
【０１２６】
（実施形態２）
上述の実施形態１では、２点指示のうちどちらか１点を解除したときにオブジェクトを整列させる処理を説明したが、整列した後、元に戻せるようにしてもよい。
【０１２７】
例えば、２点指示のうち移動点を解除したときに整列を行い、固定点を押さえたままでいる間は整列表示中であるとしてもよい。
【０１２８】
このとき、前述の固定点でない１点で、整列後のグループの中から除外したいオブジェクトを選択し、グループから除外し、固定点を解除したとき、この選択したオブジェクト以外の整列グループのオブジェクトを整列状態に戻せるようにしてもよい。
【０１２９】
この場合、移動点を押さえたまま固定点を離すと整列を行うが、整列前の状態には戻せないようにしてもよい。また、整列表示中に、もう１点で整列グループ以外のオブジェクト選択して整列グループ内にドラッグして整列グループに加えてもよい。
【０１３０】
以下、図面を参照しながら、整列表示中のオブジェクトを整列対象から除外する操作の例を説明する。
【０１３１】
図１０（Ａ）は、左手２４０１で固定点を維持したまま、移動点を解除し２４０２に示すような整列を行った直後の表示例を示している。
【０１３２】
この状態から、図１０（Ｂ）に示すように整列グループ２４０２の中の１つのオブジェクトを右手２５０１で選択し、図１０（Ｃ）に示すように上方にドラッグし右手２５０１を離すと、図１０（Ｄ）のようにオブジェクト２７０１は整列グループから除外される。
【０１３３】
尚、この除外対象とされたオブジェクトは、図１１（Ａ）に示すＩＭＧ０００６に該当し、２８０１に示すようにコンテンツ管理テーブル４３におけるＩＭＧ０００６の「整列」が「ＦＡＬＳＥ」に変更される。
【０１３４】
次に、固定していた左手を離すと、図１０（Ｅ）に示すように、ドラッグして除外したオブジェクト２７０１以外のオブジェクトが整列前の位置２９０１に戻る。この状態は除外したオブジェクト以外は図２（Ｃ）と同じ状態である。
【０１３５】
すなわち、図１１（Ｂ）に示すように、このときのコンテンツ管理テーブル４３の内容は、ＩＭＧ０００６を除き、図３（Ｂ）に示した内容と同じになる。
【０１３６】
実施形態１に対し本実施形態で実現できる追加的な機能は、概ね以上のようなものである。以下では、このような機能を実現する処理を、フローチャートを用いて詳しく説明する。
【０１３７】
本実施形態における表示制御処理全体の流れは、図２のフローチャートと同様である。以下では、本実施形態における指定開始、移動、指定解除について説明する。なお、実施形態１と同じ処理については同符号を付し、その説明を省略する。
【０１３８】
図１２は、本実施形態のステップＳ２０３における指定開始処理を示すフローチャートである。
【０１３９】
図６との違いは、ステップＳ３０４とステップＳ３０６の間、及び、ステップＳ３０３とステップＳ３０９の間にそれぞれ、整列表示中かどうかを判定するステップＳ２１０６及びステップＳ２１１０が挿入されている点である。
【０１４０】
ステップＳ３０４で選択オブジェクトと判定された場合、ステップＳ２１０６で、オブジェクト管理部１０６は、整列表示中か否か判定する。ステップＳ２１０６で整列表示中であると判定された場合は、ステップＳ３０５の処理を実行する。
【０１４１】
一方、整列表示中でないと判定された場合は、ステップＳ３０６の処理を実行する。ステップＳ３０５で、オブジェクト管理部１０６は、すでに選択状態にあるオブジェクトを選択する。
【０１４２】
これは整列グループの中のオブジェクトを選んで除外するときの処理に当たる。例えば、図１０（Ｂ）の右手２５０１がオブジェクトを指定したときに該当する。
【０１４３】
また、ステップＳ３０３でオブジェクト領域外と判定されたときは、ステップＳ２１１０で、オブジェクト管理部１０６が、現在整列表示中であるか否かの判定を行う。
【０１４４】
整列表示中ならば、一連の処理を終了し、整列表示中でなければステップＳ３１０の処理を実行する。
【０１４５】
図１３は、本実施形態のステップＳ２０５における移動処理を示すフローチャートである。
【０１４６】
図７との違いは、ステップＳ４０２とステップＳ４０７の間に、ステップＳ２２０７、ステップＳ２２０８、ステップＳ２２０９が挿入されている点である。
【０１４７】
ステップＳ４０２で、オブジェクト管理部１０６は、整列指示中か否かの判定を行い、整列指示中ならばステップＳ４０３の処理を実行する。一方、整列指示中でなければステップＳ２２０７の処理を実行する。
【０１４８】
ステップＳ２２０７で、オブジェクト管理部１０６は、整列表示中であるかの判定を行う。整列表示中とは整列指示を行って固定点を指定したまま移動点を解除して一時的な整列状態を表示させている状態である。
【０１４９】
ステップＳ２２０７で整列表示中であると判定された場合は、ステップＳ２２０８で、指示判定部１０２が、移動している座標が固定点であるか否かの判定を行う。
【０１５０】
移動している座標が固定点であったと判定された場合、ステップＳ２２０９で、オブジェクト管理部１０６は、整列グループ全体が移動するよう座標を変更して、一連の処理を終了する。
【０１５１】
一方、ステップＳ２２０７で整列表示中でないと判定された場合、及び、ステップＳ２２０８で固定点でないと判定された場合、及び、ステップＳ４０４で固定点ありと判定された場合には、ステップＳ４０７の処理を実行する。
【０１５２】
また、固定点が、選択オブジェクトのものでないと判断された場合は、なにもせず一連の処理を終了する。また、固定点が、選択オブジェクトのものである場合、ステップＳ４０８で、オブジェクト管理部１０６は、選択オブジェクトの座標を変更する。
【０１５３】
これは、範囲指定や整列を指定する移動点以外でのオブジェクトのドラッグを許すものである。尚、これは図１０（Ｃ）の例の右手２５０１の移動に伴うオブジェクトの移動に該当する。
【０１５４】
図１４は、本実施形態のステップＳ２０７における指定解除処理を示すフローチャートである。
【０１５５】
図１４は、図８と比べると、ステップＳ５０５で整列指示中かどうかの判定を行った後の処理が異なっている。
【０１５６】
ステップＳ５０１で範囲指定中でないと判定された場合、ステップＳ５０５で整列指示中か否かの判定を行う。整列指示中の場合には、ステップＳ２３０６で、指示状態管理部１０３は、解除された点が２点指示の点以外か否かを判定する。
【０１５７】
ステップＳ２３０６で、２点指示以外の座標が解除されたと判定された場合には、何もしないで一連の処理を終了する。
【０１５８】
一方、ステップＳ２３０６で２点指示の点のいずれかであると判定された場合は、ステップＳ５０６で、図９に示す整列処理を行う。
【０１５９】
ステップＳ５０６の整列処理後、ステップＳ２３０８で、指示状態管理部１０３は、整列指示解除を行い、ステップＳ２３０９で、表示制御部１０４、コンテンツ編集部１０５は、整列表示開始を行う。
【０１６０】
次にＳ２３１０で、指示状態管理部１０３は、解除された点が移動点であるか否かの判定を行い、移動点であると判定された場合には一連の処理を終了する。
【０１６１】
一方、移動点でないと判断された場合、すなわち固定点の場合にはステップＳ２３１１で、オブジェクト管理部１０６は、整列グループを解除する。
【０１６２】
次にステップＳ２３１２で、表示制御部１０４、コンテンツ編集部１０５は、整列表示解除を行って、一連の処理を終了する。
【０１６３】
尚、整列指示を行った後、どちらかの点を離すと整列表示を行い、移動点を離した場合は整列表示状態となるが、固定点を離した場合は整列表示状態を解除する。
【０１６４】
即ち、固定点を維持している状態でのみ整列表示状態が継続されることになる。移動点を解除した状態での例が図１０（Ａ）であり、整列表示を行なうものである。
【０１６５】
また、ステップＳ２３０５で整列指示中でないと判定された場合、ステップＳ２３１３で、オブジェクト管理部１０６は、整列表示中であるか否かの判定を行う。
【０１６６】
整列表示状態でない場合はそのまま一連の処理を終了する。また整列表示中であると判定された場合にはステップＳ２３１４の処理を実行する。
【０１６７】
ステップＳ２３１４では、指定が解除された点が固定点であるか否かの判定を行う。固定点である場合にはステップＳ２３１５で、オブジェクト管理部１０６は、整列を取り消して整列グループのオブジェクトを整列前の座標に戻す。
【０１６８】
次にステップＳ２３１１で、オブジェクト管理部１０６は、整列グループを解除し、次にステップＳ２３１２で、表示制御部１０４、コンテンツ編集部１０５は、整列表示解除を行って、一連の処理を終了する。
【０１６９】
尚、整列表示中に固定点の指定を解除した場合の例が図１０（Ｅ）であり、整列表示が解除されるものである。
【０１７０】
また、ステップＳ２３１４で固定点でないと判定された場合は、ステップＳ２３１で、オブジェクト管理部１０６は、解除された点が整列グループ領域内か否かの判定を行う。
【０１７１】
当該領域内であると判定された場合、ステップＳ２３１６で、指示状態管理部１０３は、解除された点が整列オブジェクトのものか否かの判定を行う。
【０１７２】
尚、整列オブジェクトであると判定された場合は何もせず一連の処理を終了する。一方、整列オブジェクトでないと判定された場合には、ステップＳ２３１７で、オブジェクト管理部１０６は、新たな整列オブジェクトとして整列グループに追加する。
【０１７３】
この例は整列表示中に、別のオブジェクトを整列グループ領域内にドラッグした場合、整列グループに入れるというものである。
【０１７４】
また、ステップＳ２３１８で整列グループ領域内でないと判定された場合は、Ｓ２３１９で、オブジェクト管理部１０６は、指定されたオブジェクトが整列オブジェクトか否かの判定を行う。整列オブジェクトでないと判定された場合、一連の処理を終了する。
【０１７５】
一方、整列オブジェクトであると判定された場合、ステップＳ２３２０で整列状態を解除し、指定されたオブジェクトを整列グループから除外する。尚、図１０（Ｄ）の例がこれに該当し、オブジェクト２７０１は整列グループから除外される。
【０１７６】
また、ステップＳ２３１８以降の処理は、整列表示中に固定点を押さえた状態でオブジェクトをドラッグして整列グループに加えたり除外したりするものである。
【０１７７】
なお、整列表示状態のオブジェクトが、他のオブジェクトの上に配置された場合に、整列グループへ加えられることはない。また、オブジェクトを選択して配列グループ領域内に放置された場合のみ、整列グループに加えることができる。
【０１７８】
なお、図１４のフローチャートでは、２点指示から整列指示を行わず、１点を解除した場合の処理は考慮されていないが、その処理は例えば、ステップＳ２３１３のｎｏの分岐の後にステップＳ５０９、ステップＳ５１０の処理を追加することで実現できる。
【０１７９】
尚、実施形態１では、固定点が移動した場合は、その固定点にある選択オブジェクトを移動させるよう座標を変更しているが、その固定点にある整列グループすべてを移動させるよう座標変更させ、整列処理時の整列の開始点を変更後の固定点としてもよい。
【０１８０】
また、実施形態１では、２点指示のうち最初に移動した点を移動点とし、もう一方の点を固定点としている。
【０１８１】
しかし、２点で整列オブジェクトを押さえている場合には固定点を定めず、２点間の距離の変化を配列指示の軌跡とし、２点間の中心を整列の中心点としてもよい。
【０１８２】
また、１点で整列グループを押さえ１点で背景を押さえている場合には、整列グループを押さえている点を移動点、背景を押さえている点を固定点とあらかじめ決めておいてもよい。この場合、固定点が移動した場合には整列の支点も移動させる。
【０１８３】
また、実施形態１では、２点指示の状態で１点を解除した場合に１点指示に戻す。即ち、１点で整列グループを押さえ１点で背景を押さえている場合において、整列グループを押さえている点を解除すると、背景の点が１点指示の点となる。
【０１８４】
その後整列グループ以外を押さえた場合、整列グループを押さえない状態での整列指示が可能となり、もとの整列グループから離れた位置への整列が可能となる。
【０１８５】
しかし、１点で整列グループを押さえ１点で背景を押さえている場合に整列グループを押さえている点を解除したとき、１点指示も解除して整列グループを解除し、整列指示中に背景点だけ押さえている状態をなくすようにしてもよい。
【０１８６】
尚、実施形態１では、移動方向の形状で整列を行った。しかし、移動点の距離も記録し、その距離の範囲内に収まるように、オブジェクトを重ねたり、間隔を広げたりして整列してもよい。
【０１８７】
なお、移動の軌跡がカギに近似される場合、縦の移動距離と横の移動距離で面積を求め、その面積内に収まるように、オブジェクトを重ねたり、間隔を広げたりして整列してもよい。
【０１８８】
尚、実施形態２では整列の順番をＩＤの並びで行っているが、それ以外のオブジェクトの属性、例えば生成日時により並び順を変更してもよい。
【０１８９】
また、コメントが付与されているオブジェクトに対してコメントが類似しているものをまとめて近い位置に配置するなどしてもよい。
【０１９０】
また、第１の指定の直下にあるものを整列の開始位置、第２の指定の直下にあるものを整列の終了位置としてオブジェクトを配置するようにしてもよい。
【０１９１】
また、実施形態２では、整列を解除したとき、整列前の座標に戻しているが、回転角度を合わせて重ねるなどして、表示範囲が小さくなるような整列状態にしてもよい。
【０１９２】
尚、上述の各実施形態ではオブジェクトを矩形で表示したがこれに限定されるものではない。また複雑な輪郭を持つオブジェクトの場合には、ベクター表現を用いるなどしてもよい。
【０１９３】
また、上述の各実施形態では、座標指定の入力のタイプを、指定開始、移動、指定解除の３種類としたが、移動のみではなく継続も処理対象としてもよい。
【０１９４】
例えば、タッチパネルへの入力イベントを、一定時間毎に継続的に検出し、以下の条件判断によって入力のタイプを判断する。
【０１９５】
１つ前の検出タイミング（以下「直前」という。）で同じ位置には検出されず、かつ、直前には近傍位置への入力がなかった点を検出した場合、これを「指定開始」と判断する。直前と同じ位置での入力を検出した場合は、これを「継続」と判断する。
【０１９６】
直前にはなかった位置で入力が検出された場合で、直前に近傍位置で検出されたが現在（最新の検出タイミング）ではその位置では検出されなかった場合、これを「移動」と判断する。また、直前にあり現在ない場合は、これを「指定解除」と判断する。
【０１９７】
継続処理の内容として、複数のオブジェクトが重なっている領域を、一定時間押さえ続けると、複数のオブジェクトすべてを選択状態にするようにしてもよい。
【０１９８】
尚、実施形態１では、オブジェクトの選択状態の解除方法には触れていない。また、実施形態２では、整列表示中でない場合でのオブジェクトの選択状態の解除方法には触れていない。
【０１９９】
これらについては、座標指定の継続時間を記録して、指定・解除の間が所定時間より短い場合には、整列すべきオブジェクトの指定でないとし、選択オブジェクトのトグルによる解除や、背景クリックによる選択オブジェクトの選択状態解除を行ってもよい。
【０２００】
（他の実施形態）
以上、本発明の実施形態を詳述したが、本発明は、複数の機器から構成されるシステムに適用してもよいし、また、一つの機器からなる装置に適用してもよい。
【０２０１】
なお、本発明は、前述した実施形態の各機能を実現するプログラムを、システム又は装置に直接又は遠隔から供給し、そのシステム又は装置に含まれるコンピュータがその供給されたプログラムコードを読み出して実行することによっても達成される。
【０２０２】
したがって、本発明の機能・処理をコンピュータで実現するために、そのコンピュータにインストールされるプログラムコード自体も本発明を実現するものである。つまり、上記機能・処理を実現するためのコンピュータプログラム自体も本発明の一つである。
【０２０３】
その場合、プログラムの機能を有していれば、オブジェクトコード、インタプリタにより実行されるプログラム、ＯＳに供給するスクリプトデータ等、プログラムの形態を問わない。
【０２０４】
プログラムを供給するためのコンピュータ読み取り可能な記録媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、ＭＯ、ＣＤ−ＲＯＭ、ＣＤ−Ｒ、ＣＤ−ＲＷなどがある。
【０２０５】
また、記録媒体としては、磁気テープ、不揮発性のメモリカード、ＲＯＭ、ＤＶＤ（ＤＶＤ−ＲＯＭ，ＤＶＤ−Ｒ）などもある。
【０２０６】
また、プログラムは、クライアントコンピュータのブラウザを用いてインターネットのホームページからダウンロードしてもよい。
【０２０７】
すなわち、ホームページから本発明のコンピュータプログラムそのもの、もしくは圧縮され自動インストール機能を含むファイルをハードディスク等の記録媒体にダウンロードしてもよい。
【０２０８】
また、本発明のプログラムを構成するプログラムコードを複数のファイルに分割し、それぞれのファイルを異なるホームページからダウンロードする形態も考えられる。
【０２０９】
つまり、本発明の機能・処理をコンピュータで実現するためのプログラムファイルを複数のユーザに対してダウンロードさせるＷＷＷサーバも、本発明の構成要件となる場合がある。
【０２１０】
また、本発明のプログラムを暗号化してコンピュータ読み取り可能なＣＤ−ＲＯＭ等のコンピュータ読み取り可能な記憶媒体に格納してユーザに配布してもよい。
【０２１１】
この場合、所定条件をクリアしたユーザにのみ、インターネットを介してホームページから暗号化を解く鍵情報をダウンロードさせ、その鍵情報で暗号化されたプログラムを復号して実行し、プログラムをコンピュータにインストールしてもよい。
【０２１２】
また、コンピュータが、読み出したプログラムを実行することによって、前述した実施形態の機能が実現されてもよい。
【０２１３】
なお、そのプログラムの指示に基づき、コンピュータ上で稼動しているＯＳなどが、実際の処理の一部又は全部を行ってもよい。もちろん、この場合も、前述した実施形態の機能が実現され得る。
【０２１４】
さらに、記録媒体から読み出されたプログラムが、コンピュータに挿入された機能拡張ボードやコンピュータに接続された機能拡張ユニットに備わるメモリに書き込まれてもよい。
【０２１５】
そのプログラムの指示に基づき、その機能拡張ボードや機能拡張ユニットに備わるＣＰＵなどが実際の処理の一部又は全部を行ってもよい。このようにして、前述した実施形態の機能が実現されることもある。
【符号の説明】
【０２１６】
１０１  座標入力部
１０２  指示判定部
１０３  指示状態管理部
【図１】
2010040029.tif 000003
【図２】
2010040029.tif 000004
【図３】
2010040029.tif 000005
【図４】
2010040029.tif 000006
【図５】
2010040029.tif 000007
【図６】
2010040029.tif 000008
【図７】
2010040029.tif 000009
【図８】
2010040029.tif 000010
【図９】
2010040029.tif 000011
【図１０】
2010040029.tif 000012
【図１１】
2010040029.tif 000013
【図１２】
2010040029.tif 000014
【図１３】
2010040029.tif 000015
【図１４】
2010040029.tif 000016