HowTo: Create your first multi-touch project

Preparing the programming environment

Getting the required frameworks:

  • If you are on the chair’s network you will find the server oliver using Finder.
    If you are on RWTH network:
    • Click on the Finder icon, select Go > Connect to Server.
    • Write the following server address: afp://, and click connect.
    • You will be asked to mount some directories, choose Public.
    • From the Finder select File > New Finder Window, on the left panel, under Shared you will find oliver server.

    If you are working on another network use RWTH-VPN to connect to the university’s network.
  • Click on oliver, connect using your account information (contact your supervisor if you are not sure of this).
  • Navigate to Public > Research Projects > MultiTouchFramework > Software > Sources. You will find the following git repositories: MultiTouch-TableEngine.git and MultiTouchFramework.git. These are the basic frameworks for drawing on multi-touch tables and detecting touch events.

Cloning the frameworks to your local machine:

  • On the keyboard click command + space (this is called spotlight). Type in: Terminal.
  • Use the following commands to clone the frameworks:
    • cd Desktop
    • mkdir Projects
    • cd Projects
    • git clone ssh://
    • git clone ssh:/

    You should now have two folders created in you Projects folder: MultiTouch-TableEngine and MultiTouchFramework. In MultiTouch-TableEngine > Frameworks the TableEngine framework will help you draw and detect touches. In MultiTouchFramework > Frameworks you will need MultiScreenOpenGL3Rendere framework for rendering shapes using OpenGL3 and MultiTouchServer to detect touches (these are already part of the TableEngine framework).

Getting the calibration file (required to use the above frameworks):

  • Go to Projects folder on your desktop.
  • Navigate to MultiTouchFramework > Agents > MultiScreen.
  • Double click MultiScreen.xcodeproj. Make sure the Scheme in Xcode is set to MultiScreen.
  • Run the project.
  • A window titled Multi Screen Tracker will show up. Click setup and choose all the default settings. Click start. Close the project.
  • A new folder called MultiScreen is now create under this directory: Users//Library/Application Support/MultiScreen. There you will find the default calibration file default.MultiScreenCalib.

Creating an Xcode project

  • In Projects folder create a new folder for your project (e.g. MyFirstProject).
  • Start Xcode (spotlight is your friend).
  • Create a new project: Mac OS X > Application > Cocoa Application.
  • Choose a name for you project. In the Company Identifier use the following: de.rwth.hci.
  • Uncheck 'Include Unit Test' and 'Use Core Data'. Keep 'Use Automatic Reference Counting' checked.
  • Add your project to Projects > MyFirstProjectFolder.
  • In your Projects folder Navigate to MultiTouch-TableEngine > Frameworks > TableEngine.
  • Make sure all project referencing TableEngine.xcodeproj and framework projects are closed.
  • Drag TableEngine.xcodeproj to your Xcode project.

  • In Xcode, clean you project, and build it.
  • Click on your project, Targets, Summary tab then click the + button in the 'Linked Frameworks and Libraries' section.
  • Add OpenGL.framework, and from Workspace add: TableEngine.framework, MultiScreenOpenGL3Renderer.framework, and MultiTouchServer.framework.

  • Run your project.
  • You can now click on TableEngine.xcodeproj in your project to see the hierarchy of the attached frameworks (if you cannot, delete the TableEngine.xcodeproj referance, and repeat the steps from dragging TableEngine.xcodeproj to your project).

  • Refer to Projects > MultiTouch-TableEngine > Demos > BasicTableEngineApp to see a working code.
To start coding go to: HowTo: Drawing with OpenGL3 using MultitouchScreenOpenGL3Renderer framework

Getting your project to the server

  • Adding .gitignore file:
    • Download this gitignore file
    • Open the file
    • Save the file as .gitignore in the directory Desktop/Projects/MyFirstProjectFolder
    • A warning will pop up, click "Use"
  • On the Terminal:
    • cd Desktop/Projects/MyFirstProjectFolder
    • git init
    • git add .
    • git commit -m "My first commit"
    • git status
    • cd ..
    • git clone --bare MyFirstProjectFolder MyFirstProject.git
  • Copy MyFirstProject.git to the server?
  • Delete the local version MyFirstProject.git?
  • Cut your MyFirstProjectFolder from Projects folder to another location on your local machine (for backup)
  • On the Terminal:
    • cd Desktop/Projects/
    • git clone ssh://

Created by hamdan. Last Modification: Sunday 05 of February, 2012 04:05:26 by hamdan.

Media Computing Group at RWTH Aachen