FAQ – Wacom feel™ Multi-Touch API

LINEで送る

INDEX

1 サポートされるタブレット
2 feel™ Multi- Touch SDK
3 対象読者
3.1 このFAQの対象読者は誰ですか?
4 Wacom feel™ Multi-Touchタブレット機能
4.1 Wacom feel™ Multi-Touch APIの主な機能は何ですか?
4.2 ペン使用時にマルチタッチタブレットは手のひらによるタッチをリジェクトしますか(手のひら検出、手検出、または手首検出とも呼ばれる)?
4.3 ペンデータとタッチデータを一緒に(同時に)使用できますか?
4.1 ワイヤレスアクセサリーの使用時にパフォーマンスまたは機能セットは減少しますか?
5 Wacom feel™ Multi-Touch APIの使用
5.1 どのビルド環境がサポートされていますか?
5.2 Wacom feel™ Multi-Touch API用のソフトウェア開発を始めるために必要なものは何ですか?
5.3 Wacom feel™ Multi-Touch APIを使用するために必要なものは何ですか? SDKまたはライブラリをプロジェクトに組み込む必要はありますか?
5.4 Wacom feel™ Multi-Touch APIは、第1世代のBambooペンおよびタッチ製品と連携しますか?
5.5 Wacom feel™ Multi-Touch APIサンプルアプリケーションはどこで入手できますか?
5.6 feel™ Multi-touch API用のSDKをどのようにダウンロードできますか?
5.7 Wacom feel™ Multi-Touch APIを介して、どの種類のタッチデータをタブレットから取得できますか?
5.8 このタッチデータをどのように使用できますか?
5.9 Wacom feel™ Multi-Touch APIによってサポートされる主な操作モードは何ですか?
5.10 コンシューマモードとオブザーバモードの違いは何ですか?
5.11 パームリジェクションはどのように機能しますか?「タッチ信頼性ビット」とは何ですか?
5.12 拡張ジェスチャーおよびカスタマイズ可能ジェスチャーをどのように作成できますか?これらのジェスチャーを作成するためのツールは、Wacomで提供されていますか?
5.13 Wacomジェスチャーエンジンは、どのようにAPIと連携しますか?
5.14 アプリケーションは、Wacomのシステム全体の「ユーザー構成可能ジェスチャー」や、カスタムアプリケーション固有のタッチ機能をどのようにサポートできますか?
5.15 手のひらをタブレットに置いているときに、ジェスチャーまたはフィンガーデータ入力のために指でタッチする場合、Wacom feel™ Multi-Touch APIは手のひらを識別してリジェクトできますか?
5.16 Wacomタブレット用の機能の設計時に、使用するモデル番号を取得できないのはなぜですか?
5.17 APIが変更および改良されても、アプリケーションは旧バージョンのAPIと連携しますか?
5.18 フレームカウントとは何ですか、またどのように使用しますか?
6 アプリケーション設計上の考慮事項
6.1 Wacom feel™ Multi-Touch APIを使用する場合の重要な設計上の考慮事項は何ですか?
6.2 素早い滑らかなタッチ体験を作るためのヒントは何ですか?
6.3 フィンガーデータからジェスチャーを設計するための推奨事項は何ですか?
6.4 ペンをタッチと同時に使用するための推奨事項は何ですか?
6.5 Cintiq(液晶ペンタブレット)とIntuos(ペンタブレット)で、タッチ機能の設計方法に違いはありますか?
7 Mac固有の環境でのAPIの使用法
7.1 AppleのタッチAPI(NSEvent、NSTouch)から、どのWacomデータを取得できますか?
7.2 Wacomのハードウェア用のマルチタッチの指位置認識アプリケーションをどのように作成できますか?
7.3 Appleトラックパッドハードウェア上では、指1本のジェスチャーでカーソルが移動します。Wacomドライバで指コールバックを有効にしても、Wacomハードウェア上での指1本のジェスチャーは、マウスを駆動せず、指コールバックにフィードされます。
7.4 Mac OSでは、どのジェスチャーがサポートされていますか?
8 Windows固有の環境でのAPIの使用法
8.1 Wacom feel™ Multi-Touch APIは、WM_GESTUREイベント(アプリケーションによって処理される標準のWindows 7 OSレベルのイベント)を介したWindows 7ネイティブのマルチタッチをサポートしていますか?
8.2 Wacom feel™ Multi-touch APIを使用して、Windows 8 Metroアプリケーション用のタッチ機能またはジェスチャーを設計できますか?
8.3 Win8タッチAPIとWacom feel(tm) Multi-touch APIの違いは何ですか?
9 よくある問題
9.1 Windowsのよくあるビルドの問題は、以下のとおりです。
9.2 Macのよくあるビルドの問題は、以下のとおりです。
9.3 ペンを持つ手を使用してジェスチャーを完了しようとすると、ジェスチャータッチが登録されないか、ジェスチャータッチが断続的になります。
9.4 タッチコールバックが多すぎてアプリケーションに負荷がかかり、コールバックが遅れたり応答しなくなったりします。この状態をどのように修正できますか?
10 Web App Plugin
10.1 Wacom Web App Pluginとは何ですか?
10.2 Wacom Web App Pluginでサポートされているのは、どのブラウザですか?

詳細

1 サポートされるタブレット

以下の表は、Wacom feel™ Multi-Touch APIによってサポートされるWacomタッチ対応タブレットと、サポートされるタッチデータの種類を示しています。

データの種類についての説明:

  • ペン/タッチ同時検出 – ペンデータとタッチデータを同時に検出できます。これにより、ユーザが片方の手でペン入力を行いながら、もう片方の手でタッチ機能(描画キャンバスの回転など)を実行しても、アプリケーションは応答できます。
  • 信頼性ビット – フィンガータッチポイントデータパケット内のtrue/falseフラグで、タブレットドライバソフトウェアがフィンガーデータをアルゴリズムによって「有効」と判別したかどうかを示します。 たとえば、ユーザがペンで描画している間に手のひらをタブレットに置いているために発生するタッチはfalse(信頼性なし)と判別されます。これにより、アプリケーションは、そのようなタッチに対してパームリジェクションを実行できます。
  • タッチポイントデータ – 各指の位置、サイズ、および信頼性を示すフィンガータッチデータ。
  • BLOBデータ – 各指の輪郭を示すフィンガータッチデータ。
  • RAWデータ – すべてのタブレットポイントを示すタブレットタッチセンサーデータ(タッチしているかどうか)。

詳しくは、Wacom feel™ Multi-Touch APIの資料 を参照してください。

タブレットモデル タブレット名 ペン/タッチ同時検出 APIでの信頼性ビットのサポート タッチポイントデータ BLOBデータ RAWデータ 指ごとの1秒あたりのタッチポイントの概数(指は5本以下) タッチデータをサポートする最初のドライババージョン(Windows/Mac)
CTH-460 Bamboo Pen & Touch 非対応 非対応 非対応 非対応 非対応 50 該当なし
CTH-461 Bamboo Craft Pen & Touch 非対応 非対応 非対応 非対応 非対応 50 該当なし
CTH-661 Bamboo Fun Medium Pen & Touch 非対応 非対応 非対応 非対応 非対応 50 該当なし
CTH-470 Bamboo Capture 非対応 非対応 対応 非対応 非対応 50 5.2.5 / 5.2.6
CTH-670 Bamboo Create 非対応 非対応 対応 非対応 非対応 50 5.2.5 / 5.2.6
PTH-450 Intuos5 Small 対応 対応 対応 非対応 非対応 100 6.3.2 / 6.3.2
PTH-650 Intuos5 Medium 対応 対応 対応 非対応 非対応 100 6.3.2 / 6.3.2
PTH-850 Intuos5 Large 対応 対応 対応 非対応 非対応 100 6.3.2 / 6.3.2
DTH-2400 Cintiq 24HDT Pen and Touch Display 対応 対応 対応 対応 対応 100 6.3.3 / 6.3.3
DTH-2200 Cintiq 22HD touch 対応 対応 対応 対応 対応 100 6.3.5 / 6.3.5
DTH-2242 DTH-2242 対応 対応 対応 対応 対応 100 6.3.5 / 6.3.5
DTH-A1300 Cintiq Companion Hybrid 対応 対応 対応 対応 対応 100 6.3.6 / 6.3.6
CTH-480 Intuos PT S 非対応 対応 対応 非対応 非対応 100 6.3.6 / 6.3.6
CTH-680 Intuos PT M 非対応 対応 対応 非対応 非対応 100 6.3.6 / 6.3.6
PTH-451 Intuos pro S 対応 対応 対応 非対応 非対応 100 6.3.6 / 6.3.6
PTH-651 Intuos pro M 対応 対応 対応 非対応 非対応 100 6.3.6 / 6.3.6
PTH-851 Intuos pro L 対応 対応 対応 非対応 非対応 100 6.3.6 / 6.3.6
DTH-W1300 Cintiq Companion 対応 対応 対応 対応 対応 100 6.3.7 / 6.3.7
DTH-2700 Cintiq 27QHD Touch Pen and Touch Display 対応 対応 対応 非対応 非対応 100 6.3.10/6.3.10
DTH-1300 Creative Pen and Touch Display 対応 対応 対応 対応 対応 100 6.3.11/6.3.11
DTH-W1310 Cintiq Companion 2 対応 対応 対応 対応 対応 100 6.3.11/6.3.11

表1 – Wacom Multi-Touch API でサポートされるタブレット

2 feel™ Multi-Touch SDK

Wacom’s feel™ Multi-Touchアプリケーションプログラミングインターフェース(API)を使用すると、Wacomタッチタブレットの強力な指検出および位置機能を使用するアプリケーションを作成できます。この指情報ストリームを使用して、アプリケーションの固有の機能(カスタムジェスチャーまたはオブジェクトの直接オンスクリーン操作など)を作成します。
Wacom’s feel™ Multi-Touch SDKは、ソフトウェアアプリケーションが、Wacom feel™ Multi-Touchでサポートされるタブレットに接続してフィンガータッチデータを受信できるようにするAPIです。エンドユーザがタブレットにタッチすると、各指のタッチデータがWacom feel™ Multi-Touch APIを流れます。このタッチデータストリームを使用して、ご使用のデスクトップまたはWebアプリケーションの固有の機能およびジェスチャーを作成します。
Wacom feel™ Multi-Touch SDKは、Wacomから無償で入手可能で、現在は表1にリストされているタブレットで機能します。

3 対象読者

3.1 このFAQの対象読者は誰ですか?

このFAQの目的は、ソフトウェア開発者が、Wacom feel™ Multi-Touch APIを使用してタッチサポートをアプリケーションに組み込むのを支援することです。

4 Wacom feel™ Multi-Touchタブレット機能

4.1 Wacom feel™ Multi-Touch APIの主な機能は何ですか?

このAPIは、以下をサポートしています。

  • 指ごとの接触データ。各指のタッチポイントの情報は、Wacom feel™ Multi-Touch APIアプリケーションに流れます。
  • 指以外の接触のためのパームリジェクション。
  • 指ごとの信頼性データ。
  • サポートされるタブレット上のタッチBLOBデータ。
  • サポートされるタブレット上のRAWタッチデータ。
  • アプリケーションは、最適な操作のためにタッチデータとペンデータの両方を使用するように設計できます。
  • 「コンシューマモード」。単一のアプリケーションがすべてのタッチデータを処理できるようにします。
  • 「オブザーバモード」。複数のアプリケーションがすべてのタッチデータを処理できるようにし、処理(ジェスチャー認識など)のためにデータをシステムに渡します。

これらのサポートされる機能については、以下の説明を参照してください。
また、サポートされるすべての機能の完全な説明については、以下のAPIの資料も参照してください。
http://wdnet.jp/library/feelmulti-touch/wacom-feel-multi-touch/

4.2 ペン使用時にマルチタッチタブレットは手のひらによるタッチをリジェクトしますか(手のひら検出、手検出、または手首検出とも呼ばれる)?

タブレット(表1を参照)には、2つのモード(ペンまたはタッチ)のいずれか一方で機能し、ペンの先端または消しゴムの先端がタブレットに近接すると(近づくまたは接触すると)、手のひらまたは指によるタッチは無視されるモデルと、ペンおよびタッチ同時検出をサポートするモデルがあります。同時検出をサポートするタブレット用に、APIにはパームリジェクションプロパティが用意されています。

4.3 ペンデータとタッチデータを一緒に(同時に)使用できますか?

ペンおよびタッチ同時検出をサポートしているタブレットについては、表1を参照してください。

4.4 ワイヤレスキットの使用時にパフォーマンスまたは機能が低下しますか?

ワイヤレスキットを使用しても、製品の機能は低下しません。

5 Wacom feel™ Multi-Touch APIの使用

5.1 どのビルド環境がサポートされていますか?

Windowsの場合、以下のビルド環境がサポートされています。

  • Microsoft Visual Studio 2010

Macの場合、以下のビルド環境がサポートされています。

  • Xcode 3 & 4

5.2 Wacom feel™ Multi-Touch API用のソフトウェア開発を始めるために必要なものは何ですか?

Wacom feel™ Multi-Touch対応製品が必要です(表1を参照してください)。また、Wacom feel™ Multi-Touch SDKをダウンロードする必要もあります。これには、Wacom feel™ Multi-Touch APIを使用できるようにするための資料、プロジェクトファイル、およびサンプルコードが含まれています。

5.3 Wacom feel™ Multi-Touch APIを使用するために必要なものは何ですか? SDKまたはライブラリをプロジェクトに組み込む必要はありますか?

Wacom feel™ Multi-Touch APIサポートは、タブレットドライバソフトウェアの一部です。ドライバをインストールすることによって、APIを介してタブレットと通信するために必要なすべてのシステムコンポーネントが提供されます。SDK提供のヘッダーを使用してアプリケーションを作成すると、インストール済みのAPIシステムコンポーネントに動的にリンクできます。.LIBファイルは不要です。コードサンプルについては、http://wdnet.jp/library/feelmulti-touch/ を参照してください。

5.4Wacom feel™ Multi-Touch APIは、第1世代のBambooペン&タッチ製品と連携しますか?

いいえ、第1世代のBambooペン&タッチ製品用のタッチAPIはありません(製品モデル情報については、表1を参照してください)。

5.5 Wacom feel™ Multi-Touch APIサンプルアプリケーションはどこで入手できますか?

サンプルアプリケーションはマルチタッチAPIサポートに組み込まれていて、Wacom feel™ Multi-Touchデータを収集して使用するための方法を示しています。開発者は、SDKの資料をダウンロードすると、Mac、Windows、およびブラウザベースの環境用のサンプルコードをいくつか入手できます。
以下にアクセスしてください。 http://wdnet.jp/library/feelmulti-touch/

5.6 feel™ Multi-touch API用のSDKをどのようにダウンロードできますか?

feel™ Multi-touch APIは、ソフトウェアドライバによって提供されています。ドライバは、OSおよびタブレットの種類ごとに固有で、エンドユーザがタブレットをコンピューターにインストールするときにインストールされます。WDN( http://wdnet.jp/library/feelmulti-touch/ )からダウンロード可能なSDKには、このAPIを使用するための資料およびサンプルコードが含まれています。

5.7 Wacom feel™ Multi-Touch APIを介して、どの種類のタッチデータをタブレットから取得できますか?

APIによってサポートされるマルチタッチタブレットは、指ごとに少なくとも以下を報告します。

  • 指の状態(なし、アップ、ダウン、ホールド)
  • 指によるタッチの位置(x,y)
  • 指のサイズ(幅と高さ)

サポートされるタブレット(表1を参照)の場合、以下の追加のデータの種類がサポートされます。

  • BLOBデータ – 1つ以上のタッチ接触が検出された不規則な形の領域
  • RAWデータ – センサー用のすべてのデータ(非接触領域と接触領域を含む)

機能の詳細については、Wacom feel™ Multi-Touch APIの資料( http://wdnet.jp/library/feelmulti-touch/wacom-feel-multi-touch/ )を参照してください。

5.8 このタッチデータをどのように使用できますか?

このデータを使用して、ユーザと画面上のコンテンツとの直接対話(画面オブジェクトをタッチして何らかのアクションを実行する)を有効にする機能を作成できます。または、アプリケーションを駆動するジェスチャーを作成できます。マウスやキーボードを使わずに、指で夢中になれる体験ができます。Wacom feel™ Multi-Touch画面は、多くの接触点(1本または2本の指だけでなく、一度に複数の接触点)に同時に応答します。

5.9 Wacom feel™ Multi-Touch APIによってサポートされる主な操作モードは何ですか?

  • コンシューマモード – コンシューマモードでは、最前部のWacom feel™ Multi-Touch API対応アプリケーションがタッチデータを受信するための唯一のプロセスです。データは、ジェスチャー処理のために、システムまたは他のマルチタッチアプリケーションに渡されることはありません。
  • オブザーバモード – オブザーバモードでは、マルチタッチアプリケーションはタッチデータ(必要に応じてパース可能)を受信するように構成されています。タッチデータは、システムだけでなく、タブレットドライバのジェスチャー認識アルゴリズムにも送信されます(たとえば、カーソルナビゲーションのために)。実行中のすべてのWacom feel™ Multi-Touch API対応アプリケーションが、タッチデータを受信します。

アプリケーションがオブザーバモードでドライバにタッチデータを渡す場合、タブレットドライバはタッチデータを解釈して、タブレットおよびオペレーティングシステム用にジェスチャーを適切に認識します。サポートされるジェスチャーの説明については、タブレットのユーザーズガイドを参照してください。

5.10 コンシューマモードとオブザーバモードの違いは何ですか?

コンシューマモードは、タッチデータを使用して独自のジェスチャーまたは他の対話を定義する場合で、OSからの干渉が不要な場合に便利です。OSがカーソルを移動したり、メニューまたは他のダイアログと対話できる機能を提供したりしないため、アプリケーションでの作業がより多く必要になる場合があります。
オブザーバモードでは、タッチデータと対話する機能がアプリケーションに提供されます。次いで、データがOSに渡され、カーソルの移動や、ウィンドウのスコープ外の項目との対話などの作業が行われます。オブザーバモードは、アプリケーション内にクリック領域やボタンボックス領域を設定する場合に便利です。

5.11 パームリジェクションはどのように機能しますか?「タッチ信頼性ビット」とは何ですか?

パームリジェクションは、ユーザが使用しているアプリケーションで誤動作(意図しない描画や線など)が発生してしまう場合に、アプリケーションがタッチデータを無視できる機能のことです。APIは、アプリケーションが「信頼性ビット」を使用してパームリジェクションを組み込む機能をサポートしています。信頼性ビットは、単一の指のタッチデータ用のフラグです。これにより、タブレットドライバがタッチを意図的(有効)と見なすのか、偶発的(無効)と見なすのかが示されます。
多くの場合、信頼性ビットは、ペン入力とタッチ入力の両方を取り込むアプリケーションで使用されます。ペンの位置に近いタッチは信頼性なしと見なされます(右利きのユーザの場合で主にペンの右側でタッチが発生する場合)。信頼性ビットの別の使用法は、タッチによる接触が大きすぎる場合にフラグを立てることです。「大きすぎる」とは、およそ通常の指による接触を超えるような大きさのことです。信頼性ビットはすべてのフィンガータッチデータに付けられますが、アプリケーションはそれらを無視して、タッチが有効か無効化を判別する独自の基準を組み入れることができます。
アプリケーションがダウンイベントとアップイベントを突き合わせる必要がある場合は、信頼性のないデータを調べることが重要です。ほとんどのダウンイベントは、信頼性のない状態で発生するからです。
パームリジェクションを使用すると、多少の遅延が発生します。タッチが受けつけれられるまで、いくつかのフレームが必要になる場合があります。
タッチ信頼性ビットをサポートしているタブレットについては、表1を参照してください。

5.12 拡張ジェスチャーおよびカスタマイズ可能ジェスチャーをどのように作成できますか?これらのジェスチャーを作成するためのツールは、Wacomで提供されていますか?

開発者はWacom feel™ Multi-Touchデータを使用して、標準のOSジェスチャーの代わりに独自のジェスチャーを作成したり、標準のOSジェスチャーを独自の方法で拡張したりすることができます。Wacomは、このためのツールを提供していません。

5.13 Wacomジェスチャーエンジンは、どのようにAPIと連携しますか?

Wacom feel™ Multi-Touch APIは、ジェスチャーイベントを提供しません。ドライバによって生成されるジェスチャーイベントは、キーストロークイベントおよびマウスホイールイベントの形式で送信されます。ユーザは、一部のジェスチャーの出力をWacom Tablet Preference Paneを介して変更できます。アプリケーションがコンシューマモードのタッチデータに登録する場合、これらのイベントは生成されません。アプリケーションがタブレットドライバジェスチャーサポートを受けて、タッチデータ入力を処理する場合は、オブザーバモードのタッチデータに登録する必要があります。

5.14 アプリケーションは、Wacomのシステム全体の「ユーザー構成可能ジェスチャー」や、カスタムアプリケーション固有のタッチ機能をどのようにサポートできますか?

これを行うには、オブザーバモードを使用する必要があり、アプリケーションの必要に応じてOSからのイベントに応答する必要があります。

5.15 手のひらをタブレットに置いているときに、ジェスチャーまたはフィンガーデータ入力のために指でタッチする場合、Wacom feel™ Multi-Touch APIは手のひらを識別してリジェクトできますか?

一部のタブレットは、手のひらをタブレットに置いているときに、信頼性ビットを使用してfalse(リジェクト)条件を示すことができます(このビットをサポートするタブレットについては、表1を参照してください)。信頼性ビットをサポートしないタブレットの場合は、Wacom feel™ Multi-Touch APIを使用して、すべてのタッチが有効と解釈され報告されます。
マルチタッチアプリケーションが「オブザーバ」として設定されている場合は、タッチデータがタブレットドライバのジェスチャー認識プログラムにも渡されることに注意してください。このジェスチャー認識プログラムでは、ジェスチャーを判別する際に、ジェスチャー認識プログラムのアルゴリズムでタッチ信頼性ビットを使用する場合もあれば、使用しない場合もあります。

5.16 Wacomタブレット用の機能の設計時に、使用するモデル番号を取得できないのはなぜですか?

タッチケイパビリティー構造体によって提供される機能に基づいてタッチ対話を設計するのが、将来の互換性を確保するための最善の方法です。Wacomは、将来製品化するペンタブレットの同じ機能が、必ずこのAPIと連携するようにします。モデル番号に基づく設計は、新しいペンタブレットがリリースされると、そのタブレットは正常に動作しません。

5.17 APIが変更および改良されても、アプリケーションは旧バージョンのAPIと連携しますか?

連携する可能性は非常に高いです。互換性の維持は最優先事項だからです。Wacomは、新しいバージョンが発表されても旧バージョンのAPIのサポートを維持するよう努力を払います。バージョン互換性の問題については、WacomMTInitialize関数の戻り値を調べてください。

5.18 フレームカウントとは何ですか、またどのように使用しますか?

フレームカウント値は、接触の新しいパケットが検出されるたびに増やされます。パケット配信の速度は固定されているため、フレームカウント値を使用することによって、内部タイマー値に頼ることなく、接触が移動する速度を測定できます。フレームカウントを使用して、フレームがいつドロップされるかを識別することもできます。サポートされていないタブレットの場合、このプロパティはゼロを返します。

6 アプリケーション設計上の考慮事項

6.1 Wacom feel™ Multi-Touch APIを使用する場合の重要な設計上の考慮事項は何ですか?

Wacom feel™ Multi-Touch APIは、Mac、Winows、およびWebアプリケーションと連携するOSプラットフォーム間データ形式です。このAPIは、表1にリストされている互換タブレットと連携するように設計されています。また、将来の新しい機能の導入を見込んだ設計にもなっています。Wacom feel™ Multi-Touch APIを使用するようにソフトウェアアプリケーションを設計すれば、ご使用の機能は、Wacomから発表される将来の製品との整合性および互換性を保つことを確信できます。設計上の考慮事項のいくつかを以下に示します。

  • ユーザが創作活動に専念できるようにします。ペンタブレットの読取可能範囲内でのスワイプ、回転、ズームイン/アウトなどのジェスチャーをできる限り滑らかにします。
  • ペンタブレットの読取可能範囲内のタッチのレスポンスを最大限に引き出します。十分に間隔を空けた大きいメニュー、コントロール、およびスライダーなどを使用します。
  • ペンを利き手で使用している間は、利き手ではない方の手でメニューを制御できるようにします。利き手ではない方の手の近くにメニューを浮動させ、両手で簡単に操作できるようにします。
  • 制御は、メニューストリップではなくペン位置およびタッチ位置に置きます。

6.2 素早い滑らかなタッチ体験を作るためのヒントは何ですか?

ペンとタッチの両方を使用する対話の場合、ペンが範囲内にあるときにもタッチが機能できるようにすることは重要です。ペンとタッチの間で処理がぶつからないように制御する場合は、ペンの範囲内状況ではなくペンの筆圧を使用するのが最善です。たとえば、ペンの筆圧がゼロの間にタッチ入力を継続します。ペンがタブレットにタッチすると、筆圧はゼロより大きくなります。ペンが空中にある限り(筆圧はゼロ)、アプリケーションはタッチ入力の処理を継続できます。

6.3 フィンガーデータからジェスチャーを設計するための推奨事項は何ですか?

feel™ Multi-Touch APIを使用することの主な利点の1つは、ペンとタッチの両方を滑らかに処理できることです。ペンがタブレットの範囲内にある場合に、実装するタッチジェスチャーが妨害されないようにすることをお勧めします。これにより、ユーザはアプリケーションを操作する前にペンを範囲外に意識的に持ち上げる必要がないため、より自然なワークフローを実現できます。範囲内ビットをテストする代わりに、先端ビットを使用してジェスチャーをいつ停止するかを判断するのが最善です。
Windowsサンプルコードのデモ( http://wdnet.jp/library/feelmulti-touch/ )は、ジェスチャーサポートを実装していなくても、Wacom feel™ Multi-Touch APIとタブレットペンAPIの両方を同じアプリケーションに統合する例を示しています。

6.4 ペンをタッチと同時に使用するための推奨事項は何ですか?

ペンとタッチを同時に使用する場合、信頼性ビットに注意を払うのが最善です。これは、ペンを持っている手に起因するデータを無視する場合に、特に役立ちます。

6.5 Cintiq(液晶ペンタブレット)とIntuos(ペンタブレット)で、タッチ機能の設計方法に違いはありますか?

液晶ペンタブレット(Cintiqなど)とペンタブレット(Intuosなど)用のタッチ対応の設計時に考慮すべき最も重要なことは、液晶ペンタブレットは直接タッチであり、ペンタブレットは間接タッチであるということです。

間接タッチデバイスは、トラックパッドのように動作します。間接デバイスをタッチすると、カーソルは移動しますが、その位置で自動的にクリックが行われることはありません。指を動かすと、カーソルがカーソルの最終位置に対して相対的に移動します。複数のディスプレイが接続されている場合は、デスクトップ領域の任意の部分に手を伸ばすことができます。このモデルでは、ジェスチャーは、選択されているオブジェクトまたはフォーカスされているオブジェクトに影響を与えます。タブレットは相対的であり、特定のディスプレイにマッピングされていないため、フィンガーデータはタブレットの割合という単位で出力されます。一方、直接タッチデバイスは、単一ディスプレイ上でカーソルを移動します。これは、ユーザがタッチしている場所と1対1の関係にあります。ユーザが表面をタッチすると同時に、その位置でクリックが発生ます。この場合、ジェスチャーは、指の下にあるオブジェクトに影響を与えます。直接タッチデバイスからのフィンガーデータは、タブレットのマップ先のディスプレイスペースに出力されます。

feel™ Multi-Touch APIは、タッチデータを提供したタブレットについての情報を提供します。アプリケーションは常に、直接タブレットと間接タブレットの両方のデータを確認して処理する必要があります。デバイスケイパビリティーに提供されている情報を使用して、アプリケーションは指の位置データを個別のアプリケーションに最適の単位に変換できます。

7 Mac固有の環境でのAPIの使用法

7.1 AppleのタッチAPI(NSEvent、NSTouch)から、どのWacomデータを取得できますか?

AppleのタッチAPIは、マウスカーソルの位置とマウスクリック、スワイプ、ズーム、回転、およびスクロールの各ジェスチャーを提供します。
スワイプ、ズーム、および回転は、Wacomタブレットドライバ(Appleイベントの特別処理)によって提供されています。
Wacomは、これらのジェスチャーのためのタッチ座標を提供していません。(NSTouchによって指の位置を発行するMagic Trackpadとは異なります。)NSTouchによって提供されるデバイスディメンションにアクセスできないため、Wacomがその構造体にアクセスすることはできません。

7.2 Wacomのハードウェア用のマルチタッチの指位置認識アプリケーションをどのように作成できますか?

Wacom feel™ Multi-Touch APIを使用して、フィンガータッチポイントについての情報を受け取って、これらをアプリケーション内で使用します。
たとえば、直接指先で写真をズームおよび回転できる写真アプリケーションを実装するには、指座標が必要です。iPhone式のスクロール(コンテンツが指の直下で移動する)を実装するには、指座標が必要です。

7.3 Appleトラックパッドハードウェア上では、指1本のジェスチャーでカーソルが移動します。Wacomドライバで指コールバックを有効にしても、Wacomハードウェア上での指1本のジェスチャーは、マウスを駆動せず、指コールバックにフィードされます。

これは正しい動作です。Wacom feel™ Multi-Touch APIは、タッチについての情報をアプリケーションに返しますが、マウス、ジェスチャーなどのロジックは実行しません。これにより、アプリケーションは、このデータの処理方法を柔軟に決定できます。たとえば、指1本でキャンバスに色を付けているとします。ただし、アプリケーションが、ジェスチャーを必要とするモードになっている場合は、データをAppleジェスチャーエンジンに渡すか、アプリケーション内でデータをジェスチャーとして解釈し、適切に処理してください。

7.4 Mac OSでは、どのジェスチャーがサポートされていますか?

タブレットでサポートされているジェスチャーについては、ご使用のタブレットのユーザーズガイドを参照してください。Wacom feel™ Multi-Touch APIでは、ジェスチャー認識はサポートされていないことに注意してください。

8 Windows固有の環境でのAPIの使用法

8.1 Wacom feel™ Multi-Touch APIは、WM_GESTUREイベント(アプリケーションによって処理される標準のWindows 7 OSレベルのイベント)を介したWindows 7ネイティブのマルチタッチをサポートしていますか?

いいえ、APIはWindows WM_GESTUREイベントをサポートしていません。しかし、「オブザーバ」として構成されているマルチタッチアプリケーションを作成して、これらのイベントのフック(Windowsから渡される)を提供することができます。また、オブザーバとして、アプリケーションはデータがシステムに渡されるようにします。Windowsは、ジェスチャーを検出すると(指2本のスクロールなど)、関与するアプリケーションにWM_GESTUREイベントを送信します。マルチタッチアプリケーションが「コンシューマ」として構成されている場合、Windowsはタッチデータを認識せず、WM_GESTUREイベントを発行しません。
タブレットでサポートされているジェスチャー(Wacom feel™ Multi-Touch APIではなく、タブレットドライバソフトウェアによって認識されるジェスチャー)については、ご使用のタブレットのユーザーズガイドを参照してください。

8.2 Wacom feel™ Multi-touch APIを使用して、Windows 8 Metroアプリケーション用のタッチ機能またはジェスチャーを設計できますか?

いいえ、Metroアプリケーションはアクセスが制限されているため、Wacomのライブラリにリンクできません。Metroアプリケーションには、WindowsタッチAPIを使用してください。

8.3 Win8タッチAPIとWacom feel™ Multi-touch APIの違いは何ですか?

Wacom feel™ Multi-touch APIは、他のOS(Windows 7、Mac OS Xなど)のサポートを追加します。また、ペンと同時に作動するタッチ機能をアプリケーションで設計できるようにします。プラットフォーム間開発のための標準インターフェースが提供されています。

9 よくある問題

9.1 Windowsのよくあるビルドの問題は、以下のとおりです。

  • C++アプリケーションをビルドするには、ご使用のVisual Studio 2010プロジェクトにWacomMultiTouch.cppを追加し、WacomMultiTouch.hのインクルードパスを正しい位置を指すように変更する必要があります(これらのファイルは両方とも、Wacom_feel_SDK.zipとWacomMT_Scribble.zipのデモに含まれています)。
  • ビルドには不要ですが、SDKを使用してビルドされたアプリケーションの実行は、WacomMT.dllがWindowsシステムフォルダ内で見つかるかどうかに依存しています。このDLLは、SDKには含まれておらず、タブレットドライバソフトウェアと共にインストールされます。

9.2 Macのよくあるビルドの問題は、以下のとおりです。

  • WacomMultitouch.frameworkをプロジェクトに追加する必要があります。

9.3 ペンを持つ手を使用してジェスチャーを完了しようとすると、ジェスチャータッチが登録されないか、ジェスチャータッチが断続的になります。

ペンの先端および消しゴムの先端が、描画表面に近接していない(接していない、または近くにない)ことを確認してください。

9.4 タッチコールバックが多すぎてアプリケーションに負荷がかかり、コールバックが遅れたり応答しなくなったりします。この状態をどのように修正できますか?

タブレットタッチデータは、高解像度で、ユーザエクスペリエンスを最適化するために1秒あたり100回のレポートが行われます。このデータストリームには、指の位置と、「ダウン」、「アップ」、または「ホールド」などの指の状態が含まれています。Wacom feel™ Multi-Touch APIは、アプリケーションのパフォーマンス要件に応じることはできず、最高速度で報告を行います。滑らかな制御と最上の体験を実現するために、データポイントをスキップすることは推奨されていません。パフォーマンスを最適化するために、アプリケーションで別個のスレッドを使用して管理し、メインアプリケーション上の負荷を軽減することが勧められています。

Windowsでは、データを読み取るためのメソッドが2つあります。開発者は、読み取りコールバックを登録するか、データの準備が整ったときにメッセージを受信するためのウィンドウハンドルを登録することができます。
パフォーマンスが問題になっている場合は、コールバックメソッドを使用してデータをキューに入れ、異なるスレッドで処理する方が良い場合もあります。次いで、処理スレッドはデータを確認して、さらなる処理が必要かどうかを判別できます(データのすべては処理しない可能性があります)。パフォーマンス上の理由でフレームをスキップする場合は、たとえば、フレーム内の各指の接触状態を調べて、指の状態が変更されない限り(アップ、または新しい指のダウン)、他のすべてのフレームを処理するという方法が考えられます。この方法では、アップまたはダウンを見過ごすことはなく、中間にあるすべてのパケットを処理する必要もありません。コールバック関数の処理に長い時間をかけないことが重要であり、終了後に残っているデータを信頼することもできません。したがって、接触用の独自の内部キューを保守して、別個のスレッドで処理するのが最善です。

10 Web App Plugin

10.1 Wacom Web App Pluginとは何ですか?

これは、Webアプリケーション用のWacom feel™ Multi-Touch APIのサブセットをサポートするために使用されるブラウザプラグインです。
詳しくは、http://wdnet.jp/library/web/ を参照してください。

10.2 Wacom Web App Pluginでサポートされているのは、どのブラウザですか?

http://wdnet.jp/library/web/ のリリースノートを参照してください。
Top