MT4j - Multitouch for Java™ - is an open source Java™ development platform, created for rapid developement of graphically rich applications. MT4j is designed to support different kinds of input devices with a special focus on multitouch support.
Features
* can be used for 2D, 3D or 2.5D (pseudo-3D) applications
* cross-platform (currently tested under Windows 7™, XP™, Vista™ and and Ubuntu Linux)
* extensible, component based scene graph structure (similar to Java™'s swing framework)
* input abstraction layer - support for all sorts of input devices can be easily added
* supports the TUIO protocol, which is provided by finger and object tracking software such as Reactivision, CCV or Touché
* flexible multitouch gesture system - you can define your own multitouch gestures
* the most common multitouch gestures are already included and can be registered modularly with any component for a pluggable behaviour changeable at runtime
* software or hardware accelerated graphics rendering (using OpenGL)
* includes many graphical objects i.e.: rectangles, round rectangles, ellipses, polygons, lines, triangle meshes, spheres, cubes, etc. with support for textures, gradients, fill- and outline color
* includes prebuilt UI components i.e. buttons, text labels, sliders and a multitouch enabled keyboard
* support for loading and fast rendering of vector graphics from Scalable Vector Graphics (SVG) files
* supports bitmap and vector fonts (SVG and True Type Fonts)
* imports 3D objects from .3ds and .obj files with textures and creates normals for smooth shading
* precise picking/selection of all geometric objects in 2D or 3D space - most gestures are supported in 3D
* animation support
* built on top of Processing, which allows you to use its many features and libraries
* test your multitouch application by using one - or even multiple mice connected to your pc (Windows platforms)
* MT4j is open source and released under the GPL License.