At ACM International Conference on Interactive Tabletops and Surfaces - ITS 2014 · Dresden, Germany, 16-19 November 2014
TUIOFX is a novel, free toolkit for developing multi-touch, multi-user applications for interactive tabletops and surfaces with JavaFX. In this Studio we, the developers behind TUIOFX, introduce you in the new toolkit by showing how to build TUIO-enabled rich visual interfaces in Java.
The Studio aims to provide programmers with some Java experience a head start in developing state-of-the-art JavaFX applications that leverage on multi-user, multi-touch capabilities for the cross-platform deployment on interactive tabletops and surfaces.
The studio is directed to participants with some first programmng experience in Java and basic knowledge of programming in an IDE. In the studio you work on hands-on tasks on your own laptops in groups of two.
The TUIOFX toolkit was conceived to enable developers to rapidly develop visually appealing applications. To achieve this, TUIOFX combines the strength of multi-user, multi-touch toolkits supporting the TUIO protocol with an extensive library of standard widgets (i.e. JavaFX UI controls), and it is based on the most widely used programming language - Java. By leveraging on existing knowledge and standards opposed to specialsed tools anf frameworks it quickens the development of multi-user, multi-touch applications.
TUIOFX leverages on the several dozen, standard UI controls of JavaFX (including charts, tables, a HTML5 editor, etc.), which are all fully skinnable with CSS. This also allows using the standard visual layout tool JavaFX Scene Builder for developing multi-touch, multi-user applications; while this is comparable to using Expression Blend with the Microsoft Surface 2.0 SDK, TUIOFX allows to develop cross-platform Java applications.
The TUIOFX Toolkit is composed out of two parts, the TUIOFX—Core and the TUIOFX—WidgetToolkit. Core provides an abstraction from the raw TUIO messages and transforms them in standard JavaFX Touch- and Gesture-Events. WidgetToolkit provides multi-user (e.g., text-fields that allow simultaneous text-entry through multiple on-screen keyboards) and multi-touch (e.g., UI controls that are adjusted in size for touch on big screens) optimised widgets. To migrate an existing JavaFX project into a multi-user, multi-touch TUIOFX projects, both can be easily added as a library.
TUIOFX will be made available for free this fall.
In this studio four hands-on activities in form of step-by-step programming tutorials are interweaved with accompanying presentations of the underlying concepts of the TUIOFX toolkit. The four activities are the following:
This first activity is concerned with setting up the development environment for the Studio. You learn how to setup a TUIOFX-project in your preferred IDE with the required libraries and JDK. Further a solution for testing and debugging is set up. At the end of the firsst activity you are able to verify your setup by exploring some of the example applications delivered with TUIOFX.
In this second activity we develop a first Hello World application with TUIOFX to get acquainted with the basic steps. This activity is concerned with implementing a basic application and scene structure and adding a Hello World label. In a second step the label is extended to react to TUIO touch events and gestures, which allows moving, rotating, and scaling the label.
The third block starts with a short excursus in general JavaFX programming by providing information on styling applications with CSS and using graphical effects. To demonstrate those capabilities the Hello World application is extended into a rich visual photo browser app that is styled with CSS and effects.
The last block introduces you into the visual development of apps with the TUIOFX—WidgetToolkit and the JavaFX Scene Builder. We show how Oracle's Scene Builder can be used to develop multi-user, multi-touch apps. You will apply this knowledge by extending the photo browser into a multi-user image search application by adding text fields, buttons, etc. with Scene Builder.
- More details later -
- More details later -
…is researcher at the HCI group at the University of Bamberg. With a background in computer science he has almost 15 years of experience in Java programming and is conducting research with multi-touch tabletops since several years.
…is an undergraduate student at the HCI group at the University of Bamberg and one of the main developers of TUIOFX. His experience with the development of Java-based multi-user, multi-touch applications flow into TUIOFX.
…is full professor and chair of the HCI group at the University of Bamberg and head of the Cooperative Media Lab. He is Germany's official representative of Human-Computer Interaction in the IFIP Technical Committee on "Human Computer Interaction" (TC.13) and has more then 20 years of experience in the design and evaluation of interactive and cooperative systems.