(57)【要約】【課題】ウィンドウオブジェクトの線速度と角速度に基づく慣性移動を実現するためのウィンドウオブジェクト慣性移動の実現方法及び実現装置を提供すること。【解決手段】本発明に係るウィンドウオブジェクト慣性移動の実現方法では、入力デバイスがドラッグされたウィンドウオブジェクトをリリースする際に、線速度の初速度と角速度の初速度が取得され、これらから各処理時間に対応する変位量と回転量が取得され、リリースされた後のウィンドウオブジェクトの慣性移動効果がシミュレートされる。【選択図】図４
2013533550.tif 000002
【特許請求の範囲】
【請求項１】
入力デバイスの初期接触動作を監視し、初期接触座標と接触時間を記録し、第１のタイマーを開始するステップＡと、
ウィンドウオブジェクトをドラッグする過程において、ユーザが入力デバイスを介してスクリーンで生じさせた前時点からの変位量と回転量を取得するイベントを、第１のタイマーによって周期的にトリガーし、取得された変位量と回転量をウィンドウオブジェクトに伝送するステップＢと、
ユーザがウィンドウオブジェクトをリリースする際に、ウィンドウオブジェクトの線速度の初速度と角速度の初速度を取得し、第２のタイマーを開始するステップＣと、
前記線速度の初速度と角速度の初速度に基づいて、線速度の減速度と角速度の減速度からウィンドウオブジェクトの現在の変位量と回転量を取得するイベントを、第２のタイマーによって周期的にトリガーし、取得された現在の変位量と回転量をウィンドウオブジェクトに伝送するステップＤと、
第２のタイマーの現在の時間における線速度の初速度と角速度の初速度が０以下である場合、ウィンドウオブジェクト慣性移動処理を中止するステップＥと
を含むことを特徴とするウィンドウオブジェクト慣性移動の実現方法。
【請求項２】
ユーザは、一つ又は複数の接触点で入力デバイスを介して前記ウィンドウオブジェクトをドラッグし、
接触点が複数の場合、デバイス番号が最小である２つの接触点で前記変位量と回転量を取得することを特徴とする
請求項１に記載のウィンドウオブジェクト慣性移動の実現方法。
【請求項３】
接触点が一つの場合、
ステップＢの前記変位量と回転量の取得においては、
Ｔｉ−１からＴｉまでの変位量（ΔＸ，ΔＹ）は、次式
（ΔＸ，ΔＹ）＝（Ｘｉ−Ｘｉ−１，Ｙｉ−Ｙｉ−１）
で表され、
ここで、（Ｘｉ，Ｙｉ）は第１のタイマーのＴｉ時間における接触点の座標ベクトルであり、（Ｘｉ−１，Ｙｉ−１）は第１のタイマーのＴｉ−１時間における接触点の座標ベクトルであり、
Ｔｉ−１からＴｉまでの回転量αｉは、次式
αｉ＝ａｒｃｏｓ［ｕｉ．ｖｉ／（｜ｕｉ｜｜ｖｉ｜）］
で表され、
ここで、回転中心座標はウィンドウオブジェクトの中心座標（Ｃｘ，Ｃｙ）であり、ｕｉは第１のタイマーのＴｉ時間における接触点座標と回転中心座標との間のベクトルであり、即ちｕｉ＝（Ｘｉ−Ｃｘ，Ｙｉ−Ｃｙ）であり、ｖｉは第１のタイマーのＴｉ−１時間における接触点座標と回転中心座標との間のベクトルであり、即ちｖｉ＝（Ｘｉ−１−Ｃｘ，Ｙｉ−１−Ｃｙ）であり、
ステップＣの前記線速度の初速度Ｖと角速度の初速度Ｖａの取得においては、
線速度の初速度Ｖは、次式
Ｖ＝（Ｘｎ−Ｘｎ−１，Ｙｎ−Ｙｎ−１）／（Ｔｎ−Ｔｎ−１）＝（Ｘｎ−Ｘｎ−１，Ｙｎ−Ｙｎ−１）／Δｔ
で表され、
ここで、（Ｘｎ，Ｙｎ）は、入力デバイスがウィンドウオブジェクトをリリースした際、第１のタイマーの最後の時間であるＴｎ時間における接触点の座標ベクトルであり、（Ｘｎ−１，Ｙｎ−１）は、Ｔｎ−１時間における接触点の座標ベクトルであり、Δｔは、第１のタイマーのタイミング間隔であり、
角速度の初速度Ｖａは、次式
Ｖａ＝ａｒｃｏｓ［ｕｎ．ｖｎ／（｜ｕｎ｜｜ｖｎ｜）］／（Ｔｎ−Ｔｎ−１）＝ａｒｃｏｓ［ｕｎ．ｖｎ／（｜ｕｎ｜｜ｖｎ｜）］／Δｔ
で表され、
ここで、ｕｎは、入力デバイスがウィンドウオブジェクトをリリースした際、第１のタイマーのＴｎ時間における接触点座標（Ｘｎ，Ｙｎ）と回転中心座標（Ｃｘ，Ｃｙ）との間のベクトルであり、即ちｕｎ＝（Ｘｎ−Ｃｘ，Ｙｎ−Ｃｙ）であり、ｖｎは第１のタイマーのＴｎ−１時間における接触点座標と回転中心座標との間のベクトルであり、即ちｖｎ＝（Ｘｎ−１−Ｃｘ，Ｙｎ−１−Ｃｙ）である
ことを特徴とする請求項２に記載のウィンドウオブジェクト慣性移動の実現方法。
【請求項４】
接触点が複数の場合、
ステップＢの前記変位量と回転量の取得においては、
Ｔｉ−１からＴｉまでの変位量（ΔＸ，ΔＹ）は、次式
（ΔＸ，ΔＹ）＝（ＣＸｉ−ＣＸｉ−１，ＣＹｉ−ＣＹｉ−１）
で表され、
ここで、（ＣＸｉ，ＣＹｉ）、（ＣＸｉ−１，ＣＹｉ−１）はそれぞれ、デバイス番号が最小である２つの接触点の第１のタイマーのＴｉ時間とＴｉ−１時間に対応する中心点座標であり、
Ｔｉ−１からＴｉまでの回転量αｉは、次式
αｉ＝ａｒｃｏｓ［ｕｉ．ｖｉ／（｜ｕｉ｜｜ｖｉ｜）］
で表され、
ここで、ｕｉは第１のタイマーのＴｉ時間におけるデバイス番号が最小である２つの点によって形成されたベクトルであり、ｖｉは第１のタイマーのＴｉ−１時間におけるデバイス番号が最小である２つの接触点によって形成されたベクトルであり、
ステップＣの線速度の初速度Ｖと角速度の初速度Ｖａの取得においては、
線速度の初速度Ｖは、次式
Ｖ＝（ＣＸｎ−ＣＸｎ−１，ＣＹｎ−ＣＹｎ−１）／（Ｔｎ−Ｔｎ−１）＝（ＣＸｎ−ＣＸｎ−１，ＣＹｎ−ＣＹｎ−１）／Δｔ
で表され、
ここで、（ＣＸｎ，ＣＹｎ）、（ＣＸｎ−１，ＣＹｎ−１）は、それぞれ、入力デバイスがウィンドウオブジェクトをリリースした際に、デバイス番号が最小である２つの接触点の第１のタイマーの最後の時間であるＴｎ時間とＴｎ−１時間において形成されたベクトルの中心点座標であり、Δｔは第１のタイマーのタイミング間隔であり、
角速度の初速度Ｖａは、次式
Ｖａ＝ａｒｃｏｓ［ｕｎ．  ｖｎ／（｜ｕｎ｜｜ｖｎ｜）］／（Ｔｎ−Ｔｎ−１）＝ａｒｃｏｓ［ｕｎ．  ｖｎ／（｜ｕｎ｜｜ｖｎ｜）］／Δｔ
で表され、
ここで、ｕｎは、入力デバイスがウィンドウオブジェクトをリリースした際、第１のタイマーの最後の時間であるＴｎ時間におけるデバイス番号が最小である２つの接触点によって形成されたベクトルであり、ｖｎはＴｎ−１時間におけるデバイス番号が最小である２つの接触点によって形成されたベクトルである
ことを特徴とする請求項２に記載のウィンドウオブジェクト慣性移動の実現方法。
【請求項５】
ステップＤの前記線速度の減速度と角速度の減速度からのウィンドウオブジェクトの現在の変位量と回転量の取得においては、
第２のタイマーの第Ｔｉ時間に対応する変位量（ΔＸ，ΔＹ）は、次式
（ΔＸ，ΔＹ）＝（Ｖｉ−Ｖｄｅｃ＊Ｔｇ）＊Ｔｇ
で表され、
第２のタイマーの第Ｔｉ時間に対応する回転量αｉは、次式
αｉ＝（Ｖａｉ−Ｖａｄｅｃ＊Ｔｇ）＊Ｔｇ
で表され、
ここで、Ｖｄｅｃは線速度の減速度であり、Ｖａｄｅｃは角速度の減速度であり、Ｖｉは第２のタイマーの第Ｔｉ時間における線速度の初速度であり、Ｖａｉは第２のタイマーのＴｉ時間における角速度の初速度であり、Ｔｇは第２のタイマーのタイミング間隔であり、入力デバイスがウィンドウオブジェクトをリリースした後の第２のタイマーの１番目の時間における線速度の初速度と角速度の初速度は、ステップＣで取得された線速度の初速度と角速度の初速度である
ことを特徴とする請求項１〜４のいずれか１項に記載のウィンドウオブジェクト慣性移動の実現方法。
【請求項６】
入力デバイスがスクリーンドでウィンドウオブジェクトをドラッグする動作を取得し、対応する制御情報を生成する接触点取得ユニットと、
接触点取得ユニットにから送信された制御情報に応じて、ウィンドウオブジェクトのドラッグ効果を実現し、入力デバイスがウィンドウオブジェクトをリリースする際に、線速度の初速度と角速度の初速度を取得し、取得した線直速度の初速度と角速度の初速度を慣性処理ユニットに送信するドラッグ処理ユニットと、
ドラッグ処理ユニットから送信された線速度の初速度と角速度の初速度に基づいて、線速度の減速度と角速度の減速度から慣性移動効果を実現する慣性処理ユニットと
を含むことを特徴とするウィンドウオブジェクト慣性移動の実現装置。
【請求項７】
前記接触点取得ユニットによって生成された前記制御情報は、
入力デバイスが最初にウィンドウオブジェクトに接触するときの、位置と、時間と、デバイス番号と、ウィンドウオブジェクトの最初の接触を示す識別子とを含む入力デバイス初期制御情報と、
入力デバイスがウィンドウオブジェクトを移動させるときの、位置と、時間と、デバイス番号と、ウィンドウオブジェクトのドラッグを示す識別子とを含む入力デバイス動向制御情報と、
入力デバイスがウィンドウオブジェクトを移動するときの、位置と、時間と、デバイス番号と、ウィンドウオブジェクトのリリースを示す識別子とを含む入力デバイスリリース制御情報と
を含むことを特徴とする請求項６に記載のウィンドウオブジェクト慣性移動の実現装置。
【請求項８】
前記ドラッグ処理ユニットは、
接触点取得ユニットから送信された初期制御情報を受信した場合に第１のタイマーを開始し、接触点取得ユニットから送信された動向制御情報から、前記第１のタイマーのトリガーに従って第１のタイマーの現在の時間におけるウィンドウオブジェクトの変位量と回転量を取得し、取得した変位量と回転量をウィンドウオブジェクトに送信する第１移動処理ユニットと、
接触点取得ユニットから送信されたリリース制御情報を受信した後、線速度の初速度と角速度の初速度を取得し、取得した線速度の初速度と角速度の初速度を慣性処理ユニットに送信する初速度処理ユニットと
を含むことを特徴とする請求項６又は７に記載のウィンドウオブジェクト慣性移動の実現装置。
【請求項９】
接触点が一つの場合に、
前記第１移動処理ユニットによる前記変位量と回転量の取得においては、
Ｔｉ−１からＴｉまでの変位量（ΔＸ，ΔＹ）は、次式
（ΔＸ，ΔＹ）＝（Ｘｉ−Ｘｉ−１，Ｙｉ−Ｙｉ−１）
で表され、
ここで、（Ｘｉ，Ｙｉ）は第１のタイマーのＴｉ時間における接触点の座標ベクトルであり、（Ｘｉ−１，Ｙｉ−１）は第１のタイマーのＴｉ−１時間おける接触点に対応する座標ベクトルであり、
Ｔｉ−１からＴｉまでの回転量αは、次式
α＝ａｒｃｏｓ［ｕｉ．ｖｉ／（｜ｕｉ｜｜ｖｉ｜）］
で表され、
ここで、回転中心座標はウィンドウオブジェクトの中心座標（Ｃｘ，Ｃｙ）であり、ｕｉは第１のタイマーのＴｉ時間に対応する接触点座標と回転中心座標との間のベクトルであり、即ちｕｉ＝（Ｘｉ−Ｃｘ，Ｙｉ−Ｃｙ）であり、ｖｉは第１のタイマーのＴｉ−１時間における接触点座標と回転中心座標との間のベクトルであり、即ちｖｉ＝（Ｘｉ−１−Ｃｘ，Ｙｉ−１−Ｃｙ）であり、
前記初速度処理ユニットによる前記線速度の初速度Ｖと角速度の初速度Ｖａの取得においては、
線速度の初速度Ｖは、次式
Ｖ＝（Ｘｎ−Ｘｎ−１，Ｙｎ−Ｙｎ−１）／（Ｔｎ−Ｔｎ−１）＝（Ｘｎ−Ｘｎ−１，Ｙｎ−Ｙｎ−１）／Δｔ
で表され、
ここで、（Ｘｎ，Ｙｎ）は、入力デバイスがウィンドウオブジェクトをリリースした際、第１のタイマーの最後の時間であるＴｎ時間における接触点の座標ベクトルであり、（Ｘｎ−１，Ｙｎ−１）はＴｎ−１時間における接触点の座標ベクトルであり、Δｔは第１のタイマーのタイミング間隔であり、
角速度の初速度Ｖａは、次式
Ｖａ＝ａｒｃｏｓ［ｕｎ．  ｖｎ／（｜ｕｎ｜｜ｖｎ｜）］／（Ｔｎ−Ｔｎ−１）＝ａｒｃｏｓ［ｕｎ．ｖｎ／（｜ｕｎ｜｜ｖｎ｜）］／Δｔ
で表され、
ここで、ｕｎは第１のタイマーのＴｎ時間における接触点座標（Ｘｎ，Ｙｎ）と回転中心座標（Ｃｘ，Ｃｙ）との間のベクトルであり、即ちｕｎ＝（Ｘｎ−Ｃｘ，Ｙｎ−Ｃｙ）であり、ｖｎは第１のタイマーのＴｎ−１時間における接触点座標と回転中心座標との間のベクトルであり、即ちｖｎ＝（Ｘｎ−１−Ｃｘ，Ｙｎ−１−Ｃｙ）であり、
接触点が複数の場合に、
前記第１移動処理ユニットによる前記変位量と回転量の取得においては、
Ｔｉ−１からＴｉまでの変位量（ΔＸ、ΔＹ）は、次式
（ΔＸ、ΔＹ）＝（ＣＸｉ−ＣＸｉ−１，ＣＹｉ−ＣＹｉ−１）
で表され、
ここで、（ＣＸｉ，ＣＹｉ）、（ＣＸｉ−１，ＣＹｉ−１）は、それぞれ、デバイス番号が最小である２つの接触点の第１のタイマーのＴｉ時間とＴｉ−１時間における中心点座標であり、
Ｔｉ−１からＴｉまでの回転量αｉは、次式
αｉ＝ａｒｃｏｓ［ｕｉ．  ｖｉ／（｜ｕｉ｜｜ｖｉ｜）］
で表され、
ここで、ｕｉは第１のタイマーのＴｉ時間におけるデバイス番号が最小である２つの点によって形成されたベクトルであり、ｖｉは第１のタイマーのＴｉ−１時間におけるデバイス番号が最小である２つの点によって形成されたベクトルであり、
前記初速度処理ユニットによる前記線速度の初速度Ｖと角速度の初速度Ｖａの取得においては
線速度の初速度Ｖは、次式
Ｖ＝（ＣＸｎ−ＣＸｎ−１，ＣＹｎ−ＣＹｎ−１）／（Ｔｎ−Ｔｎ−１）＝（ＣＸｎ−ＣＸｎ−１，ＣＹｎ−ＣＹｎ−１）／Δｔ
で表され、
ここで、（ＣＸｎ，ＣＹｎ）、（ＣＸｎ−１，ＣＹｎ−１）はそれぞれ、入力デバイスがウィンドウオブジェクトをリリースした際に、デバイス番号が最小である２つの接触点の第１のタイマーの最後の時間であるＴｎ時間とＴｎ−１期間において形成されたベクトルの中心点座標であり、Δｔは第１のタイマーのタイミング間隔であり、
角速度の初速度Ｖａは、次式
Ｖａ＝ａｒｃｏｓ［ｕｎ．  ｖｎ／（｜ｕｎ｜｜ｖｎ｜）］／（Ｔｎ−Ｔｎ−１）＝ａｒｃｏｓ［ｕｎ．  ｖｎ／（｜ｕｎ｜｜ｖｎ｜）］／Δｔ
で表され、
ここで、ｕｎは、入力デバイスがウィンドウオブジェクトをリリースした際に、第１のタイマーの最後の時間であるＴｎ時間におけるデバイス番号が最小である２つの接触点によって形成されたベクトルであり、ｖｎはＴｎ−１時間におけるデバイス番号が最小である２つの接触点によって形成されたベクトルである
ことを特徴とする請求項８に記載のウィンドウオブジェクト慣性移動の実現装置。
【請求項１０】
前記慣性処理ユニットによる前記線速度の減速度と角速度の減速度からのウィンドウオブジェクトの現在の変位量と回転量の取得においては、
第２のタイマーのＴｉ時間における変位量（ΔＸ，ΔＹ）は、次式
（ΔＸ，ΔＹ）＝（Ｖｉ−Ｖｄｅｃ＊Ｔｇ）＊Ｔｇ
で表され、
第２のタイマーのＴｉ時間における回転量αｉは、次式
αｉ＝（Ｖａｉ−Ｖａｄｅｃ＊Ｔｇ）＊Ｔｇ
で表され、
ここで、Ｖｄｅｃは線速度の減速度であり、Ｖａｄｅｃは角速度の減速度であり、Ｖｉは第２のタイマーのＴｉ時間における線速度の初速度であり、Ｖａｉは第２のタイマーのＴｉ時間における角速度の初速度であり、Ｔｇは第２のタイマーのタイミング間隔であり、入力デバイスがウィンドウオブジェクトをリリースした後の第２のタイマーの１番目の時間における線速度の初速度と角速度の初速度はステップＣで取得された線速度の初速度と角速度の初速度である
ことを特徴とする請求項８に記載のウィンドウオブジェクト慣性移動の実現装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、タッチスクリーン装置のソフトウェア操作インターフェースの設計技術に関し、特に、ウィンドウオブジェクト慣性移動の実現方法及び実現装置に関する。
【背景技術】
【０００２】
近年、インターネットインスタントメッセージツールは、数多くのネットワーク市民に受け入れられ、ユーザにとって必要不可欠なソフトウェアツールとなっている。
【０００３】
このインターネットインスタントメッセージツールは、娯楽のみならず、仕事でも広く使用されている。このため、インスタントメッセージ（ＩＭ：Instant Messsaging）ソフトウェアの使いやすさ、安定性、安全性等に対して高い要求が存在する。
【０００４】
技術の発展につれて、ｉＰｈｏｎｅ（登録商標）等のタッチ製品は次第に普及している。慣性を用いて実体化（realize materialization）を実現する設計が徐々に主流になっている。
【０００５】
慣性を用いて実体化を実現する従来の設計では、ユーザは直線的なタッチ操作により、線速度に基づくリストやウェブページの慣性的スクロールを実現できるが、回転の場合での「角速度」に基づく慣性効果を処理させることができない。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
これに鑑みて、本発明の主な目的は、ウィンドウオブジェクトの線速度と角速度に基づく慣性移動効果を実現するためのウィンドウオブジェクト慣性移動の実現方法及び実現装置を提供することにある。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明の技術的スキームは、以下のように実現される。
【０００８】
ウィンドウオブジェクト慣性移動の実現方法は、
入力デバイスの初期接触動作を監視し、初期接触座標と接触時間を記録し、第１のタイマーを開始するステップＡと、
ウィンドウオブジェクトをドラッグする過程において、ユーザが入力デバイスを介してスクリーンで生じさせた前時点からの変位量と回転量を取得するイベントを、第１のタイマーによって周期的にトリガーし、取得された変位量と回転量をウィンドウオブジェクトに伝送するステップＢと、
ユーザがウィンドウオブジェクトをリリースする際に、ウィンドウオブジェクト線速度の初速度と角速度の初速度を取得し、第２のタイマーを開始するステップＣと、
前記線速度の初速度と角速度の初速度に基づいてして、線速度の減速度と角速度の減速度からウィンドウオブジェクトの現在の変位量と回転量を取得するイベントを、第２のタイマーによって周期的にトリガーし、取得された現在の変位量と回転量をウィンドウオブジェクトに伝送するステップＤと、
第２のタイマーの現在の時間における線速度の初速度と角速度の初速度が０以下である場合、ウィンドウオブジェクト慣性移動処理を中止するステップＥとを含む。
【０００９】
更に、前記方法において、ユーザは、一つ又は複数の接触点で入力デバイスを介して前記ウィンドウオブジェクトをドラッグし、接触点が複数の場合、デバイス番号が最小である２つの接触点で前記変位量と回転量を取得する。
【００１０】
上記方法に基づいて、本発明は、ウィンドウオブジェクト慣性移動の実現装置を更に提供する。
【００１１】
ウインドウオブジェクト慣性移動の実現装置は、
入力デバイスがスクリーンドでウィンドウオブジェクトをドラッグする動作を取得し、対応する制御情報を生成する接触点取得ユニットと、
接触点取得ユニットから送信された制御情報に応じて、ウィンドウオブジェクトのドラッグ効果を実現し、入力デバイスがウィンドウオブジェクトをリリースする際に、線速度の初速度と角速度の初速度を取得し、取得した線速度の初速度と角速度の初速度を慣性処理ユニットに送信するドラッグ処理ユニットと、
ドラッグ処理ユニットから送信された線速度の初速度と角速度の初速度に基づいて、線速度の減速度と角速度の減速度から慣性移動効果を実現する慣性処理ユニットとを含む。
【００１２】
更に、前記接触点取得ユニットによって生成された前記制御情報は、
入力デバイスが最初にウィンドウオブジェクトに接触するときの、位置と、時間と、デバイス番号と、ウィンドウオブジェクトの最初の接触を示す識別子とを含む入力デバイス初期制御情報と、
入力デバイスがウィンドウオブジェクトを移動させるときの、位置と、時間と、デバイス番号と、ウィンドウオブジェクトのドラッグを示す識別子とを含む、入力デバイス動向制御情報と、
入力デバイスがウィンドウオブジェクトを移動するときの、位置と、時間と、デバイス番号と、ウィンドウオブジェクトのリリースを示す識別子とを含む入力デバイスリリース制御情報とを含む。
【００１３】
更に、前記ドラッグ処理ユニットは、
接触点取得ユニットから送信された初期制御情報を受信した場合に第１のタイマーを開始し、接触点取得ユニットから送信された動向制御情報から、前記第１のタイマーのトリガーに従って第１のタイマーの現在の時間におけるウィンドウオブジェクトの変位量と回転量を取得し、取得した変位量と回転量をウィンドウオブジェクトに送信する第１移動処理ユニットと、
接触点取得ユニットから送信されたリリース制御情報を受信した後、線速度の初速度と角速度の初速度を取得し、取得した線速度の初速度と角速度の初速度を慣性処理ユニットに送信する初速度処理ユニットとを含む。
【００１４】
本発明に係る技術的解決法の適用によって、ウィンドウオブジェクトの線速度と角速度に基づく慣性移動効果が実現され、操作が容易になり、実体化のインターフェースと操作を介して、ターミナルソフトウェアの使いやすさが向上し、ユーザ体験が改善される。
【図面の簡単な説明】
【００１５】
【図１】本発明に係るウィンドウオブジェクト慣性移動効果を実現する装置の構造の模式図である。
【図２】接触点が一つの場合の変位量と回転量の取得に係るベクトルダイアグラムである。
【図３】接触点が複数の場合の変位量と回転量の取得に係るベクトルダイアグラムである。
【図４】本発明に係るウィンドウオブジェクトの移動についてのフローチャートである。
【発明を実施するための形態】
【００１６】
本発明の基本的な着想は、ユーザがマウス又は指でウィンドウオブジェクトを移動させるプロセスに基づいて、実体化処理を実行し、ユーザがドラッグ操作を終了させた後、慣性処理ユニットを介して、マウスのドラッグボタンがリリースされたとき又は、指が離されたとき線速度と角速度から、移動オブジェクトの慣性移動を実現する。
【００１７】
本発明における移動オブジェクトとは、例えば、マウス又はタッチスクリーンに基づく指のドラッグ動作に応答可能なウィンドウオブジェクトインスタンスである。前記ウィンドウオブジェクトは自身のインターフェース属性、方法属性及びデータ属性を有し、ウィンドウインターフェースのトリガーイベントに応答できる。
【００１８】
例えば、Ｗｉｎｄｏｗオペレーティングシステムを例にとると、ウィンドウオブジェクトは連絡先情報を表示するウィンドウとすることができる。ウィンドウオブジェクトはユーザによるクリックや移動操作に応答するイベントファンクションを有し、幅（Ｗｉｄｔｈ）や高さ（Ｈｅｉｇｈｔ）、ウィンドウ中心点を回転中心とする回転角度（Ａｎｇｌｅ）、ウィンドウ中心点の横座標（ＣｅｎｔｅｒＸ）、ウィンドウ中心点の縦座標（ＣｅｎｔｅｒＹ）といったインターフェース属性を含む。
【００１９】
記載の便宜のために、以下の説明では、動作場面はユーザが指又はマウスを用いてインスタントメッセージの連絡先で代表されるウィンドウオブジェクトインスタンス（記載の便宜のために、以下、ウィンドウオブジェクトと略称する）を移動させるものとする。ユーザが一定の速度でウィンドウオブジェクトを移動させ、瞬間的に指又はマウスボタンを離すと、ウィンドウオブジェクトは慣性の作用によってそれまでの移動軌跡に沿って、移動と回転を継続し、摩擦力（減速度）の作用によって次第に静止状態となる。
【００２０】
本発明の目的、技術的解決法及び利点が明らかになるように、以下、実施形態を挙げて、且つ図面を参照して、本発明を更に詳しく説明する。
【００２１】
図１は本発明に係るウィンドウオブジェクト慣性移動効果を実現する装置の構造の模式図である。この装置は接触点取得ユニット１０１、ドラッグ処理ユニット１０２及び慣性処理ユニット１０３を含む。
【００２２】
接触点取得ユニット１０１は、入力デバイスがスクリーンでウィンドウオブジェクトをドラッグする操作を取得し、対応する制御情報を生成する。
【００２３】
前記入力デバイスは、タッチスクリーン、マウス、ワードパッド等のウィンドウ移動を実現できる装置を含む。
【００２４】
前記制御情報は、（１）入力デバイスがウィンドウオブジェクトに最初に接触したときの位置、時間、デバイス番号、ウィンドウオブジェクトへの初期接触を示す識別子等を含む。入力デバイス初期制御情報を含む。
【００２５】
また、前記制御情報は、（２）入力デバイスがウィンドウオブジェクトを移動させているときの位置、時間、デバイス番号、ウィンドウオブジェクトをドラッグしていることを示す識別子等を含む入力デバイス動向制御情報を含む。
【００２６】
また、前記制御情報は、（３）入力デバイスがウィンドウオブジェクトをリリースし、ドラッグを終了させるときの位置、時間、デバイス番号、ウィンドウオブジェクトをリリースすることを示す識別子等を含む入力デバイスリリース制御情報を含む。
【００２７】
接触点取得ユニット１０１は、本発明に係る前記装置とオペレーティングシステムとの間のインターフェースユニットである。接触点取得ユニット１０１は、オペレーティングシステムのウィンドウオブジェクトに対する動作をリアルタイムに監視し、入力デバイスによって生成された制御情報を取得し、制御情報をドラッグ処理ユニットに伝送する。ドラッグ処理ユニットは
ウィンドウオブジェクトに対するドラッグ効果を実現する。
【００２８】
例えば、マウス又は指が押され、移動された場合に、接触点取得ユニット１０１は、マウスの押圧イベント又は指のタッチイベントを取得して、ドラッグ処理ユニット１０２に初期制御情報を送信する。初期制御情報は接触点の位置座標、現在の時間、デバイス番号、ウィンドウオブジェクトのドラッグのためにマウスの左ボタン又は指が押されたことを識別する識別子等を含む。
【００２９】
前記デバイス番号は、異なる入力デバイスを区別することに用いられ、マルチタッチの場合には、例えばユーザが同時に２つの指を用いてウィンドウオブジェクトにタッチすると、異なる時点でタッチスクリーンに接触した指に対応するデバイス番号は異なる。
【００３０】
ドラッグ処理ユニット１０２は、接触点取得ユニット１０１から送信された制御情報に応じて、ウィンドウオブジェクトのドラッグ効果を実現する。
【００３１】
前記ドラッグ処理ユニット１０２は、第１の移動処理ユニットと初速度処理ユニットを含む。
【００３２】
第１の移動処理ユニットは、接触点取得ユニット１０１から送信された初期制御情報を受信した場合に、第１のタイマーＴｉｍｅｒ１を開始する。第１の移動処理ユニットは、Ｔｉｍｅｒ１によるトリガーに従って、接触点取得ユニット１０１から送信された動向制御情報から、Ｔｉｍｅｒ１の現在の時間におけるウィンドウオブジェクトの変位量と回転量を取得し、取得した変位量と回転量をウィンドウオブジェクトに送信する。
【００３３】
初速度処理ユニットは、接触点取得ユニット１０１から送信されたリリース制御情報を受信した後、線速度の初速度と角速度の初速度を取得し、取得した線速度の初速度と角速度の初速度を慣性処理ユニットに送信する。
【００３４】
ウィンドウオブジェクトのドラッグ効果を実現する方法は、具体的には、
（１）ドラッグ処理ユニット１０２が、接触点取得ユニット１０１から送信された初期制御情報を受信した後、初期接触点の位置座標情報（Ｘ０，Ｙ０）、初期接触時間Ｔ０及びデバイス番号を記録する。
【００３５】
（２）マウス又は指が押され、移動するとき、ドラッグ処理ユニット１０２は時間Δｔ毎にマウス又は指の位置（Ｘｉ，Ｙｉ）、現在の時間Ｔｉ及びデバイス番号を記録し、前回の記録時点に対する変位量と回転量を取得し、相対的な変位量と回転量をウィンドウオブジェクトに送信する。ウィンドウオブジェクトはドラッグ効果を実現するための自身の属性値を設定する。
【００３６】
例えば、ウィンドウオブジェクトの中心座標属性が（ＣｅｎｔｅｒＸ，ＣｅｎｔｅｒＹ）であり、回転角度属性がＡｎｇｌｅであり、Ｔｉ時間にウィンドウオブジェクトから取得された現在の変位量が（ΔＸ，ΔＹ）であり、現在の回転量がαである場合に、ウィンドウオブジェクトは自身の中心座標属性値と回転角度属性値を以下のように設定する。
【００３７】
ＣｅｎｔｅｒＸ＝ＣｅｎｔｅｒＸ＋ΔＸ  
ＣｅｎｔｅｒＹ＝ＣｅｎｔｅｒＹ＋ΔＹ
Ａｎｇｌｅ＝Ａｎｇｌｅ＋α
【００３８】
ウィンドウオブジェクトは、上記の中心座標属性値と回転角度属性値を設定することによって、ウィンドウオブジェクトのインターフェース再描画ファンクションをトリガーし、新たな座標位置において新たな回転角度でウィンドウオブジェクトを表示する。
【００３９】
（３）入力デバイスがウィンドウオブジェクトをリリースした場合、即ちマウスのボタンがリリースされ、又は指が離された場合、接触点取得ユニット１０１はリリース制御情報をドラッグ処理ユニット１０２に送信する。ドラッグ処理ユニット１０２はリリース前のＴｉｍｅｒ１の最後の時間において取得された変位量と回転量に従って、線速度の初速度と角速度の初速度を取得する。
【００４０】
上記変位量、回転量、線速度の初速度、角速度の初速度の取得は、シングルポイント接触とマルチポイント接触との２種類のケースに分けられる。
【００４１】
（１）図２に示すようにシングルポイント接触の場合、変位量、回転量、線速度の初速度、角速度の初速度の取得方法は、以下のようになる。
【００４２】
Ｔｉ−１からＴｉまでの変位量（ΔＸ，ΔＹ）は次式で表される。
（ΔＸ，ΔＹ）＝（Ｘｉ−Ｘｉ−１，Ｙｉ−Ｙｉ−１）
ここで、（Ｘｉ，Ｙｉ）はＴｉｍｅｒ１のＴｉ時間における接触点の座標ベクトルであり、（Ｘｉ−１，Ｙｉ−１）はＴｉｍｅｒ１のＴｉ−１時間における接触点の座標ベクトルである。
【００４３】
Ｔｉ−１からＴｉまでの回転量αは、次式で表される。
α＝ａｒｃｏｓ［ｕｉ．ｖｉ／（｜ｕｉ｜｜ｖｉ｜）］
ここで、回転中心座標はウィンドウオブジェクトの中心座標（Ｃｘ，Ｃｙ）であり、ｕｉはＴｉｍｅｒ１のＴｉ時間における接触点座標と回転中心座標との間のベクトルであり、即ちｕｉ＝（Ｘｉ−Ｃｘ，Ｙｉ−Ｃｙ）となる。ｖｉはＴｉｍｅｒ１のＴｉ−１時間における接触触点座標と回転中心座標との間のベクトルであり、即ちｖｉ＝（Ｘｉ−１−Ｃｘ，Ｙｉ−１−Ｃｙ）となる。
【００４４】
入力デバイスがウィンドウオブジェクトをリリースした際の線速度の初速度Ｖは、次式で表される。
Ｖ＝（Ｘｎ−Ｘｎ−１，Ｙｎ−Ｙｎ−１）／（Ｔｎ−Ｔｎ−１）＝（Ｘｎ−Ｘｎ−１，Ｙｎ−Ｙｎ−１）／Δｔ
ここで、（Ｘｎ，Ｙｎ）は、入力デバイスがウィンドウオブジェクトをリリースした際、Ｔｉｍｅｒ１の最後の時間であるＴｎ時間における接触点の座標ベクトルであり、（Ｘｎ−１，Ｙｎ−１）はＴｎ−１時間における接触点の座標ベクトルである。
【００４５】
Δｔを基準単位時間に設定すると、上記の式は次式のように単純化することができる。
Ｖ＝（Ｘｎ−Ｘｎ−１，Ｙｎ−Ｙｎ−１）
【００４６】
入力デバイスがウィンドウオブジェクトをリリースした際の角速度の初速度Ｖａは次式で表される。
Ｖａ＝ａｒｃｏｓ［ｕｎ．ｖｎ／（｜ｕｎ｜｜ｖｎ｜）］／（Ｔｎ−Ｔｎ−１）＝ａｒｃｏｓ［ｕｎ．  ｖｎ／（｜ｕｎ｜｜ｖｎ｜）］／Δｔ
ここで、ｕｎはＴｉｍｅｒ１のＴｎ時間における接触点座標（Ｘｎ，Ｙｎ）と回転中心座標（Ｃｘ，Ｃｙ）との間のベクトルであり、即ちｕｎ＝（Ｘｎ−Ｃｘ，Ｙｎ−Ｃｙ）である。ｖｎはＴｉｍｅｒ１のＴｎ−１時間における接触点座標と回転中心座標との間のベクトルであり、即ちｖｎ＝（Ｘｎ−１−Ｃｘ，Ｙｎ−１−Ｃｙ）である。
【００４７】
Δｔを基準単位時間に設定すると、上記の式は次式のように単純化することができる。
Ｖａ＝ａｒｃｏｓ［ｕｎ．ｖｎ／（｜ｕｎ｜｜ｖｎ｜）］
【００４８】
（２）図３に示すようにマルチポイント接触の場合、デバイス番号が最小である２つの点のみが考慮され、変位量、回転量、線速度の初速度、角速度の初速度の取得方法次のようになる。
【００４９】
仮に、デバイス番号が最小である２つの接触点の、Ｔｉｍｅｒ１のＴｉ−１時間における座標が（Ｘｉ−１，ｄ０，Ｙｉ−１，ｄ０）と（Ｘｉ−１，ｄ１，Ｙｉ−１，ｄ１）であり、Ｔｉ時間における座標が（Ｘｉ，ｄ０，Ｙｉ，ｄ０）と（Ｘｉ，ｄ１，Ｙｉ，ｄ１）であるとする。ここで、ｄ０とｄ１はデバイス番号である。この２つの接触点のＴｉ−１時間とＴｉ時間における中心の座標ベクトルはそれぞれ、次式で表される。
（ＣＸｉ，ＣＹｉ）＝（（Ｘｉ，ｄ０＋Ｘｉ，ｄ１）／２，（Ｙｉ，ｄ０＋Ｙｉ，ｄ１）／２）
（ＣＸｉ−１，ＣＹｉ−１）＝（（Ｘｉ−１，ｄ０＋Ｘｉ−１，ｄ１）／２，（Ｙｉ−１，ｄ０＋Ｙｉ−１，ｄ１）／２）
【００５０】
Ｔｉ−１からＴｉまでの変位量（ΔＸ，ΔＹ）は次式で表される。
（ΔＸ，ΔＹ）＝（ＣＸｉ−ＣＸｉ−１，ＣＹｉ−ＣＹｉ−１）
【００５１】
入力デバイスがウィンドウオブジェクトをリリースするときの、Ｔｉｍｅｒ１のＴｎ時間に対応する線速度の初速度Ｖは次式で表される。
Ｖ＝（ＣＸｎ−ＣＸｎ−１，ＣＹｎ−ＣＹｎ−１）／（Ｔｎ−Ｔｎ−１）＝（ＣＸｎ−ＣＸｎ−１，ＣＹｎ−ＣＹｎ−１）／Δｔ
ここで、（Ｘｎ，ＣＹｎ）、（ＣＸｎ−１，ＣＹｎ−１）はそれぞれ、入力デバイスがウィンドウオブジェクトをリリースするときに、デバイス番号が最小である２つの接触点のＴｉｍｅｒ１の最後の時間であるＴｎ時間とＴｎ−１時間に形成されたベクトルの中心点座標であり、ΔｔはＴｉｍｅｒ１のタイミング間隔である。
【００５２】
Δｔを基準単位時間に設定すると、上記の式を次式のように単純化することができる。
Ｖ＝（ＣＸｎ−ＣＸｎ−１，ＣＹｎ−ＣＹｎ−１）
【００５３】
マルチポイント接触の場合、回転量を取得する際に、デバイス番号が最小である２つの接触点のみが考慮される。、Ｔｉ−１時間における２つの接触点を結ぶ線と、Ｔｉ時間における２つの接触点を結ぶ線の交点は回転量を取得する際の中心点となる。
【００５４】
Ｔｉ時間における２つの接触点の座標が（Ｘｉ，ｄ０，Ｙｉ，ｄ０）と（Ｘｉ，ｄ１，Ｙｉ，ｄ１）であり、Ｔｉ−１時間における２つの接触点の座標が（Ｘｉ−１，ｄ０，Ｙｉ−１，ｄ０）と（Ｘｉ−１，ｄ１，Ｙｉ−１，ｄ１）である場合、回転量を取得するための回転中心座標は、次式で表される。
（Ｃｘ，Ｃｙ）＝（（Ｘｉ，ｄ０＋Ｘｉ，ｄ１）／２，（Ｙｉ，ｄ０＋Ｙｉ，ｄ１）／２）
【００５５】
Ｔｉ−１からＴｉまでの回転量αｉは、次式で表される。
αｉ＝ａｒｃｏｓ［ｕｉ．  ｖｉ／（｜ｕｉ｜｜ｖｉ｜）］
ここで、ｕｉはＴｉｍｅｒ１のＴｉ時間におけるデバイス番号が最小である２つの接触点によって形成されたベクトル（Ｘｉ，ｄ０−Ｘｉ，ｄ１，Ｙｉ，ｄ０−Ｙｉ，ｄ１）である。ｖｉはＴｉｍｅｒ１のＴｉ−１時間におけるデバイス番号が最小である２つの接触点によって形成されたベクトル（Ｘｉ−１，ｄ０−Ｘｉ−１，ｄ１，Ｙｉ−１，ｄ０−Ｙｉ−１，ｄ１）である。
【００５６】
入力デバイスがウィンドウオブジェクトをリリースするときの、Ｔｉｍｅｒ１のＴｎ時間に対応する回転量角速度の初速度Ｖａは、次式で表される。
Ｖａ＝ａｒｃｏｓ［ｕｎ．ｖｎ／（｜ｕｎ｜｜ｖｎ｜）］／（Ｔｎ−Ｔｎ−１）＝ａｒｃｏｓ［ｕｎ．  ｖｎ／（｜ｕｎ｜｜ｖｎ｜）］／Δｔ
ここで、ｕｎは入力デバイスがウィンドウオブジェクトをリリースするときの、Ｔｉｍｅｒ１の最後の時間であるＴｎ時間における、デバイス番号が最小である２つの接触点によって形成されたベクトル（Ｘｎ，ｄ０−Ｘｎ，ｄ１，Ｙｎ，ｄ０−Ｙｎ，ｄ１）である。ｖｎはＴｎ−１時間における、デバイス番号が最小である２つの接触点によって形成されたベクトル（Ｘｎ−１，ｄ０−Ｘｎ−１，ｄ１，Ｙｎ−１，ｄ０−Ｙｎ−１，ｄ１）である。
【００５７】
Δｔを基準単位時間に設定すると、上記の式を次式のように単純化することができる。
Ｖａ＝ａｒｃｏｓ［ｕｎ．ｖｎ／（｜ｕｎ｜｜ｖｎ｜）］
【００５８】
慣性処理ユニット１０３は、入力デバイスがウィンドウオブジェクトをリリースした後、即ちユーザがドラッグ操作を終了させた後に慣性移動効果を実現する。慣性処理ユニット１０３はドラッグ処理ユニット１０２から送信されたリリース制御情報を受信した後、第２のタイマーＴｉｍｅｒ２を開始し、時間Ｔｇの各時間毎にタイマー処理ファンクションを一回トリガーする。
【００５９】
慣性処理ユニット１０３は、タイマー処理ファンクションにおいて、Ｔｉｍｅｒ２の現在の時間における線速度の初速度と角速度の初速度から現在の時間内の変位量と回転量を取得し、取得した現在の時間内の変位量と回転量をウィンドウオブジェクトに送信する。ウィンドウオブジェクトは自身の属性を設定し、慣性移動効果を実現する。
【００６０】
Ｔｉｍｅｒ２のＴｉ時間に対応する線速度の初速度Ｖｉは、次式で表される。
Ｖｉ＝Ｖｉ−１−Ｖｄｅｃ＊Ｔｇ
ここで、Ｖｄｅｃは線速度の減速度であり、この値は実際の情況に応じてユーザ又はシステムにより予め設定されてもよい。この値は、線速度の摩擦係数を調整することに相当する。
【００６１】
入力デバイスがウィンドウオブジェクトをリリースした後のＴｉｍｅｒ２の最初の時間において、Ｖ１はドラッグ処理ユニット１０２から送信された線速度の初速度Ｖである。ＴｇはＴｉｍｅｒ２の間隔であり、この値はユーザ又はシステムにより予め設定されてよい。
【００６２】
Ｔｉｍｅｒ２のＴｉ時間における角速度の初速度Ｖａｉは次式で表される。
Ｖａｉ＝Ｖａｉ−１−Ｖａｄｅｃ＊Ｔｇ
ここで、Ｖａｄｅｃは角速度の減速度であり、この値は実際の情況に応じてユーザ又はシステムにより予め設定されてもよい。この値は、角速度の摩擦係数を調整することに相当する。
【００６３】
入力デバイスがウィンドウオブジェクトをリリースした後のＴｉｍｅｒ２の最初の時間において、Ｖａ１はドラッグ処理ユニット１０２から送信された角速度の初速度Ｖａである。
【００６４】
Ｔｉｍｅｒ２のＴｉ時間に対応する変位量（ΔＸ，ΔＹ）は、次式で表される。
（ΔＸ，ΔＹ）＝（Ｖｉ−Ｖｄｅｃ＊Ｔｇ）＊Ｔｇ＝（Ｖｉ．Ｘ−Ｖｄｅｃ＊Ｔｇ，Ｖｉ．Ｙ−Ｖｄｅｃ＊Ｔｇ）＊Ｔｇ
ここで、ＶｉはＴｉｍｅｒ２のＴｉ時間における線速度の初速度ベクトルであり、ＴｇはＴｉｍｅｒ２のタイミング間隔である。
【００６５】
Ｔｉｍｅｒ２のＴｉ時間における回転量αｉは、次式で表される。
αｉ＝（Ｖａｉ−Ｖａｄｅｃ＊Ｔｇ）＊Ｔｇ
ここで、ＶａｉはＴｉｍｅｒ２のＴｉ時間における角速度の初速度である。
【００６６】
ＴｇとΔｔとが等しく、且つΔｔを基準単位時間に設定すると、上記の式を次式のように単純化することができる。
（ΔＸ，ΔＹ）＝（Ｖｉ．Ｘ−Ｖｄｅｃ，Ｖｉ．Ｙ−Ｖｄｅｃ）
αｉ＝（Ｖａｉ−Ｖａｄｅｃ）
【００６７】
Ｔｇ＝Δｔ、即ちＴｇが慣性処理とウィンドウオブジェクト位置の更新時のサンプリングスピードの単位時間であるΔｔと等しい場合、計算量を大幅に削減することができる。
【００６８】
上記式により取得された現在の時間のウィンドウオブジェクトの慣性移動の変位量と回転量が０以下である場合、慣性処理は終了する。
【００６９】
ウィンドウオブジェクトは、慣性処理ユニット１０３から送信された変位量と回転量を受信した後、自身の中心座標属性値と回転角度属性値を次式のように設定する。
【００７０】
ＣｅｎｔｅｒＸ＝ＣｅｎｔｅｒＸ＋ΔＸ
ＣｅｎｔｅｒＹ＝ＣｅｎｔｅｒＹ＋ΔＹ
Ａｎｇｌｅ＝Ａｎｇｌｅ＋α
【００７１】
インターフェース再描画ファンクションは、中心座標属性値と回転角度属性値を設定することにより、トリガーされ、新たな座標位置において新たな回転角度でウィンドウオブジェクトを表示し、これにより慣性移動効果を実現する。
【００７２】
図４は本発明に係るウィンドウオブジェクトの移動方法のフローチャートであり、以下のステップを含む。
【００７３】
ステップ４０１：入力デバイスの初期接触動作を監視し、初期制御情報を取得する。
このステップでは、触点取得ユニットが入力デバイスの初期接触動作を監視し、初期接触動作を監視した後、初期制御情報をドラッグ処理ユニットに送信する。
【００７４】
前記入力デバイスは、マウス、タッチスクリーン、ワードパッド等のウィンドウオブジェクト移動機能を有する入力デバイスを含む。入力デバイスが異なると、生成されるシステムメッセージも異なる。例えば、マウスがウィンドウオブジェクトの移動をトリガーすることを示すシステムメッセージは、マウスの左ボタンがが押されて移動されることであってもよい。
【００７５】
タッチスクリーンがウィンドウオブジェクトの移動をトリガーすることを示すシステムメッセージは、指が押されて移動されることであってもよい。
【００７６】
前記初期接触動作とは、ウィンドウオブジェクトを移動させるために、ユーザが最初にマウスの左ボタンを押すクリック操作であり、又は最初に指でタッチスクリーンを押す操作である。
前記初期制御情報は、初期接触点の位置、時間、デバイス番号、ボタンコード等を含む。
【００７７】
ステップ４０２：初期制御情報を記録し、第１のタイマーＴｉｍｅｒ１を開始し、タイミング間隔をΔｔとして設定する。Δｔは実際の情況に応じてユーザ又はシステムにより予め設定される。
【００７８】
ドラッグ処理ユニットは、接触点取得ユニットから送信された初期制御情報を受信した後、前記初期制御情報を記録し、Ｔｉｍｅｒ１を開始する。Ｔｉｍｅｒ１はウィンドウオブジェクトの変位量（ΔＸ，ΔＹ）と回転量αを算出するイベントファンクションを周期的にトリガーする。これにより、現在の時間において入力デバイスによってスクリーンにおいて生成された変位量と回転量が取得される。
【００７９】
ステップ４０３：Ｔｉｍｅｒ１のタイミング時間が満了した場合、動向制御情報を取得し、現在の時間においてユーザによって入力デバイスを介してスクリーンで生成された変位量と回転量が取得される。
【００８０】
このステップを実行する前提条件は、ユーザが入力デバイスの押圧操作を維持し、静止させ、又はウィンドウオブジェクトをドラッグさせることである。触点取得ユニットは、監視された入力デバイスによって生成されたシステムメッセージを動向制御情報（位置、時間、デバイス番号等を含む）に変換してドラッグ処理ユニットに連続的に送信する。
【００８１】
ドラッグ処理ユニットはローカルにキャッシュされた動向制御情報をリアルタイムに更新し、各Ｔｉｍｅｒ１のタイミング時間が満了する毎に動向制御情報を記録する。この履歴はスクリーン上における入力デバイスの動きの軌跡（ジェスチャー）を反映し、入力デバイスＴｉｍｅｒ１の現在の時間におけるウィンドウオブジェクトの変位量と回転量が取得される。
【００８２】
ステップ４０４：ウィンドウオブジェクトは、取得された変位量と回転量に従って、ウィンドウオブジェクトのスクリーンでの位置と回転角度を調整する。
ドラッグ処理ユニットは、現在の時点の変位量と回転量を取得した後、それをウィンドウオブジェクトに伝送する。ウィンドウオブジェクトは自身の中心点座標と自身の中心点座標に対する回転角度の属性値を設定することによって、ウィンドウ再描画プロセスをトリガーし、これによりドラッグ効果が実現される。
【００８３】
ステップ４０５：入力デバイスがウィンドウオブジェクトをリリースするか、即ちユーザがマウスボタンをリリースし、又は指を離してドラッグ動作を終了させるかどうかが判断されるウィンドウオブジェクトがリリースされる場合、ステップ４０６が実行され、ウィンドウオブジェクトがリリースされない場合、ステップ４０３が実行される。
【００８４】
このステップでは、接触点取得ユニットが、入力デバイスがウィンドウオブジェクトをリリースするかを監視する。リリース情報が検出された後、接触点取得ユニットは直ちにリリース制御情報をドラッグ処理ユニットに送信する。前記リリース制御情報はリリース時刻の位置、時間、デバイス番号等の情報を含む。
【００８５】
ステップ４０６：ドラッグ操作が終了された場合、Ｔｉｍｅｒ１の最後の時間であるＴｎ時間に対応する線速度の初速度Ｖと角速度の初速度Ｖａが取得され、Ｔｉｍｅｒ１を停止する。
【００８６】
ドラッグ処理ユニットは、制御情報の履歴に従って、入力デバイスがウィンドウオブジェクトをリリースした際に、Ｔｉｍｅｒ１の最後の時間であるＴｎ時間における線速度の初速度Ｖと角速度の初速度Ｖａを取得する。取得方法は上述したため、詳細な記載はここでは省略する。ドラッグ処理ユニットは、取得した初速度Ｖと角速度の初速度Ｖａを慣性処理ユニットに送信する。
【００８７】
ステップ４０７：第２のタイマーＴｉｍｅｒ２が開始され、タイミング間隔がＴｇに設定される。
このステップでは、慣性処理ユニットは、ＶとＶａを受信した後、第２のタイマーＴｉｍｅｒ２を開始する。Ｔｉｍｅｒ２は、入力デバイスがウィンドウオブジェクトをリリースした後の慣性移動効果を実現することに用いられる。
【００８８】
ステップ４０８：Ｔｉｍｅｒ２のタイミング時間が満了する度に、線速度の減速度Ｖｄｅｃと角速度の減速度Ｖａｄｅｃからウィンドウオブジェクトの現在の変位量と回転量が取得される。現在の時刻の位置が記録され、次のタイミング時間のために、線速度の初速度Ｖと角速度の初速度Ｖａが算出される。
【００８９】
このステップでは、慣性処理ユニットは、予め設定されたＶｄｅｃとＶａｄｅｃに従って、入力デバイス、Ｔｉｍｅｒ２の現在のタイミング時間において、入力デバイスがウィンドウオブジェクトをリリースした後にウィンドウオブジェクトが前方へ移動し続けるための変位量と回転量を取得する。取得方法は上述したため、詳細な記載はここでは省略する。
【００９０】
Ｔｉｍｅｒ２の次のタイミング時間の線速度の初速度Ｖと角速度の初速度Ｖａの取得方法は、次式で表される。
Ｖｉ＝Ｖｉ−１−Ｖｄｅｃ＊Ｔｇ；Ｖａｉ＝Ｖａｉ−１−Ｖａｄｅｃ＊Ｔｇ
【００９１】
ステップ４０９：慣性移動が終了したかが判断され、終了した場合、プロセスを終了させ、終了していない場合、ステップ４１０を実行する。
【００９２】
慣性移動が終了したかを判断するステップでは、ステップ４０８で取得されたＶｉとＶａｉが０以下であるかが判断される。、０以下である場合、Ｔｉｍｅｒ２は停止され、慣性移動処理は終了する。一方の値が０以下であるが、他方の値が依然として０より大きい場合、他方値に対して慣性処理を行う必要がある。
【００９３】
例えば、Ｖｉが０以下であるが、Ｖａｉが０より大きい場合、Ｔｉｍｅｒ２の現在の時間と後続の時間では変位量はいずれも０であり、回転量は０ではない。慣性移動処理は、両者とも現在の時間で０以下となるまで終了しない。
【００９４】
ステップ４１０：ウィンドウオブジェクトは、取得された変位量と回転量に従って、ウィンドウオブジェクトのスクリーンでの位置と回転角度を調整し、慣性移動効果を実現する。そして再びステップ４０８が実行される。
【００９５】
以上は、本発明の最適な実施形態であり、本発明の保護範囲を制限するものではない。
【図１】
2013533550.tif 000003
【図２】
2013533550.tif 000004
【図３】
2013533550.tif 000005
【図４】
2013533550.tif 000006
【国際調査報告】
2013533550.tif 000007
2013533550.tif 000008
2013533550.tif 000009
2013533550.tif 000010