Skip to content

Features

padrig64 edited this page Apr 12, 2013 · 9 revisions

The MultitouchFramework is not yet ready for use in a real project. The API is still likely to change in the very short term.

Items marked with (v) are already implemented and are part of the framework. Items marked with (~) are partially implemented in the framework. Items marked with ( ) are yet to be implemented but will be part of the framework in the future. But this does not mean that they cannot be built using this framework.

General

  • (v) Very simple to use;
  • (v) Fast touch input processing to improve the natural feel;
  • (v) Most generic concepts as possible (touch input source -> pre-processing filters -> dispatch to touchable regions -> gesture recognition -> post-processing filters -> project-specific use);
  • (~) Easily pluggable to special libraries and UI components;
  • ( ) Bundled support for Windows Touch;
  • ( ) Bundled support for Swing;
  • ( ) Bundled support for JavaFX 2;
  • ( ) Bundled support for other libraries;
  • (v) Possible processing of touch input within and outside UI thread(s) to keep a responsive UI;
  • (~) Ease of use (for the programmer), possibly through a simple DSL;
  • ( ) Extended DSL for even more convenient use;
  • (v) Allow to plug custom processing blocks;
  • (v) Allow to plug custom input sources;
  • (v) Allow to plug custom gesture recognizers;
  • ( ) Take CTRL, SHIFT, META, ALT, etc. into account;
  • (~) Anything useful you can imagine.

Input

  • (v) Possibility to change the touch input source;
  • (v) TUIO input source;
  • ( ) Windows Touch input source;
  • ( ) JavaFX touch input source;
  • (~) Mac OS X multitouch input source (currently only possible via TUIO using TongSeng).

Pre-processing

  • ( ) Low-pass filter to remove high frequencies in touch input changes;
  • (v) Bounding box filter to remove small changes of touch input without loosing precision;
  • (v) No-change filter to remove unnecessary touch input events;
  • (v) Basic support for per-region event handling (simple touchable regions, Swing, etc.);
  • ( ) Advanced support for per-region even handling (dynamic Z-order changes, dynamic touchable regions, JavaFX support, etc.).

Gesture recognition

  • (v) Drag/pan gesture recognition on a per-region basis;
  • (v) Pinch/spread/zoom gesture recognition on a per-region basis;
  • (~) Tap gesture recognition on a per-region basis;
  • ( ) Hold/long-press gesture

Post-processing

  • (-) Gesture events filtering: inertia, etc.

Clone this wiki locally