2008-11-17
2008-08-31
Final version for GSoC 2008...
...to be found in repo. "Of course" not everything has been implemented as planned but basic starters for majority of functions have been introduced. So... there is muuuuch more to be done later - since I plan to slowly continue to develop more and more advanced options.

2008-08-28
Main Menu
I decided to go ahead and introduce the Main Menu on application's area. It's going to be a tricky one since everything is tricky in case of multi-touch applications. This one can be in a few states:
1. 2. 3. 4. 5.





1. idle (semitransparent)
2. "on-touch-over" (highlighted) - e.g. when some blob moved from outside
3. "on-touch-press" (highlighted and expanded) - new blob has been created within the button area
4. "on-touch-out" (expanded but not highlighted) - blob goes off the button or dies - after 3. took place
5. "on-touch-press" of first option ("Create a new rectangle"):
On state 5. - the other hand can draw a shape of rectangle which becomes a rectangular object in world of "physics". When 5. is released - the main menu goes to the state 1.
Tweener (caurina) is used for menu visual effects.
1. 2. 3. 4. 5.





1. idle (semitransparent)
2. "on-touch-over" (highlighted) - e.g. when some blob moved from outside
3. "on-touch-press" (highlighted and expanded) - new blob has been created within the button area
4. "on-touch-out" (expanded but not highlighted) - blob goes off the button or dies - after 3. took place
5. "on-touch-press" of first option ("Create a new rectangle"):

Tweener (caurina) is used for menu visual effects.
2008-08-20
2008-07-08
First tests...
2008-07-01
Physical context of use
Table's design gives an ability to change the angle between table-top and frame from horizontal to vertical setup with a continuum of intermediary stages (e.g. 30º, 60º etc.).
When positioned vertically (90º) the table-top induces a context of gravity working top-down (vertically). It can help introducing a dynamic gravity factor dependent on physical context of use. It might be interesting to implement some sensor (resistor’s bar, multi-axis accelerometer or some gyroscopic sensor) checking table-top’s position (the angle between the table-top and the frame from horizontal to vertical setup) and simple software functionality for checking and passing the angle as parameter to the application which would react by changing attributes of the virtual environment (gravity vector). For example changing the angle to 90º position allows the gravity to work vertically (top-down) making the objects falling down to the bottom of the screen. But changing that angle to 0º changes the direction of the gravity and makes it working perpendicularly to the screen – the objects do not fall down anymore but can slide on the whole area of the screen decelerated by a factor of environment’s friction. It’s a feature which can be used to create the application reacting to changes of display’s physical position in real-time, similarly to Newton Virus. All of the above can be used by a special version of this application adapted to portable hand-held computers equipped with position sensors, and work similarly to iPhysics on iPhone.

2008-06-28
Physics in Flash
What's used here is 2.0.1 version of Box2D - a C++ 2D physics engine for games which is bridged to Flash with Box2DFlashAS3.
2008-06-27
Hardware + Software
When combined it works like this:
Where:

- a) Table’s metal frame
- b) Table-top - made of two sheets of acrylic glass and architect paper (working as diffuser for the picture emitted by projector) and two lines of infra-red (IR) Light Emitting Diodes (LED). It's fixed to a metal frame fixed with two hinges to the table’s frame.
- c) Two lines of IR LEDs - with appropriate power supply
- d) USB Web-camera with IR filter attached on flexible arm. IR filter is made of overexposed and processed negative film.
- e) Short-throw projector
- f) PC with Windows

2008-06-26
Software part
The software part consist of Flash application which takes the touch coordinates from Flosc which is an open source communication gateway transforming all TUIO (OSC based) standarized UDP communication from e.g. Touchlib (which is a video-analysis software library for reading the touch coordinates on multitouch displays) or from TUIO Simulator to TCP-formatted data for Flash (via Flash's XMLSocket).
2008-06-25
Hardware part
The multi-touch table setup is a simple solution in its idea. My table is based on Jeff Han's prototype.
But there are many ideas out there:

Thank you Lars for the photos!
Thank you Lars for the photos!
2008-06-24
2008-06-23
What is Multi-Physics?
The main goal of this project is to create a multi‐touch sensitive application for two‐dimensional graphic visualizations of a few basic concepts of physics (esp. mechanics). It is meant to be used by primary school pupils as a simple educational entertainment tool making them familiar with physics and allowing for certain extent of creativity. Young users can actively participate in the learning process by designing and testing their own simulations in a visually catchy cartoon‐style environment. Therefore the program will fulfill the idea of "learning by playing" and hopefully promote interest in science and technology among children.
2008-06-22
Created (tadaaamm!)...
This blog has been created because of my participation in GSoC 2008 programme.
Subscribe to:
Posts (Atom)