PQLabs Tabletop

From EQUIS Lab Wiki

Revision as of 16:49, 14 September 2011 by Quentin (Talk | contribs)
(diff) ← Older revision | Current revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Contents

Overview

The PQLabs Tabletop is composed of a TV screen and a PQLabs touch frame that can detect 32 touch points at the same time. This page is aimed at explaining the steps necessary to start coding an application using this tabletop.

The steps begin after you've plugged the TV and PQLabs frame on a computer.

Configuration

TV screen

  • When plugged, the TV screen should be set to replicate the desktop and not extend it, since the coordinates of the PQLabs frame are those of the main desktop, and you want the display and the touch to match.
  • The TV supports a maximum resolution of 1920*1080.

Installing the PQLabs drivers

  • The drivers installation should install both the MultitouchDriver and the MultiTouchPlatform (found in start menu in "PQLabs Software"). The latter (MultitouchPlatform) is necessary for the PQLabs touch frame to be connected, so it needs to run when you want to use the touch frame. The option to run it on start up is available in the main menu of the MultiTouchPlatform.
  • The direct drive of touch input to cursor can be enabled/disabled through "Control Panel" -> "Pen and Touch" -> "Touch" tab -> "Use your finger as an input device" check box.

Developing an application on PQLabs touch frames

  • You can find the PQLabs Multi-touch SDK (with documentation and code samples) at the following address: http://multi-touch-screen.com/sdk.html. Versions for WPF, Flash, etc. can be found. This tutorial will focus on the C#(dllimport) version since it's the one that can be used in XNA.
  • The downloaded file includes "PQMTClientImport.cs" (in \SampleCode\z_TestPQClient), "PQMTClient.dll" (both for x64 or x86): those two files must be added to your project's folder (right-click on project in solution explorer -> add existing file...) The dll's properties must be changed as follows: "Build Action" -> none ; "Copy to output" -> Copy if newer
  • The downloaded file also includes sample code and documentation. The easiest way to get started is to copy and paste "Main.cs" from the sample code to your project, and modify those functions according to the documentation and what you want the application to do.
  • Warning: The dllimport SDK only provides overall gestures on the touch screen, so using provided gesture recognition will make it impossible to code a multi-user application. If you want a multi-user behavior, you have to code your own gesture recognition on top of the touch points recognition.

Documentation

  • The documentation provides interesting information about "Struct definitions" and "Macro definitions". The former explains the structure of a touch point, the latter explains the different gestures that can be recognized, and the data structure that is used for coordinates, angles, etc.